3ds Max 2012. Biblia

Kompletny podręcznik dla użytkowników 3ds MaxŸ! Obejmuje 3ds Max 2012 i 3ds Max 2012 Design Twórz wizualizacje i efekty do filmów, programów telewizyjnych oraz gier Naucz się modelować, animować i renderować Ćwicz i perfekcyjnie wykorzystuj narzędzia 3ds Max Ciężko w to uwierzyć, ale minęło już ponad dwadzieścia lat od wydania pierwszej wersji 3ds MaxŸ. To, co potrafi najnowsza wersja programu, jeszcze niedawno było nie do pomyślenia i pozostawało w sferze marzeń. Niezależnie od tego, czy jesteś użytkownikiem początkującym, który chciałby poznać podstawy grafiki trójwymiarowej, czy też doświadczonym animatorem poszukującym nowych technik tworzenia olśniewających efektów, tutaj znajdziesz wszystko! Ta książka to najlepsze źródło informacji o 3ds MaxŸ na rynku. Znajdziesz w niej komplet informacji o tym, jak rozpocząć przygodę z tym narzędziem, jak dostosować je do własnych potrzeb oraz jak wykonać najbardziej wymyślne operacje. Twoją szczególną uwagę powinny zwrócić dokładne instrukcje wykorzystania narzędzia CAT, które pozwala tworzyć szkielety postaci. Poznasz też nowy system do symulacji zjawisk fizycznych MassFx oraz narzędzia rzeźbiarskie z zestawu Graphite. Znajdziesz tu mnóstwo profesjonalnych porad i wskazówek oraz ponad 150 ćwiczeń, które gwarantują szybki postęp w nauce! Na dołączonej płycie umieszczono materiały konieczne do wykonania wszystkich zadań zawartych w książce, a ponadto tekstury i modele, które będziesz mógł wykorzystać w swoich projektach. Jeżeli szukasz idealnego podręcznika do 3ds MaxŸ, nie znajdziesz lepszej pozycji! Poznaj zasady pracy w środowisku 3ds MaxŸ Zbuduj szkielet postaci przy użyciu narzędzia CAT Odkryj narzędzia rzeźbiarskie z zestawu Graphite Symuluj zjawiska fizyczne dzięki nowemu systemowi MassFX Twórz zapierające dech w piersiach animacje Zostań specjalistą od 3ds MaxŸ

119 downloads 5K Views 59MB Size

Recommend Stories

Empty story

Idea Transcript


Tytuł oryginału: 3ds Max 2012 Bible Tłumaczenie: Zbigniew Waśko ISBN: 978-83-246-8340-6 Copyright © 2011 by John Wiley & Sons, Inc., Indianapolis, Indiana. All Rights Reserved. This translation published under license with the original publisher John Wiley & Sons, Inc. Translation copyright © 2012 by Helion S.A. No part of this book may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, without either the prior written permission of the Publisher. Wiley, the Wiley logo and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. 3ds Max is a registered trademark of Autodesk, Inc. All other trademarks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher. Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji. Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli. Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce. Dodatkowe materiały do książki można znaleźć pod adresem: ftp://ftp.helion.pl/przyklady/max12b.zip rozmiar: 380 MB

Wydawnictwo HELION ul. Kościuszki 1c, 44-100 GLIWICE tel. 32 231 22 19, 32 230 98 63 e-mail: [email protected] WWW: http://helion.pl (księgarnia internetowa, katalog książek) Drogi Czytelniku! Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie/max12b_ebook Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję. Printed in Poland.  Poleć książkę na Facebook.com

 Księgarnia internetowa

 Kup w wersji papierowej

 Lubię to! » Nasza społeczność

 Oceń książkę

Skąd mamy wiedzieć, czy małżeństwo jest dobre? Nie wystarczy powiedzieć, że jest spokojne, poukładane, zgodne… Małżeństwo nie jest tylko po to, by w nim trwać; żeby było szczęśliwe, na miłości i szacunku trzeba je budować. Dwie części w jedną winny się złączyć i nigdy nie rozdzielać, dwie dusze mają się połączyć, a dwa serca jedną miłością obdzielać. Oboje muszą nauczyć się, jak zapomnieć i wybaczyć, by później wspólnie mogli z problemami bitwy toczyć. W udanym małżeństwie wzajemna pomoc z serca szczerze płynie, a najgorsza burza mniej gwałtowna będzie — choć zupełnie nie ominie… Na dzielenie się smutkami też trzeba być przygotowanym — by wspólnie iść przez życie i nie czuć się przez świat niechcianym. Silne małżeństwo jest wesołe i pełno w nim radości — bo wie, że nadejdzie życia kres, lecz nie miłości. Trwałe małżeństwo jest marzeniem wszystkich zakochanych. Jest życiem moich rodziców, moich ukochanych. Moim rodzicom w 50. rocznicę ich ślubu, 2012.

Rzut oka na książkę O autorze ......................................................................................................... 41 Wstęp ............................................................................................................... 43 Podziękowania ................................................................................................ 49

Część I Rozpoczynanie pracy z programem 3ds Max .................. 51 Pierwsze kroki. Burzenie murów obronnych ................................................ 53 Rozdział 1. Poznawanie interfejsu Maksa ...................................................... 67 Rozdział 2. Sterowanie oknami widokowymi oraz ich konfigurowanie ...... 93 Rozdział 3. Praca z plikami, importowanie i eksportowanie ...................... 133 Rozdział 4. Modyfikowanie interfejsu i ustawianie jednostek .................. 167

Część II Praca z obiektami .......................................................... 183 Rozdział 5. Tworzenie i edycja obiektów podstawowych .......................... 185 Rozdział 6. Zaznaczanie obiektów i ustawianie ich właściwości ............... 219 Rozdział 7. Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie .................................................. 251 Rozdział 8. Klonowanie i ustawianie obiektów w szyku ............................ 287 Rozdział 9. Grupowanie, łączenie i hierarchizowanie obiektów ................ 311

Część III Podstawy modelowania ............................................... 323 Rozdział 10. Praca z podobiektami oraz obiektami pomocniczymi ............. 325 Rozdział 11. Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji ........................................... 341 Rozdział 12. Rysowanie i edycja dwuwymiarowych splajnów i kształtów .... 377 Rozdział 13. Modelowanie na poziomie wielokątów ..................................... 425 Rozdział 14. Korzystanie z narzędzi Graphite i malowanie obiektami ........ 461

6

3ds Max 2012. Biblia

Część IV Materiały, kamery i oświetlenie .................................. 505 Rozdział 15. Rozszerzony edytor materiałów ............................................... 507 Rozdział 16. Tworzenie i stosowanie materiałów standardowych ............. 525 Rozdział 17. Określanie właściwości materiałów przy użyciu map .............. 539 Rozdział 18. Materiały złożone i modyfikatory materiałów ........................ 581 Rozdział 19. Operowanie kamerami ............................................................... 597 Rozdział 20. Podstawowe techniki oświetlania sceny ................................. 615

Część V Podstawy animacji i renderingu ................................... 647 Rozdział 21. Animacja i klatki kluczowe ........................................................ 649 Rozdział 22. Animowanie przy użyciu ograniczników i prostych kontrolerów .............................................................. 675 Rozdział 23. Renderowanie sceny i korzystanie z renderera Quicksilver ... 697 Rozdział 24. Stylizowanie sceny ..................................................................... 721

Część VI Modelowanie zaawansowane ....................................... 725 Rozdział 25. Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego .................................... 727 Rozdział 26. Stosowanie modyfikatorów siatkowych i deformowanie powierzchni .................................................... 763 Rozdział 27. Obiekty złożone .......................................................................... 787 Rozdział 28. Praca z bryłami, czyli obiektami pełnymi ................................. 829 Rozdział 29. Tworzenie i układanie włosów, futer oraz tkanin ................... 837

Część VII Materiały w ujęciu zaawansowanym .......................... 857 Rozdział 30. Stosowanie materiałów specjalnych ........................................ 859 Rozdział 31. Proceduralne tekstury substancyjne ........................................ 873 Rozdział 32. Malowanie w oknach widokowych i renderowanie map powierzchni ............................................. 879 Rozdział 33. Rozwijanie współrzędnych UV i mapowanie tekstur ............... 897 Rozdział 34. Tworzenie wypiekanych tekstur i map normalnych ............... 933

Część VIII Zaawansowane techniki animowania ........................ 945 Rozdział 35. Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów ............................................................ 947 Rozdział 36. Animowanie przy użyciu kontrolera Expression i wiązania parametrów .............................................................. 985

Spis treści

7

Rozdział 37. Praca z krzywymi funkcyjnymi w oknie Track View .............. 1003

Część IX Praca z postaciami ...................................................... 1043 Rozdział 38. Systemy szkieletowe, riggowanie i kinematyka .................... 1045 Rozdział 39. Animowanie postaci przy użyciu modułu CAT ........................ 1075 Rozdział 40. Nakładanie skóry ...................................................................... 1099

Część X Animacja dynamiczna .................................................. 1119 Rozdział 41. Cząsteczki i system Particle Flow ........................................... 1121 Rozdział 42. Stosowanie pól sił .................................................................... 1153 Rozdział 43. Wykorzystanie systemu MassFX do symulacji ruchów zgodnych z zasadami dynamiki ............................................... 1177 Rozdział 44. Animowanie włosów i tkanin .................................................. 1195

Część XI Zaawansowane techniki oświetlania i renderingu ... 1205 Rozdział 45. Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna ............................................................ 1207 Rozdział 46. Stosowanie efektów renderowanych i atmosferycznych .... 1227 Rozdział 47. Renderery mental ray i iray .................................................... 1259 Rozdział 48. Rendering wsadowy i sieciowy ............................................... 1275 Rozdział 49. Komponowanie przy użyciu interfejsu Video Post i elementów renderingu .......................................................... 1291

Dodatki ..................................................................................... 1321 Dodatek A Co nowego w 3ds Max 2012? ................................................... 1323 Dodatek B

Zawartość płyty CD .................................................................. 1327

Dodatek C

Instalacja i konfigurowanie programu 3ds Max 2012 ............ 1331

Dodatek D Skróty klawiszowe w 3ds Max 2012 ........................................ 1341 Dodatek E

Interfejs Asset Tracking .......................................................... 1359

Dodatek F

Modelowanie przy użyciu łat ................................................... 1365

Dodatek G

Praca z obiektami NURBS ......................................................... 1387

Dodatek H Kompaktowy edytor materiałów ............................................ 1399 Dodatek I

Tworzenie i animowanie dwunogów ...................................... 1413

Dodatek J

Tworzenie tłumu ...................................................................... 1437

Dodatek K

Wykorzystanie reactora do symulacji ruchów zgodnych z zasadami dynamiki ............................................... 1443

8

3ds Max 2012. Biblia Dodatek L

Używanie miksera ruchu .......................................................... 1469

Dodatek M Automatyzacja pracy za pomocą MAXScriptu ........................ 1475 Dodatek N Dostosowywanie interfejsu Maksa do własnych potrzeb i upodobań ................................................................................ 1515 Dodatek O Rozszerzanie możliwości Maksa przez zewnętrzne moduły dodatkowe .................................................................. 1533 Skorowidz .................................................................................................... 1541

Spis treści O autorze ......................................................................................................... 41 Wstęp ............................................................................................................... 43 Podziękowania ................................................................................................ 49

Część I Rozpoczynanie pracy z programem 3ds Max .................. 51 Pierwsze kroki. Burzenie murów obronnych ................................................ 53 Burzenie muru — planowanie produkcji ............................................................................................54 Ustawianie sceny ................................................................................................................................54 Ćwiczenie: Wznoszenie muru .......................................................................................................55 Ćwiczenie: Gromadzenie modeli ..................................................................................................55 Ćwiczenie: Tworzenie podłoża .....................................................................................................56 Materiały i oświetlenie ........................................................................................................................57 Ćwiczenie: Dodawanie materiałów ..............................................................................................58 Ćwiczenie: Dodanie systemu Sun & Sky ......................................................................................59 Ćwiczenie: Renderowanie sceny ..................................................................................................60 Tworzenie animacji dynamicznej przy użyciu systemu MassFX ........................................................62 Ćwiczenie: Ustalanie parametrów symulacji ................................................................................62 Ćwiczenie: Renderowanie ostatecznej animacji ...........................................................................63 Podsumowanie ....................................................................................................................................64 Rozdział 1. Poznawanie interfejsu Maksa ....................................................... 67 Główne elementy interfejsu ................................................................................................................68 Korzystanie z menu .............................................................................................................................70 Używanie pasków narzędzi .................................................................................................................72 Dokowane i pływające paski narzędzi ..........................................................................................72 Podpowiedzi i rozwijane grupy przycisków .................................................................................73 Pasek szybkiego dostępu ..............................................................................................................73 Główny pasek narzędzi .................................................................................................................74 Wstążka ........................................................................................................................................77 Korzystanie z okien widokowych .......................................................................................................77 Korzystanie z panelu poleceń ..............................................................................................................78 Rolety ...........................................................................................................................................79 Zwiększanie szerokości panelu poleceń ........................................................................................80 Ćwiczenie: Przystosowanie interfejsu dla leworęcznych ..............................................................81 Dolna listwa interfejsu ........................................................................................................................82

10

3ds Max 2012. Biblia Interaktywne funkcje Maksa ...............................................................................................................84 Czteroczęściowe menu kontekstowe (quadmenus) .......................................................................84 Przybornik ....................................................................................................................................85 Sygnalizacja stanu przycisków za pomocą kolorów .....................................................................85 Korzystanie z funkcji „przeciągnij i upuść” ..................................................................................86 Posługiwanie się spinerami ...........................................................................................................86 Niemodalność i zachowawczość okien dialogowych ...................................................................87 Korzystanie z pomocy Maksa .............................................................................................................87 Pasek narzędziowy InfoCenter .....................................................................................................87 Ekran powitalny i Essential Skills Movies ....................................................................................89 Podstawowy system pomocy ........................................................................................................89 Pozostałe opcje menu Help ...........................................................................................................90 Podsumowanie ....................................................................................................................................91 Rozdział 2. Sterowanie oknami widokowymi oraz ich konfigurowanie ........ 93 Przestrzeń trójwymiarowa ...................................................................................................................94 Widok aksonometryczny a perspektywiczny ................................................................................94 Widoki ortogonalne i izometryczne ..............................................................................................94 Okna widokowe w Maksie ...........................................................................................................95 Posługiwanie się manipulatorami nawigacyjnymi ..............................................................................95 Manipulator ViewCube .................................................................................................................96 Manipulator SteeringWheels ........................................................................................................98 Ćwiczenie: Nawigowanie w aktywnym oknie widokowym .......................................................100 Sterowanie oknami widokowymi za pomocą rolki do przewijania ...................................................102 Korzystanie z kontrolek nawigacyjnych okien widokowych ............................................................102 Zmienianie skali widoku .............................................................................................................103 Przesuwanie widoku ...................................................................................................................104 „Spacerowanie” po scenie ..........................................................................................................104 Obracanie widoku .......................................................................................................................105 Powiększanie aktywnego okna widokowego ..............................................................................106 Sterowanie widokami z kamery i z reflektora .............................................................................107 Modyfikowanie okien widokowych ..................................................................................................108 Cofanie i zapisywanie zmian dokonanych za pomocą narzędzi do sterowania widokiem sceny ......108 Odświeżanie okien widokowych ................................................................................................108 Wyświetlanie materiałów w oknach widokowych ......................................................................109 Wyświetlanie świateł i cieni .......................................................................................................109 Konfigurowanie świateł i cieni w oknach widokowych ..............................................................111 Wykrywanie błędów siatki za pomocą funkcji xView ................................................................113 Konfigurowanie okien widokowych .................................................................................................114 Ustawianie stylu okna widokowego ...........................................................................................115 Zmienianie układu okien widokowych .......................................................................................121 Ramki obszarów bezpiecznych ...................................................................................................121 Jakość wyświetlania ....................................................................................................................123 Definiowanie regionów ...............................................................................................................125 Wyświetlanie statystyk ...............................................................................................................125 Praca z tłem w oknie widokowym ....................................................................................................126 Umieszczanie obrazu jako tła w oknie widokowym ...................................................................127 Umieszczanie animacji jako tła w oknie widokowym ................................................................128 Ćwiczenie: Przygotowanie obrazów ułatwiających modelowanie ..............................................129 Podsumowanie ..................................................................................................................................130

Spis treści

11

Rozdział 3. Praca z plikami, importowanie i eksportowanie ....................... 133 Praca z plikami zawierającymi sceny ................................................................................................133 Posługiwanie się przyciskiem aplikacji ......................................................................................134 Ekran powitalny ..........................................................................................................................135 Tworzenie nowej sceny ..............................................................................................................136 Zapisywanie plików ....................................................................................................................136 Archiwizowanie plików ..............................................................................................................138 Otwieranie plików ......................................................................................................................138 Ustalanie folderu dla danego projektu ........................................................................................139 Dołączanie i zastępowanie obiektów ..........................................................................................139 Zamykanie programu ..................................................................................................................140 Ustawianie preferencji dotyczących obsługi plików .........................................................................140 Opcje obsługi plików ..................................................................................................................141 Opcje tworzenia zapasowych kopii plików .................................................................................143 Ćwiczenie: Ustawianie opcji zapisywania kopii zapasowych .....................................................144 Opcje zarządzania raportami .......................................................................................................144 Konfigurowanie ścieżek dostępu ......................................................................................................145 Konfigurowanie ścieżek użytkownika ........................................................................................145 Konfigurowanie ścieżek systemowych .......................................................................................146 Importowanie i eksportowanie ..........................................................................................................146 Importowanie plików ..................................................................................................................147 Preferencje importu ....................................................................................................................148 Eksportowanie do obsługiwanych formatów ..............................................................................148 Wymiana plików z programami Softimage, MotionBuilder i Mudbox ......................................149 Wymiana plików z programem Maya .........................................................................................149 Stosowanie formatu OBJ ............................................................................................................150 Eksportowanie do formatu JSR-184 (M3G) ...............................................................................152 Eksportowanie do formatu DWF ................................................................................................154 Dodatkowe narzędzia eksportujące .............................................................................................155 Ćwiczenie: Importowanie grafiki wektorowej wykonanej w Illustratorze ..................................156 Korzystanie z narzędzi do zarządzania plikami ..................................................................................157 Korzystanie z narzędzia Asset Browser ......................................................................................158 Odszukiwanie plików za pomocą narzędzia MAX File Finder ...................................................160 Gromadzenie plików za pomocą narzędzia Resource Collector .................................................160 Korzystanie z narzędzia File Link Manager ...............................................................................161 Korzystanie z technologii i-drop .................................................................................................162 Uzyskiwanie dostępu do informacji o plikach ..................................................................................162 Wyświetlanie informacji dotyczących sceny ..............................................................................162 Odczytywanie właściwości pliku ................................................................................................163 Oglądanie zawartości plików ......................................................................................................163 Podsumowanie ..................................................................................................................................165 Rozdział 4. Modyfikowanie interfejsu i ustawianie jednostek .................... 167 Wybieranie jednostek systemowych .................................................................................................167 Stosowanie jednostek własnych i ogólnych ................................................................................168 Postępowanie w przypadku niezgodności jednostek ...................................................................169 Zmiana skali jednostek globalnych .............................................................................................170 Ustawianie preferencji ......................................................................................................................170 Preferencje ogólne ......................................................................................................................170 Preferencje dotyczące plików .....................................................................................................174 Preferencje dotyczące okien widokowych ..................................................................................174

12

3ds Max 2012. Biblia Preferencje korekcji gamma .......................................................................................................179 Pozostałe preferencje ..................................................................................................................180 Podsumowanie ..................................................................................................................................180

Część II Praca z obiektami .......................................................... 183 Rozdział 5. Tworzenie i edycja obiektów podstawowych ............................ 185 Tworzenie obiektów podstawowych .................................................................................................186 Korzystanie z menu Create .........................................................................................................186 Korzystanie z panelu Create .......................................................................................................186 Nadawanie nazw obiektom .........................................................................................................187 Przypisywanie kolorów ...............................................................................................................189 Korzystanie z narzędzia Color Clipboard ...................................................................................191 Stosowanie różnych metod tworzenia obiektów .........................................................................191 Precyzyjne określanie wymiarów za pomocą rolety Keyboard Entry .........................................193 Modyfikacja parametrów obiektów ............................................................................................194 Poprawianie błędów oraz usuwanie obiektów ............................................................................194 Ćwiczenie: Przegląd brył platońskich .........................................................................................195 Przegląd typów obiektów podstawowych .........................................................................................196 Standardowe obiekty podstawowe ..............................................................................................197 Rozbudowane obiekty podstawowe ............................................................................................202 Modyfikowanie parametrów obiektów .......................................................................................212 Ćwiczenie: Wypełnianie skrzyni skarbami .................................................................................213 Podstawowe obiekty architektoniczne ..............................................................................................213 Stosowanie obiektów AEC .........................................................................................................213 Ćwiczenie: Schody na wieżę zegarową ......................................................................................217 Podsumowanie ..................................................................................................................................217 Rozdział 6. Zaznaczanie obiektów i ustawianie ich właściwości ................. 219 Zaznaczanie obiektów .......................................................................................................................220 Filtry selekcji ..............................................................................................................................220 Narzędzia selekcji .......................................................................................................................221 Zaznaczanie przy użyciu poleceń z menu Edit ...........................................................................222 Zaznaczanie wielu obiektów .......................................................................................................226 Zaznaczanie przez malowanie ....................................................................................................226 Ćwiczenie: Zaznaczanie obiektów ..............................................................................................227 Blokowanie zaznaczenia .............................................................................................................228 Stosowanie imiennych zestawów wyboru ..................................................................................228 Zarządzanie zestawami wyboru ..................................................................................................229 Wydzielanie bieżącego zaznaczenia ...........................................................................................230 Zaznaczanie obiektów w innych oknach interfejsu .....................................................................230 Ustawianie właściwości obiektu .......................................................................................................232 Informacje dotyczące obiektu .....................................................................................................232 Ustawianie właściwości związanych z wyświetlaniem ...............................................................233 Ustawianie właściwości związanych z renderowaniem ..............................................................235 Włączanie efektu Motion Blur ....................................................................................................236 Panele Advanced Lighting i mental ray ......................................................................................237 Panel User Defined .....................................................................................................................237 Ukrywanie i zamrażanie obiektów ....................................................................................................237 Korzystanie z okna dialogowego Display Floater .......................................................................238 Korzystanie z panelu Display .....................................................................................................239 Ćwiczenie: Ukryte szczoteczki do zębów ...................................................................................240

Spis treści

13

Stosowanie warstw ............................................................................................................................240 Korzystanie z menedżera warstw ................................................................................................241 Lista warstw ................................................................................................................................243 Ćwiczenie: Podział sceny na warstwy ........................................................................................244 Eksplorator sceny ..............................................................................................................................245 Zaznaczanie i filtrowanie obiektów ............................................................................................246 Wyszukiwanie obiektów .............................................................................................................247 Czynności edycyjne w eksploratorze sceny ................................................................................249 Podsumowanie ..................................................................................................................................250 Rozdział 7. Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie ..................................................... 251 Przesuwanie, obracanie i skalowanie obiektów ................................................................................252 Przesuwanie ................................................................................................................................252 Obracanie ....................................................................................................................................252 Skalowanie ..................................................................................................................................252 Korzystanie z przycisków narzędzi transformacji .......................................................................254 Posługiwanie się narzędziami transformacji .....................................................................................254 Gizma transformacji ...................................................................................................................254 Przybornik transformacji ............................................................................................................257 Używanie okna dialogowego Transform Type-In .......................................................................258 Używanie pól ze współrzędnymi transformacji na pasku stanu ..................................................259 Menedżery transformacji ............................................................................................................260 Ćwiczenie: Lądowanie statku kosmicznego ...............................................................................265 Środek obrotu ....................................................................................................................................267 Ustawianie środka obrotu ...........................................................................................................267 Wyrównywanie środków obrotu .................................................................................................268 Roboczy środek obrotu ...............................................................................................................268 Korygowanie transformacji ........................................................................................................269 Narzędzie Reset XForm ..............................................................................................................270 Ćwiczenie: Pszczoła latająca wokół kwiatka ..............................................................................270 Dopasowywanie położenia i orientacji obiektów ..............................................................................271 Wyrównywanie obiektów ...........................................................................................................271 Narzędzie Quick Align ...............................................................................................................273 Dopasowywanie normalnych ......................................................................................................273 Ćwiczenie: Całująca się para ......................................................................................................274 Wyrównywanie do widoku .........................................................................................................275 Stosowanie siatek konstrukcyjnych ..................................................................................................275 Główna siatka konstrukcyjna ......................................................................................................276 Tworzenie i uaktywnianie dodatkowych siatek konstrukcyjnych ...............................................276 Tryb AutoGrid ............................................................................................................................277 Ćwiczenie: Tworzenie lunety .....................................................................................................277 Korzystanie z funkcji przyciągania (Snap) .......................................................................................278 Ćwiczenie: Tworzenie dwuwymiarowego konturu obiektu ........................................................280 Ustalanie punktów przyciągania .................................................................................................281 Ustawianie opcji przyciągania ....................................................................................................282 Korzystanie z paska narzędziowego Snaps .................................................................................283 Ćwiczenie: Modelowanie cząsteczki metanu ..............................................................................283 Podsumowanie ..................................................................................................................................284

14

3ds Max 2012. Biblia Rozdział 8. Klonowanie i ustawianie obiektów w szyku .............................. 287 Klonowanie obiektów .......................................................................................................................288 Polecenie Clone ..........................................................................................................................288 Klonowanie przy użyciu klawisza Shift ......................................................................................288 Ćwiczenie: Klonowanie dinozaurów ..........................................................................................289 Szybkie klonowanie ....................................................................................................................290 Opcje klonowania .............................................................................................................................290 Kopie, klony i odnośniki .............................................................................................................291 Ćwiczenie: Klonowanie pączków ...............................................................................................291 Ćwiczenie: Jabłka jako odnośniki ...............................................................................................292 Odbicia lustrzane ..............................................................................................................................294 Narzędzie Mirror ........................................................................................................................294 Ćwiczenie: Tworzenie drugiej nogi robota .................................................................................295 Klonowanie w czasie ........................................................................................................................296 Narzędzie Snapshot ....................................................................................................................297 Ćwiczenie: Wyznaczanie ścieżki w labiryncie ...........................................................................297 Rozmieszczanie klonowanych obiektów ...........................................................................................298 Stosowanie narzędzia Spacing ....................................................................................................299 Ćwiczenie: Układanie klocków domina ......................................................................................300 Narzędzie Clone and Align ...............................................................................................................301 Wyrównywanie obiektów źródłowych względem docelowych ..................................................301 Ćwiczenie: Klonowanie i wyrównywanie obiektów ...................................................................302 Tworzenie szyku obiektów ...............................................................................................................304 Szyk liniowy ...............................................................................................................................304 Ćwiczenie: Budowa płotu ...........................................................................................................305 Szyk kołowy ...............................................................................................................................306 Ćwiczenie: „Diabelski młyn” .....................................................................................................307 Tworzenie szyków pierścieniowych ...........................................................................................308 Ćwiczenie: Tworzenie modelu karuzeli przy użyciu systemu Ring Array .................................309 Podsumowanie ..................................................................................................................................309 Rozdział 9. Grupowanie, łączenie i hierarchizowanie obiektów .................. 311 Praca z grupami ................................................................................................................................311 Tworzenie grup ...........................................................................................................................312 Likwidowanie grup .....................................................................................................................312 Otwieranie i zamykanie grup ......................................................................................................312 Przyłączanie i odłączanie obiektów ............................................................................................312 Ćwiczenie: Grupowanie części samolotu ....................................................................................313 Tworzenie zespołów ...................................................................................................................313 Relacje między obiektami typu korzeń, rodzic i dziecko ..................................................................315 Tworzenie połączeń hierarchicznych ................................................................................................316 Łączenie obiektów ......................................................................................................................316 Rozłączanie obiektów .................................................................................................................316 Ćwiczenie: Łączenie rodziny kaczek ..........................................................................................317 Wyświetlanie hierarchii i ich wewnętrznych połączeń .....................................................................317 Wyświetlanie połączeń w oknach widokowych ..........................................................................317 Przeglądanie hierarchii ...............................................................................................................318 Praca z obiektami połączonymi ........................................................................................................319 Blokowanie transformacji dziedziczonych .................................................................................320 Narzędzie Link Inheritance .........................................................................................................320 Zaznaczanie hierarchii ................................................................................................................320

Spis treści

15

Łączenie z obiektami pozornymi ................................................................................................320 Ćwiczenie: Lot dookoła Ziemi ....................................................................................................321 Podsumowanie ..................................................................................................................................322

Część III Podstawy modelowania ............................................... 323 Rozdział 10. Praca z podobiektami oraz obiektami pomocniczymi ............. 325 Omówienie typów modelowania .......................................................................................................325 Obiekty parametryczne i edytowalne ..........................................................................................326 Konwertowanie obiektów do postaci edytowalnej ......................................................................328 Wektory normalne ............................................................................................................................329 Wyświetlanie normalnych ..........................................................................................................329 Ćwiczenie: Oczyszczanie zaimportowanych siatek ....................................................................329 Praca z podobiektami ........................................................................................................................331 Stosowanie miękkiej selekcji ......................................................................................................332 Ćwiczenie: Miękka selekcja kształtu serca na płaszczyźnie .......................................................334 Działanie na zaznaczone podobiekty przy użyciu modyfikatorów .............................................335 Obiekty wspomagające modelowanie ...............................................................................................336 Korzystanie z obiektów pomocniczych Dummy i Point .............................................................336 Określanie odległości i współrzędnych .......................................................................................337 Podsumowanie ..................................................................................................................................339 Rozdział 11. Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji .................................................................. 341 Stos modyfikatorów ..........................................................................................................................342 Istota obiektów bazowych ..........................................................................................................342 Stosowanie modyfikatorów ........................................................................................................342 Inne pozycje na stosie modyfikatorów ........................................................................................342 Posługiwanie się stosem modyfikatorów ....................................................................................343 Zmiana kolejności modyfikatorów w stosie ................................................................................346 Ćwiczenie: Tworzenie łańcucha molekularnego .........................................................................346 Zachowywanie i przywracanie sceny .........................................................................................347 Scalanie stosu .............................................................................................................................348 Stosowanie narzędzia Collapse ...................................................................................................348 Posługiwanie się gizmami modyfikatorów .................................................................................349 Ćwiczenie: Ściskanie plastikowej butelki ...................................................................................350 Modyfikowanie podobiektów .....................................................................................................350 Zależności topologiczne .............................................................................................................351 Typy modyfikatorów ........................................................................................................................351 Porównanie modyfikatorów Object-Space i World-Space ..........................................................352 Modyfikatory z grupy Selection .................................................................................................353 Modyfikatory z grupy Parametric Deformers .............................................................................355 Modyfikatory Free Form Deformers ...........................................................................................372 Podsumowanie ..................................................................................................................................375 Rozdział 12. Rysowanie i edycja dwuwymiarowych splajnów i kształtów .... 377 Rysowanie w dwóch wymiarach .......................................................................................................378 Praca z kształtami parametrycznymi ...........................................................................................378 Ćwiczenie: Tworzenie logo firmy ...............................................................................................389 Ćwiczenie: Podgląd wnętrza serca ..............................................................................................390

16

3ds Max 2012. Biblia Edycja splajnów ................................................................................................................................391 Konwersja na splajny edytowalne a stosowanie modyfikatora Edit Spline ................................392 Przekształcanie splajnów w obiekty renderowalne .....................................................................392 Zaznaczanie podobiektów splajnu ..............................................................................................392 Geometria splajnów ....................................................................................................................395 Edycja wierzchołków ..................................................................................................................399 Edycja segmentów ......................................................................................................................406 Edycja podobiektów na poziomie splajnów ................................................................................409 Korzystanie z modyfikatorów splajnów ............................................................................................414 Modyfikatory specyficzne dla splajnów .....................................................................................414 Przenoszenie splajnów do trzeciego wymiaru ............................................................................418 Modyfikator CrossSection ..........................................................................................................423 Podsumowanie ..................................................................................................................................423 Rozdział 13. Modelowanie na poziomie wielokątów ..................................... 425 Czym są obiekty Poly? ......................................................................................................................425 Tworzenie obiektów Editable Poly ...................................................................................................426 Konwertowanie obiektów ...........................................................................................................427 Scalanie stosu modyfikatorów ....................................................................................................428 Stosowanie modyfikatora Edit Poly ............................................................................................428 Edycja obiektów Poly .......................................................................................................................428 Edycja podobiektów w siatkach Editable Poly ...........................................................................428 Zaznaczanie podobiektów ...........................................................................................................430 Ćwiczenie: Modelowanie głowy klowna ....................................................................................432 Edycja geometrii .........................................................................................................................433 Edycja wierzchołków (Vertex) ...................................................................................................442 Edycja krawędzi (Edge) ..............................................................................................................447 Edycja brzegów (Border) ............................................................................................................450 Edycja wielokątów (Polygon) oraz elementów (Element) ..........................................................452 Ćwiczenie: Modelowanie zęba ...................................................................................................458 Podsumowanie ..................................................................................................................................459 Rozdział 14. Korzystanie z narzędzi Graphite i malowanie obiektami ........ 461 Posługiwanie się narzędziami Graphite ............................................................................................462 Panel Polygon Modeling .............................................................................................................463 Panel Modify Selection ...............................................................................................................467 Edycja geometrii .........................................................................................................................468 Edycja wierzchołków (Vertex) ...................................................................................................477 Edycja krawędzi (Edge) i brzegów (Border) ...............................................................................480 Edycja wielokątów (Polygon) oraz elementów (Element) ..........................................................481 Właściwości powierzchniowe .....................................................................................................483 Stosowanie narzędzi Freeform ..........................................................................................................485 Narzędzia z panelu PolyDraw .....................................................................................................485 Narzędzia Paint Deform ..............................................................................................................491 Stosowanie narzędzi z zakładki Selection .........................................................................................493 Zaznaczanie czubków, brzegów i ścianek innych niż czworokątne ............................................493 Kopiowanie i wklejanie zaznaczeń .............................................................................................493 Zaznaczanie według kryteriów ...................................................................................................494 Malowanie obiektami ........................................................................................................................496 Wybieranie obiektów ..................................................................................................................496 Malowanie ..................................................................................................................................497

Spis treści

17

Malowanie wieloma obiektami ...................................................................................................498 Malowanie na obiektach .............................................................................................................500 Tryb wypełniania ........................................................................................................................500 Malowanie obiektami animowanymi ..........................................................................................501 Podsumowanie ..................................................................................................................................502

Część IV Materiały, kamery i oświetlenie .................................. 505 Rozdział 15. Rozszerzony edytor materiałów ............................................... 507 Właściwości materiału ......................................................................................................................507 Kolory .........................................................................................................................................508 Krycie i przezroczystość .............................................................................................................509 Odbicie i załamanie ....................................................................................................................509 Połysk i odblaski .........................................................................................................................509 Inne właściwości .........................................................................................................................510 Praca z edytorem materiałów ............................................................................................................510 Korzystanie z narzędzi edytora materiałów ................................................................................511 Tworzenie węzłów materiałowych .............................................................................................512 Nawigowanie w panelu z węzłami ..............................................................................................513 Zaznaczanie materiałów i przypisywanie ich obiektom ..............................................................514 Zmiana podglądu materiału ........................................................................................................515 Zaznaczanie obiektów według materiału ....................................................................................516 Opcje edytora materiałów ...........................................................................................................516 Usuwanie materiałów i map ........................................................................................................517 Menu Utilities .............................................................................................................................517 Posługiwanie się narzędziem Fix Ambient .................................................................................517 Ćwiczenie: Kolorowanie jajek wielkanocnych ...........................................................................518 Posługiwanie się przeglądarką materiałów i map ..............................................................................518 Posługiwanie się bibliotekami ....................................................................................................520 Ćwiczenie: Wczytywanie własnej biblioteki materiałów ............................................................520 Posługiwanie się eksploratorem materiałów .....................................................................................521 Podsumowanie ..................................................................................................................................523 Rozdział 16. Tworzenie i stosowanie materiałów standardowych ............. 525 Stosowanie materiału standardowego ...............................................................................................525 Używanie różnych algorytmów cieniowania ....................................................................................526 Shader Blinna (Blinn) .................................................................................................................526 Shader Phonga (Phong) ..............................................................................................................529 Shader anizotropowy (Anisotropic) ............................................................................................529 Shader wielowarstwowy (Multi-Layer) ......................................................................................530 Shader Orena-Nayara-Blinna (Oren-Nayar-Blinn) .....................................................................530 Shader metaliczny (Metal) ..........................................................................................................530 Shader Straussa (Strauss) ............................................................................................................531 Shader prześwitujący (Translucent Shader) ................................................................................531 Ćwiczenie: Prześwitujące zasłony ..............................................................................................531 Inne parametry materiałów ...............................................................................................................532 Roleta rozszerzonych parametrów (Extended Parameters) .........................................................532 Roleta nadpróbkowania (SuperSampling) ..................................................................................533 Roleta map (Maps) .....................................................................................................................535 Roleta DirectX Manager .............................................................................................................535

18

3ds Max 2012. Biblia Roleta mental ray Connection .....................................................................................................535 Ćwiczenie: Kolorowanie modelu delfina ....................................................................................535 Podsumowanie ..................................................................................................................................536 Rozdział 17. Określanie właściwości materiałów przy użyciu map .............. 539 Czym jest mapa materiałowa? ..........................................................................................................540 Różne rodzaje map .....................................................................................................................540 Wyświetlanie map w oknach widokowych .................................................................................540 Używanie map o rozmiarach rzeczywistych (Real-World) .........................................................540 Praca z mapami .................................................................................................................................541 Przyłączanie map do materiałów ................................................................................................541 Rodzaje map materiałowych .............................................................................................................544 Mapy dwuwymiarowe (2D) ........................................................................................................544 Mapy trójwymiarowe (3D) .........................................................................................................554 Mapy złożone (Compositor maps) ..............................................................................................561 Mapy modyfikatorów koloru (Color Mods) ................................................................................563 Mapy inne (Other) ......................................................................................................................565 Używanie rolety Maps ......................................................................................................................569 Ćwiczenie: Realistyczne postarzanie obiektów ..........................................................................572 Używanie edytora ścieżek dostępu do map .......................................................................................573 Używanie klonów map ......................................................................................................................574 Używanie narzędzi zewnętrznych .....................................................................................................575 Tworzenie tekstur materiałów przy użyciu programu Photoshop ...............................................575 Rejestrowanie obrazów cyfrowych .............................................................................................577 Skanowanie obrazów ..................................................................................................................578 Ćwiczenie: Tworzenie siatki na ryby ..........................................................................................578 Podsumowanie ..................................................................................................................................579 Rozdział 18. Materiały złożone i modyfikatory materiałów ......................... 581 Używanie materiałów złożonych (Compound Materials) .................................................................581 Materiał mieszany (Blend) ..........................................................................................................582 Materiał kompozytowy (Composite) ..........................................................................................583 Materiał dwustronny (Double Sided) ..........................................................................................584 Materiał wieloraki (Multi/Sub-Object) .......................................................................................584 Ćwiczenie: Tworzenie łaciatej narzuty .......................................................................................585 Materiał typu Morpher ................................................................................................................587 Materiał skorupowy (Shell) ........................................................................................................587 Materiał szelakowy (Shellac) ......................................................................................................587 Materiał góra/dół (Top/Bottom) .................................................................................................587 Ćwiczenie: Surfowanie na falach ................................................................................................588 Nakładanie wielu materiałów ............................................................................................................588 Identyfikatory materiałów (material ID) .....................................................................................589 Ćwiczenie: Mapowanie ścianek kości do gry .............................................................................589 Stosowanie narzędzia Clean MultiMaterial (czyszczenie materiału złożonego) .........................591 Modyfikatory materiałów .................................................................................................................591 Modyfikator Material ..................................................................................................................591 Modyfikator MaterialByElement ................................................................................................591 Ćwiczenie: Tworzenie losowych świateł migającej reklamy przy użyciu modyfikatora MaterialByElement ..................................................................................................................592 Modyfikatory Disp Approx i Displace Mesh ..............................................................................592 Ćwiczenie: Przemieszczanie geometrii za pomocą obrazu .........................................................594 Podsumowanie ..................................................................................................................................594

Spis treści

19

Rozdział 19. Operowanie kamerami ............................................................... 597 Podstawy pracy z kamerą ..................................................................................................................598 Tworzenie obiektu kamery .........................................................................................................598 Tworzenie widoku z kamery .......................................................................................................599 Ćwiczenie: Ustawianie punktu widzenia przeciwnika ................................................................599 Sterowanie kamerą ......................................................................................................................600 Kierowanie kamery na obiekty ...................................................................................................602 Ćwiczenie: Obserwacja rakiety ...................................................................................................603 Wyrównywanie kamer ................................................................................................................603 Ćwiczenie: Dobra strona dinozaura ............................................................................................604 Ustawianie parametrów kamery ........................................................................................................605 Ogniskowa i pole widzenia .........................................................................................................606 Rodzaje kamer i opcje wyświetlania ...........................................................................................606 Zakresy środowiska i płaszczyzny tnące .....................................................................................607 Modyfikator korekcji kamery (Camera Correction) ...................................................................607 Tworzenie efektów trybu wieloprzebiegowego (Multi-Pass Camera Effects) ............................608 Efekt głębi ostrości (Depth of Field) ...........................................................................................609 Ćwiczenie: Zastosowanie głębi ostrości na rzędzie wiatraków ...................................................610 Efekt rozmycia ruchu (Motion Blur) ..........................................................................................611 Ćwiczenie: Efekt rozmycia ruchu ...............................................................................................612 Podsumowanie ..................................................................................................................................614 Rozdział 20. Podstawowe techniki oświetlania sceny ................................. 615 Podstawy oświetlenia ........................................................................................................................615 Światło naturalne i sztuczne ........................................................................................................616 Standardowa metoda oświetlania ................................................................................................616 Cienie ..........................................................................................................................................618 Rodzaje światła .................................................................................................................................619 Oświetlenie domyślne .................................................................................................................619 Światło otaczające (Ambient) .....................................................................................................620 Światła standardowe ...................................................................................................................620 Światła fotometryczne ................................................................................................................621 Tworzenie i ustawianie świateł w scenie ..........................................................................................622 Transformacje świateł .................................................................................................................622 Podgląd świateł i cieni w oknach widokowych ..........................................................................623 Lista świateł ................................................................................................................................623 Umieszczanie odbłysków ...........................................................................................................624 Ćwiczenie: Oświetlanie twarzy bałwana ....................................................................................625 Oglądanie sceny z pozycji źródła światła ..........................................................................................625 Sterowanie widokiem ze źródła światła ......................................................................................625 Ćwiczenie: Włączanie lampy ......................................................................................................627 Zmiana parametrów światła ..............................................................................................................627 Parametry ogólne ........................................................................................................................628 Roleta Intensity/Color/Attenuation .............................................................................................629 Parametry reflektorów i świateł kierunkowych ..........................................................................630 Efekty zaawansowane (Advanced Effects) .................................................................................630 Parametry cienia (Shadow Parameters) ......................................................................................631 Optymalizowanie świateł ............................................................................................................632 Sterowanie stożkami jasności (Hotspot) i wygaszania (Falloff) .................................................632 Parametry świateł fotometrycznych ............................................................................................632

20

3ds Max 2012. Biblia Używanie systemu światła słonecznego (Sunlight) i dziennego (Daylight) ......................................635 Używanie obiektu pomocniczego Compass ................................................................................636 Azymut (Azimuth) i wysokość (Altitude) ...................................................................................637 Określanie daty i czasu ...............................................................................................................637 Określanie miejsca ......................................................................................................................637 Ćwiczenie: Dzień w 20 sekund ...................................................................................................638 Używanie świateł wolumetrycznych (Volume Lights) .....................................................................639 Parametry świateł wolumetrycznych ..........................................................................................639 Ćwiczenie: Przednie światła samochodu ....................................................................................641 Ćwiczenie: Tworzenie promieni laserowych ..............................................................................642 Używanie map rzutowanych i cieni raytracingowanych .............................................................643 Ćwiczenie: Rzutowanie obrazu trąbki na scenę ..........................................................................644 Ćwiczenie: Tworzenie witrażu ...................................................................................................644 Podsumowanie ..................................................................................................................................646

Część V Podstawy animacji i renderingu ................................... 647 Rozdział 21. Animacja i klatki kluczowe ........................................................ 649 Sterowanie czasem animacji (Time Controls) ...................................................................................650 Ustawianie liczby klatek na sekundę ..........................................................................................651 Ustawianie prędkości i kierunku odtwarzania animacji ..............................................................651 Używanie etykiet czasu (Time Tags) ..........................................................................................652 Klatki kluczowe ................................................................................................................................652 Tryb kluczowania automatycznego (Auto Key) .........................................................................653 Tryb kluczowania ręcznego (Set Key) ........................................................................................653 Ćwiczenie: Wprawianie wiatraka w ruch ...................................................................................654 Kopiowanie kluczy animacji parametrów ...................................................................................655 Usuwanie wszystkich kluczy animacji obiektu ...........................................................................656 Używanie paska ścieżki (Track Bar) .................................................................................................656 Oglądanie wartości kluczy i ich edycja .............................................................................................657 Używanie panelu Motion ..................................................................................................................658 Ustawianie parametrów ..............................................................................................................658 Trajektorie ..................................................................................................................................659 Ćwiczenie: Samolot wykonujący pętlę .......................................................................................661 Korzystanie z narzędzia Follow/Bank ........................................................................................661 Wyświetlanie sąsiadujących klatek animacji (Ghosting) ..................................................................662 Preferencje animacji ..........................................................................................................................663 Animowanie obiektów ......................................................................................................................665 Animowanie kamer .....................................................................................................................665 Ćwiczenie: Animowanie lotek trafiających w tarczę ..................................................................666 Animowanie świateł ...................................................................................................................666 Animowanie materiałów .............................................................................................................667 Tworzenie list z plikami obrazów (Image File Lists) ..................................................................668 Tworzenie plików IFL przy użyciu narzędzia IFL Manager .......................................................669 Ćwiczenie: Co mamy dzisiaj w telewizji? ..................................................................................669 Podgląd animacji ...............................................................................................................................670 Tworzenie podglądu ...................................................................................................................671 Oglądanie podglądu ....................................................................................................................673 Zmiana nazwy podglądu .............................................................................................................673 Podsumowanie ..................................................................................................................................673

Spis treści

21

Rozdział 22. Animowanie przy użyciu ograniczników i prostych kontrolerów .............................................................. 675 Ograniczanie ruchu przy użyciu ograniczników ...............................................................................676 Używanie ograniczników ...........................................................................................................676 Stosowanie ograniczników .........................................................................................................676 Rodzaje kontrolerów .........................................................................................................................687 Przypisywanie kontrolerów ...............................................................................................................688 Kontrolery przypisywane automatycznie ....................................................................................688 Przypisywanie kontrolerów za pomocą poleceń z menu Animation ...........................................689 Przypisywanie kontrolerów w panelu Motion ............................................................................689 Przypisywanie kontrolerów w oknie Track View .......................................................................690 Ustawianie kontrolerów domyślnych ..........................................................................................691 Przegląd najprostszych kontrolerów .................................................................................................691 Podsumowanie ..................................................................................................................................696 Rozdział 23. Renderowanie sceny i korzystanie z renderera Quicksilver .... 697 Parametry renderingu ........................................................................................................................698 Inicjowanie pracy renderera ........................................................................................................698 Roleta Common Parameters .......................................................................................................700 Powiadomienia na e-mail ............................................................................................................704 Dodawanie skryptów Pre-Render i Post-Render .........................................................................704 Przypisywanie rendererów ..........................................................................................................705 Renderer Scanline A-Buffer .......................................................................................................705 Renderer Quicksilver Hardware ..................................................................................................708 Preferencje renderingu ......................................................................................................................709 Korzystanie z okna Rendered Frame ................................................................................................710 Kontrolki okna Rendered Frame .................................................................................................711 Podgląd sceny w oknie ActiveShade ..........................................................................................713 Korzystanie z modułu RAM Player ..................................................................................................713 Korzystanie z linii poleceń renderingu ..............................................................................................715 Tworzenie obrazów panoramicznych ................................................................................................716 Uzyskiwanie pomocy przy wydruku .................................................................................................717 Kreowanie środowiska ......................................................................................................................718 Renderowane środowisko sceny .................................................................................................718 Podsumowanie ..................................................................................................................................720 Rozdział 24. Stylizowanie sceny ..................................................................... 721 Wyświetlanie stylizowanych scen .....................................................................................................721 Renderowanie stylizowanych scen ....................................................................................................722 Podsumowanie ..................................................................................................................................722

Część VI Modelowanie zaawansowane ....................................... 725 Rozdział 25. Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego .................................... 727 Stosowanie kontenerów ....................................................................................................................728 Tworzenie i wypełnianie kontenerów .........................................................................................728 Zamykanie i zapisywanie kontenerów ........................................................................................729 Aktualizowanie i ponowne wczytywanie kontenerów ................................................................731 Ustalanie reguł kontenera ...........................................................................................................731 Kontenery zastępcze ...................................................................................................................731 Ustawianie ogólnych właściwości kontenerów ...........................................................................732

22

3ds Max 2012. Biblia Odnośniki do obiektów zewnętrznych ..............................................................................................732 Stosowanie odnośników do scen zewnętrznych (XRef Scenes) .................................................733 Stosowanie odnośników do obiektów zewnętrznych (XRef Objects) .........................................737 Stosowanie odnośników do materiałów zewnętrznych ...............................................................739 Dołączanie modyfikatorów .........................................................................................................740 Stosowanie obiektów zastępczych ..............................................................................................740 Odnośniki kontrolerów ...............................................................................................................740 Konfigurowanie ścieżek dla odnośników ...................................................................................741 Korzystanie z okna Schematic View .................................................................................................741 Polecenia menu Graph Editors ....................................................................................................742 Interfejs okna Schematic View ...................................................................................................743 Węzły schematu sceny ................................................................................................................746 Praca z hierarchiami ..........................................................................................................................751 Paleta Display .............................................................................................................................751 Łączenie węzłów ........................................................................................................................753 Kopiowanie modyfikatorów i materiałów między węzłami ........................................................753 Przypisywanie kontrolerów i sprzęganie parametrów .................................................................754 Ćwiczenie: Tworzenie połączeń hierarchicznych w oknie Schematic View ...............................754 Ustawianie preferencji okna Schematic View ...................................................................................755 Ograniczanie liczby wyświetlanych węzłów ..............................................................................756 Siatki i tła w oknie Schematic View ...........................................................................................757 Opcje wyświetlania .....................................................................................................................758 Ćwiczenie: Umieszczanie tła w oknie Schematic View ..............................................................758 Polecenia menu List Views (widoki list) ..........................................................................................759 Podsumowanie ..................................................................................................................................761 Rozdział 26. Stosowanie modyfikatorów siatkowych i deformowanie powierzchni .................................................... 763 Podstawy malowania deformacji ......................................................................................................764 Malowanie deformacji ................................................................................................................764 Dostęp do ustawień pędzli ..........................................................................................................765 Korzystanie z pędzli deformujących .................................................................................................766 Sterowanie kierunkiem deformacji .............................................................................................766 Ograniczanie deformacji .............................................................................................................766 Zatwierdzanie zmian ...................................................................................................................767 Użycie pędzli Relax i Revert ......................................................................................................767 Ćwiczenie: Tworzenie żył na przedramieniu ..............................................................................767 Ustawienia opcji pędzla ....................................................................................................................768 Edycja obiektów parametrycznych za pomocą modyfikatorów ........................................................769 Modyfikator Edit Mesh ...............................................................................................................770 Modyfikator Edit Poly ................................................................................................................770 Modyfikatory do edycji geometrii .....................................................................................................771 Modyfikator Cap Holes ..............................................................................................................771 Modyfikator Delete Mesh ...........................................................................................................771 Modyfikator Extrude ..................................................................................................................772 Modyfikator Face Extrude ..........................................................................................................772 Ćwiczenie: Wytłaczanie pocisku ................................................................................................772 Modyfikator ProOptimizer .........................................................................................................774 Ćwiczenie: Upraszczanie modelu dłoni ......................................................................................775 Modyfikator Quadify Mesh ........................................................................................................777 Modyfikator Smooth ...................................................................................................................778

Spis treści

23

Modyfikator Symmetry ...............................................................................................................778 Ćwiczenie: Tworzenie symetrycznego poroża ............................................................................778 Modyfikator Tessellate ...............................................................................................................779 Modyfikator Vertex Weld ...........................................................................................................779 Modyfikatory różne ..........................................................................................................................780 Modyfikator Edit Normals ..........................................................................................................780 Modyfikator Normal ...................................................................................................................782 Modyfikator STL Check .............................................................................................................782 Modyfikatory Subdivision Surfaces ..................................................................................................782 Modyfikator MeshSmooth ..........................................................................................................783 Modyfikator TurboSmooth .........................................................................................................783 Ćwiczenie: Wygładzanie poidełka dla ptaków ...........................................................................783 Modyfikator HSDS .....................................................................................................................784 Podsumowanie ..................................................................................................................................785 Rozdział 27. Obiekty złożone .......................................................................... 787 Typy obiektów złożonych .................................................................................................................787 Morfing obiektów .............................................................................................................................788 Tworzenie kluczy morfingu ........................................................................................................789 Obiekty typu Morph a modyfikator Morpher .............................................................................790 Ćwiczenie: Morfing kobiecej twarzy ..........................................................................................790 Tworzenie obiektów Conform ..........................................................................................................791 Ustalanie kierunku rzutowania wierzchołków ............................................................................792 Ćwiczenie: Modelowanie szramy na twarzy ...............................................................................793 Tworzenie obiektów typu ShapeMerge .............................................................................................793 Opcje Cookie Cutter oraz Merge ................................................................................................795 Ćwiczenie: Wykorzystanie obiektu ShapeMerge ........................................................................796 Tworzenie obiektów typu Terrain .....................................................................................................796 Kolorowanie wzniesień ...............................................................................................................798 Ćwiczenie: Modelowanie wyspy przy użyciu obiektu złożonego Terrain ..................................798 Korzystanie z obiektu Mesher ...........................................................................................................799 Praca z obiektami BlobMesh ............................................................................................................801 Ustawianie parametrów BlobMesh .............................................................................................801 Ćwiczenie: Modelowanie bryły lodu przy użyciu obiektu BlobMesh ........................................802 Tworzenie obiektów typu Scatter ......................................................................................................802 Obiekty rozpraszane (Source) .....................................................................................................803 Obiekty rozpraszające (Distribution) ..........................................................................................804 Transformacje kopii obiektu rozpraszanego ...............................................................................805 Przyspieszanie wyświetlania za pomocą obiektów zastępczych (Proxy) ....................................806 Zapisywanie i wczytywanie ustawień .........................................................................................806 Ćwiczenie: Zalesienie wyspy ......................................................................................................806 Tworzenie obiektów typu Connect ...................................................................................................807 Wypełnianie otworów w obiekcie ...............................................................................................808 Ćwiczenie: Ławka parkowa ........................................................................................................808 Obiekty typu Loft ..............................................................................................................................809 Przyciski Get Shape i Get Path ...................................................................................................810 Główne parametry powierzchni ..................................................................................................810 Parametry ścieżki ........................................................................................................................810 Dodatkowe parametry powierzchni ............................................................................................811 Ćwiczenie: Projektowanie wieszaka ...........................................................................................812 Deformacje obiektów wytłaczanych ...........................................................................................813

24

3ds Max 2012. Biblia Okno deformacji .........................................................................................................................813 Deformacja skali (Scale) .............................................................................................................816 Deformacja skręcenia (Twist) .....................................................................................................816 Deformacja przechyłu (Teeter) ...................................................................................................817 Deformacja fazowania (Bevel) ...................................................................................................817 Deformacja dopasowania (Fit) ....................................................................................................817 Edycja struktury obiektów typu Loft ..........................................................................................818 Porównywanie kształtów na ścieżce ...........................................................................................819 Edycja ścieżek ............................................................................................................................820 Ćwiczenie: Drapowanie kotary ...................................................................................................820 Obiekty Loft a narzędzia do edycji powierzchni .........................................................................821 Obiekty ProBoolean i ProCutter .......................................................................................................822 Stosowanie obiektów proboolowskich ........................................................................................822 Ćwiczenie: Wycinanie dziurki od klucza ....................................................................................824 Obiekt ProCutter .........................................................................................................................825 Ćwiczenie: Tworzenie puzzli ......................................................................................................826 Podsumowanie ..................................................................................................................................827 Rozdział 28. Praca z bryłami, czyli obiektami pełnymi ................................. 829 Importowanie obiektów CAD ...........................................................................................................830 Konwertowanie obiektów Maksa do postaci Body ...........................................................................831 Praca z obiektami typu Body ............................................................................................................831 Edycja obiektów typu Body ........................................................................................................831 Działanie modyfikatorami na obiekty Body ...............................................................................832 Obiekty Body a operacje boolowskie .........................................................................................832 Obiekty Join Bodies i Body Cutter .............................................................................................834 Ustalanie parametrów wyświetlania i renderingu .......................................................................834 Eksportowanie obiektów Body .........................................................................................................835 Podsumowanie ..................................................................................................................................836 Rozdział 29. Tworzenie i układanie włosów, futer oraz tkanin ................... 837 Podstawy modelowania włosów .......................................................................................................838 Opracowywanie włosów ...................................................................................................................839 Pokrywanie włosami ...................................................................................................................839 Określanie właściwości włosów .................................................................................................840 Ćwiczenie: Dodawanie frędzli do narzuty ..................................................................................842 Stylizowanie włosów ........................................................................................................................843 Korzystanie z interfejsu Style .....................................................................................................844 Ćwiczenie: Tworzenie włochatych kości do gry .........................................................................846 Korzystanie z ustawień predefiniowanych ..................................................................................847 Klonowanie włosów ...................................................................................................................847 Renderowanie włosów ......................................................................................................................848 Istota tkanin .......................................................................................................................................849 Modelowanie tkanin ..........................................................................................................................850 Modelowanie ubiorów przy użyciu modyfikatora Garment Maker ............................................850 Tworzenie elementów ubrań z obiektów geometrycznych .........................................................851 Ćwiczenie: Ubieranie trójwymiarowej postaci ...........................................................................853 Podsumowanie ..................................................................................................................................854

Spis treści

25

Część VII Materiały w ujęciu zaawansowanym .......................... 857 Rozdział 30. Stosowanie materiałów specjalnych ........................................ 859 Materiał Matte/Shadow .....................................................................................................................860 Roleta Matte/Shadow Basic Parameters .....................................................................................860 Ćwiczenie: Dodawanie trójwymiarowych obiektów do obrazu w tle .........................................860 Materiał Ink ’n’ Paint ........................................................................................................................862 Ustawienia farby i tuszu .............................................................................................................862 Ćwiczenie: Żółw rodem z kreskówki ..........................................................................................863 Materiały architektoniczne ................................................................................................................864 Materiały DirectX Shader i MetaSL .................................................................................................865 Materiały i shadery mental ray ..........................................................................................................866 Czym są shadery? .......................................................................................................................867 Stosowanie materiałów i shaderów mental ray ...........................................................................867 Biblioteka Autodesk Material Library i materiały Arch & Design .............................................868 Materiał Car Paint .......................................................................................................................870 Materiały z rozpraszaniem podpowierzchniowym ......................................................................870 Podsumowanie ..................................................................................................................................870 Rozdział 31. Proceduralne tekstury substancyjne ........................................ 873 Posługiwanie się teksturami substancyjnymi ....................................................................................873 Wczytywanie substancyjnych tekstur .........................................................................................874 Łączenie substancyjnych map .....................................................................................................875 Różnicowanie tekstur substancyjnych ........................................................................................876 Ćwiczenie: Stosowanie tekstur substancyjnych ..........................................................................877 Podsumowanie ..................................................................................................................................878 Rozdział 32. Malowanie w oknach widokowych i renderowanie map powierzchni ............................................. 879 Korzystanie z funkcji Viewport Canvas ............................................................................................880 Przygotowanie obiektu do malowania ........................................................................................881 Posługiwanie się narzędziami malarskimi ..................................................................................881 Malowanie obrazami ..................................................................................................................883 Malowanie na warstwach ............................................................................................................885 Malowanie w dwóch wymiarach ................................................................................................886 Opcje malowania ........................................................................................................................887 Ćwiczenie: Malowanie twarzy ....................................................................................................888 Kolorowanie wierzchołków ..............................................................................................................889 Przypisywanie kolorów wierzchołkom .......................................................................................889 Malowanie wierzchołków przy użyciu modyfikatora Vertex Paint ............................................890 Ćwiczenie: Oznaczanie naprężenia mięśni serca ........................................................................892 Narzędzie Assign Vertex Color ..................................................................................................893 Renderowanie map powierzchni .......................................................................................................893 Podsumowanie ..................................................................................................................................896 Rozdział 33. Rozwijanie współrzędnych UV i mapowanie tekstur ............... 897 Modyfikatory mapowania .................................................................................................................898 Modyfikator UVW Map .............................................................................................................898 Ćwiczenie: Używanie modyfikatora UVW Map do nakładania kalkomanii ...............................899 Modyfikatory UVW Mapping Add i Clear .................................................................................900 Modyfikator UVW XForm .........................................................................................................900

26

3ds Max 2012. Biblia Modyfikator Map Scaler .............................................................................................................901 Modyfikator Camera Map ..........................................................................................................901 Używanie modyfikatora Unwrap UVW ............................................................................................901 Zaznaczanie podobiektów ...........................................................................................................902 Otwieranie edytora współrzędnych UVW ..................................................................................903 Poprawianie mapowania w oknie widokowym ...........................................................................903 Szybkie mapowanie planarne .....................................................................................................903 Zapisywanie i wczytywanie współrzędnych mapowania ............................................................903 Okno Edit UVWs ..............................................................................................................................904 Zaznaczanie podobiektów w edytorze ........................................................................................905 Nawigowanie w obszarze roboczym edytora ..............................................................................907 Narzędzia z rolety Quick Transform ...........................................................................................907 Prostowanie i rozluźnianie klastrów ...........................................................................................909 Zszywanie i spawanie .................................................................................................................910 Dzielenie na klastry przez spłaszczanie ......................................................................................912 Układanie i grupowanie klastrów ...............................................................................................914 Opcje edytora współrzędnych UV ..............................................................................................915 Ćwiczenie: Sterowanie mapowaniem wozu z plandeką ..............................................................916 Renderowanie szablonów UV .....................................................................................................917 Mapowanie wielu obiektów ........................................................................................................919 Ćwiczenie: Mapowanie modelu samolotu ..................................................................................919 Mapowanie krzywoliniowe .........................................................................................................921 Ćwiczenie: Mapowanie węża .....................................................................................................922 Rozwijanie pasów z pętli ............................................................................................................923 Mapowanie łupinowe i skórkowe .....................................................................................................924 Wyznaczanie szwów ...................................................................................................................924 Mapowanie łupinowe ..................................................................................................................925 Mapowanie skórkowe .................................................................................................................927 Ćwiczenie: Zastosowanie mapowania skórkowego ....................................................................931 Podsumowanie ..................................................................................................................................931 Rozdział 34. Tworzenie wypiekanych tekstur i map normalnych ............... 933 Używanie kanałów ............................................................................................................................934 Korzystanie z okna Map Channel Info ........................................................................................934 Modyfikator Select by Channel ..................................................................................................935 Renderowanie do tekstury .................................................................................................................935 Roleta General Settings ..............................................................................................................936 Wybieranie obiektów do wypiekania ..........................................................................................936 Ustawienia wyjściowe (Output) ..................................................................................................937 Wypiekany materiał i mapowanie automatyczne ........................................................................938 Ćwiczenie: Wypiekanie tekstur dla modelu psa .........................................................................939 Tworzenie map normalnych ..............................................................................................................939 Używanie modyfikatora Projection ............................................................................................940 Ustawienia Projection Mapping ..................................................................................................941 Ćwiczenie: Tworzenie mapy normalnych dla zoptymalizowanego aligatora .............................942 Podsumowanie ..................................................................................................................................943

Spis treści

27

Część VIII Zaawansowane techniki animowania ........................ 945 Rozdział 35. Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów ............................................................ 947 Posługiwanie się narzędziami z paska Animation Layers .................................................................948 Praca z warstwami animacji ..............................................................................................................949 Włączanie systemu warstw animacji ..........................................................................................950 Ustawianie właściwości warstw animacji ...................................................................................950 Scalanie warstw animacji ............................................................................................................950 Ćwiczenie: Animowanie startu samolotu z użyciem warstw animacji ........................................951 Zapisywanie plików animacji ...........................................................................................................952 Zapisywanie zwykłych animacji .................................................................................................952 Wczytywanie plików animacji ..........................................................................................................953 Mapowanie animowanych obiektów ..........................................................................................954 Korzystanie z okna Map Animation ...........................................................................................954 Przenoszenie animacji .................................................................................................................955 Buforowanie kluczy animacji za pomocą modyfikatora Point Cache ...............................................955 Ćwiczenie: Drzewa podczas wichury .........................................................................................957 Stosowanie modyfikatorów animacji ................................................................................................957 Modyfikator Morpher .................................................................................................................958 Ćwiczenie: Zmienianie wyrazów twarzy ....................................................................................959 Używanie modyfikatora Flex ......................................................................................................960 Modyfikator Melt ........................................................................................................................964 Modyfikatory PatchDeform i SurfDeform ..................................................................................964 Ćwiczenie: Deformowanie samochodu na szczycie wzgórza .....................................................965 Modyfikator PathDeform ............................................................................................................966 Modyfikator Linked XForm .......................................................................................................967 Modyfikator SplineIK Control ....................................................................................................967 Modyfikator Attribute Holder .....................................................................................................968 Przegląd kontrolerów złożonych .......................................................................................................968 Kontrolery transformacji (Transform) ........................................................................................968 Kontrolery ścieżki Position .........................................................................................................969 Kontrolery ścieżek Rotation i Scale ............................................................................................975 Kontrolery parametrów ...............................................................................................................976 Podsumowanie ..................................................................................................................................983 Rozdział 36. Animowanie przy użyciu kontrolera Expression i wiązania parametrów .............................................................. 985 Używanie wyrażeń w spinerach ........................................................................................................986 Interfejs kontrolera Expression .........................................................................................................986 Definiowanie zmiennych ............................................................................................................987 Tworzenie wyrażeń .....................................................................................................................988 Debugowanie i obliczanie wyrażeń ............................................................................................989 Zarządzanie wyrażeniami ...........................................................................................................990 Ćwiczenie: Oczy śledzące ruch ..................................................................................................990 Używanie kontrolerów Expression ...................................................................................................991 Animowanie transformacji za pomocą kontrolera Expression ....................................................992 Animowanie parametrów za pomocą kontrolera Float Expression .............................................992 Ćwiczenie: Nadmuchiwanie balonu ............................................................................................992 Animowanie materiałów za pomocą kontrolera Expression ......................................................993

28

3ds Max 2012. Biblia Wiązanie parametrów (Parameters Wiring) ......................................................................................994 Używanie okna dialogowego Parameter Wiring .........................................................................994 Manipulatory pomocnicze ..........................................................................................................995 Ćwiczenie: Sterowanie zgryzem krokodyla ................................................................................996 Gromadzenie parametrów (Parameter Collector) ..............................................................................998 Dodawanie nowych parametrów (Parameter Editor) ......................................................................1000 Podsumowanie ................................................................................................................................1002 Rozdział 37. Praca z krzywymi funkcyjnymi w oknie Track View .............. 1003 Omówienie okna Track View .........................................................................................................1004 Tryby okna Track View ............................................................................................................1004 Menu i paski narzędziowe okna Track View ............................................................................1006 Panele kontrolerów i kluczy ......................................................................................................1011 Używanie kluczy .............................................................................................................................1013 Zaznaczanie kluczy ...................................................................................................................1014 Używanie miękkiego zaznaczania ............................................................................................1014 Dodawanie i usuwanie kluczy ..................................................................................................1015 Przemieszczanie, przesuwanie i skalowanie kluczy ..................................................................1015 Posługiwanie się narzędziem Region ........................................................................................1015 Edycja kluczy ...........................................................................................................................1016 Używanie narzędzia Randomize Keys ......................................................................................1016 Stosowanie narzędzia Euler Filter .............................................................................................1017 Wyświetlanie ikon dostępności animacji ..................................................................................1017 Edycja zakresów czasowych ...........................................................................................................1018 Zaznaczanie czasu i narzędzie Select Keys by Time ................................................................1018 Usuwanie, wycinanie, kopiowanie i wklejanie czasu ...............................................................1018 Odwracanie, wstawianie i skalowanie czasu .............................................................................1019 Ustawianie zakresów ................................................................................................................1019 Edycja krzywych .............................................................................................................................1019 Wstawianie i przemieszczanie kluczy .......................................................................................1020 Ćwiczenie: Animowanie kolejki jednotorowej .........................................................................1020 Rysowanie krzywych funkcyjnych ...........................................................................................1022 Ograniczanie liczby kluczy .......................................................................................................1022 Używanie stycznych .................................................................................................................1024 Ćwiczenie: Animowanie płynącej rzeki ....................................................................................1025 Stosowanie krzywych pozazakresowych, rozluźniających i mnożnikowych ............................1026 Ćwiczenie: Animowanie nakręcanego czajnika ........................................................................1028 Filtrowanie ścieżek i tworzenie zestawów ścieżek ..........................................................................1031 Używanie okna dialogowego Filters .........................................................................................1031 Tworzenie zestawu ścieżek .......................................................................................................1032 Używanie kontrolerów ....................................................................................................................1032 Używanie ścieżek widoczności .................................................................................................1033 Dodawanie ścieżek z notatkami ................................................................................................1033 Ćwiczenie: Animowanie światła ostrzegawczego ....................................................................1034 Ćwiczenie: Animowanie ruchu w warcabach ...........................................................................1035 Korzystanie z modułu ProSound .....................................................................................................1038 Ćwiczenie: Dodawanie dźwięku do animacji ...........................................................................1040 Podsumowanie ................................................................................................................................1041

Spis treści

29

Część IX Praca z postaciami ...................................................... 1043 Rozdział 38. Systemy szkieletowe, riggowanie i kinematyka .................... 1045 Przygotowanie do procesu riggowania ............................................................................................1046 Budowanie systemu kości ...............................................................................................................1047 Przypisywanie algorytmu IK ....................................................................................................1047 Ustalanie parametrów kości ......................................................................................................1048 Ćwiczenie: Tworzenie systemu kości dla aligatora ..................................................................1048 Korzystanie z okna Bone Tools ......................................................................................................1050 Układanie kości ........................................................................................................................1051 Dopasowywanie kości ..............................................................................................................1052 Kolorowanie kości ....................................................................................................................1052 Regulacja płetw ........................................................................................................................1052 Zamiana obiektów w kości .......................................................................................................1052 Kinematyka prosta kontra kinematyka odwrotna ............................................................................1053 Tworzenie systemu kinematyki odwrotnej ......................................................................................1054 Budowa i łączenie systemu .......................................................................................................1054 Wybór terminatora ....................................................................................................................1054 Definiowanie ograniczeń złączy ...............................................................................................1055 Kopiowanie, wklejanie i tworzenie lustrzanych odbić złączy .....................................................1056 Wiązanie obiektów ...................................................................................................................1056 Hierarchia ważności ..................................................................................................................1056 Ćwiczenie: Sterowanie koparką ................................................................................................1057 Korzystanie z różnych metod kinematyki odwrotnej ......................................................................1059 Interactive IK ............................................................................................................................1059 Applied IK ................................................................................................................................1061 Algorytm History Independent IK ............................................................................................1062 Algorytm History Dependent IK ...............................................................................................1066 Ćwiczenie: Animacja lunety z wykorzystaniem algorytmu HD IK ..........................................1068 Algorytm IK Limb ....................................................................................................................1068 Ćwiczenie: Animacja nogi pająka .............................................................................................1069 Algorytm Spline IK ..................................................................................................................1071 Ćwiczenie: Tworzenie aligatora z wykorzystaniem algorytmu Spline IK ................................1071 Podsumowanie ................................................................................................................................1072 Rozdział 39. Animowanie postaci przy użyciu modułu CAT ........................ 1075 Proces tworzenia postaci .................................................................................................................1075 Tworzenie dwunoga ........................................................................................................................1076 Korzystanie z gotowych szkieletów ..........................................................................................1076 Modyfikowanie szkieletów gotowych ......................................................................................1077 Modyfikowanie geometrii kości ...............................................................................................1079 Ćwiczenie: Edycja kości głowy ................................................................................................1080 Budowanie szkieletu CAT od podstaw .....................................................................................1081 Nadawanie nazw kościom szkieletu .........................................................................................1082 Ćwiczenie: Konstruowanie szkieletu CAT dopasowanego do siatki istniejącego już modelu ..1083 Animowanie szkieletu CAT ............................................................................................................1084 Mieszanie zasadniczych warstw animacyjnych ........................................................................1086 Warstwy korekcyjne .................................................................................................................1088 Tworzenie cyklu spacerowego przy użyciu warstwy CAT Motion ..........................................1088 Ćwiczenie: Animowanie postaci kroczącej po ścieżce .............................................................1091

30

3ds Max 2012. Biblia Praca z mięśniami ...........................................................................................................................1092 Stosowanie mięśni typu Muscle Strand ....................................................................................1092 Stosowanie mięśni płaskich ......................................................................................................1094 Ćwiczenie: Dodawanie mięśni do szkieletu ..............................................................................1095 Podsumowanie ................................................................................................................................1096 Rozdział 40. Nakładanie skóry ...................................................................... 1099 Zrozumienie kreowanej postaci ......................................................................................................1099 Klątwa i błogosławieństwo symetrii .........................................................................................1100 Diabeł tkwi w szczegółach ........................................................................................................1100 Modyfikatory Skin ..........................................................................................................................1101 Zrozumienie procesu skórowania .............................................................................................1101 Wiązanie siatki z systemem kości .............................................................................................1102 Stosowanie modyfikatorów Skin Wrap ....................................................................................1113 Ćwiczenie: Spacerująca butelka ................................................................................................1114 Korzystanie z modyfikatora Skin Morph ..................................................................................1114 Ćwiczenie: Napinanie mięśni ramienia .....................................................................................1115 Techniki animowania postaci ..........................................................................................................1117 Podsumowanie ................................................................................................................................1118

Część X Animacja dynamiczna .................................................. 1119 Rozdział 41. Cząsteczki i system Particle Flow ............................................ 1121 Omówienie różnych systemów cząsteczkowych .............................................................................1122 Tworzenie systemu cząsteczkowego ...............................................................................................1122 Tworzenie systemów cząsteczkowych Spray i Snow ......................................................................1123 Ćwiczenie: Tworzenie deszczu .................................................................................................1124 Ćwiczenie: Tworzenie śnieżycy ...............................................................................................1125 System cząsteczkowy Super Spray .................................................................................................1126 Roleta Basic Parameters systemu Super Spray .........................................................................1126 Roleta Particle Generation ........................................................................................................1127 Roleta Particle Type .................................................................................................................1128 Roleta Rotation and Collision ...................................................................................................1133 Ćwiczenie: Trening koszykarski ...............................................................................................1134 Roleta Object Motion Inheritance .............................................................................................1136 Roleta Bubble Motion ...............................................................................................................1136 Roleta Particle Spawn ...............................................................................................................1136 Roleta Load/Save Presets ..........................................................................................................1138 System cząsteczkowy Blizzard .......................................................................................................1138 System cząsteczkowy PArray .........................................................................................................1139 Dzielenie obiektu na fragmenty ................................................................................................1140 Ćwiczenie: Unosząca się para wodna .......................................................................................1140 System cząsteczkowy PCloud .........................................................................................................1141 Przypisywanie map systemom cząsteczkowym ..............................................................................1142 Stosowanie mapy Particle Age .................................................................................................1142 Stosowanie mapy Particle MBlur .............................................................................................1142 Ćwiczenie: Ogień wydobywający się z silników odrzutowca ...................................................1142 Sterowanie cząsteczkami w systemie Particle Flow ........................................................................1143 Okno Particle View ...................................................................................................................1144 Przepływ standardowy ..............................................................................................................1145 Akcje ........................................................................................................................................1146

Spis treści

31

Ćwiczenie: Symulacja lawiny ...................................................................................................1146 Korzystanie z obiektów pomocniczych systemu Particle Flow ................................................1147 Wiązanie zdarzeń ......................................................................................................................1147 Ćwiczenie: Ćmy lecące ku światłu ...........................................................................................1148 Akcje testowe ...........................................................................................................................1150 Ćwiczenie: Ostrzał uciekającego statku kosmicznego ..............................................................1150 Podsumowanie ................................................................................................................................1151 Rozdział 42. Stosowanie pól sił .................................................................... 1153 Tworzenie pól sił i przyłączanie do nich obiektów .........................................................................1153 Tworzenie pola sił .....................................................................................................................1154 Przyłączanie obiektu do pola sił ...............................................................................................1154 Różne typy pól sił ...........................................................................................................................1154 Pola sił z kategorii Forces .........................................................................................................1155 Pola sił z kategorii Deflectors ...................................................................................................1163 Pola sił z kategorii Geometric/Deformable ...............................................................................1166 Pola sił z kategorii Modifier-Based ..........................................................................................1171 Łączenie systemów cząsteczkowych z polami sił ...........................................................................1172 Ćwiczenie: Rozbijanie lustra ....................................................................................................1172 Ćwiczenie: Woda płynąca rynną ...............................................................................................1173 Podsumowanie ................................................................................................................................1175 Rozdział 43. Wykorzystanie systemu MassFX do symulacji ruchów zgodnych z zasadami dynamiki ............................................... 1177 Zrozumienie dynamiki ....................................................................................................................1178 Korzystanie z systemu MassFX ......................................................................................................1179 Funkcjonowanie systemu MassFX ...........................................................................................1180 Ustalanie parametrów symulacji ...............................................................................................1180 Uruchamianie i zatrzymywanie symulacji ................................................................................1181 Ćwiczenie: Wypełnianie naczynia kulkami ..............................................................................1182 Ustawianie właściwości obiektów ..................................................................................................1182 Ustalanie typu obiektu ..............................................................................................................1182 Zapisywanie gotowych zestawów właściwości ........................................................................1185 Ustalanie warunków początkowych ..........................................................................................1187 Wyświetlanie elementów interaktywnych ................................................................................1187 Ćwiczenie: Przewracanie baniek na mleko ...............................................................................1187 Stosowanie więzów .........................................................................................................................1188 Ćwiczenie: Otwieranie drzwi ....................................................................................................1190 Rejestrowanie symulacji ruchu w postaci kluczy animacyjnych .....................................................1191 Ćwiczenie: Upuszczanie talerza z pączkami .............................................................................1192 Podsumowanie ................................................................................................................................1193 Rozdział 44. Animowanie włosów i tkanin .................................................. 1195 Dynamika włosów ..........................................................................................................................1195 Ożywianie włosów ....................................................................................................................1195 Ustawianie właściwości ............................................................................................................1196 Włączanie zderzeń ....................................................................................................................1196 Uaktywnianie sił .......................................................................................................................1197 Uruchamianie symulacji ...........................................................................................................1197 Ćwiczenie: Symulacja dynamiki włosów .................................................................................1197 Symulowanie dynamiki tkanin ........................................................................................................1198 Ustalanie parametrów tkanin i sił ..............................................................................................1198

32

3ds Max 2012. Biblia Tworzenie symulacji tkaniny ....................................................................................................1199 Podgląd naprężeń występujących w tkaninie ............................................................................1200 Ćwiczenie: Przykrywanie samolotu plandeką ...........................................................................1201 Podsumowanie ................................................................................................................................1203

Część XI Zaawansowane techniki oświetlania i renderingu ... 1205 Rozdział 45. Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna ............................................................ 1207 Wybieranie zaawansowanego oświetlenia ......................................................................................1208 Zasada działania systemu Light Tracer .....................................................................................1208 Włączanie śledzenia światła .....................................................................................................1209 Ćwiczenie: Podgląd przesączania się kolorów ..........................................................................1211 Używanie lokalnych ustawień zaawansowanego oświetlenia .........................................................1212 Ćwiczenie: Wyłączanie obiektów z systemu śledzenia światła .......................................................1213 Metoda energetyczna (Radiosity) ....................................................................................................1214 Oświetlenie dla metody energetycznej ......................................................................................1215 Ćwiczenie: Oświetlenie wnętrza budynku przy użyciu metody energetycznej .........................1219 Używanie lokalnych i globalnych ustawień zaawansowanego oświetlenia ....................................1220 Materiały współpracujące z oświetleniem zaawansowanym ...........................................................1221 Materiał typu Advanced Lighting Override ..............................................................................1221 Materiał typu Lightscape ..........................................................................................................1222 Korzystanie z analizy oświetlenia (Lighting Analysis) ...................................................................1223 Podsumowanie ................................................................................................................................1224 Rozdział 46. Stosowanie efektów renderowanych i atmosferycznych ..... 1227 Ustawianie ekspozycji .....................................................................................................................1228 Kontrole ekspozycji: automatyczna, liniowa i logarytmiczna ...................................................1228 Kontrola ekspozycji metodą Pseudo Color ...............................................................................1229 Ustawianie ekspozycji metodą fotograficzną ............................................................................1230 Ćwiczenie: Stosowanie logarytmicznej kontroli ekspozycji .....................................................1230 Tworzenie efektów atmosferycznych ..............................................................................................1231 Praca z gizmami efektów atmosferycznych ..............................................................................1231 Dodawanie efektów do sceny ...................................................................................................1232 Efekt ognia (Fire Effect) .................................................................................................................1232 Ćwiczenie: Tworzenie Słońca ...................................................................................................1235 Ćwiczenie: Tworzenie chmur ...................................................................................................1235 Efekt mgły (Fog) .............................................................................................................................1236 Efekt mgły wolumetrycznej (Volume Fog) ..............................................................................1238 Ćwiczenie: Tworzenie mokradeł ..............................................................................................1239 Efekt światła wolumetrycznego (Volume Light) ......................................................................1240 Dodawanie efektów renderowanych ...............................................................................................1240 Tworzenie efektów obiektywu (Lens Effects) ................................................................................1242 Parametry globalne ...................................................................................................................1242 Poświata (Glow) .......................................................................................................................1244 Ćwiczenie: Porażająca elektryczność z gniazdka .....................................................................1247 Ćwiczenie: Tworzenie neonu ....................................................................................................1248 Pierścień (Ring) ........................................................................................................................1249 Promień (Ray) ...........................................................................................................................1249 Gwiazdka (Star) ........................................................................................................................1250 Smuga (Streak) .........................................................................................................................1250

Spis treści

33

Auto Secondary ........................................................................................................................1250 Manual Secondary ....................................................................................................................1252 Ćwiczenie: Nadawanie błysku samolotowi ...............................................................................1252 Stosowanie pozostałych efektów renderowanych ...........................................................................1253 Efekt rozmycia (Blur) ...............................................................................................................1253 Efekt jasności i kontrastu (Brightness and Contrast) ................................................................1254 Efekt równowagi barw (Color Balance) ...................................................................................1255 Efekt File Output ......................................................................................................................1255 Efekt ziarnistości (Film Grain) .................................................................................................1256 Efekt rozmycia ruchu (Motion Blur) ........................................................................................1256 Efekt głębi ostrości (Depth of Field) .........................................................................................1256 Podsumowanie ................................................................................................................................1257 Rozdział 47. Renderery mental ray i iray .................................................... 1259 Włączanie renderera mental ray ......................................................................................................1259 Obsługa renderera iray ....................................................................................................................1261 Ćwiczenie: Uruchamianie renderera iray ..................................................................................1262 Preferencje renderera mental ray .....................................................................................................1263 Światła i cienie w mental ray ..........................................................................................................1264 Uaktywnianie map cieni mental ray ..........................................................................................1264 System światła dziennego mental ray .......................................................................................1264 Światło mental ray Sky Portal ...................................................................................................1266 Efekty kaustyczne i fotony ..............................................................................................................1267 Ćwiczenie: Wykorzystanie fotonów kaustycznych do utworzenia kuli dyskotekowej .............1268 Uaktywnianie kaustyki i globalnej iluminacji dla obiektów .....................................................1269 Oświetlenie pośrednie (Indirect Illumination) ....................................................................................1270 Kontrola renderingu ..................................................................................................................1271 Zaawansowany mental ray ........................................................................................................1272 Korzystanie z obiektów zastępczych mental ray .......................................................................1272 Podsumowanie ................................................................................................................................1274 Rozdział 48. Rendering wsadowy i sieciowy ............................................... 1275 Wsadowy rendering scen ................................................................................................................1275 Korzystanie z narzędzia Batch Render .....................................................................................1276 Zarządzanie stanami scen .........................................................................................................1276 Tworzenie pliku wykonawczego ..............................................................................................1277 Zasady renderingu sieciowego ........................................................................................................1277 Konfiguracja systemu renderingu sieciowego .................................................................................1278 Uruchamianie systemu renderingu sieciowego ...............................................................................1279 Ćwiczenie: Inicjacja systemu renderingu sieciowego ...............................................................1279 Ćwiczenie: Przeprowadzenie pierwszego renderingu sieciowego ............................................1280 Opcje zlecania zadania ..............................................................................................................1283 Konfigurowanie menedżera i serwerów sieciowych .......................................................................1284 Ustawienia menedżera renderingu ............................................................................................1284 Ustawienia serwerów sieciowych .............................................................................................1285 Informacje o działaniu farmy renderującej ......................................................................................1286 Korzystanie z narzędzia Monitor ....................................................................................................1286 Zadania .....................................................................................................................................1287 Serwery .....................................................................................................................................1288 Podsumowanie ................................................................................................................................1289

34

3ds Max 2012. Biblia Rozdział 49. Komponowanie przy użyciu interfejsu Video Post i elementów renderingu .......................................................... 1291 Komponowanie za pomocą odrębnych programów ........................................................................1292 Komponowanie z użyciem Photoshopa ....................................................................................1292 Edycja wideo z użyciem programu Premiere ............................................................................1294 Kompozycja wideo z użyciem programu After Effects ............................................................1294 Ćwiczenie: Dodawanie efektów animacyjnych przy użyciu After Effects ...............................1294 Wprowadzenie do programu Composite ...................................................................................1295 Stosowanie elementów renderingu ..................................................................................................1296 Przeprowadzanie postprodukcji w oknie Video Post ......................................................................1298 Pasek narzędziowy Video Post .................................................................................................1300 Kolejka i zasięgi zdarzeń w Video Post ....................................................................................1300 Pasek stanu okna Video Post ....................................................................................................1300 Praca z sekwencjami .......................................................................................................................1302 Dodawanie i edycja zdarzeń ............................................................................................................1303 Dodawanie zdarzeń Image Input ...............................................................................................1303 Dodawanie zdarzeń Scene ........................................................................................................1305 Dodawanie zdarzeń Image Filter ..............................................................................................1306 Dodawanie zdarzeń Image Layer ..............................................................................................1309 Dodawanie zdarzeń zewnętrznych ............................................................................................1310 Używanie zdarzeń Loop ...........................................................................................................1310 Dodawanie zdarzenia Image Output .........................................................................................1311 Praca z zasięgami zdarzeń ...............................................................................................................1312 Praca z filtrami efektów obiektywu (Lens Effects) .........................................................................1313 Dodawanie efektu flary (Lens Effect Flare) ..............................................................................1314 Dodawanie efektu Focus ...........................................................................................................1315 Dodawanie efektu Glow ...........................................................................................................1315 Dodawanie odbłysków (highlights) ..........................................................................................1317 Ćwiczenie: Tworzenie blasku aureoli .......................................................................................1317 Dodawanie tła i filtrów w Video Post .......................................................................................1318 Podsumowanie ................................................................................................................................1320

Dodatki ..................................................................................... 1321 Dodatek A Co nowego w 3ds Max 2012? ..................................................... 1323 Główne udoskonalenia ....................................................................................................................1323 Sterownik Nitrous .....................................................................................................................1324 Renderingi stylizowane .............................................................................................................1324 Nowe narzędzia modelujące Graphite ......................................................................................1324 Proceduralne tekstury substancyjne ..........................................................................................1324 Ulepszony interfejs edytora współrzędnych UVW ...................................................................1324 Ulepszony edytor krzywych .....................................................................................................1325 Fizyka MassFX .........................................................................................................................1325 Renderer iray ............................................................................................................................1325 Drobniejsze ulepszenia ...................................................................................................................1325 Dodatek B Zawartość płyty CD .................................................................... 1327 Wymagania systemowe ...................................................................................................................1327 Zawartość płyty DVD .....................................................................................................................1328 Materiały przygotowane przez autora książki ...........................................................................1328

Spis treści

35

Programy ..................................................................................................................................1328 Modele 3D ................................................................................................................................1329 Rozwiązywanie problemów ............................................................................................................1329 Dodatek C Instalacja i konfigurowanie programu 3ds Max 2012 .............. 1331 Wybór systemu operacyjnego .........................................................................................................1331 Wymagania sprzętowe ....................................................................................................................1332 Instalacja programu 3ds Max 2012 .................................................................................................1333 Rejestracja i aktywacja programu ...................................................................................................1337 Wybór sterownika grafiki ...............................................................................................................1337 Opcja Nitrous ............................................................................................................................1338 Opcja Direct3D .........................................................................................................................1338 Opcja OpenGL ..........................................................................................................................1338 Opcja Software .........................................................................................................................1339 Uaktualnianie Maksa ......................................................................................................................1339 Przenoszenie Maksa na inny komputer ...........................................................................................1339 Dodatek D Skróty klawiszowe w 3ds Max 2012 .......................................... 1341 Stosowanie skrótów klawiszowych .................................................................................................1341 Korzystanie z mapy skrótów ...........................................................................................................1342 Skróty głównego interfejsu .............................................................................................................1342 Skróty okien dialogowych ..............................................................................................................1352 Skróty klawiszowe Character Studio ..............................................................................................1357 Inne skróty klawiszowe ...................................................................................................................1358 Dodatek E Interfejs Asset Tracking ............................................................. 1359 Konfigurowanie systemu zarządzania zasobami .............................................................................1359 Wpisywanie i wypisywanie ......................................................................................................1360 Korzystanie z interfejsu Asset Tracking ...................................................................................1360 Logowanie ................................................................................................................................1361 Wybór folderu roboczego .........................................................................................................1361 Pobieranie i dodawanie plików w systemie Vault .....................................................................1362 Otwieranie starszych wersji pliku .............................................................................................1363 Zmienianie ścieżek dostępu do zasobów ..................................................................................1363 Uproszczone wersje obrazów (proxies) ....................................................................................1363 Podsumowanie ................................................................................................................................1364 Dodatek F Modelowanie przy użyciu łat ..................................................... 1365 Wprowadzenie do powierzchni sklejanych .....................................................................................1365 Tworzenie łat ............................................................................................................................1366 Ćwiczenie: Tworzenie szachownicy .........................................................................................1366 Edycja łat ........................................................................................................................................1368 Obiekty Editable Patch a modyfikator Edit Patch .....................................................................1368 Zaznaczanie podobiektów powierzchni sklejanej .....................................................................1368 Edycja geometrii łat ..................................................................................................................1370 Edycja wierzchołków ................................................................................................................1372 Edycja uchwytów (tryb Handle) ...............................................................................................1376 Edycja krawędzi (tryb Edge) ....................................................................................................1376 Edycja łat i elementów (tryby Patch i Element) ........................................................................1378 Ćwiczenie: Tworzenie modelu liścia klonowego z wykorzystaniem łat ...................................1381

36

3ds Max 2012. Biblia Nakładanie modyfikatorów na powierzchnie sklejane ....................................................................1382 Modyfikator Patch Select ..........................................................................................................1382 Modyfikator Edit Patch .............................................................................................................1383 Modyfikator Delete Patch .........................................................................................................1383 Korzystanie z narzędzi Surface .................................................................................................1383 Podsumowanie ................................................................................................................................1386 Dodatek G Praca z obiektami NURBS ........................................................... 1387 Wytłaczanie powierzchni NURBS ..................................................................................................1387 Ćwiczenie: Tworzenie modelu łyżeczki przy użyciu narzędzia U Loft ....................................1387 Tworzenie powierzchni UV Loft ....................................................................................................1388 Tworzenie brył obrotowych NURBS ..............................................................................................1389 Ćwiczenie: Modelowanie wazonu przy użyciu krzywej NURBS CV ......................................1389 Tworzenie powierzchni typu 1-Rail Sweep i 2-Rail Sweep ............................................................1390 Ćwiczenie: Tworzenie łodygi kwiatu .......................................................................................1391 Rzeźbienie prostokątnej powierzchni NURBS ...............................................................................1392 Ćwiczenie: Tworzenie liścia NURBS .......................................................................................1392 Ćwiczenie: Formowanie płatka kwiatowego ............................................................................1393 Modyfikatory NURBS ....................................................................................................................1395 Podsumowanie ................................................................................................................................1397 Dodatek H Kompaktowy edytor materiałów .............................................. 1399 Praca z edytorem materiałów ..........................................................................................................1399 Korzystanie z narzędzi edytora materiałów ..............................................................................1399 Posługiwanie się polami próbek ...............................................................................................1400 Nadawanie materiałom nazw ....................................................................................................1405 Wczytywanie nowych materiałów ............................................................................................1405 Przypisywanie materiałów do obiektów ...................................................................................1406 Pobieranie materiałów ze sceny ................................................................................................1406 Zaznaczanie obiektów według materiału ..................................................................................1407 Podgląd materiałów i renderowanie map ..................................................................................1407 Opcje edytora materiałów .........................................................................................................1408 Resetowanie materiałów ...........................................................................................................1410 Usuwanie materiałów i map ......................................................................................................1410 Posługiwanie się narzędziem Fix Ambient ...............................................................................1410 Ćwiczenie: Kolorowanie jajek wielkanocnych .........................................................................1411 Podsumowanie ................................................................................................................................1411 Dodatek I Tworzenie i animowanie dwunogów ......................................... 1413 Proces tworzenia postaci .................................................................................................................1413 Tworzenie dwunoga ........................................................................................................................1414 Edycja dwunoga .......................................................................................................................1416 Dodatki (Xtras) .........................................................................................................................1419 Modyfikowanie dwunoga .........................................................................................................1419 Ustawianie opcji wyświetlania dwunoga ..................................................................................1421 Zaznaczanie ścieżek ..................................................................................................................1422 Przesuwanie i obracanie całego dwunoga .................................................................................1422 Ćwiczenie: Skok z trampoliny ..................................................................................................1423 Wyginanie złączy ......................................................................................................................1423 Ustawianie postaw i póz ...........................................................................................................1425 Ćwiczenie: Tworzenie dwunoga na czworakach ......................................................................1427

Spis treści

37

Animowanie dwunoga ....................................................................................................................1429 Używanie trybu śladów (Footstep) ...........................................................................................1429 Ćwiczenie: Zmuszanie dwunoga do wskakiwania na pudło .....................................................1430 Konwertowanie animacji dwunoga ...........................................................................................1431 Używanie trybu swobodnego (Freeform) .................................................................................1432 Ustawianie kluczy trybu swobodnego ......................................................................................1432 Rolety Keyframing Tools, Layers i Motion Capture ................................................................1433 Wczytywanie i zapisywanie klipów z animacjami dwunoga ....................................................1433 Używanie trybu Motion Flow ...................................................................................................1434 Podgląd animacji dwunoga .......................................................................................................1435 Przenoszenie dwunoga wraz ze śladami ...................................................................................1435 Podsumowanie ................................................................................................................................1435 Dodatek J Tworzenie tłumu ......................................................................... 1437 Tworzenie tłumu .............................................................................................................................1437 Korzystanie z obiektów Crowd i Delegate ................................................................................1437 Rozpraszanie delegatów ...........................................................................................................1438 Ustalanie parametrów delegatów ..............................................................................................1439 Przypisywanie zachowań ..........................................................................................................1439 Przeliczanie symulacji ..............................................................................................................1440 Ćwiczenie: Zające w lesie .........................................................................................................1441 Podsumowanie ................................................................................................................................1442 Dodatek K Wykorzystanie reactora do symulacji ruchów zgodnych z zasadami dynamiki ................................................. 1443 Zrozumienie dynamiki ....................................................................................................................1444 Korzystanie z modułu reactor .........................................................................................................1445 Funkcjonowanie reactora ..........................................................................................................1445 Ćwiczenie: Wypełnianie naczynia kulkami ..............................................................................1446 Kolekcje reactora ............................................................................................................................1447 Modyfikatory kolekcji ..............................................................................................................1449 Ustalanie właściwości obiektów ...............................................................................................1450 Ćwiczenie: Zarzucanie koszulki na krzesło ..............................................................................1452 Tworzenie obiektów reactora ..........................................................................................................1454 Obiekty Spring i Dashpot .........................................................................................................1455 Obiekt Plane .............................................................................................................................1455 Obiekty Motor i Wind ...............................................................................................................1456 Obiekt Toy Car .........................................................................................................................1456 Obiekt Fracture .........................................................................................................................1457 Ćwiczenie: Niszczenie chatki z piernika ...................................................................................1457 Obiekt Water .............................................................................................................................1458 Ćwiczenie: Zabawa z wodą ......................................................................................................1458 Przeliczanie i podgląd symulacji .....................................................................................................1459 Korzystanie z okna Preview ......................................................................................................1460 Tworzenie kluczy animacji .......................................................................................................1461 Analiza sceny ............................................................................................................................1461 Ćwiczenie: Upuszczanie talerza z pączkami .............................................................................1462 Ograniczanie ruchu obiektów .........................................................................................................1462 Stosowanie obiektu Constraint Solver ......................................................................................1464 Ogranicznik Rag Doll ...............................................................................................................1464 Ćwiczenie: Wpadanie na ścianę ................................................................................................1465

38

3ds Max 2012. Biblia Rozwiązywanie problemów w pracy z reactorem ...........................................................................1466 Podsumowanie ................................................................................................................................1467 Dodatek L Używanie miksera ruchu ............................................................ 1469 Używanie miksera ruchu .................................................................................................................1469 Okno miksera ruchu ..................................................................................................................1469 Dodawanie ścieżek warstw i ścieżek przejścia .........................................................................1471 Edycja klipów ...........................................................................................................................1472 Edycja wag ścieżek ...................................................................................................................1472 Dodawanie przekształceń czasu (Time Warps) ........................................................................1472 Praca z dwunogami .........................................................................................................................1473 Kopiowanie zmiksowanej animacji do dwunoga ......................................................................1473 Zapisywanie i wczytywanie plików montażowych ...................................................................1473 Ćwiczenie: Miksowanie animacji dwunogów ...........................................................................1473 Podsumowanie ................................................................................................................................1474 Dodatek M Automatyzacja pracy za pomocą MAXScriptu ......................... 1475 Czym jest MAXScript? ...................................................................................................................1475 Narzędzia MAXScriptu ...................................................................................................................1476 Menu MAXScript .....................................................................................................................1476 Roleta MAXScript w panelu Utilities .......................................................................................1477 Ćwiczenie: Korzystanie ze skryptu SphereArray ......................................................................1478 Okno MAXScript Listener ........................................................................................................1478 Ćwiczenie: „Rozmowa” z interpreterem MAXScriptu .............................................................1480 Okna edytora MAXScriptu .......................................................................................................1482 Macro Recorder ........................................................................................................................1483 Ćwiczenie: Nagrywanie prostego skryptu ................................................................................1485 MAXScript Debugger ...............................................................................................................1486 Ustalanie preferencji MAXScriptu ..................................................................................................1489 Typy skryptów ................................................................................................................................1489 Skrypty Macro ..........................................................................................................................1490 Narzędzia skryptowe ................................................................................................................1490 Skryptowe menu podręczne ......................................................................................................1490 Skryptowe narzędzia myszy .....................................................................................................1490 Skryptowe moduły dodatkowe (plug-ins) .................................................................................1490 Pisanie własnych skryptów w języku MAXScript ..........................................................................1491 Zmienne i typy danych .............................................................................................................1491 Ćwiczenie: Stosowanie zmiennych ...........................................................................................1492 Przebieg programu i komentarze ..............................................................................................1494 Wyrażenia .................................................................................................................................1494 Instrukcje warunkowe ...............................................................................................................1496 Kolekcje i tablice ......................................................................................................................1497 Pętle ..........................................................................................................................................1498 Funkcje .....................................................................................................................................1499 Ćwiczenie: Tworzenie ławicy ryb .............................................................................................1501 Obsługa edytora Visual MAXScript ...............................................................................................1506 Interfejs edytora Visual MAXScript .........................................................................................1507 Menu i główny pasek narzędziowy ...........................................................................................1507 Pasek z kontrolkami ..................................................................................................................1508

Spis treści

39

Projektowanie rolety .......................................................................................................................1508 Wyrównywanie i rozmieszczanie elementów ...........................................................................1508 Ćwiczenie: Konstruowanie własnej rolety za pomocą edytora Visual MAXScript ..................1510 Podsumowanie ................................................................................................................................1512 Dodatek N Dostosowywanie interfejsu Maksa do własnych potrzeb i upodobań .................................................................................. 1515 Okno dialogowe Customize User Interface .....................................................................................1516 Tworzenie własnych skrótów klawiszowych ............................................................................1516 Dostosowywanie pasków narzędzi ...........................................................................................1517 Ćwiczenie: Tworzenie paska narzędzi ......................................................................................1518 Dostosowywanie czteroczęściowego menu kontekstowego .....................................................1521 Dostosowywanie głównego menu ............................................................................................1523 Ćwiczenie: Tworzenie nowego menu .......................................................................................1524 Dostosowywanie kolorów interfejsu .........................................................................................1524 Modyfikowanie wstążki ..................................................................................................................1525 Definiowanie kontekstowych narzędzi i paneli ........................................................................1526 Zapisywanie zmian w ustawieniach wstążki .............................................................................1526 Ćwiczenie: Definiowanie panelu z obiektami podstawowymi .....................................................1527 Konfigurowanie przycisków paneli Modify i Utilities ....................................................................1528 Korzystanie z różnych interfejsów ..................................................................................................1529 Zapisywanie i wczytywanie interfejsu ......................................................................................1529 Blokowanie interfejsu ...............................................................................................................1530 Przywracanie interfejsu otwarcia ..............................................................................................1531 Wybieranie ustawień domyślnych i schematu interfejsu ..........................................................1531 Podsumowanie ................................................................................................................................1532 Dodatek O Rozszerzanie możliwości Maksa przez zewnętrzne moduły dodatkowe ..................................... 1533 Korzystanie z modułu Turbo Squid Tentacles ................................................................................1534 Praca z modułami dodatkowymi .....................................................................................................1534 Instalacja modułów dodatkowych .............................................................................................1535 Przeglądanie zainstalowanych modułów dodatkowych ............................................................1536 Ćwiczenie: Instalacja modułu AfterBurn (w wersji demonstracyjnej) i korzystanie z niego ....1537 Poszukiwanie modułów dodatkowych ............................................................................................1539 Podsumowanie ................................................................................................................................1539 Skorowidz .................................................................................................... 1541

40

3ds Max 2012. Biblia

O autorze Kelly L. Murdock już od wielu lat pisze książki o tematyce komputerowej i nadal zajęcie to daje mu wiele radości i satysfakcji. Lista jego książek zawiera pozycje o tematyce związanej z internetem, grafiką komputerową i multimediami. Do najbardziej znaczących tytułów (oprócz dziesięciu poprzednich wydań biblii 3ds Max) na tej liście należą: Google SketchUp Bible, Edgeloop Character Modeling for 3D Professionals Only, Maya 6 i 7 Revealed, LightWave 3D 8 Revealed, The Official Guide to Anime Studio, Poser 6, 7 i 8 Revealed, 3D Game Animation For Dummies, gmax Bible, Adobe Atmosphere Bible, Master VISUALLY HTML and XHTML, JavaScript Visual Blueprint. Kelly L. Murdock jest także współautorem dwóch wydań książki Illustrator Bible (dla wersji 9. i 10.) oraz pięciu wydań Adobe Creative Suite Bible. Posiadając solidne podstawy wiedzy technicznej i komputerowej, Kelly Murdock znakomicie czuje się w branży grafiki 3D. W trakcie swoich prac używał między innymi wyspecjalizowanych CAD-owskich stacji roboczych do projektowania i wizualizacji, tworzył trójwymiarowe modele na potrzeby filmów fabularnych, pracował jako niezrzeszony artysta grafik, a nawet wykonał kilka prac z zakresu programowania grafiki 3D. Programu 3D Studio używa, począwszy od wersji 3., która działała jeszcze w systemie DOS. Kelly zajął się również nauczaniem technologii tworzenia obrazów trójwymiarowych. Obecnie jest kierownikiem produkcji w firmie zajmującej się tworzeniem gier komputerowych. Każdą wolną chwilę poświęca na grę w koszykówkę i kolekcjonowanie gier komputerowych.

42

3ds Max 2012. Biblia

Wstęp Zawsze, kiedy udaję się do pokoju komputerowego, moja żona (która nazywa ten pokój lochem) mówi, że znów idę się pobawić. Ja — oczywiście — stanowczo odrzucam takie oskarżenie, mówiąc, że idę poważnie pracować, ale później, gdy z błyskiem w oku zdradzającym moje podekscytowanie wołam ją, aby zobaczyła ostatni rendering, w duchu przyznaję jej rację. Zajmowanie się grafiką trójwymiarową jest czystą zabawą. Pisząc tę książkę, miałem na celu zebranie moich doświadczeń zdobytych podczas wielu lat pracy i zabawy z grafiką 3D, aby podzielić się nimi z Tobą, drogi Czytelniku. Zadanie było złożone, ponieważ każdy miłośnik Maksa reprezentuje inny poziom zaawansowania. Na szczęście, książka jest dostatecznie gruba, aby udało się w niej zawrzeć coś interesującego dla każdego. Książka przeznaczona jest dla czytelników o różnym poziomie znajomości Maksa. Jeśli jesteś początkującym użytkownikiem tego programu, proponuję Ci przestudiowanie tej książki od samego początku. Jeśli nieźle radzisz sobie z obsługą Maksa, przejrzyj spis treści i wybierz te fragmenty, które pomogą Ci poszerzyć zakres posiadanej wiedzy. Jeśli jesteś wytrawnym profesjonalistą, zapewne zechcesz zapoznać się bliżej z nowymi funkcjami, jakie pojawiły się w wersji 2012. Innym celem książki jest dostarczenie czytelnikowi kompletnego opisu Maksa. Aby ten cel osiągnąć, opisałem szczegółowo niemal wszystkie funkcje programu, bryły elementarne, materiały, modyfikatory i kontrolery. Moim dążeniem było napisać taką książkę, po którą sam chętnie bym sięgał. Starałem się zawrzeć w niej opisy tworzenia rozmaitych, inspirujących scen. Mam nadzieję, że te przykłady będą nie tylko lekcją obsługi programu, ale także pobudzą Cię do tworzenia własnych projektów, bo właśnie to sprawia, że grafika trójwymiarowa pozwala łączyć pracę z zabawą.

O Maksie Zanim przejdziemy dalej, chciałbym wyjaśnić stosowane przeze mnie nazewnictwo. Oficjalna nazwa programu brzmi: 3ds Max 2012, ale ja nazywam go po prostu Maksem. Nazywam go tak pieszczotliwie, bo jest mi bardziej bliski niż zwierzątka domowe (które

44

3ds Max 2012. Biblia

również mają swoje imiona w stylu: Puszek, Ciapa, Burek lub Śmieszka). Uwaga: nie udało mi się wytresować Maksa, aby na wezwanie podszedł do mnie lub usiadł, chociaż czasami potrafi udawać nieżywego. Jeden ze sposobów, w jaki my — ludzie — rozwijamy swoją osobowość, polega na przejmowaniu pożądanych cech od tych, którzy nas otaczają. Osobowość Maksa również podlega rozwojowi — każda kolejna wersja przynosi szereg nowych, pożądanych funkcji. Wiele z tych funkcji jest przejmowanych z dodatków opracowywanych w celu wzbogacenia możliwości programu. Przykładem takich funkcji może być Character Studio czy system Hair and Fur. Dzięki takim dodatkom Max staje się coraz bardziej sympatyczny, podobnie jak człowiek, który rozwija swoje poczucie humoru. Inne cechy osobowości nabywamy przez poszerzanie swoich horyzontów myślowych. Max, a właściwie jego twórcy mają na koncie również takie osiągnięcia. Wiele spośród nowych funkcji jest nowych nie tylko w odniesieniu do poprzednich wersji Maksa, ale także w odniesieniu do całej branży związanej z grafiką komputerową. W miarę dorastania Max z pewnością będzie stawał się coraz bardziej dojrzały przez asymilowanie z zewnątrz nowych funkcji i tworzenie własnych nowatorskich rozwiązań. Mam nadzieję, że w następnej wersji Max nie doświadczy kryzysu wieku średniego. Oprócz wprowadzenia nowych rozwiązań, twórcy Maksa zareagowali również na głosy użytkowników, co zaowocowało szeregiem drobnych usprawnień ułatwiających i przyśpieszających tworzenie oraz opracowywanie scen. Na rozwój Maksa wpłynęły także nowe czynniki, jakie zaistniały w jego najbliższym otoczeniu. Przede wszystkim pojawiła się adoptowana siostra Maya. Wprawdzie Max miał już inne rodzeństwo (takie jak MotionBuilder i AutoCAD), ale Maya jest jego rówieśniczką i ich osobowości na pewno będą się ścierać. Drugim takim czynnikiem jest alter ego Maksa, które czyni zeń superbohatera. Na płycie instalacyjnej programu 3ds Max są dostępne dwie wersje: 32-bitowa i 64-bitowa. Ta druga przełamuje sprzętową barierę 2 GB i pozwala użytkownikom na pracę z olbrzymimi zbiorami danych. Oznacza to duży postęp w możliwościach operowania rozbudowanymi modelami. Wygląda na to, że ta druga osobowość Maksa zwycięży i tak już pozostanie. Na dwoistość osobowości Maksa wpływa również fakt, że występuje w dwóch wersjach: standardowej, 3ds Max 2012, kierowanej do branży rozrywkowej, i nowej, 3ds Max 2012 Design, przeznaczonej dla architektów jako narzędzie do wizualizacji projektów. Dzięki temu, że obie wersje różnią się nieznacznie, mogłem je opisać w jednej książce.

O książce Postaram się pokrótce przedstawić proces powstawania tej książki. Punktem wyjścia były doświadczenia gromadzone w ciągu wielu lat, po których nastąpiły miesiące żmudnych badań. W tym czasie były awarie systemu komputerowego, klęski osobiste i nieustannie napięte terminy. Zaczynałem pisanie wczesnym rankiem, a kończyłem późną nocą — zadanie, jakie przed sobą postawiłem było ogromne. To było naprawdę trudne i wyczerpujące, a wpatrywanie się godzinami w interfejs Maksa sprawiało, że czułem się jak… no cóż… jak animator.

Wstęp

45

Brzmi znajomo? Ten proces właściwie niewiele różni się od tego, z czym mają na co dzień do czynienia artyści zajmujący się grafiką 3D, modelatorzy i animatorzy, a ja, tak jak Ty, drogi Czytelniku, czerpię satysfakcję z ukończonego dzieła.

Ćwiczenia Zawsze uczyłem się w sposób wizualny — zdobywanie wiedzy przychodzi mi najłatwiej, kiedy sam coś wykonuję i jednocześnie przeprowadzam badania. Inni uczą się, czytając książki i usiłując zrozumieć opisywane w nich teorie. W niniejszej książce starałem się prezentować informacje na kilka różnych sposobów, aby każdy, niezależnie od preferowanej metody uczenia się, mógł z niej korzystać. Dlatego obok szczegółowych opisów różnych funkcji znajdziesz tu ćwiczenia ilustrujące praktyczne wykorzystanie tychże funkcji. Ćwiczenia występują we wszystkich rozdziałach, a ich nagłówki zawsze rozpoczynają się słowem „Ćwiczenie”. Każde z nich jest podzielone na logiczne etapy i zazwyczaj kończy się rysunkiem, który ma ułatwić Ci analizowanie i porównywanie efektów końcowych. Przykłady realizowane w tych ćwiczeniach zostały zamieszczone na płycie dołączonej do książki, dzięki czemu możesz obejrzeć je w oryginalnej postaci i zyskać dodatkowe doświadczenie praktyczne. Dołożyłem wszelkich starań, aby każde ćwiczenie koncentrowało się na jednym lub najwyżej dwóch zagadnieniach. Każde ćwiczenie składa się z nie więcej niż 10 etapów. To oznacza, że uzyskane podczas wykonywania tych ćwiczeń rezultaty raczej nie będą nadawały się do zamieszczenia w Twoim portfolio. W większości ćwiczeń zamieszczonych na początku książki w ogóle nie są stosowane materiały, ponieważ uznałem, że używanie ich zanim zostaną dokładnie objaśnione, mogłoby wprowadzić tylko zamieszanie. Starałem się również, aby przykłady były zróżnicowane, niepowtarzalne i interesujące, a przy tym proste i łatwe do wykonania. Każdy przykład opisywany w tej książce jest zamieszczony na płycie wraz z modelami i teksturami niezbędnymi do wykonania ćwiczenia. Wiele spośród ćwiczeń nie rozpoczyna się od zera, lecz w określonym punkcie wyjściowym. Dzięki takiemu podejściu mogłem dodatkowo skondensować ćwiczenie i w kilku najistotniejszych etapach zademonstrować Ci samą istotę opisywanego zagadnienia. Pliki niezbędne do wykonania danego ćwiczenia są zazwyczaj wymieniane w pierwszym etapie. Na płycie znajdziesz także dla każdego ćwiczenia plik, którego nazwa kończy się wyrazem final; zawiera on końcowy rezultat danego ćwiczenia. Jeśli podczas wykonywania jakiegoś ćwiczenia napotkasz trudności, otwórz ten plik i porównaj ustawienia. Praca nad tą książką kosztowała mnie wiele wysiłku, ale mam nadzieję, że jej lektura przyniesie Ci dużo pożytku. Polecam ją jako punkt wyjścia — z każdego ćwiczenia celowo usunąłem niemal w całości aspekt twórczy, aby pozostawić Ci pełną swobodę w jego wypełnieniu i umożliwić realizację Twojej wizji.

Po raz jedenasty Obecne wydanie tej książki jest już jedenastym. Zamierzaliśmy z tej okazji dołączyć do każdego egzemplarza kawałek tortu, ale ktoś z działu marketingowego stwierdził, że lepsza będzie płyta z odpowiednią zawartością (jeśli przejrzysz ją uważnie, znajdziesz

46

3ds Max 2012. Biblia

tam ćwiczenie ilustrujące tworzenie pączków). Aktualnie zawiera maksymalną liczbę kartek, jaka może być oprawiona w miękkie okładki, więc jeśli zamierzasz zabrać ją do poczytania np. w metrze, nie zabieraj niczego więcej. Nie chciałbym, aby z mojego powodu jakiś wierny czytelnik cierpiał na bóle pleców. W tym wydaniu pojawiło się kilka zmian. Wiele ćwiczeń zostało usuniętych, aby zrobić miejsce dla opisu nowych funkcji. Zamieściłem również nowy rozdział wstępny i wygospodarowałem miejsce dla kilku nowych rozdziałów poświęconych nowym elementom i funkcjom. Starałem się opisać wszystkie elementy i aspekty programu, ale niektóre funkcje zostały w nim zachowane tylko w celu podtrzymania zgodności z poprzednimi wersjami. I tak funkcja Dynamics została zastąpiona wydajniejszym systemem, o nazwie reactor. O tego typu elementach wspominam, ale ich nie opisuję szczegółowo. Jeśli chcesz się dowiedzieć o nich czegoś więcej, sięgnij po wcześniejsze wydania książki.

Dla nauczycieli i uczących się W czasie, jaki upłynął od poprzedniego wydania Biblii, wykładałem na kilku uczelniach i nabyte przy tej okazji doświadczenie kazało mi na nowo przemyśleć strukturę książki. Do tej pory wszystkie informacje dotyczące danego zagadnienia, np. animacji, zamieszczane były w jednym miejscu. Takie podejście jest dobre dla użytkowników doświadczonych, którzy chcą szybko poznać nowe możliwości programu, ale dla początkujących taki wyczerpujący wykład jest trudny do przyswojenia — znacznie lepsze efekty daje stopniowe dawkowanie wiedzy. W tym wydaniu książka została podzielona na część łatwiejszą, w której omawiane są tematy związane z modelowaniem, animowaniem i renderowaniem, oraz część trudniejszą, obejmującą funkcje bardziej zaawansowane. Tak więc ci, którzy dopiero rozpoczynają swoją przygodę z Maksem, mogą go poznawać stopniowo, bez zagłębiania się od razu w najtrudniejsze i najbardziej skomplikowane zagadnienia.

Struktura książki Grafika trójwymiarowa ma wiele aspektów. W dużych firmach możesz skoncentrować się na jednym konkretnym obszarze tej dziedziny, ale w małym zespole lub jako hobbysta musisz być wszystkim: modelatorem, operatorem oświetlenia, animatorem i montażystą. Książka została tak zorganizowana, aby ułatwić Ci szybki dostęp do informacji związanej z każdym aspektem grafiki 3D. Jeśli chcesz szybko przystąpić do pracy, ale nie wiesz, od czego zacząć, rozpocznij od lektury rozdziału wstępnego („Pierwsze kroki”), który jest jednym długim ćwiczeniem prezentującym podstawowe aspekty tworzenia i animowania kompletnej sceny. Taki rozdział został wprowadzony w odpowiedzi na sygnały czytelników pierwszego wydania, którzy skarżyli się, że nie wiedzą, jak rozpocząć tworzenie czegokolwiek. Właśnie z myślą o tych, którzy nie mają dość cierpliwości, aby wcześniej przedzierać się przez góry materiału, przygotowany został rozdział wstępny.

Wstęp

47

Książka jest podzielona na następujące części: 

„Pierwsze kroki” — odrębny rozdział (chociaż wchodzi w skład pierwszej części) poświęcony w całości tworzeniu jednej, prostej, animowanej sceny. Został wprowadzony po to, aby zaostrzyć Twój apetyt na poznawanie Maksa.



Część I „Rozpoczynanie pracy z programem 3ds Max” — rozdziały zawarte w tej części pozwolą Ci zrozumieć strukturę i funkcjonowanie interfejsu, pokażą, jak pracować z oknami widokowymi i jak postępować z plikami. Dowiesz się również, jak dopasować interfejs do własnych potrzeb i upodobań. Po lekturze tej części z pewnością poczujesz się swobodniej w obcowaniu z tym gigantycznym pakietem, jakim jest Max.



Część II „Praca z obiektami” — w Maksie pojęcie obiektu obejmuje siatki, kamery, źródła światła, pola sił oraz inne elementy, które można zobaczyć w oknie widokowym. W tej części dowiesz się, jak tworzyć proste obiekty, zaznaczać je, kopiować, grupować, łączyć, przekształcać i modyfikować.



Część III „Podstawy modelowania” — Max udostępnia kilka sposobów modelowania obiektów. Podczas lektury tej części zapoznasz się z kształtami bazującymi na splajnach, siatkami o ściankach trójkątnych i wielokątnych. Poznasz także modyfikatory i sposoby postępowania z nimi.



Część IV „Materiały, kamery i oświetlenie” — w rozdziałach tej części znajdziesz objaśnienie różnych typów materiałów i map oraz wskazówki dotyczące ich stosowania. Następnie poznasz podstawy posługiwania się kamerą i rozmaitymi źródłami światła.



Część V „Podstawy animacji i renderingu” — najprostsze animacje z użyciem klatek kluczowych, więzów i kontrolerów. Opanowanie tych zagadnień pozwoli Ci animować sceny. Znajdziesz tu także elementarne informacje o renderowaniu scen.



Część VI „Modelowanie zaawansowane” — ta część stanowi kontynuację części trzeciej. Omawiane są tutaj takie pojęcia jak odnośniki zewnętrzne (XRefs), widok schematyczny (Schematic View), modyfikatory siatki, obiekty złożone, obiekty NURBS, łaty, włosy, futra i ubrania.



Część VII „Materiały w ujęciu zaawansowanym” — tutaj poznasz współrzędne UV i operujące na nich modyfikatory, mapowanie skóry, interfejs funkcji Render to Texture i mapowanie normalnych.



Część VIII „Zaawansowane techniki animowania” — po opanowaniu podstaw animacji możesz przystąpić do zgłębiania tajników stosowania modyfikatorów animacji, kontrolera Expression, wiązania parametrów oraz posługiwania się oknami dialogowymi Track View i Motion Mixer.



Część IX „Praca z postaciami” — w tej części dowiesz się, jak pracować z obiektami typu biped, systemami kości, a także jak manipulować pojedynczymi postaciami i całymi tłumami. Zamieściłem tu również wyczerpujące objaśnienie różnych metod odwrotnej kinematyki.



Część X „Animacja dynamiczna” — w tej części omawiane jest tworzenie animacji w oparciu o prawa fizyki. Jest tam mowa o systemach cząstek, polach sił, wspaniałych możliwościach modułu reactor i animowaniu włosów oraz tkanin.

48

3ds Max 2012. Biblia 

Część XI „Zaawansowane techniki oświetlania i renderingu” — w tej części zostały opisane techniki oświetlania polegające na stosowaniu metod Light Tracer oraz Radiosity. W ramach zaawansowanego renderowania opisane zostało renderowanie efektów atmosferycznych, renderowanie sieciowe, renderowanie metodą śledzenia promieni i korzystanie z renderera mental ray. Poza tym znajdziesz tu opis procesu montażowego realizowanego za pomocą okna Video Post.



Dodatki — na samym końcu książki znajduje się trzynaście dodatków, w których znajdziesz wykaz nowych funkcji Maksa 2012 oraz spis zawartości płyty dołączonej do książki.

Znaczenie ikon stosowanych w książce Pomocą w maksymalnym wykorzystaniu treści zawartych w książce mają służyć następujące ikony: Uwagi oznaczają istotne informacje.

Wskazówki zawierają dodatkowe porady umożliwiające szybsze lub łatwiejsze wykonywanie określonych operacji.

Ostrzeżenia mają przestrzegać przed popełnieniem błędów.

Ta ikona wskazuje funkcje, które pojawiły się po raz pierwszy w wersji 2012.

Odnośniki zawierają informacje o innych częściach książki, w których dane zagadnienie jest opisywane bardziej szczegółowo. Ta ikona odsyła do materiału zawartego na płycie dołączonej do książki.

Płyta dołączona do książki Zawartość płyt dołączanych do książek informatycznych często jest kompletowana w ostatniej chwili i na ogół obejmuje jedynie garść przykładów oraz wersję demonstracyjną opisywanego programu. Jednak tym razem otrzymujesz bogaty zbiór specjalnie dobranych trójwymiarowych modeli, które możesz wykorzystać podczas wykonywania ćwiczeń. Płyta zawiera też pliki z przykładami prezentowanymi w poszczególnych rozdziałach książki.

Podziękowania Jest wiele osób, którym chciałbym podziękować za ich wkład w pracę nad moją książką. Kolejność, w której je wymienię, niekoniecznie musi odzwierciedlać wkład pracy każdej z nich. Jak zawsze, dziękuję mojej ukochanej żonie Angeli oraz moim synom Ericowi i Thomasowi, bez których pomocy nie zaszedłbym daleko. Oni testują opracowywane przeze mnie przykłady i dbają o jakość, wypowiadając swoje szczere opinie na ich temat. Wielokrotnie podczas rodzinnej burzy mózgów, której celem było wymyślenie kolejnego przykładu do ćwiczeń, zaskakiwali mnie wspaniałymi pomysłami. Ostatnio spodobał mi się bardzo pomysł animacji rowerów ścigających ciężarówkę z lodami. Niestety, jeszcze nie zdołałem opracować go w formie ćwiczenia. W pierwszym wydaniu Biblii Maksa ogrom zadań koniecznych do opracowania książki przekraczał moje możliwości i dlatego powstała ona przy pomocy dwóch współautorów — Dave’a Bruecka i Sanforda Kennedy’ego, którzy obecnie piszą własne książki. Wciąż jednak winien jestem im wdzięczność za wkład pracy, który, pomimo moich przeróbek, w dalszym ciągu stanowi część tej książki. Na moją prośbę o pomoc przy opracowywaniu kolejnego wydania odpowiedziała Sue Blackman, dostarczając kilku znakomitych przykładów ilustrujących potężne możliwości okna dialogowego Track View. Dziękuję Ci, Sue. Ogromne podziękowania składam redakcji i całemu personelowi Wydawnictwa Wiley, a szczególnie Stephanie McComb, która niedawno dołączyła do zespołu, ale to właśnie dzięki jej wsparciu, zaangażowaniu i pozytywnemu nastawieniu udało mi się przetrwać najtrudniejsze chwile w pracy nad książką. Dziękuję Marty’emu Minnerowi (podwójne M), który jeszcze raz pokierował całym procesem edycyjnym, i Gwenetcie Gaddis za jej wspaniałą pracę edytorską. Ich uwagi zamieszczane w komentarzach recenzenckich zawsze były dla mnie mobilizujące. Pragnę podziękować również Chrisowi Murdockowi za podjęcie się edytorstwa technicznego, mimo bardzo napiętych terminów. Dodatkowe podziękowania przekazuję Jenny Swisher i jej współpracownikom w dziale medialnym Media Development za zdobycie pozwoleń na wykorzystanie materiałów zawartych na płycie. Na koniec dziękuję pozostałym pracownikom wydawnictwa Wiley, którzy wspomogli mnie w tej podróży, a szczególnie projektantom okładki, którzy ostatnie wydania Biblii z upodobaniem opatrują różnymi gadami i płazami. Doszło do tego, że zaczynam poszczególne tomy określać nazwami zwierząt umieszczonych na okładkach i mówię np.: „Podaj mi książkę z żabą, która leży obok tej z jaszczurką”.

50

3ds Max 2012. Biblia

Duże grono osób pracujących w przemyśle graficznym okazało mi wielką życzliwość i chęć pomocy. Chciałbym tu przede wszystkim podziękować Robowi Hoffmanowi, Brittany Bonhomme i całej załodze firmy Autodesk za ich pomoc i nieustanne wspieranie mnie. Chciałbym podziękować także wszystkim utalentowanym pracownikom firm Zygote Media, Curious Labs i Viewpoint Digital Media za wiele wspaniałych modeli, dzięki którym przykłady stały się bardziej interesujące (inaczej w większości ćwiczeń musielibyśmy posługiwać się modelem filiżanki). Dziękuję Michaelowi Valentine’owi z Zygote Media i Tomowi Avikigosowi z firmy Digimation za pomoc w uzyskaniu zestawu nowych modeli opracowanych w firmie Viewpoint. Dodatkowe podziękowania kieruję pod adresem Davida Mathisa, Sue Blackman i Chrisa Murdocka za wykonanie modeli, które wykorzystałem w kilku ćwiczeniach.

Część I

Rozpoczynanie pracy z programem 3ds Max W tej części: Pierwsze kroki. „Burzenie murów obronnych” Rozdział 1. „Poznawanie interfejsu Maksa” Rozdział 2. „Sterowanie oknami widokowymi oraz ich konfigurowanie” Rozdział 3. „Praca z plikami, importowanie i eksportowanie” Rozdział 4. „Modyfikowanie interfejsu i ustawianie jednostek”

Pierwsze kroki

Burzenie murów obronnych W tym rozdziale: 

Planowanie produkcji



Gromadzenie modeli



Dodawanie materiałów



Stosowanie systemu oświetlenia Sun & Sky



Tworzenie animacji dynamicznej przy użyciu systemu MassFX



Renderowanie animacji

Gdy pierwszy raz uruchomiłeś aplikację 3ds Max, zapewne miałeś jeden cel — przygotować ciekawe obrazki i animacje 3D. Być może niektórzy z was kupili program po to, aby zarobić dodatkowe pieniądze, zwiększyć odpis od podatku, utorować sobie drogę do Hollywood albo zaimponować swojej dziewczynie czy chłopakowi. Teraz jednak warto na chwilę zapomnieć o tych powodach, gdyż celem tej książki jest wyłącznie pokazanie, jak stworzyć naprawdę interesującą grafikę. Jeśli przeczytałeś uważnie spis treści lub przekartkowałeś książkę, zapewne zauważyłeś, że zamieszczono tu rozdziały na temat modelowania, tworzenia i nakładania materiałów, symulowania dynamiki i wielu innych zagadnień. Pewnie jednak — podobnie jak ja — nie masz ochoty wertować ton papieru, żeby wreszcie narysować coś, czym będzie można pochwalić się komuś bliskiemu. (Właściwie, jeśli postąpisz zgodnie z moimi upodobaniami, to lekturę tej książki rozpoczniesz od rozdziałów poświęconych efektom specjalnym, ale w takim przypadku nie będziesz czytał tego tekstu). Ten wstępny rozdział pozwoli Ci zapoznać się z tym, co Max może wykonać. Będziesz mógł zobaczyć bogate możliwości programu, zanim zaczniesz zagłębiać się w szczegóły związane z działaniem poszczególnych narzędzi i funkcji. Poznasz najczęściej stosowane funkcje — włącznie z wieloma nowymi — które (mam nadzieję) zainteresują Cię na tyle, byś sięgnął do bardziej szczegółowych opisów w następnych rozdziałach.

54

Pierwsze kroki  Burzenie murów obronnych

Pierwsza część książki jest adresowana do początkujących użytkowników programu. Jeżeli jesteś zaawansowanym grafikiem, a inni wielokrotnie byli już pod wrażeniem Twojej twórczości, możesz spokojnie przejść do interesującego Cię rozdziału w dalszej części książki (wybacz mi, że zaliczam Cię do „żółtodziobów”, ale w końcu wszyscy kiedyś zaczynaliśmy).

Burzenie muru — planowanie produkcji W tym rozdziale najpierw wzniesiesz mur forteczny, a potem zburzysz go. Będzie więc okazja do skompletowania sceny, zbudowania muru z obiektów podstawowych, pokrycia go materiałami i wykonania animacji przy użyciu systemu MassFX. Najpierw musisz przygotować scenę. Potrzebnych będzie dużo cegieł, czyli zwykłych prostopadłościennych obiektów. Utworzymy je i ułożymy z nich solidną ścianę, korzystając z funkcji Array (szyk). Jednak sama ściana byłaby trochę nudna, więc dołożymy jeszcze jedną lub dwie wieże i kilka drzew. Budowanie murów z obiektów podstawowych jest łatwe, ale wieże i drzewa mogą wymagać więcej czasu, dlatego pozwolimy sobie na małe oszustwo. Właściwie powinieneś te elementy wymodelować, ale tym razem ten etap sobie darujemy. Jeśli tylko istnieje możliwość wykorzystania gotowych obiektów, to dlaczego tego nie zrobić. W ten sposób można przecież zaoszczędzić wiele cennego czasu. Na płycie dołączonej do książki znajdziesz mnóstwo modeli (również wieże i drzewa) przygotowanych przez profesjonalistów właśnie po to, abyś nie musiał zaczynać wszystkiego od zera. Potrzebna będzie również wielka kula armatnia, którą wystrzelimy w stronę muru. Po odpowiednim rozmieszczeniu modeli przypiszemy im nowe tekstury substancyjne (substance textures), które pozwalają na uszczegółowianie obiektów bez angażowania wielkich zasobów pamięciowych komputera. Potrzebne będzie również tło i płaszczyzna bazowa sceny. Tło utworzymy za pomocą systemu światła dziennego (Daylight System), który nie tylko generuje światło słoneczne, ale również tworzy efekt odległego horyzontu. Jako podłoże wykorzystamy obiekt płaszczyzny, na którym uformujemy niewielkie wzgórza za pomocą modyfikatora Noise (szum). Oba te elementy sceny wygeneruje Max, a zatem nie będą nam potrzebne żadne dodatkowe tekstury tła i podłoża. W fazie animacyjnej zdefiniujemy cegły i kulę armatnią jako obiekty o cechach ciała sztywnego, nadamy kuli określoną prędkość początkową i pozwolimy, aby system MassFX pokazał, na co go stać. Po ukończeniu każdego etapu ćwiczenia zapisywałem aktualny stan sceny, a utworzone w ten sposób pliki umieściłem w katalogu Quick Start na płycie dołączonej do książki.

Ustawianie sceny Cały proces ustawiania sceny został rozłożony na kilka prostych ćwiczeń. W pierwszym zgromadzimy wszystkie modele, których później będziemy używać. Następnie rozmieścimy je odpowiednio, przy czym kula armatnia będzie początkowo poza ekranem. Na pewno konieczne będzie również ustawienie kamery we właściwym miejscu.

Pierwsze kroki  Burzenie murów obronnych

55

Po rozmieszczeniu modeli utworzymy płaszczyznę podłoża i wtedy będziemy mogli zająć się materiałami oraz oświetleniem.

Ćwiczenie: Wznoszenie muru Pierwsze ćwiczenie rozpoczniemy od zbudowania muru. Jest to główny element sceny, dlatego umieścimy go jako pierwszy. Aby postawić mur, wykonaj następujące czynności. 1. Rozpocznij od przywrócenia domyślnych ustawień interfejsu Maksa. W tym celu kliknij przycisk aplikacji i wybierz polecenie Reset. W oknie żądającym potwierdzenia Twojej decyzji kliknij przycisk Yes. 2. W panelu poleceń kliknij przycisk Box (prostopadłościan) i przeciągnij myszą w oknie widokowym Front (z przodu), aby utworzyć prostopadłościenny blok. W tym rozdziale będziemy stosować jednostki ogólne (Generic Units). Wyboru jednostek można dokonać w oknie dialogowym Units Setup otwieranym za pomocą polecenia Customize/Units Setup.

3. Wciśnij klawisz Shift i nie zwalniając go, przeciągnij istniejący blok, aby utworzyć jego kopię. Nowy blok ustaw tak, aby spoczywał na pierwszym i był przesunięty względem niego o połowę szerokości. Wszystkie czynności wykonuj w oknie widokowym Front. 4. Zaznacz oba bloki i wybierz polecenie Tools/Array. W oknie dialogowym, które się otworzy, ustaw 1D Count na 24 i 2D Count na 8. Następnie włącz przycisk Preview (podgląd), aby widzieć skutki wprowadzanych zmian, i za pomocą spinera w pierwszym polu Incremental X (przyrostowe przesunięcie wzdłuż osi X) ustaw bloki obok siebie w kierunku poziomym, a za pomocą spinera w pierwszym polu Incremental Row Z (przyrostowe przesunięcie rzędu obiektów wzdłuż osi Z) ustaw je w pionie. Gdy mur będzie gotowy, kliknij przycisk OK. Gotowy mur jest pokazany na rysunku PK.1.

Ćwiczenie: Gromadzenie modeli Sam mur prezentuje się okazale, ale ogólnie scena jest zbyt uboga. Za pomocą polecenia Merge (dołącz) umieścimy w niej jeszcze kilka dodatkowych modeli. Aby zachować właściwe proporcje między nimi, będziemy musieli je odpowiednio przeskalować. Aby pobrać gotowe modele, wykonaj następujące czynności. 1. Kliknij przycisk aplikacji i wybierz polecenie Import/Merge. Z folderu Quick Start znajdującego się na płycie dołączonej do książki wybierz plik Turret.max. W oknie Merge zaznacz pozycję turret, a następnie OK. 2. Model wieży (turret) został umieszczony w samym środku sceny i nie pasuje rozmiarami do istniejącego muru. Trzeba go więc przesunąć na koniec muru i odpowiednio przeskalować.

56

Pierwsze kroki  Burzenie murów obronnych

Rysunek PK.1. Mur został szybko utworzony za pomocą okna dialogowego Array

3. Kliknij wieżę, aby ją zaznaczyć, a następnie uaktywnij narzędzie Scale (skalowanie). Za pomocą górnego uchwytu skalowania dopasuj wysokość wieży do rozmiarów muru. Włącz narzędzie Move (przesunięcie) i ustaw wieżę przy lewym końcu muru oraz na tej samej co on wysokości. W oknie widokowym Left (z lewej) przesuń ją tak, aby objęła mur. 4. Mając wciąż zaznaczoną wieżę, wciśnij klawisz Shift i nie zwalniając go, przeciągnij wieżę na drugi koniec muru, aby umieścić tam jej kopię — w oknie dialogowym Clone Options (opcje klonowania) zaznacz Copy (kopia) i kliknij OK. 5. Z głównego menu wybierz polecenie Create/AEC Objects/Foliage. W panelu bocznym wybierz drzewko o nazwie Generic Palm i utwórz w oknie widokowym Top (z góry) cztery palmy. Za pomocą narzędzia Scale przeskaluj je wzdłuż osi Z. Teraz na obu końcach muru stoją wieże, a przed nim nawet rosną drzewa (patrz rysunek PK.2).

Ćwiczenie: Tworzenie podłoża Po skompletowaniu obiektów dodamy do sceny podłoże. Będzie to zwykła płaszczyzna, którą lekko zdeformujemy za pomocą modyfikatora Noise. Aby dodać do sceny podłoże, wykonaj następujące czynności.

Pierwsze kroki  Burzenie murów obronnych

57

Rysunek PK.2. Dołączenie wież sprawiło, że mur wydaje się mocniejszy

1. Kliknij w oknie Top i oddal w nim widok sceny. Następnie włącz przycisk Plane (płaszczyzna) w panelu poleceń po prawej stronie i przeciągnij od lewego górnego do prawego dolnego rogu okna Top. 2. W panelu Create ustaw parametry Length Segs i Width Segs na 30, aby zwiekszyć poligonalną gęstość płaszczyzny. 3. Przy wciąż zaznaczonej płaszczyźnie wybierz polecenie Modifiers/Parametric Deformers/Noise. W rolecie Parameters ustaw Scale (skala) na 100 i Z Strength (siła efektu w osi Z) na 200. Po zastosowaniu modyfikatora Noise płaszczyzna bardziej przypomina pofałdowany teren (patrz rysunek PK.3).

Materiały i oświetlenie Etap modelowania, który zazwyczaj jest bardzo czasochłonny, zrealizowaliśmy bardzo szybko, a to dzięki temu, że skorzystaliśmy z narzędzia Array i gotowych obiektów. Teraz musimy tym obiektom przypisać stosowne materiały i całą scenę odpowiednio oświetlić. Na szczęście niektóre obiekty mają już przypisane materiały, a więc i ten etap nie zajmie nam dużo czasu.

58

Pierwsze kroki  Burzenie murów obronnych

Rysunek PK.3. Scena ma już podłoże z niewielkimi pagórkami

Ćwiczenie: Dodawanie materiałów Po zakończeniu modelowania możemy na obiekty nałożyć materiały, co poprawi ich wygląd. W Maksie materiały nakładamy za pomocą edytora materiałów (Material Editor), do którego dostęp można uzyskać przez wybranie polecenia Rendering/Material Editor/Slate Material Editor lub przez wciśnięcie klawisza M. Max 2012 został wyposażony w specjalny zestaw materiałów proceduralnych zwanych substancyjnymi, które są generowane przez odpowiednio zakodowane procedury i nie wymagają stosowania obrazów bitmapowych. Aby pokryć mur i podłoże stosownymi materiałami, wykonaj następujące czynności. 1. Wybierz polecenie Rendering/Material Editor/Slate Material Editor (lub wciśnij klawisz M), aby otworzyć okno edytora materiałów. W panelu Material/Map Browser odszukaj i kliknij dwukrotnie materiał o nazwie Standard i to samo zrób z mapą Substance. 2. Kliknij dwukrotnie węzeł mapy Substance, po czym w rolecie Substance Package Browser (przeglądarka pakietu substancji) kliknij przycisk Load Substance (wczytaj substancję). W folderze textures odszukaj teksturę Desert Sand 01 i po wczytaniu jej połącz kanały Diffuse oraz Bump węzła Substance z odpowiednimi kanałami węzła Standard.

Pierwsze kroki  Burzenie murów obronnych

59

3. W oknach widokowych zaznacz podłoże, a w edytorze materiałów zaznacz materiał Standard i na pasku narzędziowym kliknij przycisk Assign Material to Selection (przypisz materiał do zaznaczenia). Materiał zostanie przypisany do zaznaczonego obiektu. 4. Na głównym pasku narzędziowym kliknij przycisk Select by Name (zaznacz wg nazw), a następnie trzymając wciśnięty klawisz Shift, kliknij pierwszy i ostatni obiekt o nazwie Box, aby zaznaczyć wszystkie bloki tworzące mur. 5. Powtórz etapy 2. i 3., aby przypisać blokom teksturę o nazwie Rock 02. 6. Pozostałe obiekty mają już przypisane materiały, a zatem możemy zająć się oświetleniem. Edytor materiałów jest pokazany na rysunku PK.4.

Rysunek PK.4. Edytor materiałów umożliwia konfigurowanie materiałów i przypisywanie ich obiektom w opracowywanej scenie

Ćwiczenie: Dodanie systemu Sun & Sky Dodatkową korzyścią z włączenia renderera mental ray jest możliwość wykorzystania systemu oświetleniowego Sun & Sky (Słońce i niebo) symulującego oświetlenie słoneczne i generującego w tle sceny niebo. Aby dodać system Sun & Sky, wykonaj następujące czynności. 1. Z głównego menu wybierz polecenie Rendering/Render Setup (lub wciśnij klawisz F10), aby otworzyć okno dialogowe Render Setup (ustawienia renderingu). Na samym dole panelu Common (ogólne) znajduje się roleta Assign Renderer (przypisz renderer). Rozwiń ją, a następnie kliknij przycisk znajdujący się obok

60

Pierwsze kroki  Burzenie murów obronnych

pola Production. W otwartym w ten sposób oknie dialogowym Choose Renderer (wybierz renderer) kliknij dwukrotnie pozycję mental ray Renderer i na koniec zamknij okno Render Setup. 2. Wybierz polecenie Create/Lights/Daylight System, a następnie przeciągnij myszą w oknie widokowym Top, aby utworzyć obiekt pomocniczy w kształcie róży wiatrów. W oknie dialogowym zalecającym włączenie kontroli ekspozycji kliknij OK. Pozostając w oknie widokowym Top, przeciągnij ikonę słońca w odpowiednie miejsce. Przed zastosowaniem systemu Daylight pojawia się okno dialogowe zalecające użycie logarytmicznej kontroli ekspozycji (Logarithmic Exposure Control)1. Aby kontynuować pracę, kliknij przycisk Yes.

3. Wybierz polecenie Rendering/Environment (lub wciśnij klawisz 8), aby otworzyć okno dialogowe Environment and Effects. Kliknij przycisk Environment Map i z folderu Maps/mental ray w oknie Material/Map Browser wybierz mapę mr Physical Sky. Następnie włącz opcję Use Map (użyj mapę) i zamknij okno Environment and Effects. 4. Teraz wybierz polecenie Views/Viewport Background/Viewport Background (lub wciśnij klawisze Alt+B), aby otworzyć okno dialogowe Viewport Background (tło okna widokowego). Z listy Viewport wybierz Perspective, włącz opcje Use Environment Background i Display Background, a następnie zamknij okno. 5. Powiększ okno widokowe Perspective do pełnych rozmiarów — w tym celu kliknij znajdujący się w prawym dolnym rogu głównego okna programu przycisk Maximize Viewport Toggle (lub wciśnij klawisze Alt+W). 6. Zaznacz obiekt systemu Daylight i w panelu Modify kliknij przycisk Setup w rolecie Daylight Parameters, po czym ustaw porę dnia (Time Hours) na godzinę 11. Słońce powinno znaleźć się dość wysoko nad horyzontem. 7. Aby światła i cienie były widoczne w oknie widokowym, kliknij etykietę cieniowania widoku znajdującą się w lewym górnym rogu okna widokowego i włącz opcję Lighting and Shadows/Illuminate with Scene Lights (lub wciśnij klawisze Shift+F3). Następnie w tym samym menu Lighting and Shadows włącz także opcje Shadows (cienie) i Ambient Occlusion (zasłanianie światła otaczającego). W oknie widokowym powinna być teraz widoczna scena z niebem w tle (patrz rysunek PK.5).

Ćwiczenie: Renderowanie sceny Skoro mamy już scenę oświetloną, możemy ją zrenderować. Konfigurację tego procesu przeprowadza się w oknie dialogowym Render Setup.

1

Zalecenie użycia logarytmicznej kontroli ekspozycji pojawia się, gdy włączony jest domyślny renderer Scanline, natomiast w przypadku renderera mental ray zalecana jest fotograficzna kontrola ekspozycji (Photographic Exposure Control) — przyp. tłum.

Pierwsze kroki  Burzenie murów obronnych

61

Rysunek PK.5. W oknie widokowym można zobaczyć scenę z niebem w tle

Aby zrenderować scenę z zamkowym murem, wykonaj następujące czynności. 1. Wybierz polecenie Rendering/Render Setup (lub wciśnij klawisz F10) i w oknie Render Setup otwórz panel Indirect Illumination (oświetlenie pośrednie). Włącz opcję Enable Final Gather i za pomocą suwaka FG Precision Presets ustaw średnią (Medium) precyzję procedury Final Gather. Ogólne oświetlenie sceny będzie teraz obliczane w oparciu o to, jak promienie światła odbijają się od poszczególnych obiektów. 2. Pozostając nadal w oknie Render Setup, otwórz ponownie panel Common, ustal w nim rozmiary obrazu wyjściowego (Output Size) i na koniec kliknij przycisk Render. Zawartość aktywnego okna widokowego zostanie zrenderowana i wyświetlona w oknie Render Frame. Zaprezentowana scena jest stosunkowo prosta i renderuje się dość szybko, ale jeśli chciałbyś, aby próbne renderingi trwały jeszcze krócej, zmień renderer mental ray na Quicksilver Hardware.

Na rysunku PK.6 został przedstawiony rezultat zrenderowania sceny z uwzględnieniem wszystkich materiałów i efektów świetlnych.

62

Pierwsze kroki  Burzenie murów obronnych

Rysunek PK.6. Po zrenderowaniu sceny widoczne są rozmaite efekty świetlne

Tworzenie animacji dynamicznej przy użyciu systemu MassFX Po wykonaniu próbnego renderingu i stwierdzeniu, że wszystko jest w porządku, możemy przystąpić do fazy animacyjnej. Tym razem zrealizujemy ją w oparciu o system MassFX.

Ćwiczenie: Ustalanie parametrów symulacji Przy opracowywaniu dynamicznej animacji przy użyciu systemu MassFX trzeba najpierw zaznaczyć i zdefiniować wszystkie obiekty, które mają brać udział w symulacji ruchu; potem można uruchomić symulację i zobaczyć, jak przebiega. Aby przygotować symulację, używając systemu MassFX, wykonaj następujące czynności. 1. Aby zburzyć mur, musimy mieć pocisk. Utwórz więc prosty obiekt typu Sphere (sfera), ustaw go mniej więcej w połowie wysokości muru i przypisz mu kolor czarny — to będzie nasza kula armatnia. 2. Włącz wyświetlanie paska narzędziowego MassFX — w tm celu kliknij prawym przyciskiem myszy główny pasek narzędziowy i z rozwiniętego w ten sposób menu wybierz opcję MassFX Toolbar. 3. Z głównego paska narzędziowego wybierz Select by Name, zaznacz wszystkie bloki (obiekty typu Box) i czarną sferę, a następnie kliknij na pasku MassFX przycisk o nazwie Set Selected as Dynamic Rigid Body (ustaw obiekty zaznaczone jako dynamiczne ciała sztywne). 4. W oknie widokowym Left (z lewej) zaznacz kulę armatnią i przybliż jej widok. W panelu Modify rozwiń modyfikator MassFX Rigid Body i zaznacz opcję Initial

Pierwsze kroki  Burzenie murów obronnych

63

Velocity (prędkość początkowa). W rolecie Advanced (zaawansowane) ustaw w sekcji Initial Velocity parametr Speed (szybkość) na 5000, a X na -180. W rolecie Physical Material przypisz pociskowi gęstość (Density) równą 5,5. Jeśli zauważysz, że kula porusza się w niewłaściwym kierunku (wzdłuż muru lub oddala się od niego), zmień składowe prędkości początkowej względem odpowiednich osi i spróbuj jeszcze raz.

5. Na pasku MassFX Rigid Body kliknij przycisk Start Simulation i zobacz, jak kula armatnia uderza w mur i powoduje spadanie poszczególnych cegieł. 6. Kliknij przycisk Time Configuration (kofiguracja czasu), który znajdziesz w prawym dolnym rogu głównego okna poniżej przycisków sterujących odtwarzaniem animacji, i ustaw End Time na 350, aby zwiększyć liczbę klatek animacji. 7. Zaznacz wszystkie cegły oraz pocisk i w oknie dialogowym MassFX Tools kliknij przycisk Bake Selected (wypal zaznaczone), aby utworzyć klucze animacyjne dla ostatniego przebiegu symulacji. Na rysunku PK.7 przedstawiono jedną z klatek animacji, gdzie widać skutek uderzenia pocisku w mur. Rysunek PK.7. Wyrwa w murze spowodowana uderzeniem pocisku

Ćwiczenie: Renderowanie ostatecznej animacji Jeśli animacja wygląda dobrze w oknie widokowym, możemy przystąpić do jej ostatecznego wyrenderowania. Proces ten możesz rozpocząć od ustalenia formatu animacji. Gdy włączysz renderowanie, Max automatycznie przetworzy kolejno wszystkie klatki i gdy skończy, poinformuje Cię o tym. Aby wyrenderować ostateczną animację, wykonaj następujące czynności.

64

Pierwsze kroki  Burzenie murów obronnych

1. Wybierz polecenie Rendering/Render Setup, aby otworzyć okno dialogowe Render Setup. 2. W górnej części okna włącz opcję Active Time Segment, która spowoduje wyrenderowanie wszystkich 350 klatek animacji. Następnie ustaw wymiary obrazu wyjściowego (Output Size) na 640×480. 3. W sekcji Render Output kliknij przycisk Files (pliki), aby otworzyć okno dialogowe Render Output File (plik wyjściowy renderingu). Wybierz format AVI, wpisz nazwę pliku, na przykład Burzenie muru, i kliknij przycisk Save (Zapisz). W oknie AVI Compression Setup, które się otworzy, pozostaw ustawienia domyślne i kliknij OK. 4. Sprawdź, czy na samym dole okna Render Setup z listy View wybrana jest opcja Perspective. Jeśli tak jest, kliknij przycisk Render. Max przystąpi do renderowania kolejnych klatek. Postęp pracy będzie pokazywany w oknie dialogowym. Po wyrenderowaniu ostatniej klatki cała animacja zostanie zapisana w pliku o nazwie, którą wcześniej ustaliłeś. Odszukaj ten plik i odtwórz jego zawartość. Na rysunku PK.8 pokazano jedną z klatek wyrenderowanej animacji. Rysunek PK.8. Końcowa animacja zawiera rezultaty renderingu każdej klatki

Podsumowanie Mam nadzieję, że pierwszy kontakt z Maksem przysporzył Ci wiele satysfakcji. Podczas wykonywania ćwiczeń zawartych w tym rozdziale miałeś okazję poznać następujące ważne aspekty posługiwania się tym programem: 

zestawianie elementów sceny,



posługiwanie się oknem dialogowym Array,



nakładanie materiałów na różne obiekty występujące w scenie,

Pierwsze kroki  Burzenie murów obronnych 

korzystanie z modułu renderującego mental ray,



stosowanie systemu Sun & Sky oraz włączanie świateł i cieni w oknie widokowym,



symulowanie zjawisk dynamicznych za pomocą systemu MassFX,



renderowanie animacji.

65

Nie odchodź od komputera, bo jeszcze wielu rzeczy musisz się nauczyć. W rozdziale 1. rozpoczniesz zapoznawanie się z interfejsem Maksa. Jeśli czujesz się na siłach podjąć bardziej ambitne wyzwania, przejrzyj spis treści i wybierz coś odpowiedniego dla siebie.

66

Pierwsze kroki  Burzenie murów obronnych

Rozdział 1.

Poznawanie interfejsu Maksa W tym rozdziale: 

Główne elementy interfejsu



Korzystanie z menu



Używanie pasków narzędzi



Korzystanie z panelu poleceń



Dolna listwa interfejsu



Interaktywność Maksa



Korzystanie z pomocy Maksa

Kiedy sięgamy po nową wersję Maksa, zadajemy sobie pytanie: „Czy zmienił się interfejs?”. Na szczęście, odpowiedź brzmi: „Nie bardzo”. Większość poważnych użytkowników wolałaby poddać się zabiegowi kanałowego leczenia zęba, niż zgodzić się na zmianę interfejsu ulubionego programu. Chociaż firma Autodesk stara się brać pod uwagę tę opinię, to jednak pewne zmiany zostały wprowadzone. Gdy przyjrzysz się uważnie nowemu interfejsowi, stwierdzisz, że wszystko jest tam, gdzie było, ale pojawiło się kilka dodatkowych, nowych elementów. Obecność takiego elementu może być dla Ciebie takim zaskoczeniem, jak pojawienie się nowego budynku w okolicy. Z czasem przyzwyczaisz się do jego obecności, a może nawet zaprzyjaźnisz się z jego mieszkańcami. Dlaczego interfejs programu jest tak ważny? Otóż interfejs jest zbiorem elementów sterujących, które umożliwiają użytkownikom dostęp do poszczególnych funkcji programu. Bez dobrego interfejsu trudno wykorzystać najlepsze funkcje, można też stracić dużo czasu na ich odszukanie. Program może mieć wspaniałe możliwości, ale jeśli użytkownik nie może ich odnaleźć, potencjał programu nie będzie w pełni wykorzystany. Max jest aplikacją o wielu wspaniałych funkcjach i — na szczęście — interfejs znakomicie ułatwia dostęp do nich i pozwala na ich stosowanie.

68

Część I  Rozpoczynanie pracy z programem 3ds Max

Za dostępność funkcji programu odpowiada właśnie interfejs. W Maksie możemy wybrać to samo polecenie na kilka sposobów. Jedne są szybsze, a inne wymagają więcej czasu. Intencją autorów programu było dostarczenie początkującym użytkownikom bardziej intuicyjnego dostępu do poszczególnych funkcji, a użytkownikom zaawansowanym umożliwienie dostępu bezpośredniego. Aby na przykład cofnąć ostatnią operację, możesz wybrać z głównego menu polecenie Edit/Undo (wymaga dwóch kliknięć myszą) lub, po nabyciu pewnego doświadczenia, po prostu kliknąć przycisk Undo na pasku narzędzi (wystarczy jedno kliknięcie). Doświadczony użytkownik, jeśli akurat korzysta z klawiatury, wciśnie klawisze Ctrl+Z, co umożliwi mu uzyskanie tego samego efektu bez odrywania rąk od klawiszy. Spośród tych trzech metod możesz wybrać tę, którą uważasz za najwygodniejszą. Czy interfejs Maksa jest dobry? Do pewnego stopnia tak, ale podobnie jak w przypadku większości innych interfejsów, wiele rzeczy można by tutaj udoskonalić. Miejmy nadzieję, że z każdą kolejną wersją programu będziemy się zbliżać do interfejsu doskonałego (wciąż czekam na wersję wyposażoną w polecenie „Czytaj w moich myślach”). Dla tych, którzy mają zastrzeżenia do interfejsu Maksa, firma Autodesk wprowadziła możliwość jego modyfikowania. Jeśli nie podoba Ci się interfejs domyślny, możesz go zmienić tak, aby dokładnie odpowiadał Twoim upodobaniom. Modyfikowanie interfejsu Maksa zostało opisane w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

W tym rozdziale dokonamy przeglądu ostatniego wcielenia interfejsu Maksa i poznamy kilka sposobów na to, jak sprawić, by był bardziej wygodny. Jeśli używałeś poprzednich wersji Maksa, zauważysz teraz zmianę kolorystyki jego interfejsu. Na prośbę wielu użytkowników zmieniono schemat kolorów z jasnoszarego na ciemnoszary — podobno mniej męczy wzrok przy słabym oświetleniu. Jeśli uważasz, że tamten schemat był lepszy, możesz go w każdej chwili przywrócić za pomocą odpowiednich poleceń z menu Customize. Domyślnie Max stosuje schemat kolorów, w którym tło jest ciemnoszare, a napisy białe. Schemat taki doskonale nadaje się dla artystów przesiadujących godzinami przed monitorem przy słabym albo żadnym oświetleniu zewnętrznym, ale niezbyt dobrze sprawdza się w druku. Dlatego wszystkie ilustracje zamieszczone w książce zostały wykonane w schemacie jasnoszarym. Do szybkiego przełączania tych schematów służy polecenie Customize/Custom UI and Defaults Switcher.

Główne elementy interfejsu Jeśli interfejs Maksa jest dla Ciebie nowością, powinieneś „wybrać się na przechadzkę i poznać swoich sąsiadów”. W interfejsie Maksa można wyróżnić kilka elementów, w których zostały zgrupowane polecenia o podobnym działaniu. Przykładowo wszystkie polecenia sterujące oknami widokowymi zostały zgrupowane w postaci zestawu ikon umieszczonego w prawym dolnym rogu ekranu. Gdyby wszystkie szczegóły interfejsu miały być opisane w tym jednym rozdziale, musiałby on być niezwykle długi. Jeśli zatem jakieś polecenie jest dokładniej opisywane w innej części książki, tutaj zostanie podany tylko odnośnik do tego miejsca.

Rozdział 1.  Poznawanie interfejsu Maksa

69

Cały interfejs Maksa można podzielić na sześć głównych elementów. Z kolei każdy z tych elementów zawiera grupy podelementów. Elementy główne zostały pokazane na rysunku 1.1. Oto ich krótka charakterystyka.

Rysunek 1.1. Interfejs Maksa składa się z sześciu głównych elementów 

Pasek tytułowy i menu — stanowi domyślne źródło większości poleceń, ale korzystanie z niego jest dość czasochłonne. Pasek ten został umieszczony wzdłuż górnej krawędzi okna programu.



Paski narzędzi — zawierają przyciski z ikonami pozwalające jednym kliknięciem uzyskać dostęp do określonej funkcji programu. Mogą być swobodnie przemieszczane (tzw. pływające paski narzędzi) lub dokowane przy krawędzi głównego okna programu. Domyślnie widoczny jest tylko główny pasek narzędzi.



Wstążka (Ribbon) — zawiera konfigurowalne zakładki i panele umożliwiające szybki dostęp do narzędzi modelujących, w tym również do narzędzi Graphite.

70

Część I  Rozpoczynanie pracy z programem 3ds Max 

Okna widokowe — cztery okna umożliwiające oglądanie sceny z góry, z przodu, z boku i w perspektywie.



Panel poleceń (panel boczny) — główny panel sterujący umieszczony na prawo od okien widokowych. W swojej górnej części zawiera sześć zakładek umożliwiających (za pomocą kliknięcia) otwieranie różnych paneli. Z kolei w każdym z tych paneli umieszczono rolety z różnymi parametrami i ustawieniami. To, jakie rolety są wyświetlane, zależy od zaznaczonego obiektu i wybranej zakładki.



Dolna listwa interfejsu — zajmuje dolną część okna programu i zawiera zestaw różnych elementów sterujących.

Oprócz tych głównych elementów, istnieje jeszcze kilka innych, które mogą okazać się przydatne. Przy pierwszym uruchomieniu Maksa nie są one wyświetlone, ale podczas pracy z programem można z nich korzystać. Oto opis tych dodatkowych elementów. 

Pływające paski narzędzi (floating toolbars) — dodatkowe paski narzędzi dostępne po wybraniu polecenia Customize/Show UI/Show Floating Toolbars lub po wybraniu ich z menu podręcznego wyświetlanych pasków narzędzi.



Czteroczęściowe menu kontekstowe (quadmenus) — rozwijane przez kliknięcie prawym przyciskiem myszy w aktywnym oknie widokowym. W zależności od kontekstu, może zawierać do czterech paneli z różnymi poleceniami i opcjami. Konkretna zawartość zależy od obiektu lub miejsca, jakie zostały kliknięte. Ten typ menu umożliwia szybki dostęp do wielu poleceń.



Przybornik z ustawieniami (Caddy Settings) — można go włączyć podczas modelowania. Jest to zestaw kontrolek wyświetlany w oknie widokowym nad bieżącym zaznaczeniem; oferuje szybki dostęp do istotnych w danym momencie paramatrów i poleceń.



Okna dialogowe i edytory — otwierane przez niektóre polecenia. Okna te mogą zawierać własne menu, paski narzędzi oraz inne elementy interfejsu. Dobrym przykładem takiego okna może być edytor materiałów zawierający tak dużą liczbę elementów sterujących, że nauka jego obsługi zwykle zajmuje niemało czasu.

Korzystanie z menu Rozwijane menu w górnej części interfejsu Maksa zawiera większość funkcji tego programu i stanowi doskonały punkt wyjściowy dla użytkowników początkujących. Niektóre polecenia są dostępne także za pośrednictwem przycisków na paskach narzędzi i skrótów klawiszowych. Aby spowodować wykonanie danego polecenia, można użyć myszy i za jej pomocą wybrać to polecenie z menu lub kliknąć odpowiadający mu przycisk na pasku narzędzi. Można również do tego celu użyć klawiatury, wykorzystując odpowiedni skrót (jeśli istnieje), lub wcisnąć klawisz Alt, a następnie za pomocą klawiszy ze strzałkami wskazać polecenie w menu i zatwierdzić jego wykonanie klawiszem Enter. Główna listwa menu zawiera następujące pozycje: przycisk aplikacji, Edit, Tools, Group, Views, Create, Modifiers, Animation, Graph Editors, Rendering, Customize, MAXScript i Help. Jeśli używasz programu 3ds Max 2012 Design, znajdziesz tu jeszcze jedną pozycję

Rozdział 1.  Poznawanie interfejsu Maksa

71

o nazwie Lighting Analysis. Pozycje te nie mają charakteru kontekstowego, tzn. nie znikają, gdy nie są potrzebne, tak jak to się dzieje w niektórych innych programach. Lista tych menu jest ustalona i każde z nich zajmuje swoją stałą pozycję. Menu File już nie istnieje. Zastępuje je teraz przycisk z logo Maksa. Nazywany jest on przyciskiem aplikacji (application button) i udostępnia większość poleceń z dawnego menu File. Niektóre często używane polecenia zostały przeniesione na pasek szybkiego dostępu, co widać na rysunku 1.2.

Rysunek 1.2. Pasek tytułowy Maksa zawiera przycisk aplikacji, pasek szybkiego dostępu i pasek narzędziowy InfoCenter

Jeśli do jakiegoś polecenia został przypisany skrót klawiszowy, jest on wyświetlany w menu obok nazwy tego polecenia. Gdy nazwa kończy się wielokropkiem, znaczy to, że wybranie tego polecenia spowoduje otwarcie odrębnego okna dialogowego. Mała czarna strzałka na prawo od nazwy polecenia sygnalizuje, że w podmenu istnieją dla niego dodatkowe opcje. Aby rozwinąć podmenu, należy kliknąć daną pozycję menu lub przytrzymać na niej wskaźnik myszy. Opcje menu pełniące rolę przełączników (np. Views/Show Ghosting) zmieniają swój stan za każdym razem, kiedy są wybierane. Stan włączenia takiej opcji jest sygnalizowany znakiem zaznaczenia wyświetlanym po lewej stronie jej nazwy. Brak tego znaku informuje, że dana opcja jest wyłączona. Pełna lista skrótów klawiszowych została zamieszczona w dodatku D „Skróty klawiszowe w 3ds Max 2012” na końcu książki.

Aby wybrać określoną pozycję menu za pomocą klawiatury, należy najpierw wcisnąć klawisz Alt, co spowoduje wybranie opcji Edit. Następnie można przechodzić do poszczególnych opcji menu, używając klawiszy ze strzałkami. Po rozwinięciu menu można wybrać z niego polecenie przez wciśnięcie klawisza z literą, która w nazwie polecenia została podkreślona. Aby przykładowo wybrać polecenie Edit/Undo, należy wcisnąć klawisze Alt+E (Edit), a następnie U (Undo) albo po wciśnięciu klawisza Alt zaznaczyć polecenie Undo, używając do tego celu klawisza ze strzałką w dół, i wcisnąć klawisz Enter. Zapamiętanie liter podkreślonych w menu pozwala na szybki dostęp nawet do tych poleceń, które nie mają przypisanego skrótu klawiszowego. Stosowanie tej metody może okazać się szybsze również w sytuacji, gdy skrót klawiszowy wymaga jednoczesnego wciśnięcia klawiszy położonych daleko od siebie, np. Ctrl i Y. W buforze klawiatury zapamiętywana jest kolejność wciskanych klawiszy niezależnie od szybkości, z jaką to robimy, co znacznie ułatwia wybieranie poleceń tą metodą. Aby np. wybrać polecenie Group/Ungroup, wystarczy wcisnąć kolejno Alt+G i U. Częste stosowanie tej techniki pozwala zapamiętać ciągi liter odpowiadające pewnym poleceniom, np. wciśnięcie kolejno klawiszy Alt+C, H, E spowoduje wywołanie polecenia tworzącego elipsę.

Nie wszystkie polecenia są zawsze dostępne. Jeśli w danej chwili jakieś polecenie jest niedostępne, jego nazwa jest wyświetlana w kolorze szarym (patrz rysunek 1.3) i nie można

72

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.3. Wizualne elementy poleceń

go wybrać. Przykładowo z polecenia Clone możesz skorzystać tylko wtedy, gdy jest zaznaczony jakiś obiekt, a więc jeśli żaden obiekt nie został zaznaczony, polecenie Clone będzie niedostępne. Gdy zaznaczysz jakikolwiek obiekt, stanie się dostępne. Jeśli klikniesz pasek menu prawym przyciskiem myszy, możesz wyłączyć wyświetlanie tego paska. Aby go ponownie wyświetlić, wybierz polecenie Show Menu Bar w menu paska szybkiego dostępu.

Używanie pasków narzędzi Teraz, kiedy zapoznałeś się z dwuetapowym wybieraniem poleceń za pomocą menu, czas na poznanie metody jednoetapowej, polegającej na wykorzystaniu pasków narzędzi. Główny pasek narzędzi jest domyślnie wyświetlany bezpośrednio pod paskiem menu w górnej części okna programu. Korzystanie z pasków narzędzi jest jednym z najwygodniejszych sposobów wybierania poleceń, bo w większości przypadków wystarcza tylko jedno kliknięcie.

Dokowane i pływające paski narzędzi Przez kliknięcie dwóch poprzecznych linii na lewym (lub górnym) końcu paska i przeciągnięcie go w miejsce położone z dala od krawędzi interfejsu możesz sprawić, by zadokowany pasek narzędzi (również główny) stał się pływający. Po wykonaniu takiego zabiegu można zmienić rozmiary paska, przeciągając jego krawędzie lub narożniki. Pływający pasek narzędzi łatwo zadokować przez przeciągnięcie go do dowolnej krawędzi okna lub dwukrotne kliknięcie jego paska tytułowego, co spowoduje ponowne zadokowanie paska w miejscu, które poprzednio zajmował. Na rysunku 1.4 został przedstawiony główny pasek narzędzi w postaci paska pływającego.

Rozdział 1.  Poznawanie interfejsu Maksa

73

Rysunek 1.4. Główny pasek narzędzi zawiera przyciski i listy rozwijane służące do sterowania najczęściej używanymi funkcjami Maksa

Jeśli klikniesz prawym przyciskiem myszy dowolny pasek narzędzi w miejscu, w którym nie ma przycisków, zostanie rozwinięte menu podręczne pozwalające modyfikować, ukrywać lub wyświetlać poszczególne paski narzędzi włącznie z panelem poleceń. Do ukrywania i wyświetlania swobodnych pasków narzędzi lub głównego paska narzędzi możesz użyć poleceń z podmenu Customize/Show UI. Główny pasek narzędzi możesz ukrywać i wyświetlać również za pomocą skrótu klawiszowego Alt+6. Zawartość pasków narzędzi możesz dopasowywać do własnych potrzeb i upodobań. Szczegóły na ten temat znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Po wybraniu polecenia Customize/Show UI/Show Floating Toolbars na ekranie pojawi się kilka dodatkowych pasków narzędziowych. Są to paski pływające. Wyświetlić je można również, zaznaczając ich nazwy w menu podręcznym dowolnego paska narzędziowego. Dostępne w taki sposób paski to Axis Constraints, Layers, reactor, Extras, Render Shortcuts, Snaps, Animation Layers, Containers, MassFX Toolbar i Brush Presets. Pasek narzędziowy InfoCenter jest teraz na stałe związany z paskiem tytułowym. Jego obsługa jest opisana w dalszej części rozdziału.

Podpowiedzi i rozwijane grupy przycisków Z każdym przyciskiem oznaczonym ikoną (dotyczy to zarówno przycisków na paskach narzędzi, jak i w panelu poleceń oraz wszystkich oknach dialogowych) jest związana podpowiedź zawierająca jego nazwę. Aby wyświetlić tę podpowiedź, przytrzymaj przez chwilę wskaźnik myszy nad danym przyciskiem. W ten sposób można łatwo zidentyfikować poszczególne przyciski. Jeśli zapomniałeś, do czego służy dany przycisk, przytrzymaj nad nim wskaźnik myszy i przeczytaj nazwę. Mały trójkącik w prawym dolnym rogu przycisku oznacza, że mamy do czynienia z rozwijaną grupą przycisków (flyout). Kliknij i przytrzymaj wciśnięty przycisk myszy, aby rozwinąć grupę, a następnie przesuń wskaźnik nad ten przycisk, który chcesz wybrać. Na rysunku 1.5 została pokazana grupa przycisku Align znajdująca się na głównym pasku narzędzi. W panelu General okna dialogowego Preference Settings można ustalić czas (w milisekundach), po którym następuje rozwinięcie grupy przycisków.

Pasek szybkiego dostępu Pasek szybkiego dostępu znajduje się na prawo od przycisku aplikacji. Ten niewielki pasek narzędziowy zawiera ikony następujących poleceń: New Scene (nowa scena), Open File (otwórz plik), Save File (zapisz plik), Undo (cofnij), Redo (przywróć) i Set Project Folder

74

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.5. Rozwijana grupa przycisków

(ustal folder projektu). Kliknięcie małej strzałki po prawej stronie paska udostępnia menu, które pozwala ukryć cały pasek lub dowolną z jego ikon. Jest tam również opcja wyświetlania tego paska pod wstążką (Show Below the Ribbon).

Główny pasek narzędzi Przy małej rozdzielczości ekranu główny pasek narzędzi nie jest widoczny w całości. Aby wyświetlić całość, musisz ustawić rozdzielczość poziomą ekranu na co najmniej 1280 pikseli. Możesz jednak przesuwać ten pasek, ustawiając na nim wskaźnik myszy w miejscu wolnym od przycisków, np. pod jedną z list rozwijanych (wskaźnik przyjmuje wtedy kształt dłoni), i przeciągając go w odpowiednim kierunku. W ten sam sposób możesz przesuwać zawartość panelu poleceń, edytora materiałów i innych paneli, które są zbyt małe, aby wyświetlić swoją zawartość w całości. Najłatwiejszy sposób przesuwania głównego paska narzędzi polega na przeciąganiu go przy użyciu środkowego przycisku myszy.

Przyciski służące do otwierania okien dialogowych, takich jak Layer Manager, Material Editor lub Render Setup, są przyciskami typu przełącznik. Gdy okno dialogowe jest otwarte, przycisk pozostaje wciśnięty i przyjmuje kolor niebieski. Ponowne kliknięcie takiego przycisku powoduje zamknięcie okna dialogowego. Odpowiednie opcje menu (i skróty klawiszowe) działają w podobny sposób — gdy okno dialogowe jest otwarte, obok nazwy opcji wyświetlany jest znak zaznaczenia. W tabeli 1.1 zaprezentowano wszystkie przyciski głównego paska narzędzi. Przyciski tworzące rozwijaną grupę zostały oddzielone przecinkami. Tabela 1.1. Przyciski głównego paska narzędzi Przycisk

Nazwa

Opis

Select and Link

Ustanawia połączenie między obiektami.

Unlink Selection

Przerywa połączenie między obiektami.

Bind to Space Warp

Przyłącza obiekty do pola sił.

Rozdział 1.  Poznawanie interfejsu Maksa

75

Tabela 1.1. Przyciski głównego paska narzędzi — ciąg dalszy Przycisk

Nazwa

Opis

Lista rozwijana Selection Filter

Pozwala wybrać typ obiektów, które mogą być zaznaczane.

Select Object (Q)

Zaznacza obiekt.

Select by Name (H)

Umożliwia zaznaczenie obiektu przez wskazanie jego nazwy.

Rectangular Selection Region, Circular Selection Region, Fence Selection Region, Lasso Selection Region, Paint Selection Region (cyklicznie Ctrl+F)

Określa kształt ramki używanej do zaznaczania obiektów.

Przełącznik Window/Crossing

Określa, czy obiekt, aby go zaznaczyć, musi być w całości objęty ramką.

Select and Move (W)

Zaznacza obiekt i umożliwia jego przesuwanie.

Select and Rotate (E)

Zaznacza obiekt i umożliwia jego obracanie.

Select and Uniform Scale, Zaznacza obiekt i umożliwia jego Select and Non-Uniform Scale, skalowanie przy użyciu różnych metod. Select and Squash (cyklicznie R) Lista rozwijana Reference Coordinate System

Określa układ współrzędnych dla przeprowadzanych transformacji.

Use Pivot Point Center, Use Selection Center, Use Transform Coordinate Center

Określa środek transformacji.

Select and Manipulate

Zaznacza obiekt i umożliwia modyfikowanie jego parametrów za pomocą manipulatora.

Keyboard Shortcut Override Toggle

Gdy jest włączony, umożliwia korzystanie ze skrótów klawiszowych zarówno z głównego interfejsu, jaki z aktywnego okna dialogowego lub innej aktywnej funkcji programu. Gdy jest wyłączony, można używać tylko skrótów z głównego interfejsu.

76

Część I  Rozpoczynanie pracy z programem 3ds Max

Tabela 1.1. Przyciski głównego paska narzędzi — ciąg dalszy Przycisk

Nazwa

Opis

Snap Toggle 2D, Snap Toggle 2.5D, Snap Toggle 3D (S)

Określa tryb przyciągania. 2D oznacza przyciąganie tylko do aktywnej siatki konstrukcyjnej. 2.5D oznacza przyciąganie do siatki i rzutów obiektów na tę siatkę. 3D oznacza przyciąganie w całej przestrzeni.

Angle Snap Toggle (A)

Włącza skokowy tryb obracania obiektów o określony kąt.

Percent Snap (Shift+Ctrl+P)

Włącza skokowy tryb skalowania obiektów o określoną wartość procentową.

Spinner Snap Toggle

Określa, o ile zmienia się wartość spinera przy każdym kliknięciu.

Edit Named Selection Sets

Otwiera okno dialogowe umożliwiające tworzenie zestawów zaznaczenia i zarządzanie nimi.

Lista rozwijana Named Selection Sets

Umożliwia wybranie utworzonego wcześniej zestawu zaznaczenia.

Mirror

Tworzy lustrzane odbicie zaznaczonych obiektów.

Align (Alt+A), Quick Align, Normal Align (Alt+N), Place Highlight (Ctrl+H), Align Camera, Align to View

Otwiera okno dialogowe ułatwiające wyrównywanie obiektów ze względu na ich położenie lub ze względu na ich normalne; pozwala określić położenie odbłysków; wyrównuje obiekty względem kamery lub widoku.

Manage Layers

Otwiera okno dialogowe służące do zarządzania warstwami.

Graphite Modeling Tools

Otwiera panel z narzędziami modelarskimi Graphite.

Curve Editor (Open)

Otwiera okno edytora krzywych.

Schematic View (Open)

Otwiera okno widoku schematycznego sceny.

Material Editor (M)

Otwiera okno edytora materiałów w trybie kompaktowym lub rozszerzonym.

Render Setup (F10)

Otwiera okno z ustawieniami renderingu.

Rendered Frame Window

Otwiera okno z renderowanym obrazem.

Rozdział 1.  Poznawanie interfejsu Maksa

77

Tabela 1.1. Przyciski głównego paska narzędzi — ciąg dalszy Przycisk

Nazwa

Opis

Quick Render (Production), Render Iterative, Quick Render (ActiveShade)

Renderuje zawartość aktywnego okna widokowego bez otwierania okna dialogowego z ustawieniami renderingu. Stosowane są ustawienia produkcyjne, tryb renderowania wielokrotnego lub okno Active Shade.

Wstążka Wstążka jest specjalnym paskiem narzędziowym z wieloma sekcjami narzędzi. Obecnie wypełniają ją narzędzia modelarskie określane ogólnie jako Graphite Modeling Tools. Przyciskiem o takiej właśnie nazwie, znajdującym się na głównym pasku narzędzi, można wstążkę włączać i wyłączać. Standardowo zawiera ona zakładki Graphite Modeling Tools, Freeform, Selection i Object Paint. Narzędzia umieszczone na wstążce są dostępne, gdy zaznaczony jest obiekt typu Editable Poly. Więcej informacji o takich obiektach i narzędziach Graphite znajdziesz w rozdziałach 13., „Modelowanie na poziomie wielokątów” i 14., „Korzystanie z narzędzi Graphite i malowanie obiektami”.

Za pomocą przycisku Minimize widocznego na prawo od zakładek można przełączać tryb wyświetlania wstążki. Mogą to być same zakładki, zakładki i nazwy paneli lub zakładki z przyciskami paneli. Można też wybrać opcję cyklicznego przełączania tych trybów. Kliknięcie prawym przyciskiem myszy paska z zakładkami rozwija dodatkowe menu z opcjami wyświetlania i ukrywania zakładek oraz paneli, konfigurowania wstążki, zapisywania i wczytywana konfiguracji, ustawiania wstążki pionowo lub poziomo, przywracania ustawień domyślnych i włączania etykietek ekranowych. Na rysunku 1.6 pokazano wstążkę w różnych trybach wyświetlania. Konfigurowanie wstążki jest dokładnie opisane rozdziale 4., „Dostosowywanie interfejsu Maksa do własnych potrzeb i upodobań”.

Zarówno całą wstążkę, jak i poszczególne jej panele można uczynić pływającymi. W tym celu trzeba przeciągnąć wstążkę za lewą krawędź, a panel za pasek tytułowy lub przycisk. Oswobodzony w ten sposób panel przyjmuje postać taką jak na rysunku 1.7. Widoczne po prawej stronie przyciski służą do dokowania panelu we wstążce i do zmieniania jego orientacji z pionowej na poziomą lub na odwrót. Szare paski po obu stronach panelu służą do przeciągania go w dowolne miejsce ekranu.

Korzystanie z okien widokowych Największą część interfejsu Maksa zajmują cztery okna widokowe umożliwiające oglądanie obiektów w scenie. Każde z tych okien można konfigurować niezależnie od pozostałych.

78

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.6. Wstążka może być wyświetlana w kilku różnych trybach

Rysunek 1.7. Panele wstążki mogą być niezależne jeden od drugiego

Rozumienie zasad funkcjonowania okien widokowych i umiejętność korzystania z nich są niezbędne, aby efektywnie pracować w Maksie, dlatego zagadnieniom związanym z oknami widokowymi poświęcony został w całości rozdział 2., „Sterowanie oknami widokowymi oraz ich konfigurowanie”.

Korzystanie z panelu poleceń Drugim, po oknach widokowych, elementem interfejsu Maksa, któremu będziesz poświęcał wiele uwagi (przynajmniej do czasu, kiedy nabierzesz wprawy w posługiwaniu się czteroczęściowym menu kontekstowym), jest boczny panel poleceń. Panel poleceń zajmuje miejsce między oknami widokowymi a prawą krawędzią okna programu. To tutaj możesz ustawiać parametry obiektów, wybierać różne opcje i wywoływać wiele funkcji programu. Panel ten zawiera sześć innych paneli, które można otwierać kliknięciem odpowiedniej zakładki z ikoną w górnej części głównego panelu. Mamy tu do wyboru następujące zakładki: Create (utwórz), Modify (modyfikuj), Hierarchy (hierarchia), Motion (ruch), Display (wyświetlanie) i Utilities (narzędzia).

Rozdział 1.  Poznawanie interfejsu Maksa

79

Możesz sprawić, by panel poleceń stał się pływającym oknem dialogowym, co zostało pokazane na rysunku 1.8, przez odciągnięcie go od krawędzi okna programu. W tym celu kliknij i przeciągnij ku środkowi ekranu puste miejsce panelu, jakie znajdziesz po prawej stronie ikon oznaczających zakładki. Jeśli należysz do grona ludzi leworęcznych, możesz zadokować ten panel przy lewej krawędzi okna. Kiedy panel nie jest zadokowany, możesz zmienić jego rozmiary, przeciągając jego krawędzie lub narożniki (jednak szerokość panelu pozostaje stała)1. Rysunek 1.8. Panel poleceń składa się z sześciu paneli dostępnych po kliknięciu odpowiedniej ikony

Zarówno panel poleceń, jak i każdy pasek narzędzi, który został odłączony od interfejsu, możesz ponownie zadokować w miejscu, jakie poprzednio zajmował. W tym celu wystarczy kliknąć dwukrotnie jego pasek tytułowy. Możesz także kliknąć pasek tytułowy panelu lub paska narzędzi prawym przyciskiem myszy i z menu podręcznego wybrać polecenie dokowania przy lewej (Dock/Left), prawej (Dock/Right), dolnej (Dock/Bottom) lub górnej (Dock/Top) krawędzi interfejsu, przy czym dla panelu poleceń dostępne są tylko dwie pierwsze możliwości. Menu podręczne panelu poleceń zawiera także polecenie Minimize. Jeśli je wybierzesz, panel zostanie zminimalizowany i umieszczony przy krawędzi okna, ale gdy tylko zbliżysz tam wskaźnik myszy, panel pojawi się w całości i będziesz mógł go użyć. Po odsunięciu wskaźnika panel znów zostanie zminimalizowany. Aby wyłączyć ten tryb, wybierz jedno z poleceń dokujących.

Rolety Większość elementów sterujących występujących w panelu poleceń jest rozmieszczona w tzw. roletach. Roleta (rollout) jest to wyodrębniona część panelu grupująca elementy sterujące; jej nazwę umieszczono w szarym prostokątnym polu (patrz rysunek 1.9). W polu 1

Szerokość panelu poleceń można zmieniać także wtedy, gdy jest zadokowany, ale zawsze jest ona całkowitą wielokrotnością szerokości domyślnej — przyp. tłum.

80

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.9. Roletę można zwinąć lub rozwinąć, klikając jej pasek tytułowy

tym, oprócz nazwy rolety, znajduje się znak plus lub minus, przy czym minus oznacza, że roleta jest rozwinięta, a plus — zwinięta. Kliknięcie w polu z nazwą rolety powoduje jej rozwinięcie lub zwinięcie. Położenie rolety możesz zmienić, przeciągając jej pasek tytułowy powyżej lub poniżej innej rolety. Niektóre rolety, np. Object Type i Name and Color w panelu Create, nie mogą być przesuwane.

Jeśli klikniesz roletę prawym przyciskiem myszy w miejscu niezajętym przez żaden przycisk, rozwinie się menu podręczne, z którego możesz wybrać polecenie zwinięcia tej rolety (Close Rollout), zwinięcia lub rozwinięcia wszystkich rolet (odpowiednio Close All i Open All) lub przywrócenia ich domyślnej kolejności (Reset Rollout Order). Menu podręczne zawiera także listę wszystkich rolet dostępnych w danym panelu, przy czym rolety rozwinięte są na tej liście zaznaczone. Rozwinięcie wszystkich rolet często powoduje, że nie mieszczą się one w obszarze, który został im przydzielony. W takiej sytuacji przy prawej krawędzi panelu pojawia się wąski pasek przewijania. Przeciągając go, uzyskasz dostęp do wszystkich rolet. Ten sam cel możesz osiągnąć przez umieszczenie kursora w pustym miejscu rolety (przyjmuje on wtedy kształt dłoni) i przeciągnięcie go w górę lub w dół. Do przewijania zawartości panelu poleceń możesz także wykorzystać rolkę myszy. Zarówno paski narzędzi, jak i panel poleceń możesz dostosować do własnych potrzeb i upodobań. Informacje na ten temat znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Zwiększanie szerokości panelu poleceń Szerokość panelu poleceń możesz podwoić lub potroić (a nawet dowolnie zwielokrotnić), przeciągając jego lewą krawędź ku środkowi interfejsu. Takie poszerzanie panelu poleceń odbywa się kosztem powierzchni dostępnej dla okien widokowych. Na rysunku 1.10 przedstawiono panel poleceń, którego szerokość została podwojona.

Rozdział 1.  Poznawanie interfejsu Maksa

81

Rysunek 1.10. Przeciągnij lewą krawędź panelu poleceń, aby zwiększyć jego szerokość

Ćwiczenie: Przystosowanie interfejsu dla leworęcznych Pracowałem kiedyś w firmie, w której obowiązywał wymóg, aby wszystkie komputery miały mysz po lewej stronie klawiatury. Często wymienialiśmy komputery i szef pilnował, by mysz została przełożona na drugą stronę (podczas pracy na takim komputerze wszystko wydaje się dziwne). W rzeczywistości jedni wolą mieć mysz po lewej, a inni po prawej stronie. Max może dostosować się do jednych i drugich. Domyślne ustawienie interfejsu Maksa z panelem poleceń po prawej stronie przeznaczone jest raczej dla praworęcznych, ale dzięki możliwości zmiany miejsca dokowania tego panelu szybko możemy dostosować program do wymagań użytkownika leworęcznego. Aby dokonać takiego przestawienia interfejsu, wykonaj następujące czynności. 1. Kliknij panel poleceń w pustym miejscu na prawo od zakładki panelu Utilities i przeciągnij go ku środkowi interfejsu. Podczas przeciągania panelu kursor zmieni swój wygląd. 2. Przeciągnij panel aż do lewej krawędzi. Kursor ponownie zmieni wygląd, sygnalizując możliwość zadokowania panelu. Zwolnij przycisk myszy — panel poleceń będzie teraz zadokowany przy lewej krawędzi interfejsu. 3. Jeszcze łatwiejsza metoda polega na kliknięciu panelu poleceń prawym przyciskiem myszy i wybraniu z podręcznego menu polecenia Dock/Left. Interfejs przystosowany do użytku przez leworęcznych został pokazany na rysunku 1.11.

82

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.11. Użytkownicy leworęczni mogą przesunąć panel poleceń na lewą stronę Aby zapisać zmiany wprowadzone w układzie interfejsu, użyj polecenia Customize/Save Custom UI Scheme. Nowe ustawienie zostanie zapisane w pliku maxstart.cui, który jest automatycznie odczytywany podczas uruchamiania programu.

Dolna listwa interfejsu Ostatnim dużym elementem interfejsu Maksa jest dolna listwa, która właściwie nie jest typowym składnikiem tego interfejsu, lecz zbiorem kilku zestawów elementów sterujących. Tych zestawów nie można odłączyć od interfejsu, tak jak pasków narzędziowych, ale można je ukryć, włączając tryb eksperta (Ctrl+X). Zawartość dolnej listwy została pokazana na rysunku 1.12. W kolejności od lewej do prawej są to następujące elementy.

Rysunek 1.12. Dolna listwa interfejsu zawiera kilka zestawów elementów sterujących

Rozdział 1.  Poznawanie interfejsu Maksa

83



Suwak czasu (Time Slider) — ulokowany bezpośrednio pod oknami widokowymi umożliwia szybkie dotarcie do określonej klatki animacji. Swoim zakresem obejmuje wszystkie klatki bieżącej animacji. Przeciąganie tego suwaka pozwala na szybkie przemieszczanie się między klatkami animacji. Klikanie strzałek po obu stronach suwaka pozwala na przejście do następnej lub poprzedniej klatki (lub klucza).



Pasek ścieżki (Track Bar) — wyświetla klucze animacji w postaci kolorowych prostokącików, przy czym kolor czerwony oznacza klucze położenia, zielony — klucze obrotu, niebieski — klucze skalowania, a szary — klucze zmian parametrów. Za pomocą tego paska możesz wybierać określone klucze, przesuwać je i usuwać. Na lewym końcu listwy znajduje się przycisk o nazwie Open Mini Curve Editor, którego kliknięcie sprawia, że pasek ścieżki zostaje zastąpiony uproszczoną wersją okna edytora krzywych animacji.



Pasek stanu — usytuowany poniżej paska ścieżki wyświetla liczbę i rodzaj zaznaczonych obiektów, wartości przekształceń i odstęp między liniami siatki konstrukcyjnej. Zawiera przycisk blokowania aktualnego zaznaczenia (Selection Lock Toggle). Umożliwia także przekształcanie obiektów przez wpisywanie wartości tych przekształceń do odpowiednich pól.



Linia zachęty — położona jest wzdłuż dolnej krawędzi okna programu. Jeśli masz wątpliwości, jak postępować po wybraniu określonego narzędzia, spójrz na tę linię, aby zobaczyć, czego Max oczekuje w danej chwili. Na prawo od tej linii znajduje się przycisk służący do włączania i wyłączania degradacji adaptacyjnej (Adaptive Degradation) oraz pole umożliwiające nadawanie nazw (Time Tags) poszczególnym klatkom animacji.



Kontrolki kluczowania — służą do tworzenia kluczowych klatek animacji. Istnieją dwa tryby tworzenia takich klatek: Auto Key (skrót klawiszowy: N) i Set Key (skrót klawiszowy: '). Pierwszy z nich jest trybem automatycznym — klatki kluczowe są tworzone dla każdej zmiany wprowadzanej w scenie. Natomiast tryb Set Key umożliwia większą kontrolę tego procesu — klucze są tworzone dla wybranych filtrów dopiero po kliknięciu przycisku Set Keys (skrót klawiszowy: K).



Kontrolki czasu — przypominają przyciski magnetofonowe lub magnetowidowe. Umożliwiają łatwe przechodzenie do poszczególnych klatek i kluczy animacji. W zależności od wybranego trybu (klatki lub klucze), przyciski te pozwalają przejść do pierwszej, poprzedniej, następnej lub ostatniej klatki bądź pierwszego, poprzedniego, następnego i ostatniego klucza.



Kontrolki nawigacyjne okien widokowych — zajmują prawy dolny róg interfejsu i służą do manipulowania oknami widokowymi oraz ich zawartością. Pozwalają zmienić skalę widoku, przesunąć go lub obrócić. Większość kontrolek z dolnej listwy — przede wszystkim suwak czasu, pasek ścieżki oraz czasu i kluczowania — jest związana z animacjami. Więcej informacji na ich temat znajdziesz w rozdziale 21., „Animacja i klatki kluczowe”. Kontrolki nawigacyjne są opisane w rozdziale 2., „Sterowanie oknami widokowymi oraz ich konfigurowanie”.

84

Część I  Rozpoczynanie pracy z programem 3ds Max

Interaktywne funkcje Maksa Poznanie rozmieszczenia poszczególnych elementów interfejsu to dopiero początek. Max oferuje również kilka funkcji, które sprawiają, że jego interfejs „współpracuje” z użytkownikiem. Aby odnieść korzyści wynikające z tej współpracy, musisz zapoznać się z tymi funkcjami.

Czteroczęściowe menu kontekstowe (quadmenus) Czteroczęściowe menu kontekstowe, pokazane na rysunku 1.13, jest wyświetlane po kliknięciu prawym przyciskiem myszy w aktywnym oknie widokowym. Może składać się z czterech odrębnych sekcji rozmieszczonych wokół kursora. Jego zawartość zależy od zaznaczonego obiektu. Rysunek 1.13. Czteroczęściowe menu kontekstowe umożliwia szybki dostęp do wielu poleceń

Profesjonalni użytkownicy Maksa korzystają z menu kontekstowego bardzo często, unikając w ten sposób przenoszenia kursora nad inne elementy interfejsu w celu wybrania polecenia z menu głównego lub kliknięcia przycisku np. w panelu poleceń.

Aby zamknąć menu kontekstowe, wystarczy kliknąć lewym przyciskiem myszy poza obszarem tego menu. W każdej sekcji ostatnio wybrane polecenie jest wyróżniane kolorem niebieskim. Aby takie polecenie wybrać ponownie, wystarczy kliknąć szary pasek z nazwą sekcji, do której należy. Po wybraniu z głównego menu polecenia Customize/Customize User Interface możesz określić, które polecenia będą dostępne w menu kontekstowym, chociaż wydaje się, że ustawienia domyślne uwzględniają wszystko, czego możesz potrzebować. Więcej informacji na temat modyfikowania interfejsu znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Jeśli w aktywnym oknie widokowym klikniesz prawym przyciskiem myszy, trzymając wciśnięty klawisz Alt, Ctrl, Shift lub ich kombinację, uzyskasz dostęp do różnych zestawów poleceń. I tak Shift+kliknięcie prawym przyciskiem myszy udostępnia opcje przyciągania (snap), Alt+kliknięcie prawym przyciskiem myszy daje dostęp do poleceń zwią-

Rozdział 1.  Poznawanie interfejsu Maksa

85

zanych z animacją, Ctrl+kliknięcie prawym przyciskiem myszy umożliwia posłużenie się poleceniami związanymi z tworzeniem i przekształcaniem podstawowych obiektów geometrycznych, Shift+Alt+kliknięcie prawym przyciskiem myszy udostępnia polecenia z podmenu reaktor, Ctrl+Alt+kliknięcie prawym przyciskiem myszy — polecenia związane z renderowaniem.

Przybornik Czteroczęściowe menu kontekstowe znakomicie ułatwia dostęp do niezbędnych poleceń, ale nie umożliwia modyfikowania parametrów i nadal trzeba sięgać do bocznego panelu. W wielu przypadkach można jednak skorzystać z przybornika — niektóre narzędzia modelarskie, takie jak Bevel (fazowanie) czy Extrude (wytłaczanie), umożliwiają wyświetlanie zestawu kontrolek z parametrami, zwanego przybornikiem (Caddy), tuż obok zaznaczonego obiektu (patrz rysunek 1.14). Skutki zmian wprowadzanych za pomocą tych kontrolek są natychmiast widoczne i jeśli uznasz, że dalsze modyfikacje są zbędne, możesz przybornik zamknąć. Rysunek 1.14. Przybornik pojawia się obok zaznaczonego obiektu i ułatwia testowanie różnych ustawień

Główną zaletą przybornika jest to, że pozostaje zawsze blisko zaznaczonego obiektu, nawet wtedy gdy zaczniesz pracować w innym oknie widokowym. Poza kontrolkami służącymi do modyfikowania parametrów są tu także przyciski do zatwierdzania wprowadzonych zmian oraz do ich anulowania. Użycie przycisku Apply and Continue powoduje zatwierdzenie modyfikacji i pozostawienie narzędzia nadal aktywnym.

Sygnalizacja stanu przycisków za pomocą kolorów Interfejs Maksa sygnalizuje aktualny tryb pracy za pomocą odpowiednich kolorów. Żółty kolor przycisku oznacza, że właśnie ten przycisk wyznacza tryb funkcjonowania interfejsu2. Jeśli np. wybrany został jeden z przycisków zaznaczania (z głównego paska narzędzi), jego kolor zmieni się na żółty i każde przeciągnięcie kursora w oknie widokowym będzie 2

Barwa żółta obowiązuje w schemacie jasnoszarym, a w ciemnoszarym aktywne przyciski wyróżniane są kolorem niebieskim — przyp. tłum.

86

Część I  Rozpoczynanie pracy z programem 3ds Max

odnosić się do obiektów. Jeśli natomiast został wybrany jeden z przycisków sterujących widokiem sceny, jego kolor również zmieni się na żółty, ale tym razem przeciąganie kursora w oknie widokowym będzie oznaczało zmianę ustawienia widoku. Świadomość aktualnego trybu pracy jest bardzo ważna — pozwala uniknąć wielu kłopotów. Innym kolorem, jaki mogą przyjmować przyciski, jest czerwień. Taki właśnie kolor przyjmują po włączeniu przyciski Auto Keys i Set Keys. Dodatkowo ramka otaczająca aktywne okno widokowe oraz suwak czasu też zmieniają kolor na czerwony. Jest to sygnał, że każda modyfikacja będzie zapisana jako klucz animacji. Przyciski typu przełącznik (toggle) można włączać i wyłączać. Przykładem mogą być przyciski służące do włączania różnych trybów przyciągania. Jeśli przycisk tego typu zostanie włączony, jego kolor również zmienia się na żółty. Przyciski przełączniki, które zmieniają stan tylko po ich bezpośrednim kliknięciu, w stanie włączenia przyjmują kolor niebieski, co sygnalizuje, że określony tryb jest włączony. Przykładami takich przycisków są Key Mode Toggle i Affect Pivot Only. Korzystając z okna dialogowego Customize User Interface, możesz zmienić każdy kolor występujący w interfejsie Maksa. Więcej informacji na ten temat znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek

Korzystanie z funkcji „przeciągnij i upuść” Wiele czynności w Maksie wykonasz, stosując technikę „przeciągnij i upuść”. Możesz ją wykorzystać w oknach dialogowych służących do operacji na plikach, a także w oknach Material Editor, Background Image, View File i Environmental Settings. W oknach tych możesz wybrać plik lub materiał i przeciągnąć go do miejsca przeznaczenia. Mając np. rozwiniętą roletę Maps w edytorze materiałów, możesz przeciągnąć plik zawierający teksturę bezpośrednio z okna Eksploratora Windows lub przeglądarki Asset Manager i upuścić go nad przyciskiem Map. Możesz nawet otwierać pliki, przeciągając je z okna Eksploratora nad okno Maksa.

Posługiwanie się spinerami Spinery możesz znaleźć w różnych miejscach interfejsu Maksa. Są to małe pola edycyjne z dwiema strzałkami po prawej stronie. Jak łatwo się domyślić, kliknięcie strzałki zwróconej w górę powoduje zwiększenie wartości w polu edycyjnym, a kliknięcie strzałki zwróconej w dół — zmniejszenie tej wartości. Wielkość zmian zależy od ustawień w panelu General okna dialogowego Preference Settings. Kliknięcie spinera prawym przyciskiem myszy ustawia jego wartość na najmniejszą z dopuszczalnych. Inny sposób zmieniania wartości spinera polega na kliknięciu dowolnej strzałki i przeciągnięciu kursora w górę (zwiększanie) lub w dół (zmniejszanie). Efekt zmieniania wartości spinera przez przeciąganie może być widoczny w oknie widokowym, jeżeli w menu Views została włączona opcja Update During Spinner Drag. Gdy uaktywnisz pole edycyjne spinera i wciśniesz klawisze Ctrl+N, otwarte zostanie okno dialogowe Numeric Expression Evaluator, które pozwala na wprowadzanie wartości w formie wyrażenia algebraicznego. Przykładowo nową wartość spinera możesz ustalić przez wpisanie sumy kilku liczb. Wyrażenie 30+40+35 ustawi tę wartość na 105.

Rozdział 1.  Poznawanie interfejsu Maksa

87

Więcej informacji na temat okna Numeric Expression Evaluator znajdziesz w rozdziale 36., „Animowanie przy użyciu kontrolera Expression i wiązania parametrów”.

Niemodalność i zachowawczość okien dialogowych Wiele okien dialogowych w Maksie należy do typu okien niemodalnych, co oznacza, że nie musisz ich zamykać, aby swobodnie pracować z obiektami w oknach widokowych. Przykładem okna niemodalnego jest okno edytora materiałów. Po jego otwarciu możesz normalnie tworzyć, zaznaczać i przekształcać obiekty. Niemodalny charakter mają również okna Material/Map Browser, Render Setup, przybornik, Video Post, Transform Type-In, Display Floater, Selection Floater oraz okna otwierane poleceniami z menu Graph Editors. Skrót klawiszowy Ctrl+~ zamyka wszystkie otwarte okna dialogowe, a użyty ponownie — przywraca poprzedni stan. Inną cechą wielu (ale nie wszystkich) okien dialogowych jest zachowawczość polegająca na tym, że wartości ustawione w takim oknie zostają zachowane po jego zamknięciu. Taka stałość ustawień obowiązuje tylko podczas danej sesji Maksa. Wybranie polecenia File/Reset lub zamknięcie programu i ponowne jego uruchomienie powodują przywrócenie ustawień domyślnych we wszystkich oknach dialogowych.

Korzystanie z pomocy Maksa Gdy podczas pracy napotkasz problem, Max przyjdzie Ci z pomocą, a oferuje różne sposoby jej uzyskania. Podstawowym źródłem pomocy jest menu Help dające dostęp do informacji na temat wszystkich funkcji i elementów programu. Pozycje, takie jak 3ds Max Help i MAXScript Help, stanowią kompletny system pomocy. Są to strony HTML dostępne w ramach witryny Autodesk.com. Wybranie polecenia Autodesk 3ds Max Help z menu Help powoduje uruchomienie przeglądarki internetowej i wczytanie stosownej strony z tejże witryny. Rozwiązanie takie gwarantuje dostępność do ciągle aktualizowanych plików pomocy. Polecenie Additional Help udostępnia system pomocy dla dodatkowych modułów zewnętrznych, a Tutorials oferuje szereg lekcji instruktażowych, umożliwiających nabycie cennego doświadczenia. Możliwość korzystania z plików bezpośrednio z witryny Autodesk.com jest nowością w 3ds Max 2012.

Pliki pomocy możesz również pobrać i zainstalować na swoim komputerze. W panelu Help okna dialogowego Preference Settings możesz ustalić, czy chcesz korzystać z pomocy w wersji internetowej, czy lokalnej (patrz rysunek 1.15).

Pasek narzędziowy InfoCenter Przy takiej ilości rozmaitych plików pomocy trudność może sprawiać ustalenie, w którym z nich należy szukać właściwej informacji. Ułatwieniem w tych poszukiwaniach ma być pasek narzędziowy InfoCenter zajmujący prawą część paska tytułowego.

88

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.15. Przycisk Download w panelu Help służy do pobierania plików pomocy

Gdy na pasku InfoCenter wpiszesz słowo kluczowe, Max przeszuka wszystkie zasoby, włącznie z internetowymi, i wyświetli listę plików, w których to słowo występuje (patrz rysunek 1.16). Rysunek 1.16. Za pomocą paska narzędziowego InfoCenter można wyszukiwać informacje w wielu plikach jednocześnie

Słowa kluczowe mogą zawierać symbole wieloznaczne (wildcards). Gwiazdka (*) zastępuje jeden lub więcej znaków, pytajnik (?) zastępuje pojedynczy znak, a tylda (~) zastępuje przedrostek i (lub) przyrostek. Przykładowo po wpisaniu con* Max będzie szukał słów, takich jak controller, construct i contour; wpisanie sta? zaowocuje wyszukaniem plików z wyrazami star i stat; ~lit będzie równoznaczne z wpisaniem wyrazów prelit i relit; a wpisanie lim~ da taki sam efekt jak wpisanie limited i limitless.

Kliknięcie przycisku Search (z ikoną w kształcie lornetki) położonego na prawo od pola edycyjnego uruchamia proces wyszukiwania. Pasek InfoCenter zawiera również przyciski Subscription Center, Comunication Center i Favorites. Każdy z nich otwiera niewielkie okno dialogowe z dwoma przyciskami w prawym górnym rogu. Jeden przycisk służy do zamykania okna, a drugi otwiera okno InfoCenter Settings, pokazane na rysunku 1.17.

Rozdział 1.  Poznawanie interfejsu Maksa

89

Rysunek 1.17. W oknie dialogowym InfoCenter Settings można określić, które zasoby mają być przeszukiwane

W oknie tym znajdziesz ustawienia konfiguracyjne centrum komunikacyjnego (Communication Center), które zarządza komunikatami odbieranymi z firmy Autodesk. Można je tak ustawić, aby informowało o uaktualnieniach programu, nowych publikacjach na jego temat, a nawet wyświetlało widomości RSS z firmy Autodesk. W oknie dialogowym InfoCenter Settings można wyłączyć wyświetlanie tych denerwujących dymków z komunikatami (ballon notifications), jakie pojawiają się w dolnej części interfejsu, albo sprawić, że staną się półprzezroczyste.

Ekran powitalny i Essential Skills Movies Po uruchomieniu Max wyświetla ekran powitalny w postaci okna dialogowego Welcome to 3ds Max pokazanego na rysunku 1.18, które udostępnia sześć filmów prezentujących podstawowe funkcje programu. Okno Welcome to 3ds Max zawiera również łącza What’s New i Learning Channel, które prowadzą do stron internetowych firmy Autodesk, gdzie można znaleźć więcej materiałów szkoleniowych i informacyjnych. Po obejrzeniu wszystkich filmów dostępnych na ekranie powitalnym można wyłączyć w nim opcję Show this dialog at startup, aby przy kolejnych uruchomieniach nie był wyświetlany. W każdej chwili będzie można go ponownie włączyć za pomocą polecenia Essential Skills Movies z menu Help. Do wyświetlenia filmów Essential Skills niezbędne jest zainstalowanie odtwarzacza Flash.

Podstawowy system pomocy Polecenia Autodesk 3ds Max Help, What’s New, MAXScript Help i Tutorials wyświetlają zawartość plików pomocy w przeglądarce internetowej. Panel nawigacyjny znajdujący się po lewej stronie zawiera uporządkowaną listę tematów, a w prawej części interfejsu wyświetlane są informacje dotyczące wybranego hasła (patrz rysunek 1.19). W górnej części znajduje się kilka przycisków służących do sterowania interfejsem. Przycisk Show in Contents umożliwia zsynchronizowanie zawartości prawego panelu ze spisem treści w panelu lewym.

90

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 1.18. Okno dialogowe Welcome to 3ds Max oferuje filmy szkoleniowe prezentujące podstawowe techniki pracy w Maksie

Przycisk Add to Favorites dodaje bieżącą stronę do listy pozycji ulubionych dostępnej na pasku InfoCenter. Przycisk Home pozwala wrócić do pierwszej strony, a Back, Up i Forward umożliwiają przejście do strony ostatnio czytanej, poprzedniej lub następnej. Do poruszania się między kolejnymi stronami pliku pomocy można wykorzystać również przyciski samej przeglądarki.

Panel nawigacyjny zawiera cztery panele: Contents wyświetla listę tematów pomocy, Index zawiera alfabetyczną listę wszystkich haseł, Search umożliwia wyszukiwanie tematów pomocy przez wpisanie w polu tekstowym odpowiednich słów kluczowych, a Favorites pozwala utworzyć listę tematów, do których chcemy mieć szybki dostęp. W tekstach opisów znajdują się, wyróżnione kolorem niebieskim i podkreśleniem, odnośniki do tematów zawierających dalsze informacje.

Pozostałe opcje menu Help Polecenie Keyboard Shortcut Map wyświetla interaktywne okno do nauki skrótów klawiszowych. Polecenie Data Exchange Solutions otwiera stronę internetową objaśniającą zasady stosowania formatu FBX w celu wymiany plików z innymi aplikacjami. Polecenie Customer Involvement Program udostępnia interfejs służący do przesyłania uwag na temat programu do firmy Autodesk. Uwagi te można wysyłać anonimowo albo dołączyć swój adres e-mailowy. Jeśli zauważysz, że program nie działa tak jak powinien, możesz wysłać stosowny raport do firmy Autodesk. Najwygodniej zrobisz to za pomocą polecenia Report a Problem.

Rozdział 1.  Poznawanie interfejsu Maksa

91

Rysunek 1.19. W oknie pomocy dostępne są różne sposoby wyszukiwania informacji

Opcje polecenia 3ds Max on the Web (The AREA, Online Support, Updates, Resources, Partners, Training itd.) automatycznie uruchamiają przeglądarkę internetową i otwierają w niej odpowiednie strony internetowe firmy Autodesk lub sprawdzają, czy są dostępne nowe aktualizacje programu. The AREA to doskonałe miejsce do szukania rozwiązań rozmaitych problemów, jest to bowiem witryna społeczności użytkowników Maksa. Jeśli w plikach pomocy nie znajdujesz rozwiązania jakiegoś problemu, odwiedź witrynę The AREA, którą firma Autodesk przygotowała dla użytkowników w celu ułatwienia bezpośredniej wymiany doświadczeń. Znajdziesz tam wiele cennych informacji, porad i wskazówek.

Opcja License Borrowing pozwala na przenoszenie aktualnej licencji programu na inny komputer, a polecenie About 3ds Max otwiera okno wyświetlające numer seryjny zainstalowanej wersji programu oraz informację o aktualnie wykorzystywanym sterowniku grafiki.

Podsumowanie Interfejs Maksa nie powinien już być czymś obcym. Znajomość interfejsu i rozumienie zasad jego funkcjonowania to jeden z czynników warunkujących sukces przy posługiwaniu się tym programem. Wśród wszystkich pasków narzędzi, menu i skrótów klawiszowych

92

Część I  Rozpoczynanie pracy z programem 3ds Max

różne ścieżki mogą prowadzić do wykonania tego samego polecenia. Wybierz tę, która Ci najbardziej odpowiada. Niniejszy rozdział obejmował następujące zagadnienia: 

elementy interfejsu,



korzystanie z rozwijanych menu,



posługiwanie się paskami narzędzi,



używanie panelu poleceń,



zapoznanie się z narzędziami z dolnej listwy interfejsu,



interaktywność Maksa,



pozyskiwanie dodatkowej pomocy.

Omówiliśmy tu wszystkie elementy interfejsu z wyjątkiem okien widokowych, ale za to w następnym rozdziale będziemy zajmować się wyłącznie tymi oknami.

Rozdział 2.

Sterowanie oknami widokowymi oraz ich konfigurowanie W tym rozdziale: 

Przestrzeń trójwymiarowa



Posługiwanie się manipulatorami ViewCubes i SteeringWheels



Korzystanie z przycisków sterujących nawigacją w oknach widokowych



Konfigurowanie okien widokowych za pomocą okna dialogowego Viewport Configuration



Wczytywanie obrazu jako tła dla okna widokowego

Interfejs Maksa zawiera wiele różnych elementów, takich jak panele, okna dialogowe i menu, ale tym, co najbardziej przyciąga naszą uwagę, są okna widokowe. Cztery główne okna widokowe zajmują dużą część całego interfejsu i są jedynym miejscem, w którym obiekty sceny są widoczne. Oglądanie sceny w oknie widokowym można porównać z oglądaniem jej na ekranie telewizora, a nie bezpośrednio. Opanowanie sposobów korzystania z okien widokowych ma niebagatelne znaczenie dla komfortu pracy z Maksem. Nic nie jest tak frustrujące, jak brak możliwości obracania, przesuwania i przybliżania widoku sceny. Okna widokowe zostały wyposażone w użyteczne możliwości i wiele różnych ustawień umożliwiających oglądanie sceny na tysiące różnych sposobów. Wszystko to sprawia, że początkujący użytkownicy często popadają we frustrację z powodu niemożności pełnego zapanowania nad tym, co widzą. Max oferuje kilka przydatnych manipulatorów ułatwiających nawigowanie w oknach widokowych. W tym rozdziale znajdziesz wszystkie informacje niezbędne do tego, aby okna widokowe nie miały przed Tobą tajemnic.

94

Część I  Rozpoczynanie pracy z programem 3ds Max

Przestrzeń trójwymiarowa Rozprawianie o przestrzeni trójwymiarowej wydaje się pozbawione większego sensu, jako że przecież wszyscy żyjemy i poruszamy się w takiej przestrzeni. Jest ona dla nas czymś zupełnie naturalnym. Załóżmy np., że chcesz określić położenie każdego dziecka, jakie znajduje się na basenie. Jeśli stoisz na brzegu, dzieci mogą być po lewej lub po prawej, przed Tobą lub za Tobą albo w wodzie pod Tobą, a nawet nad Tobą, jeśli właśnie skaczą z trampoliny. Każdy z tych kierunków reprezentuje jeden wymiar przestrzeni. Teraz wyobraź sobie, że rysujesz mapę rozmieszczenia dzieci na basenie. Na kartce papieru (która jest dwuwymiarowa) możesz zaznaczyć położenie tych dzieci, które widzisz po lewej, po prawej, z przodu i z tyłu, ale nie zaznaczysz położenia tych dzieci, które są pod Tobą lub nad Tobą. Braknie Ci jednego wymiaru. Jak za pomocą urządzenia dwuwymiarowego przedstawić obiekty trójwymiarowe? Rozwiązanie tego problemu muszą znać artyści zajmujący się komputerową grafiką 3D. Program 3ds Max dostarcza odpowiedzi na to pytanie, umożliwiając oglądanie sceny z różnych stron jednocześnie. Służą do tego tzw. okna widokowe (viewports). Okno widokowe jest to po prostu małe okno ukazujące scenę z jednej perspektywy. Można powiedzieć, że okna widokowe są oknami, przez które oglądamy trójwymiarowy świat Maksa. Każde z tych okien ma szereg różnych ustawień i opcji.

Widok aksonometryczny a perspektywiczny Istnieją dwa sposoby przedstawiania świata trójwymiarowego na płaszczyźnie — aksonometryczny i perspektywiczny. Widoki aksonometryczne są powszechnie stosowane w programach typu CAD, gdzie obserwator jest umieszczany nieskończenie daleko od obiektu, co sprawia, że wszystkie linie równoległe są widziane jako równoległe. Natomiast widok perspektywiczny symuluje nasze rzeczywiste postrzeganie trzech wymiarów — punkty leżące daleko od obserwatora zbiegają się w pewnym miejscu. Różnicę między tymi widokami można najlepiej zaobserwować, patrząc na długi szpaler obiektów. Jeśli np. popatrzysz na długi rząd drzew rosnących po obu stronach drogi, okaże się, że łączą się one na horyzoncie. W widoku aksonometrycznym linie pozostają równoległe w miarę oddalania się od obserwatora. Na rysunku 2.1 przedstawiono przykłady takich widoków — po lewej aksonometryczny, a po prawej perspektywiczny.

Widoki ortogonalne i izometryczne Widoki aksonometryczne można podzielić na dwa podtypy: ortogonalne oraz izometryczne. W widoku ortogonalnym obiekt jest oglądany z kierunku równoległego do jednej z osi globalnego układu współrzędnych. Ponieważ widoki ortogonalne pokazują scenę tylko w jednej płaszczyźnie, możemy w nich odczytać rzeczywistą wysokość i szerokość obiektu — dlatego są powszechnie stosowane w programach inżynierskich typu CAD. Widoki izometryczne nie są ograniczone do jednej osi i mogą pokazywać scenę z dowolnego miejsca, ale wszystkie wymiary pozostają nadal zachowane.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

95

Rysunek 2.1. Widoki aksonometryczny i perspektywiczny

Okna widokowe w Maksie W Maksie dostępne są następujące ortogonalne okna widokowe: Front (z przodu), Back (z tyłu), Top (z góry), Bottom (z dołu), Left (z lewej) i Right (z prawej). W lewym górnym rogu każdego okna wyświetlana jest jego nazwa. Domyślnie widoczne są trzy okna ortogonalne (Top, Front i Left) oraz jedno okno z widokiem perspektywicznym. W danej chwili czynne może być tylko jedno okno; jest ono nazywane aktywnym i odróżnia się od innych żółtą ramką. Na rysunku 2.2 przedstawiono okna widokowe pokazujące model okrętu PT-328 U.S. Torpedo z różnych punktów widzenia. Jeśli zechcesz zmierzyć długość okrętu od dziobu po rufę, możesz to zrobić w oknie Top lub Left. Natomiast dokładnego pomiaru wysokości możesz dokonać w oknie Front lub Left. Tak więc jeśli korzystasz z tych okien widokowych, masz dostęp do wszystkich wymiarów obiektu. W Maksie okno z widokiem izometrycznym nosi nazwę Ortographic (ortograficzne). Tego typu okno możesz utworzyć przez obrócenie dowolnego widoku ortogonalnego. Max udostępnia kilka skrótów klawiszowych, umożliwiających szybką zmianę widoku w aktywnym oknie. Takimi skrótami są: T (widok z góry), B (widok z dołu), F (widok z przodu), L (widok z lewej), C (widok z kamery), $ (widok z punktowego lub kierunkowego źródła światła), P (widok perspektywiczny) i U (widok użytkownika). Wciśnięcie klawisza V rozwija menu kontekstowe, z którego można wybrać odpowiedni widok.

Posługiwanie się manipulatorami nawigacyjnymi Programy służące do tworzenia grafiki trójwymiarowej pozwalają oglądać scenę z najrozmaitszych punktów widzenia. Jest to jedna z ich wielkich zalet. Aby jednak z tej możliwości skorzystać, trzeba nauczyć się posługiwania odpowiednimi narzędziami. Umiejętność

96

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.2. Interfejs Maksa zawiera cztery okna widokowe z różnymi widokami sceny

szybkiego nawigowania w oknach widokowych Maksa jest niezbędna podczas pracy z tym programem i powinna być jedną z pierwszych, jakie powinieneś opanować. W celu usprawnienia nawigowania w oknach widokowych i przełączania różnych widoków Max oferuje specjalne manipulatory, których półprzezroczyste gizma są wyświetlane w prawym górnym rogu każdego okna. Dzięki nim można manipulować widokiem sceny bez sięgania po odpowiednie narzędzie, wybierania poleceń z menu czy nawet korzystania ze skrótów klawiszowych.

Manipulator ViewCube Manipulator składa się z trójwymiarowej kostki, której ścianki zostały oznaczone nazwami standardowych widoków, i otaczającego ją pierścienia (kompasu). Zadaniem tych elementów jest pokazywanie aktualnej orientacji widoku i umożliwianie szybkiego jej zmieniania. Przesuwając wskaźnik myszy nad manipulatorem ViewCube, pokazanym na rysunku 2.3, zauważysz, że ustawienie wskaźnika nad ścianką, krawędzią lub narożnikiem kostki powoduje podświetlenie tej części. Jeśli klikniesz wyróżnioną w ten sposób część kostki, obróci się tak, aby wskazana część była zwrócona w Twoją stronę. Oczywiście, wraz z kostką obróci się również widok w danym oknie. Sam obrót jest animowany i odbywa się stosunkowo wolno, co dodatkowo stwarza możliwość obejrzenia modelu z różnych punktów widzenia. Poza tym, klikanie poszczególnych ścianek kostki pozwala szybko przywrócić jeden ze standardowych widoków. Jeśli np. ustawiłeś widok pod jakimś dziwnym kątem i chcesz powrócić do widoku z góry, po prostu kliknij ściankę z napisem Top.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

97

Rysunek 2.3. Manipulator ViewCube umożliwia szybką zmianę bieżącego widoku

Istnieje również możliwość obracania kostki (i widoku) w dowolnym kierunku przez przeciąganie myszą. Przeciąganie pierścienia powoduje natomiast obracanie kostki i widoku w płaszczyźnie tego pierścienia. Nad manipulatorem ViewCube znajduje się mała ikona w kształcie domku, której kliknięcie przywraca zdefiniowany wcześniej widok podstawowy (home view). Aby widok bieżący zdefiniować jako podstawowy, należy kliknąć manipulator prawym przyciskiem myszy i z podręcznego menu wybrać polecenie Set Current View as Home. Polecenia z tego menu podręcznego dostępne są również w podmenu Views/ViewCube. Jeśli manipulator jest niewidoczny, możesz wybrać polecenia Views/ ViewCube/Show For Active View lub Show For All Views. Pierwsze z nich powoduje wyświetlanie manipulatora tylko w aktywnym oknie widokowym, a drugie — we wszystkich oknach. Inne polecenia z menu podręcznego służą do włączania widoku ortograficznego (Orthographic) lub perspektywicznego (Perspective), ustalania widoku bieżącego jako widoku od przodu (Set Current View as Front), przywracania domyślnego widoku od przodu (Reset Front) i otwierania panelu ViewCube w oknie dialogowym Viewport Configuration, co zostało pokazane na rysunku 2.4. Rysunek 2.4. W panelu ViewCube okna dialogowego Viewport Configuration można ustalić miejsce i sposób wyświetlania manipulatora

98

Część I  Rozpoczynanie pracy z programem 3ds Max

Panel ViewCube okna dialogowego Viewport Configuration zawiera opcję włączającą wyświetlanie manipulatora we wszystkich oknach widokowych (In All Views) lub tylko w oknie aktywnym (Only in Active View). Możesz tam także ustalić rozmiar manipulatora (ViewCube Size) i jego stopień krycia w stanie nieaktywnym (Inactive Opacity). Jeśli lubisz korzystać z manipulatora ViewCube, ale jego obecność w oknie widokowym przeszkadza Ci, możesz zmienić jego rozmiar na mniejszy (Small lub Tiny) albo ustawić krycie na zero. W drugim przypadku manipulator nie będzie widoczny, dopóki nie umieścisz na nim wskaźnika myszy.

Są tam także opcje określające, co ma się zdarzyć po kliknięciu lub przeciągnięciu manipulatora. Opcja Snap to Closest View włącza przyciąganie do najbliższego z ustalonych widoków podczas przeciągania manipulatora. Fit-to-View on View Change automatycznie dopasowuje skalę nowego widoku, aby obiekty zaznaczone były w całości widoczne. Use Animated Transitions when Switching Views odpowiada za animowanie zmiany widoku, a opcja Keep Scene Upright dba o to, by scena nie uległa odwróceniu do góry nogami. Jest też możliwość włączenia lub wyłączenia wyświetlania kompasu pod kostką oraz definiowania kąta wyznaczającego kierunek północny (parametr Angle of North). Kompas jest bardzo przydatny, gdyż umożliwia obracanie sceny w jednej płaszczyźnie, ale gdy modelem jest na przykład planeta, o której nie wiadomo, gdzie ma górę, a gdzie dół, pomoc kompasu jest w zasadzie niepotrzebna i można go wyłączyć.

Manipulator SteeringWheels ViewCube doskonale nadaje się do przełączania standardowych widoków i ustawiania ich pod dowolnym kątem, ale istnieją jeszcze inne ważne operacje nawigacyjne, jak chociażby przesuwanie i zmienianie skali widoku, których ViewCube nie obsługuje. Dlatego wprowadzono drugi manipulator — SteeringWheels (koła sterujące). Domyślnie jest wyłączony i żeby móc go użyć, musisz wybrać polecenie Views/Steering Wheels/Togle SteeringWheels lub wcisnąć klawisze Shift+W. Gdy jest włączony, przesuwanie po nim wskaźnika myszy powoduje podświetlanie poszczególnych części. Funkcja pełnej nawigacji (pokazana na rysunku 2.5) obejmuje następujące narzędzia:

1



Zoom — zmienia skalę widoku, zbliżając lub oddalając scenę wokół punktu odniesienia (pivot). Punkt ten jest ustanawiany kliknięciem przy wciśniętym klawiszu Ctrl1.



Orbit — obraca widok wokół punktu odniesienia (pivot), który można ustanowić kliknięciem przy wciśniętym klawiszu Ctrl.



Pan — przesuwa widok w kierunku, w którym przeciągany jest kursor.



Rewind — wyświetla w formie miniatur wszystkie wcześniejsze (patrz rysunek 2.6) widoki i umożliwia powrót do dowolnego z nich. Max zapamiętuje każdy widok ustawiony wcześniej za pomocą narzędzi nawigacyjnych. Przeciąganie myszą w lewo i w prawo pozwala na przewijanie tych widoków wstecz i w przód.

Kliknięcie bez wciskania klawisza Ctrl ustanawia punkt odniesienia w miejscu, gdzie znajduje się kursor, a kliknięcie przy wciśniętym klawiszu Ctrl pozostawia ten punkt tam, gdzie został poprzednio ustanowiony przy użyciu funkcji Center — przyp. tłum.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

99

Rysunek 2.5. Manipulator SteeringWheels oferuje kilka różnych trybów nawigowania w oknach widokowych

Rysunek 2.6. Tryb Rewind umożliwia powrót do wcześniejszych widoków Gdy będziesz przesuwał wskaźnik między miniaturami widoków zapamiętanych w specjalnym buforze, funkcja Rewind wykona animowane przejście od jednego widoku do drugiego, więc jeśli zwolnisz przycisk myszy w odpowiednim momencie, możesz wybrać widok pośredni między tymi, które zostały zapamiętane. 

Center — pozwala kliknięciem wskazać punkt, który ma być centralnym punktem widoku i jednocześnie punktem odniesienia dla narzędzi Zoom i Orbit.



Walk — umożliwia „spacerowanie” po scenie; wciśnięcie klawisza Shift pozwala ustalić wysokość, na jakiej spacer się odbywa.



Look — obraca kamerą, umożliwiając rozglądanie się po scenie.



Up/Down — przesuwa widok w górę i w dół. Będzie jeszcze o tym mowa w dalszej części rozdziału, ale już teraz wspomnę, że w każdej chwili możesz zmaksymalizować aktywne okno widokowe, klikając przycisk Maximize Viewport Toggle (w prawym dolnym rogu okna programu) lub wciskając klawisze Alt+W.

100

Część I  Rozpoczynanie pracy z programem 3ds Max

W prawym górnym rogu manipulatora znajduje się ikona ze znakiem X. Kliknięcie tej ikony zamyka manipulator. Ikona ze strzałką skierowaną w dół, widoczna w prawym dolnym rogu, otwiera menu podręczne, w którym można wybrać inny tryb manipulatora, przejść do widoku podstawowego zdefiniowanego za pomocą manipulatora CubeView, zmienić szybkość spacerowania, przywrócić domyślny środek widoku i otworzyć panel SteeringWheels w oknie dialogowym Viewport Configuration (patrz rysunek 2.7). Te same opcje są dostępne także w podmenu Views/SteeringWheels, które dodatkowo zawiera polecenie włączania i wyłączania manipulatora — Toggle SteeringWheels (Shift+W). Rysunek 2.7. Panel SteeringWheels okna dialogowego Viewport Configuration zawiera ustawienia poszczególnych kół i narzędzi

W panelu SteeringWheels okna dialogowego Viewport Configuration można ustawić rozmiar i przezroczystość kół, a także wiele innych parametrów poszczególnych trybów tego manipulatora.

Ćwiczenie: Nawigowanie w aktywnym oknie widokowym Z czasem zapewne nabierzesz wprawy w posługiwaniu się przyciskami sterującymi widokiem sceny, ale by to osiągnąć, musisz dużo ćwiczyć. W tym ćwiczeniu będziesz miał okazję zakręcić (dosłownie) oknami widokowymi. Aby poćwiczyć nawigowanie w oknie widokowym, wykonaj następujące czynności. 1. Otwórz plik Bruce the dog.max zapisany w katalogu Chap 02 na płycie dołączonej do książki. Plik ten zawiera model psa (o imieniu Bruce) utworzony w firmie Viewpoint. Model ten posłuży jako punkt odniesienia podczas nawigowania w oknie widokowym. Aktywnym oknem widokowym jest okno Perspective (z widokiem perspektywicznym).

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

101

2. Kliknij przycisk Maximize Viewport Toggle (lub wciśnij klawisze Alt+W), aby powiększyć aktywne okno widokowe (w tym przypadku okno Perspective) na cały obszar roboczy zajmowany wcześniej przez cztery okna. 3. Kliknij ściankę Front na kostce manipulatora ViewCube, aby przejść do widoku z przodu. Następnie przywróć widok perspektywiczny, klikając prawy górny narożnik kostki. 4. Wybierz polecenie Views/SteeringWheels/Toggle SteeringWheels (lub wciśnij klawisze Shift+W), po czym wciśnij klawisz Ctrl i po ustawieniun kursora w na wycinku koła z napisem Zoom kliknij głowę psa, aby ustanowić punkt odniesienia (pivot)2. Nie zwalniając przycisku myszy, przeciągnij kursor tak, aby głowa Bruce’a wypełniła całe okno widokowe. 5. Pozostaw manipulator SteeringWheels nadal aktywny i po ustawieniu kursora nad wycinkiem koła oznaczonym napisem Pan przeciągnij widok tak, aby głowa psa znalazła się dokładnie na środku okna, tak jak na rysunku 2.8. Na koniec kliknij prawym przyciskiem myszy, aby wyłączyć manipulator.

Rysunek 2.8. Zbliżenie głowy psa w widoku perspektywicznym uzyskane za pomocą narzędzi Pan i Zoom

2

Aby ustanowić nowy punkt odniesienia, należy kliknąć bez wciskania klawisza Ctrl (patrz poprzedni przypis) — przyp. tłum.

102

Część I  Rozpoczynanie pracy z programem 3ds Max

Sterowanie oknami widokowymi za pomocą rolki do przewijania Teraz, po zaprezentowaniu działania manipulatorów nawigacyjnych pokażę Ci inny, również łatwy sposób sterowania oknami widokowymi. Często najwygodniejsze i najszybsze okazuje się zastosowanie samej myszy. Aby z takiego sposobu skorzystać, musisz dysponować myszą wyposażoną w rolkę do przewijania (pełni ona również funkcję środkowego przycisku). Obracając rolką, możesz zmieniać skalę widoku w aktywnym oknie, tak jak przy użyciu klawiszy z nawiasami kwadratowymi ([ i ]), czyli skokowo. Precyzję działania rolki możesz zmienić przez wciśnięcie klawisza Ctrl lub Alt. Przeciągając kursor przy wciśniętej rolce, możesz przesuwać widok w aktywnym oknie, a jeśli dodatkowo przytrzymasz wciśnięty klawisz Alt, będziesz mógł dowolnie obracać widok. Jeśli rolka nie współpracuje z Maksem w opisany wyżej sposób, sprawdź, czy w panelu Viewports okna dialogowego Preference Settings jest zaznaczona opcja Pan/Zoom dla środkowego przycisku myszy. Jeżeli zaznaczona jest opcja Stroke, możesz zdefiniować gesty (ruchy myszą), by za ich pomocą „wydawać polecenia” Maksowi. Podczas wykonywania zbliżeń za pomocą rolki należy zachować ostrożność. Jeśli wykonujesz zbyt mocne zbliżenie, wewnętrzny kąt widzenia osiąga wartość minimalną i proces zbliżania może przebiegać niestabilnie. W takiej sytuacji wybierz polecenie Views/Undo View Change (Shift+Z), aby cofnąć operację zbliżania, lub kliknij przycisk Zoom Extents. Informacje na temat definiowania gestów i przypisywania do nich poleceń znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Korzystanie z kontrolek nawigacyjnych okien widokowych Chociaż manipulatory ViewCube i SteeringWheels oraz rolka przewijania znacznie ułatwiają nawigowanie w oknach widokowych, nadal można korzystać z tradycyjnych przycisków znajdujących się w prawym dolnym rogu interfejsu. W standardowych oknach widokowych wyświetlane są różne widoki opracowywanej sceny. W każdym z tych okien możemy dokonywać zbliżeń oraz przesuwać i obracać widok. Do wykonywania tych operacji służą przyciski sterujące widokiem sceny. W tabeli 2.1 skróty klawiszowe odpowiadające poszczególnym przyciskom zostały podane w nawiasach obok ich nazw. Uaktywnienie przycisku sterującego powoduje zmianę jego koloru na żółty. Jeżeli którykolwiek z tych przycisków jest w ten sposób zaznaczony, niemożliwe jest operowanie obiektami w scenie (zaznaczanie, tworzenie i przekształcanie). Aby powrócić do trybu operowania obiektami, wystarczy kliknąć prawym przyciskiem myszy w aktywnym oknie widokowym lub wybrać narzędzie Select Object.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

103

Tabela 2.1. Przyciski sterujące widokiem sceny Przycisk

Nazwa

Opis

Zoom (Alt+Z lub [ i ])

Po jego włączeniu można płynnie zmieniać skalę widoku przez przeciąganie kursora w aktywnym oknie widokowym. Skokową zmianę tej skali można realizować za pomocą klawiszy z nawiasami kwadratowymi.

Zoom All

Po jego włączeniu przeciąganie kursora powoduje zmianę skali widoku jednocześnie we wszystkich oknach widokowych.

Zoom Extents (Ctrl+Alt+Z), Zoom Extents Selected

Wykonuje zbliżenie wszystkich lub tylko zaznaczonych obiektów, tak aby wypełniły aktywne okno widokowe.

Zoom Extents All (Ctrl+Shift+Z), Zoom Extents All Selected (Z)

Wykonuje zbliżenie wszystkich lub tylko zaznaczonych obiektów, tak aby wypełniły wszystkie okna widokowe.

Field-of-View, Region Zoom (Ctrl+W)

Przycisk Field-of-View (dostępny tylko dla widoku perspektywicznego) pozwala zmienić kąt widzenia. Przycisk Region Zoom pozwala wykonać zbliżenie zaznaczonego obszaru przez przeciągnięcie kursora.

Pan View (Ctrl+P lub I), Walk Through

Pozwala przesuwać widok w pionie lub poziomie przez przeciąganie kursora lub poruszanie myszą przy wciśniętym klawiszu I. Przycisk Walk Through umożliwia poruszanie się po scenie (podobnie jak w grach komputerowych) za pomocą klawiszy ze strzałkami i myszy.

Orbit (Ctrl+R), Orbit Selected, Orbit SubObject

Umożliwia obracanie widoku wokół globalnej osi, zaznaczonego obiektu lub podobiektu przez przeciąganie kursora.

Maximize Viewport Toggle (Alt+W)

Powiększa aktywne okno widokowe na cały obszar zajmowany wcześniej przez cztery okna. Ponowne kliknięcie tego przycisku przywraca poprzedni układ okien widokowych.

Zmienianie skali widoku Istnieje kilka sposobów zmieniania skali widoku. Kliknięcie przycisku Zoom (Alt+Z) włącza tryb lupy, w którym możemy zmieniać skalę widoku przez przeciąganie kursora. Dotyczy to każdego okna, w którym przeciągamy kursor. Na prawo od przycisku Zoom znajduje się przycisk Zoom All, który działa analogicznie do poprzedniego, ale zmiana skali następuje we wszystkich oknach widokowych jednocześnie. Jeśli podczas przeciągania kursora wciśniesz klawisz Ctrl, zmiana skali widoku będzie zachodziła szybciej — niewielkie ruchy myszą będą powodować duże zmiany. Natomiast wciśnięcie klawisza Alt przyniesie skutek odwrotny — niewielkie zmiany skali widoku będą wymagały obszernych ruchów myszą. Może to być przydatne przy precyzyjnym ustawianiu zbliżenia. Przycisk Zoom Extents (Ctrl+Alt+Z) dopasowuje skalę widoku w aktywnym oknie, tak aby wszystkie obiekty (lub wszystkie obiekty zaznaczone, jeżeli wybierzemy przycisk Zoom

104

Część I  Rozpoczynanie pracy z programem 3ds Max

Extents Selected) były w nim widoczne. Przycisk Zoom Extents All (Ctrl+Shift+Z) dopasowuje skalę widoku we wszystkich oknach, tak aby wszystkie obiekty były w nich widoczne. Najczęściej stosowany (i najłatwiejszy do zapamiętania) przycisk, Zoom Extents All Selected (Z), tak dopasowuje skalę we wszystkich oknach widokowych, aby widoczne były w nich wszystkie zaznaczone obiekty. Za pomocą klawiszy z nawiasami kwadratowymi możemy stopniowo zwiększać ([) lub zmniejszać (]) skalę widoku. Każde wciśnięcie jednego z tych klawiszy powoduje skokową zmianę skali. Przycisk Region Zoom (Ctrl+W) pozwala zaznaczyć (przeciągnięciem kursora w oknie widokowym) obszar, który ma być pokazany w zbliżeniu. Jeśli aktywne jest okno z widokiem innym niż ortogonalny (np. perspektywicznym), przycisk ten staje się przyciskiem rozwijanym z dodatkową opcją w postaci przycisku Field of View pozwalającego zmieniać szerokość kąta widzenia. Przypomina to posługiwanie się aparatem fotograficznym wyposażonym w obiektyw o zmiennej ogniskowej. Różnica między zmianą skali widoku a zmianą szerokości kąta widzenia polega na tym, że przy zwiększaniu kąta widzenia zniekształcenia perspektywy stają się silniejsze. Więcej informacji na temat kąta widzenia kamery znajdziesz w rozdziale 19, „Operowanie kamerami”.

Przesuwanie widoku Max oferuje dwa sposoby przesuwania zawartości aktywnego okna widokowego. Pierwszy z nich polega na włączeniu trybu przesuwania za pomocą wciśnięcia przycisku Pan View (Ctrl+P), a następnie przeciąganiu kursora w aktywnym oknie widokowym. Zauważ, że przesuwany jest tylko widok, a nie obiekty. Drugi sposób polega na poruszaniu myszą przy wciśniętym klawiszu I. Jest to tzw. interaktywne przesuwanie widoku. Dodatkowo klawiszami Ctrl i Alt można zmieniać szybkość, z jaką widok jest przesuwany.

„Spacerowanie” po scenie Przycisk Walk Through, dostępny po rozwinięciu grupy przycisku Pan View, umożliwia wędrówkę po scenie w oknie z widokiem typu Perspective (perspektywicznym) lub Camera (z kamery). Do sterowania tą wędrówką używamy klawiszy ze strzałkami lub myszy, podobnie jak w grach komputerowych. Gdy przycisk Walk Through jest aktywny, kursor przyjmuje postać kółeczka ze strzałką w środku, która wskazuje kierunek ruchu. Jeśli wciskanie klawiszy nie wywołuje żadnego ruchu, kliknij w obrębie okna widokowego. Przycisk Pan View zyskuje „towarzysza” w postaci przycisku Walk Through tylko wtedy, gdy aktywne jest okno z widokiem perspektywicznym lub pochodzącym z kamery.

Do sterowania ruchem kamery w trybie Walk Through używamy głównie klawiszy. Klawisze ze strzałkami powodują ruch kamery do przodu, do tyłu, w lewo i w prawo (to samo zadanie spełniają klawisze, odpowiednio: W, S, A i D). Szybkość ruchu możemy regulować klawiszami Q (przyspieszanie) i Z (zwalnianie) oraz ] (zwiększanie kroku) i [ (zmniejszanie kroku). Klawisze E i C (lub odpowiednio: Shift+strzałka w górę i Shift+strzałka w dół) służą do przemieszczania się w górę lub w dół sceny. Wciśnięcie kombinacji Shift+klawisz spacji ustawia kamerę w pozycji poziomej. Przeciąganie kursora myszą powoduje zmianę kierunku, w którym kamera jest zwrócona.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

105

Alternatywą dla trybu Walk Through jest narzędzie Walkthrough Assistant, które znajduje się w menu Animation. Otwiera ono okno dialogowe z przyciskami służącymi do umieszczania kamery na ścieżce oraz obracania nią podczas wędrówki. Więcej informacji na temat narzędzia Walkthrough Assistant znajdziesz w rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Obracanie widoku Obracanie jest chyba najważniejszym spośród wszystkich możliwych przekształceń widoku. Po włączeniu przycisku Orbit (Ctrl+R) w aktywnym oknie widokowym pojawia się manipulator obrotu pokazany na rysunku 2.9. Jest to okrąg z czterema kwadratowymi uchwytami. Przeciąganie lewego lub prawego uchwytu powoduje obrót widoku w lewo lub w prawo, a przeciąganie uchwytów górnego i dolnego — obrót w górę lub w dół. Przeciąganie kursora umieszczonego wewnątrz okręgu umożliwia obrót wokół dowolnej osi, a przeciąganie kursora umieszczonego poza okręgiem powoduje obrót wokół środka tego okręgu w kierunku zgodnym lub przeciwnym do kierunku ruchu wskazówek zegara. Aby nie stracić orientacji, zwracaj uwagę na wygląd kursora — jego kształt zmienia się odpowiednio do rodzaju obrotu. Jak zwykle, za pomocą przycisków Ctrl i Alt można zmienić szybkość, z jaką widok jest obracany.

Rysunek 2.9. Manipulator obrotu jest widoczny zawsze wtedy, gdy wciśnięty jest przycisk Orbit

106

Część I  Rozpoczynanie pracy z programem 3ds Max Jeśli obrócisz widok ortogonalny, jego typ zmieni się automatycznie na Orthographic. Aby anulować tę zmianę, wybierz polecenie Views/Undo View Change lub wciśnij klawisze Shift+Z.

Powiększanie aktywnego okna widokowego Wcześniej czy później uznasz, że okna widokowe są zbyt małe. Jeśli do tego dojdzie, możesz wybrać jeden z kilku sposobów zwiększenia ich rozmiarów. Pierwszy z tych sposobów polega na przeciąganiu pasków oddzielających okna. Przeciąganie punktu przecięcia tych pasków umożliwia równoczesną zmianę rozmiarów wszystkich okien widokowych. Na rysunku 2.10 zostały pokazane okna widokowe po zastosowaniu tej dynamicznej metody zmieniania ich rozmiarów.

Rysunek 2.10. Rozmiary okien widokowych możesz zmienić przez przeciąganie pasków oddzielających te okna Aby przywrócić oryginalny układ okien widokowych, kliknij prawym przyciskiem myszy dowolny z pasków oddzielających te okna i z podręcznego menu wybierz polecenie Reset Layout.

Drugi sposób to powiększenie aktywnego okna widokowego na cały obszar roboczy zarezerwowany dla wszystkich czterech okien. W tym celu należy kliknąć przycisk Maximize Viewport Toggle (Alt+W). Ponowne kliknięcie tego przycisku (lub wciśnięcie klawiszy Alt+W) przywraca poprzedni układ okien. Takie powiększanie okna widokowego może być pomocne, ale tylko chwilowo. Jednak zanim uda Ci się przekonać szefa, że musisz mieć większy monitor, możesz skorzystać

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

107

z jeszcze innego rozwiązania. Wybierając polecenie Views/Expert Mode (Ctrl+X), włącz tryb eksperta, aby powiększyć obszar roboczy przez usunięcie pasków narzędzi, panelu poleceń i większości elementów z dolnej listwy interfejsu. W tym trybie, po usunięciu większości elementów interfejsu, będziesz mógł korzystać tylko z głównego menu, skrótów klawiszowych i czteroczęściowego menu kontekstowego. Aby przywrócić poprzednią postać interfejsu, kliknij przycisk Cancel Expert Mode w prawym dolnym rogu okna programu (lub ponownie wciśnij klawisze Ctrl+X). Na rysunku 2.11 przedstawiono interfejs Maksa po włączeniu trybu eksperta.

Rysunek 2.11. Tryb eksperta powiększa okna widokowe przez usunięcie większości elementów interfejsu

Sterowanie widokami z kamery i z reflektora Jeżeli w scenie istnieje kamera lub reflektor, w dowolnym oknie widokowym możesz ustawić widok z kamery (C) lub reflektora ($). Po uaktywnieniu takiego okna zestaw przycisków sterujących widokiem sceny ulegnie zmianie. Jeśli jest to widok z kamery, dostępne stają się przyciski Dolly Camera (najazd lub odjazd kamery), Roll Camera (przechylanie kamery), Perspective (perspektywa), Truck Camera (jazda równoległa kamery), Pan Camera (panoramowanie), Orbit Camera (orbitowanie kamery) i Field-of-View (transfokacja), a w przypadku widoku z reflektora pojawiają się przyciski Light Falloff (stożek zaniku światła) i Light Hotspot (stożek maksymalnej jasności). Stosowanie tych przycisków zostało szczegółowo opisane w rozdziałach 19., „Operowanie kamerami”, i 20., „Podstawowe techniki oświetlania sceny”.

108

Część I  Rozpoczynanie pracy z programem 3ds Max

Modyfikowanie okien widokowych Kontrolki nawigacyjne okien widokowych służą do sterowania zawartością tych okien, ale wiele użytecznych poleceń mających wpływ na wygląd i funkcjonowanie samych okien znajdziesz jeszcze w menu Views oraz w menu ukrytych pod etykietami widocznymi w lewym górnym rogu każdego okna. Są trzy takie etykiety, przy czym pierwsza (znak plus) określa ogólne ustawienia okna, druga — widok, a trzecia — tryb cieniowania. Ostatnie dwie etykiety pokazują, jakie ustawienia są aktualnie wybrane.

Cofanie i zapisywanie zmian dokonanych za pomocą narzędzi do sterowania widokiem sceny Jeśli podczas modyfikowania widoków stracisz orientację, możesz cofnąć lub przywrócić zmiany, wybierając polecenia Views/Undo View Change (Shift+Z) lub Views/Redo View Change (Shift+Y). Polecenia te różnią się od poleceń Edit/Undo i Edit/Redo, które służą do cofania i przywracania modyfikacji obiektów w scenie. Aktualne ustawienia widoku można zapisać, korzystając z polecenia Views/Save Active View. Później można je odtworzyć za pomocą polecenia Views/Restore Active View. Opisywane powyżej polecenia zapisywania i odtwarzania ustawień widoku nie zapisują ustawień konfiguracyjnych okna widokowego, a jedynie ustawienia nawigacyjne. Ustawienia te są zapisywane w specjalnych buforach, po jednym dla każdego widoku3.

Odświeżanie okien widokowych Gdy scena staje się coraz bardziej złożona, czas, po którym zmiany wprowadzane do niej będą widoczne w oknach widokowych, staje się coraz dłuższy. W takiej sytuacji z pomocą przychodzą odpowiednie opcje i polecenia. Najpierw możesz spróbować wyłączyć odświeżanie w poszczególnych oknach widokowych. Aby wyłączyć odświeżanie okna widokowego, kliknij prawym przyciskiem myszy jego etykietę ustawień ogólnych i z menu podręcznego wybierz polecenie Disable View. Jeśli wolisz posługiwać się klawiaturą, wciśnij klawisz D. Takie okno zostanie odświeżone tylko wtedy, gdy będzie aktywne. Inaczej nie będzie w ogóle odświeżane aż do momentu ponownego uaktywnienia. Okna z wyłączonym odświeżaniem mają dodatkową etykietę Disabled. Innym sposobem na przyspieszenie odświeżania okien widokowych może być wyłączenie opcji Views/Update During Spinner Drag. Zmienianie parametrów za pomocą spinerów może powodować znaczne opóźnienia w procesie odświeżania, ponieważ każda zmiana wartości ustawianej spinerem wymusza aktualizację zawartości wszystkich okien widokowych. Jeżeli zmiany następują bardzo szybko, nawet system o dużej mocy obliczeniowej może nie nadążać z odświeżaniem okien. Wyłączenie wspomnianej opcji sprawia, że odświeżanie następuje dopiero po ustabilizowaniu się wartości zmienianego parametru.

3

Polecenie Views/Save Active View zapisuje ustawienia tylko widoków ortogonalnych i typu Perspective. Nie można go użyć do zapisania ustawień np. widoku z kamery — przyp. tłum.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

109

Czasami zdarza się, że po wprowadzeniu zmian w scenie zawartość okien widokowych nie jest w pełni aktualizowana. Zwykle tak się dzieje, gdy okno dialogowe innego programu przysłania okna widokowe lub gdy przesuwane obiekty zasłaniają się wzajemnie. W takiej sytuacji można wymusić odświeżanie przez wybranie polecenia Views/Redraw All Views (skrót klawiszowy: `). Polecenie Views/Redraw All Views aktualizuje zawartość każdego okna widokowego, co sprawia, że wszystko staje się znów widoczne.

Wyświetlanie materiałów w oknach widokowych Menu Views zawiera także polecenia umożliwiające wyświetlanie w oknach widokowych takich szczegółów sceny jak materiały, światła i cienie. Każda z tych opcji może spowolnić odświeżanie, ale jednocześnie są doskonałą pomocą w ocenie aktualnego wyglądu sceny. Mapy tekstur mogą angażować spore zasoby pamięci. Polecenie Views/Show Materials in Viewport As/Shaded Materials with Maps włącza wyświetlanie wszystkich map tekstur w oknach widokowych. Jeśli nie musisz oglądać na bieżąco tekstur w oknach widokowych, wybierz raczej opcję Views/Show Materials in Viewport As/Shaded Materials without Maps, bo to przyspieszy odświeżanie. Są jeszcze opcje Realistic Materials without Maps i Realistic Materials with Maps, które do wyświetlania zawartości okien widokowych wykorzystują zasoby pamięciowe karty graficznej. Menu Views/Show Materials in Viewport As zawiera także polecenie Enable Transparency, za pomocą którego można włączać i wyłączać przezroczystość w oknach widokowych. Opisane wyżej polecenia związane z wyświetlaniem materiałów w oknach widokowych są dostępne również w samych oknach widokowych w menu ukrytym pod etykietą cieniowania. O mapach tekstur będzie jeszcze mowa w rozdziale 17., „Określanie właściwości materiałów przy użyciu map”.

Wyświetlanie świateł i cieni Opcje wyświetlania świateł i cieni w oknach widokowych znajdują się w menu ukrytym pod etykietą cieniowania. Domyślnie przy włączonym cieniowaniu realistycznym (Realistic) włączone są zarówno cienie (Shadows), jak i zasłanianie światła otaczającego (Ambient Occlusion), ale w każdej chwili możesz te funkcje wyłączyć — odpowiednie polecenia znajdziesz w podmenu Lighting and Shadows. Można tam również wybrać oświetlanie sceny przy użyciu świateł w niej zainstalowanych (Scene Lights) lub standardowych świateł domyślnych (Default Lights). Na rysunku 2.12 pokazano okno widokowe z włączonymi cieniami i funkcją Ambient Occlusion. Zasłanianie światła otaczającego jest efektem zwiększającym realizm sceny przez odpowiedni rozkład cieni. Obiekty położone blisko jeden drugiego rzucają na siebie miękkie cienie w wyniku zasłaniania światła rozproszonego. Efekt ten doskonale widać na rysunku 2.13. Zwróć uwagę na cienie, jakie kolumny rzucają na ścianę.

110

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.12. Okno widokowe z włączonymi cieniami

Rysunek 2.13. Efekt Ambient Occlusion może skutecznie zastąpić standardowe cienie

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

111

Do wyświetlania cieni w oknie widokowym konieczne jest zastosowanie sterownika Direct3D 9.0 i karty graficznej obsługującej Shader Model 2.0 lub Shader Model 3.0. Jeśli komputer nie obsługuje żadnego z tych modeli cieniowania, powyższe opcje nie będą dostępne ani w menu etykiety cieniowania, ani w oknie dialogowym Viewport Configuration. Aby sprawdzić, jaki model cieniowania obsługuje Twoja karta graficzna, wybierz polecenie Help/Diagnose Video Hardware, które uruchomi odpowiedni skrypt sprawdzający możliwości graficzne komputera.

Konfigurowanie świateł i cieni w oknach widokowych Opcje związane z odwzorowywaniem świateł i cieni w oknach widokowych znajdują się także w panelu Visual Style & Appearance okna dialogowego Viewport Configuration, pokazanym na rysunku 2.14. Podobnie jak w menu etykiety cieniowania, tak i tu są opcje wyboru oświetlenia sceny za pomocą świateł domyślnych (jednego lub dwóch) albo tych, które są w niej zainstalowane. Gdy wybierzesz opcję z jednym źródłem światła, zostanie ono umieszczone za obserwatorem i pod pewnym kątem w stosunku do sceny. Odświeżanie widoku takiej sceny jest szybsze niż w przypadku zastosowania dwóch źródeł światła Rysunek 2.14. Panel Visual Style & Appearance zawiera ustawienia dla interaktywnego prezentowania świateł i cieni w oknie widokowym

Włączając opcję Default Lights (oświetlenie domyślne), możemy zgasić umieszczone w scenie źródła światła i przywrócić oświetlenie domyślne. Taka możliwość przydaje się, gdy chcemy dokładnie obejrzeć obiekty słabo oświetlone — bez wstawiania lub włączania dodatkowych źródeł światła uzyskujemy silne oświetlenie całej sceny. Można również włączyć odbłyski (Highlights) i automatyczne wyświetlanie światła pochodzącego z zaznaczonych źródeł.

112

Część I  Rozpoczynanie pracy z programem 3ds Max Jeśli nie używasz sterowników graficznych Nitrous, opcje konfigurowania świateł i cieni są inne.

Suwak Lighting and Shadows Quality umożliwia wybór jednego z predefiniowanych ustawień jakości oświetlenia i cieni, począwszy od Point Lights/Hard Shadows (światła punktowe/ostre cienie) i Point Lights/Soft-Edge Shadows (światła punktowe/miękkokrawędziowe cienie) na lewym końcu przez 0.125X-Very Low (bardzo niska jakość) aż po 16X-Very High Quality (bardzo wysoka jakość) na prawym końcu. Poniżej tego suwaka znajdują się opcje służące do włączania i wyłączania cieni (Shadows) oraz efektu zasłaniania światła otaczającego (Ambient Occlusion). Dla obu opcji można ustawić parametr Intensity/Fade (intensywność/zanikanie), a dla drugiej również Radius (promień). Parametr Intensity/Fade umożliwia zmianę intensywności cieni, a Radius określa, jak blisko siebie powinny być obiekty, aby były uwzględniane w obliczeniach Ambient Occlusion. Opcje konfiguracyjne oświetlenia w oknach widokowych zostały uproszczone w 3ds Max 2012. Nie ma już potrzeby włączania renderingu sprzętowego, aby zobaczyć cienie w oknie widokowym.

Aby włączyć i skonfigurować wyświetlanie cieni i świateł w oknie widokowym, wykonaj następujące czynności. 1. Otwórz plik Foot bones.max z folderu Chap 02 na płycie dołączonej do książki. Plik ten zawiera model szkieletu stopy wykonany przez Viewpoint Datalabs. Scena została oświetlona światłem typu Omni. 2. Kliknij etykietę cieniowania w oknie widokowym i z otwartego w ten sposób menu wybierz polecenie Lighting and Shadows/Shadows. Z tego samego menu wybierz polecenie Configure, aby uzyskać dostęp do panelu Visual Style & Appearance okna dialogowego Viewport Configuration. Jeśli w oknie Viewport Configuration nie widzisz panelu Visual Style & Appearance, prawdopodobnie masz włączony jakiś inny sterownik grafiki.

Włącz opcję Ambient Occlusion z promieniem o wartości 10 i intensywnością równą 1, a suwakiem Lighting and Shadows Quality ustaw Point Lights/Soft-Edge Shadows. Na koniec kliknij przycisk OK. 3. Na pasku narzędzi kliknij przycisk Select and Move i przeciągnij źródło światła w inne położenie. Gdy przesuwasz źródło światła, cienie pod kośćmi są automatycznie dopasowywane do zmieniającego się oświetlenia (patrz rysunek 2.15). Zauważ, że cienie są miękkie. W panelu Visual Style & Appearance istnieje też opcja Auto Display Selected Lights, która włącza automatyczne wyświetlanie w oknach widokowych świateł pochodzących z zaznaczonych źródeł, co może być przydatne podczas dopasowywania położenia i kierunku świecenia poszczególnych reflektorów. Opcja ta jest dostępna również w menu Views/ Viewport Lighting and Shadows. Menu to zawiera także polecenia Lock Selected Lights i Unlock Selected Lights służące do blokowania i odblokowywania zaznaczonych świateł.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

113

Rysunek 2.15. Podczas ruchu źródeł światła cienie są na bieżąco dopasowywane do zmieniających się warunków oświetlenia

Wykrywanie błędów siatki za pomocą funkcji xView Podczas modelowania lub importowania obiektów siatkowych mogą wystąpić błędy w postaci odwróconych normalnych, nakładających się ścianek lub otwartych krawędzi, co z kolei może być przyczyną powstawania artefaktów w procesie renderowania sceny. Wykrycie takich błędów na ogół jest bardzo trudne i wymaga wykonania wielu próbnych renderingów. Na szczęście mamy do dyspozycji specjalne narzędzie, które umożliwia ujawnianie określonego typu błędów bez konieczności renderowania sceny. Narzędzie to ma nazwę xView i jest dostępne w głównym menu Views. Narzędzie xView wykrywa i podświetla następujące nieprawidłowości: 

Show Statistics (pokaż statystyki) (skrót klawiszowy 7) — wyświetla liczbę wielokątów (Polys), trójkątów (Tris), krawędzi (Edges), wierzchołków (Verts) i klatek na sekundę (FPS).



Face Orientation (orientacja ścianki) — podświetla tylne strony ścianek bieżącego zaznaczenia, co umożliwia szybką identyfikację ścianek z odwróconymi normalnymi;



Overlapping Faces (ścianki nakładające się) — podświetla pokrywające się ścianki, które mogą powodować problemy w czasie renderingu;



Open Edges (otwarte krawędzie) — umożliwia identyfikację niepożądanych dziur w siatce;

114

Część I  Rozpoczynanie pracy z programem 3ds Max 

Multiple Edges (krawędzie wielokrotne) — sprawdza występowanie krawędzi wspólnych dla więcej niż dwóch ścianek;



Isolated Vertices (odosobnione wierzchołki) — podświetla wierzchołki niepołączone z innymi elementami siatki; takie wierzchołki zajmują niepotrzebnie przestrzeń;



Overlapping Vertices (nakładające się wierzchołki) — wskazuje wierzchołki, których wzajemna odległość jest mniejsza od ustalonej wartości;



T-Vertices (T-wierzchołki) — podświetla wierzchołki, w których spotykają się trzy krawędzie (obecność takich wierzchołków może utrudniać zaznaczanie pętli krawędziowych);



Missing UVW Coordinates (brakujące współrzędne UVW) — wskazuje ścianki, które nie mają przypisanych współrzędnych UVW potrzebnych przy nakładaniu tekstur;



Flipped UVW Faces (odwrócone ścianki rozwinięcia UVW) — podświetla ścianki rozwinięcia odwrócone w stosunku do orientacji naturalnej;



Overlapping UVW Faces (nakładające się ścianki UVW) — podświetla nakładające się ścianki rozwinięcia UVW.

Wybrana opcja jest wyświetlana na zielono w dolnej części okna widokowego wraz z liczbą wadliwych elementów, na przykład Isolated Vertices: 12 Vertices. Menu zawiera także polecenie zaznaczenia rezultatu analizy (Select Results). Jeśli wybrana opcja wymaga określenia jakiegoś parametru, na przykład tolerancji dla nakładających się wierzchołków, możesz wybrać z menu polecenie Configure (konfiguruj) lub w oknie widokowym kliknąć zielony napis Click Here to Configure. Poza tym są tu polecenia See Through (patrz przez), Auto Update (aktualizuj automatycznie) i Display On Top (wyświetlaj na górze). Jeśli jakiekolwiek dane xView są wyświetlane w oknie widokowym, może je kliknąć i wybrać inną opcję. W ten sposób możesz szybko przejrzeć wszystkie potencjalne błędy zaznaczonego obiektu.

Konfigurowanie okien widokowych Przyciski sterujące widokiem sceny pozwalają określić, co ma być wyświetlane w oknach widokowych, natomiast okno dialogowe Viewport Configuration umożliwia ustalenie, jak to ma być wyświetlane. Korzystając z tego okna, możesz skonfigurować każde okno widokowe. Aby otworzyć okno Viewport Configuration, wybierz polecenie Views/Viewport Configuration lub kliknij prawym przyciskiem myszy etykietę ogólną dowolnego okna widokowego, znajdującą się w jego lewym górnym rogu, i z otwartego w ten sposób menu wybierz polecenie Configure. Etykiety okna widokowego dzielą się na ogólne (oznaczone znakiem plus), punktu widzenia i metody cieniowania. Wiele pozycji z menu tych etykiet można znaleźć także w oknie Viewport Configuration, ale okno dialogowe pozwala dokonać wielu ustawień jednocześnie. Jeśli chcesz skonfigurować aktywne okno widokowe, możesz szybko otworzyć okno dialogowe Viewport Configuration, klikając prawym przyciskiem myszy dowolny z przycisków nawigacyjnych (w prawym dolnym rogu interfejsu).

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

115

Okno dialogowe Viewport Configuration zawiera następujące panele: Visual Style & Appearance, Layout, Safe Frames, Display Performance, Regions, Statistics, ViewCube i SteeringWheels. Wiele ustawień sterujących funkcjonowaniem i wyglądem okien widokowych znajduje się również w oknie dialogowym Preference Settings. Niektóre panele okna Viewport Configuration zostały uproszczone w 3ds Max 2012. Dwa panele połączono w jeden Visual Style & Appearance. Znacznie zredukowano liczbę opcji w panelu Display Performance. Więcej informacji na temat okna dialogowego Preference Settings i zawartych w nim opcji znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Ustawianie stylu okna widokowego Wyrenderowanie i wyświetlenie złożonej sceny może wymagać długiego czasu. Mimo że algorytm renderowania zawartości okien widokowych jest maksymalnie zoptymalizowany pod kątem szybkości działania, to jednak przy opracowywaniu dużego modelu ze sporą liczbą skomplikowanych tekstur i ustawieniu najwyższej jakości wyświetlania we wszystkich oknach widokowych proces odświeżania widoków w tych oknach może znacznie spowolnić działanie programu. Aby tego uniknąć, możesz dokonać odpowiednich ustawień w panelu Visual Style & Appearance okna dialogowego Viewport Configuration, pokazanym na rysunku 2.14. Jeśli zdarzy Ci się wydać Maksowi polecenie zbyt czasochłonne, zawsze możesz przerwać wykonywanie go, wciskając klawisz Escape. W ten sposób odzyskasz możliwość korzystania z interfejsu Maksa. Ustawienia dokonane w oknie Viewport Configuration nie mają wpływu na proces końcowego renderingu określonego za pomocą poleceń z menu Rendering. Dotyczą one wyłącznie wyświetlania w oknach widokowych.

Poziomy renderowania Grupa Rendering Level (poziom renderowania) zawiera szereg opcji. Oto one (od najwolniejszej do najszybszej). 

Realistic — oznacza wyświetlanie gładkich powierzchni z odbłyskami.



Shaded — wyświetlane są gładkie powierzchnie, ale bez żadnych efektów świetlnych.



Consistent Colors — cały obiekt wyświetlany jest przy oświetleniu minimalnym.



Hidden Line — widoczne są krawędzie tylko tych ścianek, które są zwrócone w stronę kamery i nie są przysłonięte przez inne obiekty.



Wireframe — widoczne są tylko krawędzie ścianek.



Bounding Box — wyświetlane są krawędzie prostopadłościanu otaczającego dany obiekt. W 3ds Max 2012 większość poziomów renderowania uzyskała nowe nazwy, a kilka w ogóle usunięto.

116

Część I  Rozpoczynanie pracy z programem 3ds Max Na liście Rendering Level jest kilka opcji stylizowanych: Graphite, Color Pencil, Ink, Color Ink, Acrylic, Pastel i Tech. Są to metody renderowania o charakterze abstrakcyjnym, a więcej informacji na ich temat znajdziesz w rozdziale 24., „Stylizowanie sceny”.

Opcja Edged Faces, chociaż nie jest trybem renderowania, umożliwia wyświetlanie krawędzi ścianek przy zastosowaniu renderowania z cieniowaniem. Opcję tę można włączać i wyłączać klawiszem F4. Na rysunku 2.16 przedstawiono sferę wyświetlaną w różnych trybach (poziomach) renderowania.

Rysunek 2.16. Tryby renderowania dostępne dla okien widokowych. W górnym rzędzie: Realistic, Shaded, Consistent Colors, Hidden Line i Wireframe. W dolnym rzędzie: Bounding Box i Shaded z włączoną opcją Edged Faces

Metoda cieniowania realistycznego (Realistic) uwzględnia wszystkie tekstury i wysokiej jakości światła oraz cienie. Metoda Shaded jest podobna, ale działa w oparciu o szybki algorytm cieniowania Phonga. Consistent Colors wyświetla cały obiekt w jednym kolorze bez żadnego cieniowania. Metoda renderowania Wireframe pokazuje jedynie kształt obiektu, ale jest za to najszybsza. Domyślnie w oknach Top, Front i Left stosowany jest tryb Wireframe, a w oknie Perspective — tryb Realistic. Przy renderowaniu metodą Bounding Box wyświetlane są tylko zewnętrzne granice obiektu w formie prostopadłościanu. Efekty, takie jak te, które bazują na mapach nierówności bądź przezroczystości, są niewidoczne w oknach widokowych — można je obejrzeć dopiero po wykonaniu końcowego renderingu.

Wyświetlanie przezroczystości Poza wyborem poziomu renderowania możesz także włączyć wyświetlanie obiektów przezroczystych (do ustawiania przezroczystości obiektu służy okno Material Editor). Odpowiednią opcję znajdziesz w menu etykiety cieniowania, a dokładnie w podmenu Materials. Przezroczystość możesz włączyć także w panelu Visual Style & Appearance okna Viewport Configuration oraz w menu Views/Show Materials in Viewport As. Rezultaty wyłączenia i włączenia przezroczystości zostały pokazane na rysunku 2.17 przedstawiającym małego, żarłocznego stworka i jego przeciwnika, duszka. W poprzednich wersjach Maksa dostępne były trzy opcje wyświetlania przezroczystości: None (bez przezroczystości), Simple (obszary przezroczyste były tylko pokreskowane) i Best (z pełnym efektem przezroczystości). Najnowsze usprawnienia sprawiły jednak, że opcje te nie są już potrzebne.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

117

Rysunek 2.17. Przezroczystość w oknie widokowym można włączyć za pomocą polecenia Views/Show Materials in Viewport As

Pozostałe opcje renderowania Pozostałe opcje renderowania, takie jak Disable View (wyłącz widok) (D), Viewport Clipping (przycięcie widoku) i Textures (tekstury) mogą przyspieszyć odświeżanie widoków lub zwiększyć szczegółowość wyświetlania obiektów. Proces odświeżania zawartości okien widokowych możesz w każdej chwili przerwać, klikając myszą lub wciskając dowolny klawisz. Max nie każe Ci czekać, aż ukończy aktualizowanie okien widokowych.

W sekcji Selection (zaznaczenie) jest kilka opcji, dzięki którym można uzyskać lepszy podgląd zaznaczonego obiektu i (lub) podobiektów. Po włączeniu opcji Selection Brackets wokół bieżącego zaznaczenia będą wyświetlane białe narożniki. Może to być przydatne, jeśli chcemy ocenić rozmiary grupy zaznaczonych obiektów, ale przy dużej liczbie zaznaczonych obiektów może być dezorientujące. Aby wyłączyć wyświetlanie narożników, usuń zaznaczenie tej opcji lub wciśnij klawisz J. Opcja Display Selected with Edged Faces pozwala dodatkowo wyróżnić zaznaczony obiekt. Jeśli jest włączona, krawędzie zaznaczonego obiektu są widoczne, niezależnie od tego, czy włączona jest opcja Edged Faces. Na rysunku 2.18 przedstawiono model karabinu M-203 (wykonany w firmie Viewpoint Datalabs), którego uchwyty zostały zaznaczone przy włączonych opcjach Display Selected with Edged Faces i Selection Brackets. Dzięki temu elementy zaznaczone są dobrze widoczne. Opcja Shade Selected Faces (F2) włącza wyświetlanie zaznaczonych ścianek w trybie cieniowania i nadaje im kolor czerwony. Dzięki temu stają się dobrze widoczne. Shade Selected Objects włącza cieniowanie zaznaczonych obiektów, co ma znaczenie jedynie wtedy, gdy poziom renderowania jest ustawiony na Wireframe lub Hidden Line. Należy odróżniać opcję Shade Selected Faces (F2), która cieniuje zaznaczone ścianki, od opcji menu Views/Shade Selected, która włącza cieniowanie zaznaczonego obiektu we wszystkich oknach widokowych.

Używanie płaszczyzn tnących Płaszczyzny tnące (clipping planes) stanowią niewidoczne bariery, poza którymi obiekty stają się niewidoczne. Jeśli np. opracowujesz scenę, której tło stanowią szczegółowo wymodelowane góry, zadanie zmodyfikowania obiektu na pierwszym planie może być dość trudne. Po ustawieniu płaszczyzny tnącej między modyfikowanym obiektem a górami możesz swobodnie pracować — obiekty tworzące góry nie będą uwzględniane podczas odświeżania widoku sceny. Płaszczyzny tnące działają tylko w oknach widokowych — nie mają wpływu na wynik końcowego renderingu.

118

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.18. Włączenie opcji Display Selected with Edged Faces i Selection Brackets ułatwia identyfikację aktualnego zaznaczenia

Po włączeniu opcji Viewport Clipping (można to zrobić także w menu etykiety punktu widzenia) przy prawej krawędzi okna widokowego pojawia się żółta linia z dwiema strzałkami (patrz rysunek 2.19). Górna strzałka reprezentuje tylną płaszczyznę tnącą, a strzałka dolna — płaszczyznę przednią. Aby ustawić płaszczyznę tnącą we właściwym położeniu, należy przeciągnąć odpowiadającą jej strzałkę w górę lub w dół.

Ćwiczenie: Oglądanie wnętrza serca Płaszczyzny tnące włączane za pomocą opcji Viewport Clipping można wykorzystać w celu obejrzenia wnętrza modelu. W tym ćwiczeniu obejrzymy wnętrze serca, którego model opracowano w firmie Viewpoint. Aby zobaczyć wnętrze modelu serca, wykonaj następujące czynności. 1. Otwórz plik Heart interior.max z folderu Chap 02 na płycie dołączonej do książki. 2. Wybierz polecenie Views/Viewport Configuration, aby otworzyć okno dialogowe Viewport Configuration. Włącz opcję Viewport Clipping a następnie zamknij okno. 3. Przy prawej krawędzi okna widokowego pojawiły się znaczniki płaszczyzn tnących. Górny znacznik służy do ustawiania tylnej płaszczyzny tnącej, a dolny — przedniej. Przeciągnij dolny znacznik w górę, aby uzyskać przekrój modelu serca i zobaczyć jego wnętrze, tak jak pokazano na rysunku 2.20.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

119

Rysunek 2.19. Płaszczyzny tnące użyte do pokazania wnętrza modelu samochodu

Ustawianie kąta widzenia W oknie dialogowym Viewport Configuration możesz także zmienić wartość kąta widzenia (FOV — field of view) dla widoku perspektywicznego. Aby uzyskać efekt „rybiego oka”, zwiększ wartość tego ustawienia do 100 lub więcej. Maksymalną wartością tego parametru może być 180, natomiast wartością domyślną jest 45. Kąt widzenia możesz zmienić także za pomocą przycisku Field-of View — jednego z przycisków do sterowania widokiem sceny. Jednak okno Viewport Configuration pozwala na precyzyjne określenie tej wartości przez wpisanie odpowiedniej liczby. Więcej informacji na temat kąta widzenia znajdziesz w rozdziale 19., „Operowanie kamerami”.

Przechwytywanie zawartości okna widokowego Obraz widoczny w aktywnym oknie widokowym możesz przechwycić i zapisać w oddzielnym pliku, korzystając z polecenia Tools/Views — Grab Viewport. Po wybraniu tego polecenia zostanie wyświetlone proste okno dialogowe umożliwiające umieszczenie etykiety tekstowej na przechwytywanym obrazie. Następnie obraz zostanie wyświetlony w oknie Rendered Frame. Zdefiniowana wcześniej etykieta będzie widoczna w prawym

120

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.20. Za pomocą płaszczyzn tnących możesz odkryć wnętrze modelu

dolnym rogu obrazu, tak jak na rysunku 2.21. Polecenie Tools/Views — Grab Viewport zawiera podmenu z opcjami tworzenia obrazów nieruchomych lub sekwencji animacyjnych, przeglądania zapisanej sekwencji i zmieniania nazw jej plików. Rysunek 2.21. Do przechwytywania zawartości okna widokowego służy polecenie Tools/Views — Grab Viewport

Jeśli chcesz zapisać obraz wyświetlany w oknie Rendered Frame, po prostu kliknij przycisk Save Image. Okno zawiera również przyciski do kopiowania, klonowania i drukowania jego zawartości. Więcej informacji na temat podglądu animacji znajdziesz w rozdziale 21., „Animacja i klatki kluczowe”.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

121

Zmienianie układu okien widokowych Gdy już zaczynasz rozumieć funkcjonowanie okien widokowych, możesz zacząć zmieniać ich liczbę i rozmiary. Panel Layout okna dialogowego Viewport Configuration, pokazany na rysunku 2.22, oferuje kilka różnych układów okien widokowych, które możesz wybrać zamiast układu domyślnego (nie oznacza to, że układ z czterema oknami o jednakowych rozmiarach jest gorszy lub lepszy od pozostałych). Rysunek 2.22. Panel Layout oferuje rozmaite układy okien widokowych

Po wybraniu układu w górnej części panelu możesz każdemu z okien przypisać określony widok. W tym celu kliknij okno widokowe (w dolnej części panelu Layout) i z menu podręcznego wybierz odpowiedni widok. Wspomniane menu zawiera następujące opcje: Perspective, Orthographic, Front, Back, Top, Bottom, Left, Right, ActiveShade, Track, Grid (Front, Back, Top, Bottom, Left, Right, Display Planes), Scene Explorer, Extended (Biped AnimationWorkbench, Motion Mixer, Material Explorer, MAXScript Listener) i Shape. Wymienione opcje są również dostępne w menu, które otwiera się po kliknięciu etykiety punktu widzenia w lewym górnym rogu okna widokowego. Na rysunku 2.23 pokazany został układ z oknami Track, Schematic, Asset Browser i Perspective. Jeśli w scenie istnieją kamery i reflektory, możesz wybrać także opcję Camera (widok z kamery) lub Spotlight (widok z reflektora). Wszystkie kamery i reflektory znajdujące się w scenie są dostępne w górnej części menu etykiety.

Ramki obszarów bezpiecznych Wykonanie czasochłonnej animacji i przeniesienie jej na nośnik wideo tylko po to, aby zobaczyć, że cała lewa strona obrazu została obcięta, może być zniechęcające. Liczenie, że to, co jest widoczne w oknie widokowym, będzie w całości widoczne na ekranie, na

122

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.23. W oknach widokowych można wyświetlać również zawartość okien Track View, Schematic View oraz Asset Browser

którym wyświetlimy animację, może zawieść. Korzystając z funkcji Safe Frames, możesz wyświetlić w oknie widokowym specjalne ramki wskazujące miejsca, w których może nastąpić obcięcie obrazu. Panel Safe Frames okna dialogowego Viewport Configuration (patrz rysunek 2.24) pozwala na określenie pewnych opcji dla tego typu ramek. Przede wszystkim możesz wybrać, które z niżej wymienionych ramek mają być wyświetlane. 

Live Area — wyznacza obszar, który zostanie zrenderowany. Ta ramka ma kolor żółty. Jeśli w oknie widokowym w charakterze tła znajdzie się obraz i zostanie przy tym zaznaczona opcja Match Rendering Output, wówczas obraz ten zostanie automatycznie dopasowany do ramki Live Area.



Action Safe — ma kolor jasnoniebieski i wyznacza obszar, który z pewnością będzie widoczny po wykonaniu ostatecznego renderingu. Obiekty widoczne na zewnątrz tej ramki znajdą się przy krawędzi ekranu i w związku z tym mogą ulec zniekształceniu.



Title Safe — wyznacza obszar, w którym można umieścić napisy bez obawy, że zostaną zniekształcone. Jest to ramka pomarańczowa.



User Safe — wyznacza obszar zdefiniowany przez użytkownika. Jej kolorem jest magenta.



12-Field Grid — wyświetla w oknie widokowym siatkę w kolorze różowym.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

123

Rysunek 2.24. W panelu Safe Frames możesz określić, które obszary mają być renderowane

Dla ramek typu Action Safe, Title Safe lub User Safe możesz ustawić parametry Percent Reductions określające, o ile procent ma być ona pomniejszona w stosunku do ramki Live Area w kierunku poziomym (parametr Horizontal), pionowym (Vertical) lub obu jednocześnie (Both). Dla siatki 12-Field Grid możesz wybrać opcję 43 lub 129. Aby wybrane ramki były widoczne w aktywnym oknie widokowym, musisz zaznaczyć opcję Show Safe Frames in Active View. Podczas opracowywania sceny możesz szybko włączać i wyłączać wyświetlanie tych ramek, klikając etykietę punktu widzenia i wybierając z menu podręcznego polecenie Show Safe Frame. Możesz także użyć skrótu klawiszowego Shift+F. Na rysunku 2.25 przedstawiono powiększone okno z widokiem perspektywicznym, w którym wyświetlane są wszystkie ramki. Jak widać, podczas renderingu góra i dół dinozaura zostaną obcięte.

Jakość wyświetlania Panel Display Performance okna dialogowego Viewport Configuration, pokazany na rysunku 2.26, zawiera kilka prostych ustawień. Włączenie opcji Improve Quality Progressively sprawia, że podczas odświeżania zawartości okna widokowego najpierw renderowany jest zgrubny podgląd sceny, a dopiero potem stopniowo dodawane są coraz drobniejsze szczegóły. Działanie takie nie spowalnia Twojej pracy, bo jeśli nie chcesz, nie musisz czekać na wyrenderowanie wszystkich detali. W poprzednich wydaniach Maksa stosowany był skomplikowany system degradacji adaptacyjnej, ale ze względu na coraz szybsze procesory i wydajniejsze algorytmy renderowania w 3ds Max 2012 zastąpiono go wersją znacznie uproszczoną.

124

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.25. Ramki obszarów bezpiecznych pomagają ocenić, czy obiekty zostaną obcięte podczas renderingu Rysunek 2.26. W panelu Display Performance znajduje się tylko kilka prostych ustawień

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

125

Jeśli nie włączysz sterownika Nitrous, w oknie Viewport Configuration nadal dostępny będzie panel Adaptive Degradation (degradacja adaptacyjna).

Można także ustalić rozdzielczość, z jaką mają być wyświetlane mapy proceduralne. Przy wyższych wartościach będzie widać więcej szczegółów, ale dłużej będzie trwało ich renderowanie. Aby włączyć renderowanie progresywne, możesz wybrać polecenie Views/Progressive Display lub wcisnąć klawisz O. Możesz także kliknąć przycisk Progressive Display znajdujący się na dolnej listwie interfejsu na prawo od linii zachęty. Jest oznaczony ikoną przedstawiającą uproszczony widok sześcianu. Kliknięcie przycisku Progressive Display prawym przyciskiem myszy otwiera okno dialogowe Viewport Configuration z otwartym już panelem Display Performance.

Definiowanie regionów Regions, kolejny panel okna dialogowego Viewport Configuration, umożliwia zdefiniowanie regionów ograniczających proces renderowania do niewielkiego obszaru. Wyrenderowanie złożonej sceny w całości może trwać bardzo długo nawet na komputerze o dużej mocy obliczeniowej. Czasami, dla sprawdzenia jakości przypisanego materiału, ustawienia mapy tekstury lub oświetlenia, wystarcza wyrenderowanie tylko niewielkiej części okna widokowego. W panelu Regions okna dialogowego Viewport Configuration, pokazanym na rysunku 2.27, możesz określić domyślne rozmiary różnych regionów. Po określeniu położenia i rozmiarów obszaru Blowup Region (region powiększony) lub Sub Region (podregion) możesz go zrenderować, wybierając z listy Area to Render w oknie Render Frame odpowiednio: Blowup lub Region i klikając przycisk Render. Jeśli klikniesz w tym oknie przycisk Edit Region, w oknie widokowym ujrzysz zdefiniowany wcześniej region w postaci ramki z uchwytami. Ramkę regionu możesz przeciągnąć w inne położenie. Możesz także zmienić jej rozmiary, przeciągając odpowiednie uchwyty na krawędziach lub w narożnikach. Wszelkie dokonane w ten sposób zmiany powodują automatyczne uaktualnienie odpowiednich wartości w panelu Regions. Aby zrenderować wybrany obszar, kliknij przycisk Render. Różnica między opisywanymi regionami polega na tym, że po zrenderowaniu obszaru typu Sub Region okno renderingu jest czarne z wyjątkiem obszaru renderowanego, natomiast obszar typu Blowup wypełnia całe okno renderingu (patrz rysunek 2.28). Więcej informacji na temat typów renderowania i okna Rendered Frame znajdziesz w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Wyświetlanie statystyk W panelu Statistics, pokazanym na rysunku 2.29, można ustalić, jakie statystyki będą wyświetlane w oknie widokowym. Może to być liczba wielokątów (Polygon Count), liczba trójkątów (Triangle Count), liczba krawędzi (Edge Count), liczba wierzchołków

126

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.27. Panel Regions umożliwia ograniczenie renderingu do niewielkich obszarów sceny

Rysunek 2.28. Obraz po lewej przedstawia zrenderowany obszar typu Sub Region, a obraz po prawej to ten sam obszar zrenderowany w trybie Blowup

(Vertex Count) i liczba klatek na sekundę (Frames Per Second). Można także określić, czy statystyki mają obejmować wszystkie obiekty w scenie (opcja Total), tylko obiekty zaznaczone (Selection), czy też jedne i drugie (Total + Selection). Wyświetlanie statystyk w aktywnym oknie widokowym można włączać i wyłączać za pomocą polecenia Views/xView/Show Statistics lub klawisza 7. Włączenie opcji Show Statistics in Active View jest równoznaczne z włączeniem wyświetlania statystyk w aktywnym oknie widokowym (patrz rysunek 2.30).

Praca z tłem w oknie widokowym Zapewne pamiętasz z dzieciństwa chwilę, w której uświadomiłeś sobie, że za pomocą kalki technicznej możesz tworzyć wspaniałe rysunki (cała sztuka polegała na odtworzeniu obrazka leżącego pod kalką). Max umożliwia stosowanie podobnej techniki podczas tworzenia i ustawiania obiektów w scenie. Rolę kalkowanego obrazka pełni tutaj obraz umieszczony w oknie widokowym w charakterze tła.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

127

Rysunek 2.29. Panel Statistics pozwala wybrać, jakie statystyki będą wyświetlane w oknie widokowym

Rysunek 2.30. W aktywnym oknie widokowym można włączyć wyświetlanie statystyk

Umieszczanie obrazu jako tła w oknie widokowym Polecenie Views/Viewport Background/Viewport Background (Alt+B) otwiera okno dialogowe, pokazane na rysunku 2.31, w którym możesz wybrać obraz lub animację jako tło dla obiektów widocznych w oknie widokowym (może być inne dla każdego okna). Takie tło może być pomocne przy ustawianiu obiektów w scenie, ale nie będzie widoczne w końcowym renderingu. Aby utworzyć tło, które będzie renderowane, musisz je zdefiniować za pomocą okna dialogowego Environment and Effects otwieranego poleceniem Rendering/Environment (skrót klawiszowy: 8). Jeżeli obraz stanowiący tło zostanie zmodyfikowany, możesz go uaktualnić w oknie widokowym, wybierając polecenie Views/Viewport Background/Update Background Image (Alt+Shift+Ctrl+B). Jest to szczególne przydatne, jeśli w tym samym czasie obraz jest edytowany w Photoshopie. Aby aktualizacja tego obrazu w Maksie była możliwa, musisz zapisać aktualną wersję w Photoshopie. Jeśli zmieniłeś rozmiary okna widokowego lub obrazu stanowiącego tło, wybierz polecenie Views/Viewport Background/Reset Background Transform, które automatycznie ustawi i przeskaluje obraz, tak aby dopasować go do okna widokowego.

128

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 2.31. Okno dialogowe Viewport Background pozwala wybrać obraz lub animację jako tło dla okna widokowego

Przycisk Files w oknie Viewport Background otwiera okno dialogowe Select Background, w którym możesz wybrać konkretny obraz. Przycisk Devices umożliwia pobranie tła z urządzenia zewnętrznego, np. magnetowidu. Jeśli wcześniej zdefiniowałeś tło w oknie dialogowym Environment and Effects, możesz po prostu zaznaczyć opcję Use Environment Background. Nie zapominaj, że tło okna widokowego nie będzie renderowane, jeśli nie zostanie zdefiniowane jako Environment Map (mapa środowiska). Mapy środowiska zostały opisane dokładniej w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Umieszczanie animacji jako tła w oknie widokowym W sekcji Animation Synchronization okna dialogowego Viewport Background możesz określić, które klatki animacji będą wyświetlane w oknie widokowym. Wartości w polach Use Frame i To ustalają zakres klatek, który ma być wykorzystany, a wartość w polu Step określa, które klatki z tego zakresu będą wyświetlane. Jeśli np. wartość w tym polu jest równa 4, wyświetlona zostanie co czwarta klatka z wybranego zakresu animacji. Umieszczenie animacji jako tła w oknie widokowym może być pomocne podczas animowania skomplikowanych ruchów, np. kłusującego konia. Korzystając z kolejnych ujęć widocznych w tle, możesz ustawiać model w odpowiednich pozycjach i uzyskać realistyczny efekt ruchu.

Wartość w polu Start at określa klatkę tworzonej animacji, w której po raz pierwszy powinna pojawić się animacja stanowiąca tło. Parametr Sync Start to Frame decyduje o tym, która klatka animacji stanowiącej tło pojawi się jako pierwsza. Opcje w sekcjach Start Processing i End Processing służą do określenia, co ma być wyświetlane przed pierwszą klatką animacji i po ostatniej. Możesz tutaj wybrać puste tło (blank), zatrzymanie bieżącej klatki (hold) lub wyświetlanie animacji w pętli (loop). Jeśli jako tło wybierasz animację, nie zapomnij włączyć opcji Animate Background (animuj tło) i Display Background (wyświetlaj tło) — bez zaznaczenia tych opcji animacja nie będzie odtwarzana lub tło w ogóle nie będzie wyświetlane.

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

129

W sekcji Aspect Ratio możesz wybrać sposób ustalania rozmiarów obrazu wyświetlanego jako tło. Proporcje tego obrazu mogą być dopasowane do proporcji okna widokowego (opcja Match Viewport), oryginalnego obrazu (Match Bitmap) lub wyjściowego urządzenia renderującego (Match Rendering Output). Opcja Lock Zoom/Pan jest dostępna tylko po wybraniu opcji Match Bitmap lub Match Rendering Output i powoduje zblokowanie tła z obiektami w scenie. Podczas wykonywania zbliżeń lub przesuwania widoku obraz stanowiący tło zachowuje się tak samo jak pozostałe obiekty w scenie. Aby przywrócić pierwotne położenie obrazu względem okna widokowego, wybierz polecenie Views/Viewport Background/Reset Background Transform. Wykonywanie zbliżeń przy włączonej opcji Lock Zoom/Pan powoduje powiększanie rozmiarów obrazu stanowiącego tło, a to wymaga zaangażowania większych zasobów pamięci komputera. Jeśli zbliżenie będzie zbyt duże, może dojść do wyczerpania tych zasobów. W takiej sytuacji wyświetlane jest okno dialogowe z informacją o zaistniałym problemie, które jednocześnie umożliwia wyłączenie wyświetlania tła.

W sekcji Apply Source and Display to możesz wybrać wyświetlanie tła we wszystkich oknach widokowych (All Views) lub tylko w aktywnym (Active Only).

Ćwiczenie: Przygotowanie obrazów ułatwiających modelowanie Modelowanie rzeczywistego obiektu można sobie ułatwić i przyspieszyć przez sfotografowanie go za pomocą aparatu cyfrowego od przodu, z góry i z lewej strony, a następnie umieszczenie każdego z tych obrazów jako tła w odpowiednim oknie widokowym. Takie obrazy można wykorzystać jako wzorzec podczas modelowania obiektu szczególnie wtedy, gdy wymagana jest duża precyzja modelu. W tym celu można także użyć rysunków wykonanych w programie typu CAD. Aby w oknach widokowych umieścić obrazy mosiężnego łabędzia, wykonaj następujące czynności. 1. Kliknij przycisk aplikacji i wybierz polecenie New (lub wciśnij klawisze Ctrl+N), aby utworzyć nową, pustą scenę. 2. Kliknij prawym przyciskiem myszy okno z widokiem od przodu (Front), aby je uaktywnić, a następnie wybierz polecenie Views/Viewport Background/ Viewport Background (lub wciśnij klawisze Alt+B). Otwarte zostanie okno dialogowe Viewport Background. 3. Kliknij przycisk Files i w oknie dialogowym Select Background Image wybierz plik Brass swan-front view.jpg z folderu Chap 02 na płycie dołączonej do książki. 4. Zaznacz opcje Match Bitmap, Display Background, Lock Zoom/Pan i Active Only, a następnie kliknij przycisk OK, aby zamknąć okno. Wybrany obraz powinien być teraz widoczny w oknie widokowym Front. 5. Czynności z etapów od 2. do 4. powtórz dla okien widokowych Top i Left, ładując obrazy z odpowiednimi nazwami jako tła tych okien.

130

Część I  Rozpoczynanie pracy z programem 3ds Max

Na rysunku 2.32 przedstawiono interfejs Maksa po wczytaniu teł do okien widokowych Front, Top i Left.

Rysunek 2.32. Umieszczenie obrazu jako tła w oknie widokowym może być pomocne przy modelowaniu obiektu

Podsumowanie Przez okna widokowe możesz oglądać wirtualny świat Maksa. Trudno byłoby modelować ten świat, nie widząc go, dlatego tak ważna jest umiejętność posługiwania się oknami widokowymi. Okna te możesz także dopasować do własnych potrzeb i upodobań. Niniejszy rozdział obejmował następujące zagadnienia: 

przestrzeń 3D i różne typy okien widokowych,



nawigowanie przy użyciu manipulatorów ViewCube i SteeringWheels oraz rolki do przewijania,



działanie przycisków sterujących widokiem sceny,



poziomy renderowania i opcje wyświetlania, czyli pierwszy panel okna dialogowego Viewport Configuration,



pozostałe panele okna dialogowego Viewport Configuration — zmianę układu okien widokowych, ramki obszarów bezpiecznych, regiony, statystyki,

Rozdział 2.  Sterowanie oknami widokowymi oraz ich konfigurowanie

131



stosowanie funkcji progresywnego renderowania sceny dla zachowania stałej szybkości odświeżania zawartości okien widokowych,



umieszczanie w oknie widokowym obrazu jako tła.

W następnym rozdziale dowiesz się, jak pracować z plikami scen, a konkretnie, jak je otwierać, zapisywać i łączyć z zapisanymi scenami. Przeczytasz również o zagadnieniach związanych z importem oraz eksportem, czyli wymianą danych z innymi programami.

132

Część I  Rozpoczynanie pracy z programem 3ds Max

Rozdział 3.

Praca z plikami, importowanie i eksportowanie W tym rozdziale: 

Zapisywanie, otwieranie, łączenie i archiwizowanie plików



Ustawianie preferencji związanych z plikami



Konfigurowanie ścieżek dostępu



Eksportowanie obiektów oraz scen



Importowanie obiektów z innych programów



Korzystanie z dodatkowych narzędzi do zarządzania plikami



Odczytywanie informacji dotyczących scen zapisanych w plikach

Złożone sceny mogą być zapisane w setkach plików i zgubienie chociaż jednego z nich będzie miało wpływ na ostateczny rezultat. Umiejętność zarządzania plikami ma więc niebagatelne znaczenie. W tym rozdziale skupimy się na pracy z plikami, które zawierać będą wszystko, z czym pracujemy, czyli obiekty, tekstury, tła itp. Pliki umożliwiają przenoszenie fragmentów sceny zarówno do Maksa, jak i z niego. Możliwa jest także wymiana (import i eksport) plików z innymi programami. W tym rozdziale zajmiemy się także najważniejszą funkcją, jaką niewątpliwie jest polecenie Save (zapisz). Zalecam częste jego używanie, bo tylko w ten sposób można uchronić się przed niespodziewaną utratą rezultatów swojej pracy.

Praca z plikami zawierającymi sceny Spośród wszystkich typów i formatów plików prawdopodobnie najczęściej będziesz miał do czynienia z formatem o nazwie 3ds max, w którym Max zapisuje sceny. Pliki w tym formacie mają rozszerzenie .max. Można w nich zapisać aktualny stan pracy i odtworzyć

134

Część I  Rozpoczynanie pracy z programem 3ds Max

go później. Max obsługuje także pliki z rozszerzeniem .chr używane do zapisywania animowanych postaci.

Posługiwanie się przyciskiem aplikacji Wszystkie polecenia związane z obsługą plików są dostępne po kliknięciu przycisku z logo programu 3ds Max w lewym górnym rogu interfejsu. Jest to przycisk aplikacji (application button). Ukryte pod nim menu (menu aplikacji), pokazane na rysunku 3.1, wyświetla polecenia zarówno w formie nazw, jak i ikon. Niektóre z nich są powtórzone na pasku szybkiego dostępu umieszczonym obok przycisku aplikacji. Rysunek 3.1. Menu przycisku aplikacji zawiera wszystkie polecenia związane z obsługą plików

Prawą stronę menu przycisku aplikacji zajmuje lista ostatnio otwieranych plików. Lista ma ograniczoną długość i najstarsze pliki są z niej usuwane, ale jeśli chcemy jakiś plik zachować na dłużej, możemy zapobiec jego usunięciu przez kliknięcie ikony w kształcie pinezki widocznej na prawo od nazwy pliku. Przycisk znajdujący się nad listą plików pozwala zmieniać rozmiary wyświetlanych ikon. Dostępne opcje to: Small Icons (małe ikony), Large Icons (duże ikony), Small Images (małe obrazy) i Large Images (duże obrazy). Po wybraniu opcji Small Images lub Large Images wyświetlane są miniatury przedstawiające zawartość poszczególnych plików.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

135

Na prawo od przycisku aplikacji znajduje się pasek szybkiego dostępu pokazany na rysunku 3.2. Zawiera on ikony następujących poleceń: New (nowy), Open (otwórz), Save (zapisz), Undo (cofnij), Redo (przywróć) i Set Project Folder (ustal folder projektu). Niewielkie strzałki na prawo od przycisków Undo i Redo reprezentują listy buforowanych poleceń. Wybranie jednego z tych poleceń spowoduje cofnięcie lub przywrócenie wszystkich pośrednich. Kliknięcie małej strzałki na prawym końcu paska rozwija menu z opcjami ukrywania poszczególnych ikon. Są tam również polecenia ukrycia całego paska (Hide Menu Bar) i przeniesienia go pod wstążkę. Rysunek 3.2. Pasek szybkiego dostępu ułatwia korzystanie z poleceń otwierania i zapisywania plików, a także cofania i przywracania operacji edycyjnych

Ekran powitalny Gdy pierwszy raz uruchomisz Maksa, zobaczysz najpierw ekran powitalny pokazany na rysunku 3.3. Udostępnia on filmy szkoleniowe (Essential Skill Movies) ułatwiające poznawanie Maksa. Są tam również przyciski służące do tworzenia nowych scen, otwierania istniejących oraz wczytywania ostatnio używanych plików. Rysunek 3.3. Ekran powitalny zawiera przyciski służące do otwierania plików i tworzenia nowych scen

Możliwość tworzenia nowej sceny i otwierania plików za pośrednictwem ekranu powitalnego jest nowością w 3ds Max 2012.

Jeśli wyłączysz opcję Show this Welcome Screen at Startup, ekran powitalny nie będzie wyświetlany przy następnych uruchomieniach Maksa, ale w każdej chwili możesz go wyświetlić, wybierając polecenie Help/Essential Skills Movies.

136

Część I  Rozpoczynanie pracy z programem 3ds Max

Tworzenie nowej sceny Podczas uruchamiania Max tworzy nową scenę. Również później możesz utworzyć nową scenę, klikając na pasku szybkiego dostępu przycisk New Scene lub wybierając z menu aplikacji polecenie New (Ctrl+N). W Maksie nie można otworzyć kilku scen jednocześnie, ale przy dostatecznej ilości RAM-u możesz to ograniczenie ominąć, uruchamiając kilka kopii Maksa i otwierając w każdej nich inną scenę. Jeśli zdecydujesz się na utworzenie nowej sceny, to ta, nad którą pracowałeś do tej pory, zostanie usunięta, ale Max umożliwia zachowanie obiektów i ich hierarchii lub samych obiektów. Wybór trzeciej opcji (New All) będzie dla Maksa sygnałem, że chcesz wszystko tworzyć od początku. W zależności od tego, czy używasz przycisku aplikacji, czy paska szybkiego dostępu, opcje te są dostępne jako podmenu polecenia New lub w odrębnym oknie dialogowym (patrz rysunek 3.4). Rysunek 3.4. Tworząc nową scenę, możesz zachować istniejące już obiekty lub rozpocząć wszystko od nowa

Tworzenie nowej sceny nie powoduje zmian w aktualnych ustawieniach interfejsu — pozostaje dotychczasowa konfiguracja okien widokowych (włącznie z umieszczonym w każdym z nich tłem), pozostają też wszelkie zmiany dokonane w panelu poleceń i pozostałych elementach interfejsu. Aby przywrócić pierwotne ustawienia interfejsu, należy z menu aplikacji wybrać polecenie Reset. Wszystkie ustawienia przyjmą wówczas wartości domyślne.

Zapisywanie plików Pracę z Maksem powinieneś rozpocząć od zapoznania się ze sposobem zapisywania jej efektów. Po dokonaniu zmian w scenie możesz ją zapisać jako plik. Do tego momentu na pasku tytułowym będzie widoczne słowo „Untitled”. Po zapisaniu pliku zostanie ono zastąpione nazwą tegoż pliku. Aby zapisać scenę, kliknij ikonę Save File na pasku szybkiego dostępu lub z menu aplikacji wybierz polecenie Save (Ctrl+S). Jeśli wcześniej scena nie była zapisywana, otwarte zostanie okno dialogowe Save File As (zapisz plik jako) pokazane na rysunku 3.5. To samo okno możesz otworzyć, wybierając z menu aplikacji polecenie Save As (zapisz jako). Jeśli scena była już wcześniej zapisywana, wybranie polecenia Save spowoduje zapisanie jej ponownie, ale bez otwierania okna dialogowego. Zapisywanie plików jest bardzo proste — należy tylko pamiętać, aby robić to dość często. W oknie dialogowym Save File As z listy rozwijanej Save as type (Zapisz jako typ) możesz wybrać jeden z następujących typów pliku: 3ds Max, 3ds Max 2010 lub 3ds Max 2011. Pliki zapisane w formacie odpowiadającym wcześniejszej wersji Maksa nie mogą być otwarte w starszej wersji programu. Pamiętaj, że nowe funkcje zaimplementowane w najnowszej wersji Maksa nie zostaną uwzględnione, jeśli zapiszesz plik w starszym formacie. Oznacza to utratę wszystkich rezultatów uzyskanych za pomocą nowych poleceń i narzędzi.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

137

Rysunek 3.5. Aby zapisać scenę jako plik, użyj okna dialogowego Save File As Począwszy od wersji 2010, pliki Maksa nie są kompatybilne wstecz, co oznacza, że plik .max zapisany przy użyciu aplikacji 3ds Max 2012 nie może być otwarty w żadnej z wcześniejszych wersji. Aby obejść to ograniczenie, należy wyeksportować plik w formacie FBX, a następnie zaimportować go w starszej wersji Maksa.

Polecenie Save As udostępnia opcje zapisu pliku pod nową nazwą (Save As), zapisu kopii pliku (Save Copy As), zapisu obiektów zaznaczonych (Save Selected) i archiwizacji bieżącego pliku (Archive). Okno dialogowe Save File As przechowuje listę kilku ostatnio otwieranych folderów. Dostęp do tych folderów uzyskasz, rozwijając listę History widoczną w górnej części okna. Dostępne tutaj przyciski są standardowe dla tego typu okien w systemie Windows i umożliwiają przejście do ostatnio otwieranego folderu, przejście o jeden poziom wyżej w hierarchii folderów, utworzenie nowego folderu oraz wybranie opcji widoku plików. Jeśli spróbujesz zapisać scenę pod nazwą istniejącego już pliku, Max wyświetli okno dialogowe z żądaniem potwierdzenia takiej decyzji.

Kliknięcie przycisku oznaczonego znakiem plus (po lewej stronie przycisku Zapisz) powoduje automatyczne dodanie numeru na końcu nazwy pliku i zapisanie go. Jeśli np. wybierzesz plik myScene.max i klikniesz przycisk z plusem, zapisany zostanie plik o nazwie myScene01.max. Używaj przycisku automatycznego numerowania i zapisywania plików do tworzenia kolejnych wersji opracowywanej sceny. Jest to najprostszy system zarządzania wersjami. W razie potrzeby ułatwi Ci to powrót do wersji wcześniejszej.

Polecenie Save As/Save Copy As pozwala zapisać kopię bieżącej sceny pod inną nazwą. Nazwa bieżącej sceny pozostaje bez zmiany. Polecenie Save As/Save Selected umożliwia zapisanie zaznaczonego obiektu w oddzielnym pliku. Jeśli utworzysz obiekt, który możesz wykorzystać również w innych scenach, zaznacz go, a następnie wybierz polecenie Save Selected i zapisz plik w katalogu z modelami. Max oferuje także bardzo użyteczną funkcję automatycznego zapisywania kopii bezpieczeństwa. Aby włączyć tę funkcję, zaznacz opcję Enable w sekcji Auto Backup panelu Files okna dialogowego Preference Settings. Dostęp do tego okna uzyskasz, wybierając z głównego menu polecenie Customize/Preferences. O ustawianiu preferencji związanych z obsługą plików będzie jeszcze mowa w dalszej części rozdziału.

138

Część I  Rozpoczynanie pracy z programem 3ds Max

Archiwizowanie plików Archiwizując scenę wraz używanymi w niej mapami bitowymi, zyskujesz pewność, że żaden z plików tworzących tę scenę nie zostanie zagubiony. Może to być szczególnie użyteczne, gdy zechcesz przesłać swój projekt kuzynowi (aby się przed nim popisać) lub swojemu szefowi i nie chciałbyś, aby jakikolwiek plik pomocniczy został pominięty. Z menu aplikacji wybierz polecenie Save As/Archive, aby w jednym skompresowanym archiwum zapisać wszystkie pliki sceny. Domyślnym formatem archiwizacji jest .zip, ale w panelu Files okna dialogowego Preference Settings możesz zmienić ten format na inny. Zapisanie sceny w postaci skompresowanej pozwala zawrzeć w jednym archiwum wszystkie pliki, których zawartość została wykorzystana w danej scenie. W archiwum umieszczany jest również plik tekstowy z listą wszystkich plików wraz z ich ścieżkami dostępu.

Otwieranie plików Po zapisaniu pliku musisz wiedzieć, jak go ponownie otworzyć. Kliknięcie ikony Open na pasku szybkiego dostępu lub wybranie z menu aplikacji polecenia Open (Ctrl+O) powoduje otwarcie okna dialogowego, które wygląda podobnie jak to, które służy do zapisywania plików. Max może otwierać pliki z rozszerzeniami .max i .chr. Może także otwierać pliki zapisane w programie VIZ Render, które mają rozszerzenie .drf. Kliknięcie przycisku z plusem powoduje otwarcie pliku z numerem wersji wyższym o 1 w stosunku do wybranego (zaznaczonego) pliku, o ile taki plik istnieje. Polecenie Open dostępne w menu aplikacji zawiera również opcję otwierania pików w systemie Vault służącym do zarzadzania wersjami zasobów Maksa. Więcej szczegółów na ten temat znajdziesz w dodatku E, „Interfejs Asset Tracking”.

Jeśli podczas otwierania pliku Max nie może zlokalizować wszystkich elementów użytych w scenie (np. map), wówczas wyświetla okno dialogowe Missing External Files, pokazane na rysunku 3.6, w którym możesz wybrać otwarcie sceny bez brakujących plików (przycisk Continue) lub zdecydować się na własnoręczne poszukiwanie tych plików (przycisk Browse). Kliknięcie przycisku Browse powoduje otwarcie okna dialogowego Configure External File Paths, gdzie możesz dodać ścieżkę dostępu do brakujących plików. Podobne okno dialogowe jest otwierane, gdy Max nie może odnaleźć plików niezbędnych do wyrenderowania sceny.

Jeśli otwierasz scenę utworzoną za pomocą wcześniejszej wersji Maksa, wyświetlone zostanie ostrzeżenie o nieaktualnym formacie danych (Obsolete data format found). Ponowne zapisanie takiej sceny może rozwiązać problem, ale wówczas nie będzie możliwe otwarcie takiego pliku we wcześniejszej wersji Maksa. Wyświetlanie ostrzeżenia o nieaktualnym formacie danych można wyłączyć przez usunięcie zaznaczenia opcji Display Obsolete File Message w panelu Files okna dialogowego Preference Settings. Do otwierania plików w Maksie możesz wykorzystać również wiersz poleceń, wpisując w nim nazwę pliku poprzedzoną nazwą pliku uruchomieniowego Maksa, np.: 3dsmax.exe NazwaPliku.max. Zamiast nazwy pliku możesz wpisać przełącznik -L, co spowoduje otwarcie pliku ostatnio otwieranego.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

139

Rysunek 3.6. W oknie Missing External Files wyświetlana jest lista brakujących plików z elementami otwieranej sceny

Ustalanie folderu dla danego projektu Domyślnie Max zapisuje pliki w folderze Scenes, umieszczonym w folderze, w którym program został zainstalowany, i tam też kieruje się w pierwszej kolejności przy otwieraniu plików. Jednak można to zmienić przez określenie innego folderu w dowolnym miejscu dysku twardego lub w sieci. Wówczas wszystkie okna dialogowe związane z zapisywaniem lub otwieraniem plików będą automatycznie kierowane do tego właśnie miejsca. Do ustalania takiego folderu służy ikona Set Project Folder na pasku szybkiego dostępu lub polecenie Manage/Set Project Folder w menu aplikacji. We wskazanym w ten sposób folderze projektu automatycznie umieszczane są podfoldery z niezbędnymi zasobami. W folderze projektu umieszczany jest także plik o nazwie takiej samej jak nazwa folderu i rozszerzeniu .mxp. Jest to zwykły plik tekstowy, który można otworzyć w edytorze tekstu. Przez odpowiednie modyfikowanie jego zawartości można decydować, jakie podfoldery mają być tworzone w folderze projektu. Nazwa folderu projektu jest wyświetlana na pasku tytułowym programu.

Dołączanie i zastępowanie obiektów Jeśli udało Ci się wykonać doskonały rekwizyt dla danej sceny i chciałbyś go wykorzystać w innej scenie, możesz skorzystać z polecenia Merge. Polecenie Import/Merge dostępne w menu aplikacji pozwala umieścić w bieżącej scenie obiekty z innej sceny. Wybranie tego polecenia powoduje otwarcie okna dialogowego, które wygląda dokładnie tak samo jak okno Open File. Jednak po wybraniu sceny i kliknięciu przycisku Open (Otwórz) otwiera się okno dialogowe Merge (dołącz) pokazane na rysunku 3.7. Zawiera ono listę wszystkich obiektów, jakie znajdują się w wybranej scenie. Zestaw dostępnych tutaj opcji umożliwia sortowanie i filtrowanie określonych typów obiektów. Po zaznaczeniu obiektu i kliknięciu przycisku OK wybrany obiekt zostanie umieszczony w bieżącej scenie. Jeśli kiedykolwiek przyjdzie Ci rozstrzygać pojedynek modelatorów, najprawdopodobniej skorzystasz wtedy z polecenia Import/Replace w menu aplikacji. Pojedynek taki polega

140

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 3.7. W oknie dialogowym Merge wyświetlana jest lista wszystkich obiektów z dołączanej sceny

na tym, że dwóch modelatorów dopracowuje szczegóły tego samego modelu, a animator (lub szef) musi wybrać jedną z wersji. Korzystając z polecenia Replace, możesz zamienić dany obiekt na obiekt o takiej samej nazwie z innej sceny. Zamieniane obiekty wybiera się w oknie, które wygląda tak jak to z rysunku 3.7, ale tym razem na liście obiektów widoczne są tylko te, które mają identyczne nazwy w obu scenach. Jeśli takich obiektów nie będzie, wyświetlone zostanie okno ze stosownym ostrzeżeniem. Jeśli pracujesz w zespole, na przykład jako modelator scenerii, możesz umieścić w scenie obiekt zastępczy o nazwie takiej samej, jaką będzie miał model szczegółowy (przykładowo meble). Gdy modele mebli będą już gotowe, zastąpisz nimi ów obiekt, używając polecenia Replace. Rozwiązanie takie umożliwi Ci kontynuowanie pracy nad ogólnym projektem scenerii, mimo że modele szczegółowe nie są jeszcze dopracowane.

Zamykanie programu Jak łatwo się domyślić, przycisk Exit 3ds Max w menu aplikacji służy do zamykania programu, ale daje również szansę na zapisanie efektów pracy. Ten sam skutek daje kliknięcie ikony ze znakiem X w prawym górnym rogu okna programu (jestem przekonany, że o tym już wiedziałeś).

Ustawianie preferencji dotyczących obsługi plików Panel Files okna dialogowego Preference Settings, pokazany na rysunku 3.8, zawiera opcje tworzenia kopii zapasowych (bezpieczeństwa) plików, ich archiwizowania i tworzenia raportów. Okno to możesz otworzyć za pomocą przycisku Options umieszczonego w dolnej części menu aplikacji lub polecenia Customize/Preferences.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

141

Rysunek 3.8. W panelu Files możesz włączyć funkcję automatycznego tworzenia kopii bezpieczeństwa (Auto Backup)

Opcje obsługi plików Panel Files zawiera kilka opcji decydujących o tworzeniu plików i manipulowaniu nimi. Pierwszą jest Convert file paths to UNC (Universal Naming Convention — uniwersalna konwencja nazewnictwa). Włączenie tej opcji powoduje wyświetlanie ścieżek zgodnie z konwencją UNC dla wszystkich plików udostępnianych przy użyciu mapowanych dysków sieciowych. Opcja Convert local file path to Relative powoduje, że Max zapamiętuje położenie używanych plików w odniesieniu do bieżącego folderu. Takie rozwiązanie może być przydatne, gdy wszystkie używane pliki znajdują się w tym samym folderze, ale gdy korzystasz z plików położonych w różnych folderach, nie zapomnij wyłączyć tej opcji. Następna opcja to Backup on Save. Gdy zapisujesz scenę za pomocą polecenia Save (Ctrl+S), istniejący plik zostanie zastąpiony nowym. Włączenie opcji Backup on Save sprawia, że zanim nowy plik zostanie zapisany, plik dotychczasowy będzie skopiowany do folderu Moje dokumenty\3dsmax\autoback jako plik zapasowy (kopia bezpieczeństwa) o nazwie MaxBack.bak. Jeśli zmiany dokonane przed zapisaniem sceny okażą się pomyłką, możesz przywrócić poprzednią wersję, zmieniając nazwę pliku MaxBack.bak na MaxBack. max i otwierając go w Maksie. Innym sposobem zabezpieczenia się przed zastąpieniem istniejącego pliku jego nową wersją może być zaznaczenie opcji Increment on Save. Zawsze wtedy, gdy plik będzie zapisywany, do jego nazwy dodany zostanie kolejny numer wersji (tak samo jak po kliknięciu przycisku ze znakiem plus w oknie Save As). Jest to prosta metoda zachowywania kolejnych wersji sceny. Dzięki temu zawsze możesz wrócić do wcześniejszego pliku, jeśli np. klient zmieni zdanie. Gdy opcja ta jest włączona, plik MaxBack.bak nie jest używany. Zaznaczenie opcji Compress on Save powoduje zapisywanie pliku w postaci skompresowanej. Kompresja zmniejsza rozmiar pliku, ale wydłuża czas jego otwierania. Gdy dysponujesz małą ilością miejsca na dysku twardym, możesz tę opcję włączyć.

142

Część I  Rozpoczynanie pracy z programem 3ds Max Innym powodem do włączenia opcji Compress on Save może być stosowanie renderingu sieciowego. Pliki o dużych rozmiarach (powyżej 100 MB) są obsługiwane przez program zarządzający takim renderingiem szybciej, jeśli zostaną poddane kompresji.

Opcja Save Viewport Thumbnail Image zapisuje wraz z plikiem miniaturkę (o wymiarach 64×64 piksele) aktywnego okna widokowego. Miniaturka ta jest potem wyświetlana w oknie dialogowym Open File podczas otwierania pliku, a także może być wyświetlona w oknie Eksploratora Windows XP, co zostało pokazane na rysunku 3.9. Zapisywanie takiej miniaturki zwiększa rozmiar pliku o ok. 9 kB.

Rysunek 3.9. Miniatury plików Maksa wyświetlane w oknie Eksploratora Windows XP Miniaturki są wyświetlane w Eksploratorze systemu Windows XP, ale nie w systemach Vista i Windows 7.

Opcja Save Viewport Thumbnail Image jest jedną z tych, które warto włączyć. Miniaturki są bardzo pomocne przy poszukiwaniu właściwego pliku — nie ma nic bardziej frustrującego niż widok samej nazwy pliku bez podglądu jego zawartości.

Max oferuje również możliwość zapisywania schematycznego widoku sceny — opcja Save Schematic View. Max może wygenerować taki widok na podstawie istniejącego pliku, jeśli jednak często korzystasz z widoku schematycznego, zapisywanie go wraz ze sceną może przyspieszyć pracę. Pomocne może być również zapisywanie pewnych informacji na temat pliku, za co odpowiada opcja Save File Properties. Mimo że te dodatkowe informacje zwiększają rozmiar pliku, warto je zapisywać, bo ułatwiają późniejsze jego odszukanie.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

143

Więcej informacji na temat schematycznego widoku sceny znajdziesz w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Podczas otwierania sceny utworzonej we wcześniejszej wersji Maksa wyświetlane jest okno dialogowe z ostrzeżeniem mówiącym, że napotkany został nieaktualny format danych i należy ten plik ponownie zapisać (Obsolete data format found — Please resave file). Jeśli nie chcesz, aby okno było wyświetlane, wyłącz opcję Display Obsolete File Message. Opcja ta zostanie wyłączona również wtedy, gdy w oknie z ostrzeżeniem zaznaczysz opcję Don’t display this message. Jeśli włączysz opcję Reload textures on change, każda zmiana tekstury będzie oznaczała ponowne jej wczytanie. Może to powodować spowolnienie pracy programu, ale zapewnia automatyczne uaktualnianie zastosowanych w scenie tekstur. W polu Recent Files in File Menu możesz określić liczbę ostatnio otwieranych plików, które będą wyświetlane w menu aplikacji pod nagłówkiem Recent Documents. Liczba ta nie może być większa niż 50.

Opcje tworzenia zapasowych kopii plików Oferowana przez Maksa funkcja automatycznego tworzenia kopii zapasowych (Auto Backup) może uchronić Cię przed koszmarem, jakim niewątpliwie jest utrata efektów wielogodzinnej pracy z powodu awarii systemu. Po włączeniu tej opcji możesz ustalić liczbę przechowywanych kopii oraz określić, jak często mają być tworzone. Kopie zapasowe są zapisywane w folderze określonym w oknie dialogowym Configure User Paths. Domyślnie jest to 3dsmax\autoback. Możesz także określić nazwę, z jaką kopie będą zapisywane. Nie zapominaj o częstym zapisywaniu aktualnego stanu sceny, mimo iż włączyłeś opcję Auto Backup.

Podam teraz opis działania tej funkcji. Jeśli ustawiłeś liczbę zapasowych plików na 2, przedział czasu między zapisywaniem kolejnych kopii na 5 minut, a nazwą ma być Kopia Zapasowa, to po pięciu minutach bieżąca scena zostanie zapisana w pliku KopiaZapasowa1.max. Po upływie następnych pięciu minut zapisany zostanie plik KopiaZapasowa2, a po kolejnych pięciu minutach plik KopiaZapasowa1 zostanie zastąpiony nowym, zawierającym ostatnie zmiany. Jeżeli już przydarzy Ci się to nieszczęście, że nagle ktoś wyłączy prąd lub dziecko przypadkowo wyciągnie wtyczkę z gniazdka, będziesz mógł odzyskać efekty swojej pracy, odszukasz bowiem plik zapasowy z odpowiednią datą i otworzysz go ponownie. Taki plik będzie zawierał wszystkie zmiany, jakie wprowadziłeś do swojego projektu przed zapisaniem ostatniej kopii zapasowej. Gorąco polecam włączenie opcji Auto Backup — już niejednokrotnie uratowała mnie z opresji. Radzę również określać inne nazwy kopii dla różnych projektów. Dzięki temu unikniesz przypadkowego zastąpienia kopii bezpieczeństwa plikiem z innego projektu.

144

Część I  Rozpoczynanie pracy z programem 3ds Max

Ćwiczenie: Ustawianie opcji zapisywania kopii zapasowych Teraz, kiedy już masz świadomość znaczenia funkcji automatycznego zapisywania kopii zapasowych, prześledźmy dokładnie procedurę ustawiania opcji tej funkcji. Aby włączyć i skonfigurować funkcję automatycznego tworzenia kopii zapasowych, wykonaj następujące czynności. 1. Wybierz polecenie Customize/Preferences i po otwarciu okna Preference Settings kliknij w nim zakładkę panelu Files. 2. W sekcji Auto Backup tego panelu zaznacz opcję Enable. W ten sposób spowodujesz włączenie funkcji automatycznego tworzenia kopii zapasowych. 3. W polu Number of Autobak files ustaw liczbę przechowywanych kopii równą 5. Jeśli chcesz zachować kontrolę nad kolejnymi wersjami opracowywanych scen, nie zwiększaj liczby przechowywanych kopii zapasowych, lecz włącz opcję Increment on Save.

4. W polu Backup Interval ustaw przedział czasu, po jakim powinna być zapisywana kolejna kopia zapasowa. Dobrą praktyką jest ustawienie przedziału czasu obejmującego maksymalny zakres pracy, jaki możesz chcieć odtworzyć. Ustawiam tutaj 15 minut. Dodatkowo możesz określić nową nazwę dla plików zapasowych. 5. Kopie zapasowe są zapisywane w folderze określonym przez ścieżkę, która w oknie Configure User Paths jest widoczna pod nazwą AutoBackup. Aby otworzyć to okno, wybierz polecenie Customize/Configure User Paths.

Opcje zarządzania raportami W panelu Files możesz również ustawić opcje zarządzania raportami. Raporty zawierają wiadomości o występujących błędach i ostrzeżeniach, ogólne informacje o poleceniach oraz wszystkie informacje generowane w procesie debugowania. Spośród dostępnych tutaj opcji możesz wybrać przechowywanie raportów bez ich usuwania, usuwanie ich po upływie określonej liczby dni lub przechowywanie tylko takiej liczby ostatnich raportów, przy których rozmiar pliku nie przekroczy zadanej wartości. Jeśli Twój system pracuje niepewnie, możesz włączyć opcję generowania raportów o błędach (error logs), aby uzyskać dane o występujących problemach. Raporty odgrywają także dużą rolę podczas tworzenia skryptów lub modułów dodatkowych. W tym miejscu możesz określić, jakie informacje będą zapisywane w raporcie. Zaznaczenie opcji Errors spowoduje umieszczenie w raporcie wzmianek o wszystkich zaistniałych błędach. Opcja Warnings odpowiada za umieszenie informacji o ostrzeżeniach, Info — za ogólne informacje, a Debug — za informacje generowane podczas debugowania skryptów lub modułów dodatkowych. Każdy wpis w raporcie zawiera datę utworzenia i trzyliterowy kod określający typ informacji, przy czym DBG oznacza informację generowaną podczas debugowania, INF — informację ogólną, WRN — informację o ostrzeżeniach, a ERR — dane o błędach. Raporty zapisywane są w plikach o nazwie Max.log umieszczanych w folderze 3dsMax 2009\ network.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

145

Konfigurowanie ścieżek dostępu Kiedy spacerujesz w parku, często stajesz przed wyborem konkretnej ścieżki. Jedna może prowadzić np. do jeziora, a inna — do placu zabaw. Aby nie błądzić, powinieneś wiedzieć, dokąd prowadzi każda ścieżka. Ścieżki, z jakimi spotykamy się Maksie, prowadzą albo — inaczej — wskazują różne zasoby zarówno lokalne, jak i rozmieszczone w sieci. Wszystkie ścieżki mogą być konfigurowane przy użyciu dwóch okien dialogowych, Configure User Paths i Configure System Paths, otwieranych za pomocą odpowiednich poleceń z menu Customize. Okno dialogowe Configure User Paths umożliwia definiowanie ścieżek do zasobów, takich jak pliki ze scenami, animacjami czy teksturami. Okno Configure System Paths służy do wskazywania miejsc, w których system ma szukać plików używanych przez Max, na przykład plików z czcionkami, skryptami i dodatkowymi modułami.

Konfigurowanie ścieżek użytkownika Okno dialogowe Configure User Paths, pokazane na rysunku 3.10, zawiera ścieżki do wszystkich niezbędnych zasobów. Zostały one rozmieszczone na trzech panelach: File I/O (pliki wejściowe i wyjściowe), External Files (pliki zewnętrzne) i XRefs (odnośniki zewnętrzne). Rysunek 3.10. Okno dialogowe Configure User Paths określa, gdzie należy szukać różnych zasobów

Najważniejszym z tych paneli jest File I/O. U samej góry wyświetlana jest ścieżka do folderu projektu (Project Folder), którą można zmienić zarówno tutaj, jak i za pomocą polecenia Manage/Set Project Folder w menu aplikacji. Niżej znajduje się lista ze ścieżkami do zasobów, takich jak animacje (Animations), archiwa (Archives), kopie bezpieczeństwa (Auto Backup), obrazy zastępcze (Bitmap Proxies), pliki pobrane z internetu (Downloads), pliki wyeksportowane (Export), wyrażenia matematyczne wykorzystywane przez kontrolery (Expressions), obrazy (Images), pliki zaimportowane (Import), materiały (Materials), scena otwierana przy uruchamianiu programu (Max Start), dane fotometryczne (Photometric), podglądy renderingów (Previews), zasoby używane podczas renderowania (Render Assets), wyjście renderingu (Render Output), predefiniowane ustawienia renderingu (Render Presets), sceny (Scenes), dźwięki (Sounds) i kolejki Video Post (Video Post).

146

Część I  Rozpoczynanie pracy z programem 3ds Max

Po zaznaczeniu którejkolwiek z tych pozycji możesz kliknąć przycisk Modify i wskazać inne miejsce przechowywania danych zasobów. Domyślnie wszystkie ścieżki prowadzą do folderów zawartych w folderze projektu, ale nic nie stoi na przeszkodzie, by to zmienić. Za pomocą przycisków Make Relative i Make Absolute można sprawić, że wybrana ścieżka będzie wskazywać położenie zasobów względem folderu projektu lub względem całego systemu plików dostępnych dla komputera. Zawsze umieszczam wytworzone przeze mnie pliki w innym folderze niż folder instalacyjny Maksa. W ten sposób nie narażam się na ryzyko utraty tych plików podczas instalowania nowszych wersji programu lub jego uaktualnień. Aby to uzyskać, definiuję folder projektu poza folderem, w którym został zainstalowany Max.

W panelach External Files i XRefs możesz dodawać i usuwać ścieżki określające, gdzie Max będzie poszukiwał określonych plików. Podczas wyszukiwania zasobów, takich jak moduły dodatkowe, przeszukiwane są wszystkie ścieżki, ale w oknie dialogowym służącym do wybierania plików otwierany jest zawsze folder wskazywany przez pierwszą ścieżkę. Kolejność ścieżek możesz zmienić za pomocą przycisków Move Up (przesuń w górę) i Move Down (przesuń w dół). Polecenie Customize/Revert to Startup UI Layout nie usuwa zmian wprowadzonych w konfiguracji ścieżek dostępu.

U dołu okna dialogowego Configure User Paths znajdują się przyciski Save, Load i Merge umożliwiające odpowiednio zapisywanie, wczytywanie i łączenie plików zawierających konfiguracje ścieżek. Pliki takie są zapisywane w folderze projektu i otrzymują rozszerzenie .mxp. Udostępnianie folderu projektu pozostałym członkom zespołu umożliwia ujednolicenie dostępu do zasobów wykorzystywanych podczas pracy nad danym projektem.

Konfigurowanie ścieżek systemowych Domyślne ścieżki do zasobów systemowych są wyświetlane w oknie dialogowym Configure System Paths, pokazanym na rysunku 3.11. Podczas instalowania Maksa są one automatycznie konfigurowane tak, aby wskazywały odpowiednie podfoldery głównego folderu, w którym program jest instalowany. Aby taką ścieżkę zmodyfikować, należy ją zaznaczyć i kliknąć przycisk Modify, co powoduje otwarcie okna dialogowego umożliwiającego wskazanie nowego folderu. Okno dialogowe Configure System Paths zawiera również panel 3rd Party Plug-Ins, w którym można zdefiniować ścieżki wskazujące Maksowi, gdzie powinien szukać dodatkowych modułów.

Importowanie i eksportowanie Z pewnością zauważyłeś, że Max nie jest jedynym graczem na rynku programów do tworzenia grafiki 3D. Do wymiany plików z innymi programami służą polecenia importu i eksportu. Znajdziesz je w menu aplikacji.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

147

Rysunek 3.11. Okno dialogowe Configure System Paths określa dodatkowe ścieżki

Importowanie plików W menu aplikacji wybierz polecenie Import/Import, aby otworzyć okno dialogowe Select File to Import. Jest to typowe, systemowe okno służące do wykonywania operacji na plikach. Prawdziwa moc funkcji importowania tkwi w oknach, które służą do ustawiania opcji importu poszczególnych formatów. Dla różnych formatów okna te zawierają odmienne zestawy opcji. Max może importować pliki w wielu rozmaitych formatach. Wszystkie akceptowalne pliki z danego folderu są automatycznie wyświetlane w oknie dialogowym, ale możesz również sprawić, że widoczne będą tylko te, które mają wskazany przez Ciebie format. Format ten musisz wskazać na liście Files of Type (Pliki Typu). Zawiera ona następujące pozycje: 

Autodesk (FBX),



3D Studio Mesh, Projects i Shapes (3DS, PRJ, SHP),



Adobe Illustrator (AI),



Autodesk Alias/Showcase (APF, WIRE),



Collada (DAE),



LandXML/DEM/DDF,



AutoCAD i Legacy AutoCAD (DWG, DXF),



Flight Studio OpenFlight (FLT),



Motion Analysis (HTR, TRC),



Initial Graphics Exchange Standard (IGE, IGS, IGES),



Autodesk Inventor (IPT, IAM),



Lightscape (LS, VW, LP),



StereoLitho (STL),



OBJ Material and Object (MTL, OBJ),

148

Część I  Rozpoczynanie pracy z programem 3ds Max 

ACIS SAT (SAT),



Google SketchUp (SKP),



StereoLitho (STL),



VIZ Material XML Import (XML). Możliwość importu i wykorzystywanie plików w formacie Wire jest nowością w 3ds Max 2012. O importowaniu i eksportowaniu plików w formacie SAT dowiesz się więcej podczas lektury rozdziału 28., „Praca z bryłami, czyli obiektami pełnymi”. Każdy format jest stosowany w odniesieniu do innego typu danych. Przykładowo pliki wygenerowane za pomocą programu Adobe Illustrator zawierają dane dwuwymiarowe, a pliki Motion Analysis przechowują dane o zarejestrowanych ruchach.

Preferencje importu Panel Files okna dialogowego Preference Settings zawiera jedną opcję odnoszącą się do importu plików — Zoom Extents on Import. Jeśli podczas importowania sceny opcja ta będzie włączona, okna widokowe zostaną tak dopasowane, aby wszystkie obiekty importowane były widoczne w każdym z nich. Obiekty importowane często są skalowane do tak małych rozmiarów, że stają się wręcz niewidoczne. Włączenie opcji Zoom Extents on Import ułatwia zlokalizowanie takich obiektów.

Eksportowanie do obsługiwanych formatów Możesz eksportować obiekty Maksa do różnych formatów, aby je wykorzystać w innych programach. Do tego celu służy polecenie Export/Export w menu aplikacji. Możesz użyć także poleceń Export Selected (jest dostępne tylko wtedy, gdy jakikolwiek obiekt jest zaznaczony) i Export to DWF. Max może eksportować obiekty do następujących formatów: 

Autodesk (FBX),



3D Studio (3DS),



Adobe Illustrator (AI),



ASCII Scene Export (ASE),



AutoCAD (DWG, DXF),



Collada (DAE),



Initial Graphics Exchange Standard (IGS),



Flight Studio OpenFlight (FLT),



JSR-184 (M3G),



Lightscape Material, Blocks, Parameters, Layers, Preparations i Views (ATR, BLK, DF, LAY, LP, VW),

Rozdział 3.  Praca z plikami, importowanie i eksportowanie 

Motion Analysis (HTR),



Publish to DWF (DWF),



OBJ Material and Object (OBJ),



ACIS SAT (SAT),



StereoLithography (STL),



VRML97 (WRL).

149

Wymiana plików z programami Softimage, MotionBuilder i Mudbox 3ds Max jest oferowany zarówno w formie aplikacji samodzielnej, jak i składnika większych pakietów oprogramowania firmy Autodesk. Pakiety te zwykle zawierają takie programy jak Softimage, MotionBuilder i Mudbox i bez problemu można przenieść do nich bieżącą scenę z Maksa za pomocą polecenia Send To (wyślij do) dostępnego w menu aplikacji. Dla każdego z tych programów możesz wybrać opcję wysyłania sceny jako nowej (Send as New Scene), jako uaktualnienia (Update Current Scene) lub jako dodatku do istniejącej sceny (Add to Current Scene), albo zaznaczenia obiektów, które zostały już wysłane (Select Previously Sent Objects). Możliwość przenoszenia bieżącej sceny z Maksa do programów Softimage, MotionBuilder i Mudbox jest nowością w 3ds Max 2012.

Wymiana plików z programem Maya Maya jest siostrą Maksa, więc czasami może zajść konieczność przeniesienia obiektów lub całych scen z jednego programu do drugiego. Najlepszym formatem do przenoszenia plików między tymi programami jest FBX. Opracowany w firmie Autodesk umożliwia bezproblemową wymianę danych między obiema aplikacjami. Format FBX można wykorzystać również podczas wymiany plików ze starszymi wersjami Maksa.

Format FBX obsługuje wszystkie elementy sceny, a także animacje, systemy kości, cele morfingu i pliki buforowe animacji. Oferuje również opcję osadzania tekstur w eksportowanym pliku lub przekształcania ich w format TIF. Inne ustawienia eksportu i importu dotyczą jednostek systemowych oraz orientacji osi globalnego układu współrzędnych. Istnieje także możliwość filtrowania określonych obiektów. Okno dialogowe z ustawieniami eksportu w formacie FBX jest pokazane na rysunku 3.12. Okna dialogowe importu i eksportu w formacie FBX pozwalają na zapisywanie i odczytywanie ustawień konfiguracyjnych dla tych procesów. Jest to bardzo wygodne, bo gdy już raz ustalisz właściwą konfigurację przenoszenia obiektów do Maksa i z niego, możesz ją potem wielokrotnie wykorzystywać. Okna zawierają również przyciski Web updates służące do pobierania uaktualnień formatu FBX.

150

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 3.12. Okno dialogowe FBX Export oferuje wygodny sposób wymiany plików między programami Max, Maya i MotionBuilder

Podczas eksportowania sceny z przeznaczeniem do wykorzystania w programie Maya nie zapomnij ustawić opcji Up Axis (kierunek do góry) na Y-up (kierunek do góry zgodny z osią Y).

Podczas eksportu do formatu FBX dostępna jest opcja Type (typ), która umożliwia wybór typu pliku wynikowego. Może to być plik tekstowy (ASCII) lub binarny (Binary). Pliki binarne są zazwyczaj mniejsze, ale pliki tekstowe można modyfikować za pomocą edytorów tekstu. Format FBX jest ciągle udoskonalany, ale w oknie FBX Export możesz wybrać, z której wersji formatu chcesz skorzystać. Jeśli plik wynikowy ma być wykorzystywany w starszych wersjach Maksa, nie zapomnij wybrać odpowiedniej pozycji z listy FBX Version.

Stosowanie formatu OBJ Format OBJ ma charakter tekstowy i został opracowany na użytek popularnego kiedyś pakietu do grafiki trójwymiarowej o nazwie Wavefront. Format ten jest często stosowany przy wymianie danych między rozmaitymi programami, włącznie z Poserem i ZBrush. Jedną z cech formatu OBJ jest to, że oddziela on dane dotyczące modelu od danych związanych z teksturami i umieszcza je w dwóch odrębnych plikach. Plik OBJ zawiera dane geometryczne, a plik MTL — tekstury. W poprzednich wersjach Maksa pliki te musiały być importowane oddzielnie, ale obecnie są importowane łącznie. Za obsługę formatu OBJ odpowiada moduł opracowany przez GuruWare. Importowanie i eksportowanie w formacie OBJ odbywa się teraz płynniej, a przypisywanie obiektowi materiałów i tekstur zostało zautomatyzowane. Okno dialogowe importu

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

151

w tym formacie jest pokazane na rysunku 3.13. Zauważ, że wszystkie obiekty zawarte w pliku są identyfikowane i wyświetlane na liście. Możliwe jest więc importowanie tylko wybranych obiektów. Możliwe jest także sterowanie obsługą normalnych, konwersją jednostek i importem materiałów. Czerwone i zielone kropki przy niektórych opcjach informują, czy dana opcja występuje w importowanym pliku, czy nie. Kropkami czerwonymi oznaczane są opcje nieistniejące w pliku, a zielonymi te, które istnieją. Rysunek 3.13. Okno dialogowe OBJ Import to jeszcze jedna wygodna możliwość pobierania plików z innych aplikacji

Dużo ustawień zawiera też okno dialogowe eksportu sceny do formatu OBJ (patrz rysunek 3.14). Okno dialogowe OBJ Export zawiera predefiniowane ustawienia (lista rozwijana Preset) dla większości popularnych programów do tworzenia grafiki trójwymiarowej. Znajdziemy tu ustawienia dla takich aplikacji jak Amapi Pro, Blender, Bryce, Carrara, Cinema-4D, DAZ Studio, Deep Paint, Hexagon, Lightwave, Maya, Modo, Motion Builder, Muldbox, Poser, Realflow, Rhino, Silo, Softimage XSI, UV Mapper, VUE, Worldbuilder i ZBrush.

152

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 3.14. Okno dialogowe OBJ Export Options umożliwia przenoszenie scen z Maksa do innych aplikacji

Kliknięcie przycisku Map-Export otwiera kolejne okno, w którym można wskazać folder z eksportowanymi teksturami oraz włączyć automatyczne nadawanie mapom określonych wymiarów i formatu. Dla każdego formatu można ustalić głębię bitową (Bits-Per-Pixel), a także inne parametry kompresji. Jeśli w oknie eksportu klikniesz przycisk Presets, otworzy się okno z opcjami eksportu do poszczególnych aplikacji (patrz rysunek 3.15). Opcje są zebrane w tabeli i każdą z nich można łatwo zmienić.

Rysunek 3.15. Okno dialogowe Edit OBJ-Export Presets umożliwia szybkie modyfikowanie ustawień eksportu do poszczególnych aplikacji

Eksportowanie do formatu JSR-184 (M3G) Zapisanie sceny w formacie JSR-184 umożliwia oglądanie jej na urządzeniach przenośnych z zainstalowanym standardowym interfejsem Java 2 Micro Edition. Może to być np. telefon komórkowy lub palmtop. Przenośne urządzenia bezprzewodowe mają mocno ograniczoną wydajność i przepustowość, dlatego okno dialogowe JSR-184 Export, pokazane na rysunku 3.16, oferuje szereg opcji umożliwiających optymalizację eksportowanej sceny. W oknie tym wyświetlane są:

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

153

Rysunek 3.16. Okno dialogowe JSR-184 Export pozwala wskazać zasoby, które mają być eksportowane

hierarchia sceny Maksa, hierarchia sceny w formacie JSR-184 oraz parametry zaznaczonego obiektu. Przyciski umieszczone w jego górnej części umożliwiają modyfikowanie eksportowanej hierarchii. Aby scena mogła zostać wyeksportowana, musi zawierać kamerę, a Ty musisz określić w oknie JSR-184 Export kamerę aktywną. Gdy zaznaczona jest mapa materiału w hierarchii JSR-184, dostępne staje się narzędzie Texture Tool. Kliknięcie tego przycisku otwiera okno dialogowe Texture Tool (patrz rysunek 3.17), w którym możesz precyzyjnie ustalić rozmiar i format eksportowanej mapy. Rysunek 3.17. Okno dialogowe Texture Tool pozwala precyzyjnie określić rozmiar mapy tekstury, która ma być wyświetlana na urządzeniach przenośnych

154

Część I  Rozpoczynanie pracy z programem 3ds Max

Wraz z Maksem domyślnie instalowany jest odtwarzacz plików M3G, który możesz wykorzystać do obejrzenia wyeksportowanej sceny. Aby uruchomić ten odtwarzacz, z systemowego paska zadań wybierz Start/Wszystkie programy/Autodesk/Autodesk 3ds Max 2012/ JSR Viewer. Do jego działania wymagane jest zainstalowanie środowiska uruchomieniowego Java (Java Runtime Environment), które jest dostępne na dysku instalacyjnym Maksa. Aplikacja JSR Viewer została napisana w języku Java. Jeśli masz problemy z tym programem, spróbuj zainstalować najnowszą wersję Javy z płyty instalacyjnej Maksa.

Eksportowanie do formatu DWF Do prezentowania teksturowanych modeli przy użyciu internetu najlepiej nadaje się format Design Web Format (DWF). Tworzy on stosunkowo niewielkie pliki, które można z łatwością dołączyć do e-maila. Aby wyeksportować bieżącą scenę do tego formatu, wybierz z menu aplikacji polecenie Export/Export to DWF. Otwiera ono okno dialogowe, pokazane na rysunku 3.18, z opcjami grupowania według obiektów (Group by Object) lub według warstw (Group by Layer). W oknie można także wybrać, czy mają być publikowane właściwości obiektu (opcja Publish Object Properties), materiały (Publish Materials), tylko zaznaczone obiekty (Publish Selected Object Only) i obiekty ukryte Publish Hidden Objects. Jest również opcja skalowania bitmap (Rescale Bitmaps) do rozmiarów podanych w pikselach. Rysunek 3.18. Opcje eksportu do formatu DWF ustawiasz w oknie DWF Publish Options

Zawartość plików zapisanych w tym formacie można oglądać za pomocą programu Autodesk DWF Viever, pokazanego na rysunku 3.19. Można go pobrać nieodpłatnie z witryny internetowej firmy Autodesk. Korzystając z tej przeglądarki, możesz oglądać modele nawet wtedy, gdy nie masz zainstalowanego Maksa. Jeśli chcesz obejrzeć wyeksportowany plik, po prostu zaznacz opcję Show DWF in Viewer w oknie dialogowym DWF Publish Options. Przeglądarka zawiera elementy sterujące służące do przekształcania obiektu, zmiany cieniowania, wybierania widoków i drukowania aktualnego widoku.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

155

Rysunek 3.19. Program Autodesk DWF Viewer jest używany do oglądania plików zapisanych w formacie DWF

Dodatkowe narzędzia eksportujące Max, oprócz opisanych poleceń z menu File, zawiera jeszcze kilka dodatkowych narzędzi służących do eksportowania określonych informacji: Lighting Data Export i Material XML Exporter. Dostęp do nich uzyskasz, klikając przycisk More w panelu Utilities i wybierając je z listy narzędzi dodatkowych.

Narzędzie Lighting Data Export Narzędzie Lighting Data Export służy do eksportowania danych dotyczących luminancji i natężenia oświetlenia sceny. Eksportowany plik może być zapisany w formacie PIC lub TIF, co określasz w rolecie 2D Lighting Data Exporter. W tej samej rolecie możesz ustalić także szerokość (Width) i wysokość (Height) eksportowanego obrazu. Aby skorzystać z narzędzia Lighting Data Export, musisz najpierw ustawić ekspozycję sceny. Więcej informacji na ten temat znajdziesz w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Narzędzie Material XML Exporter Narzędzie Material XML Exporter eksportuje wybrany materiał do formatu XML. Materiały zapisane w tym formacie możesz łatwo wymieniać z innymi użytkownikami. Po wybraniu tego narzędzia roleta Parameters udostępnia cztery sposoby wskazania materiału, który ma być wyeksportowany. W tym celu możesz posłużyć się przeglądarką Material/Map Browser, listą Object List, wskazać odpowiedni obiekt w scenie (Pick Object in Scene) albo wybrać wszystkie obiekty (All Objects in Scene).

156

Część I  Rozpoczynanie pracy z programem 3ds Max

Opisywane narzędzie oferuje również różne opcje eksportu. Możesz wybrać klasyczny format XML (Native XML(vizML)), format Autodesk Tool Catalog (Tool Catalog) lub zastosować własne szablony XSLT (Specify XSLT). Pozostałe opcje umożliwiają wyeksportowanie materiału wraz z miniaturką i modyfikatorami mapowania.

Narzędzie Panorama Exporter Narzędzie Panorama Exporter eksportuje scenę do formatu umożliwiającego uzyskanie kąta widzenia wynoszącego aż 360 stopni. Za pomocą tego narzędzia uzyskasz dostęp do parametrów rederowania i do przeglądarki, w której możesz obejrzeć wyrenderowaną panoramę sceny. Więcej informacji na temat tworzenia scen panoramicznych znajdziesz w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Ćwiczenie: Importowanie grafiki wektorowej wykonanej w Illustratorze Zanim przejdziemy do omówienia innych zagadnień, zobaczmy konkretny przykład importowania pliku. Logo w dużych firmach najczęściej projektują profesjonaliści, którzy używają wyrafinowanych programów graficznych, takich jak Adobe Illustrator. Jeśli zechcesz wykorzystać takie logo w Maksie, niezbędna okaże się wiedza na temat importowania plików utworzonych w innych programach. Podczas importowania plików z grafiką wektorową zostaną zaimportowane tylko linie. Max nie potrafi zaimportować wypełnień, przenikania i innych efektów typowych dla grafiki wektorowej. Wszystkie linie są automatycznie przekształcane na krzywe Béziera.

W Maksie możesz wprawdzie rysować i edytować splajny, jednak w porównaniu z tym, co oferuje Adobe Illustrator w zakresie grafiki wektorowej, możliwości omawianego tu programu są raczej skromne. Jeśli dysponujesz plikiem zapisanym w formacie Illustratora (AI), możesz go zaimportować do Maksa. Aby zaimportować plik utworzony w Illustratorze, wykonaj następujące czynności. 1. W Illustratorze wybierz polecenie File/Save As i zapisz plik pod nazwą Box It Up Co logo w formacie .AI. Jeśli nie masz Illustratora, gotowy plik znajdziesz na płycie dołączonej do książki. Zapisując plik w Illustratorze, nie używaj najnowszego formatu. Do zapisania przykładowego pliku wybrałem format Illustrator 8 zamiast nowszych Illustrator CS.

Na rysunku 3.20 przedstawiono logo wykonane za pomocą Illustratora. 2. Otwórz Max i z menu aplikacji wybierz polecenie Import/Import. Otwarte zostanie okno dialogowe Select File to Import.

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

157

Rysunek 3.20. Firmowe logo utworzone w Illustratorze — gotowe do zapisania, a następnie zaimportowania w Maksie

3. Z listy rozwijanej Pliki typu wybierz format Adobe Illustrator (*.AI). Odszukaj plik, który chcesz zaimportować, i kliknij przycisk Otwórz. W oknie dialogowym AI Import musisz zdecydować, czy importowane obiekty mają być dołączone do bieżącej sceny, czy ją całkowicie zastąpić. 4. W tym ćwiczeniu skorzystasz z drugiej możliwości, a zatem wybierz opcję Completely replace current scene i kliknij przycisk OK. 5. W oknie dialogowym Shape Import zostaniesz zapytany, czy kształty mają być zaimportowane jako jeden obiekt (opcja Single Object), czy każdy oddzielnie (opcja Multiple Objects). Zaznacz opcję Multiple Objects i kliknij przycisk OK. Na rysunku 3.21 przedstawiono logo po zaimportowaniu do Maksa. Zauważ, że wszystkie wypełnienia zniknęły. Splajny utworzone podczas importu pliku Illustratora są obiektami typu Editable Spline. Więcej informacji na ich temat znajdziesz w rozdziale 12., „Rysowanie i edycja dwuwymiarowych splajnów i kształtów”.

Korzystanie z narzędzi do zarządzania plikami Aby użytkownik nie pogubił się w gąszczu tych wszystkich plików, Max udostępnia kilka narzędzi ułatwiających ich obsługę. Znajdziesz je w panelu Utilities oraz na liście rozwijanej po kliknięciu przycisku More w tym samym panelu.

158

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 3.21. Logo utworzone w Illustratorze po zaimportowaniu do Maksa

Korzystanie z narzędzia Asset Browser Pierwszy przycisk w panelu Utilities nosi nazwę Asset Browser (przeglądarka zasobów). Kliknięcie go otwiera okno dialogowe o takiej samej nazwie. Swoim wyglądem przypomina okno Eksploratora Windows i pozwala przeglądać poszczególne foldery z podglądem zawartości plików, jeśli tylko są zapisane w formacie obsługiwanym przez to narzędzie. Okno Asset Browser zostało pokazane na rysunku 3.22. Rysunek 3.22. Okno Asset Browser wyświetla miniaturki umożliwiające podgląd zawartości plików

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

159

Jeśli nawet miniaturki nie są wyświetlane w systemach Windows Vista i Windows 7, w oknie Asset Browser będą widoczne.

Lista obsługiwanych formatów obejmuje AVI, BMP, CIN, CEL, DDS, GIF, HDRI, IFL, IPP, JPEG, MPEG, PNG, PSD, MOV, RGB, RLA, RPF, VST, TIF oraz YUV. Pliki zapisane w tych formatach można również otworzyć poleceniem Rendering/View Image File. Zawartość plików z tymi rozszerzeniami możesz obejrzeć bez opuszczania okna Asset Browser. Za pomocą poleceń menu Filter możesz wybrać wyświetlanie plików tylko określonego typu. Możesz także oglądać i filtrować pliki MAXScript i AutoCAD DWG. Okno Asset Browser możesz otworzyć także w oknie widokowym. W tym celu kliknij etykietę punktu widzenia i z menu podręcznego wybierz polecenie Extended Viewports/Asset Browser.

Możesz także przeciągać pliki z okna Asset Browser bezpośrednio do Maksa. Aby otworzyć w Maksie plik z zapisaną sceną, przeciągnij ten plik nad pasek tytułowy programu. Pliki z obrazami możesz przeciągać nad przyciski map w oknie edytora materiałów. Możesz je także przeciągać nad okna widokowe, a otwierane wówczas okno dialogowe pozwala zastosować przeciągany obraz jako mapę środowiska (opcja An environment map) lub tło okna widokowego (opcja A viewport background). Okno Asset Browser jest oknem niemodalnym, co oznacza, że nie musisz go zamykać, aby kontynuować pracę w Maksie. Podwójne kliknięcie pliku zawierającego obraz powoduje otwarcie tego obrazu w oknie Rendered Frame, które służy także do wyświetlania końcowego renderingu sceny. Narzędzie Asset Browser może służyć także jako przeglądarka internetowa. Podczas jego uruchamiania wyświetlane jest okno dialogowe przypominające o tym, że zawartość stron internetowych może być objęta ochroną praw autorskich i nie może być wykorzystywana bez zgody ich właściciela. Okno Asset Browser zawiera trzy panele, których wyświetlanie możesz włączać i wyłączać za pomocą poleceń z menu Display. Panel Thumbnail służy do wyświetlania miniaturek z podglądem zawartości plików. Rozmiary i kolejność wyświetlanych miniaturek możesz ustalić, korzystając z odpowiednich opcji menu Thumbnails. Panel Explorer wyświetla pliki w postaci ikon znanych z Eksploratora Windows. Panel Web wyświetla zawartość strony internetowej, której adres został wpisany w polu Address. Aby przeglądać strony internetowe, musisz mieć połączenie z internetem. Narzędzie Asset Browser może zapamiętać Twoje ulubione strony internetowe — odpowiednie polecenia znajdziesz w menu Favorites. W oknie tego narzędzia znajdują się także przyciski nawigacyjne typowe dla przeglądarek internetowych, takie jak Back (wstecz), Forward (do przodu), Home (strona domowa), Refresh (odśwież) i Stop (zatrzymaj). Te same funkcje realizują polecenia (o takich samych nazwach) zawarte w menu Browse. Max przechowuje miniatury wszystkich oglądanych przez Ciebie obrazów w specjalnym folderze na dysku twardym. Z każdą miniaturką zapisywana jest informacja o położeniu pliku z oryginalnym obrazem. W sekcji Cache Directory okna dialogowego Preferences,

160

Część I  Rozpoczynanie pracy z programem 3ds Max

otwieranego poleceniem File/Preferences, możesz zmienić ścieżkę dostępu do folderu z miniaturkami. Aby obejrzeć wszystkie miniatury zapisane w tym folderze, wybierz polecenie Filter/All in cache. Okno dialogowe Preferences zawiera także opcje obsługi plików przeciąganych do okna widokowego. Można tu wybrać bezwarunkowe dołączanie (impor-towanie) pliku (Always merge/import the file) lub tworzenie odnośnika zewnętrznego (Always XREF the file) albo sprawić, że Max będzie za każdym razem pytał, co ma robić (Ask me each time). Wybierając polecenie File/Print, możesz wydrukować zawartość strony internetowej wyświetlanej w panelu Web. Polecenie to jest dostępne tylko w trybie przeglądania stron internetowych.

Odszukiwanie plików za pomocą narzędzia MAX File Finder Innym narzędziem, którego możesz użyć do wyszukiwania plików, jest MAX File Finder. Dostęp do niego uzyskasz po kliknięciu przycisku More w panelu Utilities i wybraniu go z listy dodatkowych narzędzi. W panelu Utilities pojawi się wówczas roleta zawierająca przycisk Start. Kliknięcie tego przycisku otwiera okno dialogowe MAXFinder, w którym możesz wyszukiwać pliki z zapisanymi scenami, wykorzystując do tego celu informacje określone wcześniej w oknie dialogowym File Properties (właściwości pliku). Okno dialogowe MAXFinder można otworzyć także za pomocą ikony MaxFind dostępnej w menu Start obok ikony Autodesk 3ds Max.

Za pomocą przycisku Browse możesz określić, który folder ma być przeszukiwany. Jeśli zaznaczysz opcję Include Subfolders, przeszukiwane będą również wszystkie podfoldery wskazanego folderu. Na rysunku 3.23 przedstawiono okno dialogowe MAXFinder z wynikami wyszukiwania plików zawierających wyraz blue (niebieski). Rysunek 3.23. Korzystając z narzędzia MAX File Finder, możesz wyszukiwać pliki o określonych właściwościach

Gromadzenie plików za pomocą narzędzia Resource Collector Podczas tworzenia sceny często wykorzystywane są pliki z obiektami i obrazami pobierane z różnych miejsc. Narzędzie Resource Collector ułatwia gromadzenie tych plików w jednym miejscu. Ustawienia i opcje działania tego narzędzia są dostępne w rolecie

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

161

Parameters na panelu Utilities, pokazanym na rysunku 3.24. W polu Output Path wyświetlana jest ścieżka do miejsca, w którym pliki będą gromadzone. Przycisk Browse umożliwia wskazanie innej lokalizacji. Rysunek 3.24. Narzędzie Resource Collector ułatwia gromadzenie w jednym miejscu wszystkich wykorzystywanych plików

Włączenie opcji Collect Bitmaps powoduje zebranie wszystkich bitmap zastosowanych w scenie, opcja Include MAX File umieszcza we wskazanym katalogu również plik z bieżącą sceną, a opcja Compress Files umożliwia zapisywanie plików w postaci skompresowanej. Opcja Copy powoduje tworzenie kopii gromadzonych plików, a opcja Move — przenoszenie tych plików do katalogu określonego w polu Output Path. Opcja Update Materials włącza uaktualnienie ścieżek w edytorze materiałów. Aby rozpocząć proces gromadzenia plików zgodnie z wybranymi opcjami, kliknij przycisk Begin.

Korzystanie z narzędzia File Link Manager Narzędzie File Link Manager (można je uruchomić także za pomocą polecenia References/File Link Manager w menu aplikacji) umożliwia korzystanie z plików utworzonych w programie AutoCAD tak samo jak z odnośników zewnętrznych. Po utworzeniu łącza między bieżącą sceną Maksa a plikiem AutoCAD-a możesz taki plik wczytywać ponownie za każdym razem, gdy zostanie zmodyfikowany. Odnośniki zewnętrzne są opisane w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Okno dialogowe tego narzędzia zawiera trzy panele: Attach, Files i Presets. W panelu Attach umieszczono przycisk File, służący do wybierania i otwierania plików w formatach DWG i DXF. Panel ten zawiera również opcje umożliwiające przeskalowanie jednostek w dołączanym pliku oraz przyciski służące do wybierania warstw, które mają być uwzględniane (Select Layers to include), i do przyłączania wskazanego pliku (Attach this file). W panelu Files wyświetlane są wszystkie pliki AutoCAD-a połączone z bieżącą sceną. Plikom tym towarzyszą ikony sygnalizujące stan łącza oraz to, czy dany plik został zmodyfikowany i połączenie powinno zostać zaktualizowane. W takim przypadku przycisk Reload umożliwia ponowne wczytanie pliku do Maksa. Panel Presets służy do definiowania zestawów ustawień dotyczących przyłączania plików.

162

Część I  Rozpoczynanie pracy z programem 3ds Max

Korzystanie z technologii i-drop Aby ułatwić pobieranie plików z internetu, w firmie Autodesk opracowano technologię o nazwie i-drop pozwalającą przeciągać pliki bezpośrednio ze strony internetowej (obsługującej tę technologię) do Maksa. Korzystając z tej funkcji, możesz np. umieścić w swojej scenie modele lamp, przeciągając je ze strony internetowej producenta sprzętu oświetleniowego. Nie musisz w tym celu pobierać i zapisywać żadnych plików. W ten sposób możesz pobierać modele geometryczne, materiały i dane fotometryczne.

Uzyskiwanie dostępu do informacji o plikach Max oferuje kilka okien dialogowych wyświetlających dodatkowe informacje dotyczące edytowanej sceny. Informacje te mogą być przydatne w procesie zarządzania plikami oraz przy sporządzaniu różnych statystyk dotyczących sceny.

Wyświetlanie informacji dotyczących sceny Jeśli lubisz sporządzać statystyki tworzonych scen (np. w celu stwierdzenia, czy pobiłeś rekord firmy w kategorii modeli z największą liczbą ścianek), wiele cennych informacji znajdziesz w oknie dialogowym Summary Info. Aby je otworzyć, wybierz polecenie Properties/Summary Info w menu aplikacji. Okno to wyświetla wszystkie istotne informacje na temat bieżącej sceny. Znajdziesz tu m.in. ogólną liczbę obiektów w scenie, liczbę źródeł światła, liczbę kamer, całkowitą liczbę wierzchołków i ścianek, a także informacje na temat różnych ustawień poszczególnych obiektów. W polu Description możesz zamieścić opis danej sceny. Okno dialogowe Summary Info zostało pokazane na rysunku 3.25. Rysunek 3.25. Okno dialogowe Summary Info wyświetla wszystkie najważniejsze informacje dotyczące bieżącej sceny

Przycisk Plug-In Info służy do wyświetlania informacji o wszystkich aktualnie zainstalowanych modułach pomocniczych. Lista tych modułów jest dosyć długa nawet wtedy,

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

163

gdy nie instalowałeś żadnych dodatkowych — wiele funkcji Maksa zostało zaimplementowanych w formie takich modułów. Przycisk Save to File umożliwia zapisanie wszystkich danych w pliku tekstowym.

Odczytywanie właściwości pliku W miarę powiększania się liczby zgromadzonych plików coraz bardziej będziesz odczuwał potrzebę skatalogowania ich w celu ułatwienia sobie wyszukiwania tych z odpowiednią zawartością. Max oferuje możliwość zapisywania wraz ze sceną charakteryzujących ją słów kluczowych oraz innych informacji o charakterze opisowym. Odpowiednie do tego celu jest okno dialogowe File Properties otwierane poleceniem Properties/File Properties w menu aplikacji. Okno to, pokazane na rysunku 3.26, zawiera trzy panele: Summary, Contents i Custom. W panelu Summary przechowywane są m.in. informacje, takie jak tytuł, temat i twórca danej sceny (odpowiednie pola dla tych danych to: Title, Subject i Author). Mogą one być przydatne podczas zespołowego opracowywania projektu. Panel Contents, pokazany na rysunku 3.26, zawiera dane dotyczące sceny (np. liczbę wszystkich obiektów w scenie). Większość tych danych znajdziesz także w oknie dialogowym Summary Info. W panelu Custom możesz utworzyć własną listę właściwości zawierających informacje np. o kliencie, języku itp. Rysunek 3.26. Okno dialogowe File Properties zawiera informacje ułatwiające organizację pracy, np. nazwisko autora, komentarze itp.

Informacje zapisane za pomocą okna dialogowego File Properties możesz odczytać także przy użyciu Eksploratora Windows. W tym celu kliknij plik prawym przyciskiem myszy i z podręcznego menu wybierz polecenie Właściwości. W oknie dialogowym Właściwości zobaczysz zakładki trzech paneli: Ogólne, Niestandardowe i Podsumowanie. W panelu Posumowanie możesz odczytać m.in. informacje zapisane w pliku, takie jak Tytuł, Temat, Kategoria, Słowa kluczowe, Komentarze i Autor.

Oglądanie zawartości plików Miniaturka z podglądem zawartości może być czasami niewystarczająca do oceny, czy jest to plik, którego potrzebujemy. W takiej sytuacji możesz otworzyć plik w przeglądarce i obejrzeć go dokładnie. Polecenie Rendering/View Image File otwiera okno dialogowe View File pokazane na rysunku 3.27. Umożliwia ono wybranie pliku zawierającego grafikę lub animację i otwarcie go w oknie Rendered Frame lub w domyślnym odtwarzaczu plików multimedialnych.

164

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 3.27. Okno dialogowe View File umożliwia otwieranie obrazów i animacji zapisanych w wielu różnych formatach

Okno Rendered Frame zostało szczegółowo opisane w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Okno dialogowe View File zawiera kilka elementów sterujących wyświetlaniem zawartości plików. Przyciski Devices i Setup umożliwiają wybór i ustawienie urządzenia zewnętrznego, np. magnetowidu cyfrowego, na które zawartość pliku zostanie wysłana. Kliknięcie przycisku Info powoduje wyświetlenie informacji dotyczących zaznaczonego pliku. Przycisk View otwiera wybrany plik bez zamykania okna View File, natomiast przycisk Otwórz otwiera plik, zamykając jednocześnie okno dialogowe. W dolnej części okna View File wyświetlane są podstawowe dane dotyczące zaznaczonego pliku i ścieżka dostępu do niego. Okno dialogowe View File umożliwia otwieranie plików zapisanych w wielu różnych formatach. Lista tych formatów obejmuje: Microsoft wideo (AVI), MPEG, obrazy bitmapowe (BMP), Kodak Cineon (CIN), Combustion (CWS), Graphics Image Format (GIF), Radiance HDRI Image File (HDR), Image File List (IFL), obrazy JPEG (JPG), OpenEXR Image File (EXR), Portable Network Graphics (PNG), obrazy Adobe Photoshop (PSD), filmy QuickTime (MOV), obrazy SGI (RGB), obrazy RLA, obrazy RPF, obrazy Targa (TGA, VST), obrazy Tagged Image File (TIF), Abekas Digital Disk (YUV) oraz obrazy DirectDraw Surface (DDS). W sekcji Gamma okna dialogowego View File możesz określić, czy obraz ma być wyświetlany z jego własnymi ustawieniami gamma (opcja Use image’s own gamma), czy z ustawieniami systemowymi (opcja Use system default gamma), czy też ma decydować ustawiona tutaj wartość (opcja Override).

Rozdział 3.  Praca z plikami, importowanie i eksportowanie

165

Podsumowanie Umiejętność posługiwania się plikami pozwala nie tylko zapisywać rezultaty pracy, ale także wymieniać je z innymi użytkownikami i współpracować w grupie. Niniejszy rozdział obejmował następujące zagadnienia: 

tworzenie, zapisywanie, otwieranie, łączenie i archiwizowanie plików,



ustawianie preferencji związanych z plikami i konfigurowanie ścieżek dostępu,



importowanie i eksportowanie plików w różnych formatach,



importowanie modeli z innych programów, takich jak Illustrator, Maya i MotionBuilder,



korzystanie z dodatkowych narzędzi plikowych, takich jak Asset Browser,



korzystanie z okien dialogowych Summary Info i File Properties w celu wydajniejszego zarządzania plikami.

Teraz powinieneś już swobodnie korzystać z interfejsu Maksa i posługiwać się plikami, ale jeśli pewne rzeczy chciałbyś w nim zmienić, w następnym rozdziale dowiesz się, jak to zrobić.

166

Część I  Rozpoczynanie pracy z programem 3ds Max

Rozdział 4.

Modyfikowanie interfejsu i ustawianie jednostek W tym rozdziale: 

Ustalanie jednostek



Ustawianie preferencji ogólnych



Preferencje okien widokowych



Preferencje gamma

Jedną z pierwszych rzeczy, jaką powinieneś zrobić przed rozpoczęciem pracy nad nowym projektem, jest wybór jednostek. Mogą one być małe jak milimetry lub duże jak kilometry, ale mogą to być również ogólne jednostki niemianowane, czyli takie, które mają znaczenie tylko przy porównywaniu wymiarów różnych elementów sceny. Max oferuje dość szeroki wybór rozmaitych jednostek, a nawet umożliwia definiowanie zupełnie nowych. Max udostępnia również pokaźny zestaw preferencji pozwalających zmienić niemal każdy aspekt programu. W tym rozdziale poznasz różne sposoby na to, by interfejs Maksa stał się jeszcze bardziej wygodny.

Wybieranie jednostek systemowych Jedną z pierwszych rzeczy, jaką powinieneś zrobić przed przystąpieniem do modelowania, jest wybór odpowiednich jednostek systemowych. Mają one bezpośredni wpływ na proces modelowania oraz na wartości tych parametrów, które zależne są od współrzędnych. Jednostki są nierozerwalnie związane z wartościami parametrów wprowadzanymi za pomocą klawiatury. Jeśli np. jednostką długości będzie metr, sfera utworzona z parametrem Radius (promień) równym 2 będzie miała średnicę 4 m.

168

Część I  Rozpoczynanie pracy z programem 3ds Max

Max może obsługiwać różne systemy miar, np. metryczny lub amerykański. Możesz także zdefiniować własny system jednostek (np. jeśli pracujesz nad sceną kosmiczną, możesz wprowadzić parseki). Dobór właściwych jednostek pozwala na pracę z odpowiednią precyzją bez konieczności stosowania bardzo dużych lub bardzo małych wartości. Większość programów sterujących grami komputerowymi operuje metrem jako jednostką długości. Jeśli więc tworzysz grafikę dla gry, ustaw właśnie taką jednostkę.

Aby określić układ jednostek, wybierz polecenie Customize/Units Setup. Spowoduje to otwarcie okna dialogowego Units Setup, pokazanego na rysunku 4.1. Zaznaczenie opcji Metric (system metryczny) umożliwi Ci wybór jednej z następujących jednostek: milimetry, centymetry, metry i kilometry. W systemie US Standard możesz jako jednostki domyślne wybrać Feet (stopy) lub Inches (cale). Możesz także określić sposób ich wyświetlania, czyli dziesiętny, ułamkowy oraz mieszany, w którym stopy wyświetlane będą z calami w postaci dziesiętnej lub ułamkowej. Wartości ułamkowe mogą być wyrażane z dokładnością od 1/1 do 1/100. Rysunek 4.1. W oknie dialogowym Units Setup możesz określić system jednostek. Do wyboru masz systemy metryczny, amerykański, własny i ogólny

Stosowanie jednostek własnych i ogólnych Aby zdefiniować własny system jednostek, wpisz w polach poniżej opcji Custom nazwę nowej jednostki oraz jej równowartość w jednostce „znanej” Maksowi. Ostatnia opcja, Generic (ogólny), pozwala wybrać jednostki ogólne. W tym przypadku możliwe jest określenie tylko względnych relacji między różnymi odległościami — w systemie Generic odległości nie są wyrażane w żadnych konkretnych jednostkach. Poza jednostkami długości, możesz określić również jednostki oświetlenia. Z listy Lighting Units możesz wybrać dla tych jednostek standard amerykański (American) lub międzynarodowy (International). Jednostki oświetlenia są używane podczas definiowania fotometrycznych źródeł światła. W górnej części okna Units Setup znajduje się przycisk o nazwie System Unit Setup, którego kliknięcie otwiera okno dialogowe System Unit Setup, pokazane na rysunku 4.1. Tutaj możesz zdefiniować system miar, jaki będzie stosowany przez program. Jako podstawę nowego systemu możesz wybrać cale, stopy, mile, milimetry, centymetry, metry i kilometry.

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

169

Jeśli przykładowo używasz Maksa do tworzenia modeli, które mają być wykorzystane w edytorze gry Unreal, możesz skorzystać z opcji Custom, aby określić jednostkę o nazwie Unreal Foot (Uft), której będzie odpowiadać 16 jednostek ogólnych, bo tego wymaga edytor gry. Wpisując odpowiednią wartość w polu mnożnika, możesz zmienić wartość dowolnej jednostki. Włączenie opcji Respect System Units in Files (uwzględniaj jednostki określone w plikach) sprawi, że przy otwieraniu plików z innymi systemami jednostek otwierane będzie stosowne okno dialogowe. Jeśli wyłączysz tę opcję, wszystkie nowe obiekty będą automatycznie dostosowywane do bieżącego systemu jednostek. Suwak Origin pozwala oszacować dokładność odwzorowania obiektu, w zależności od jego odległości od początku układu współrzędnych. Jeśli wiesz, jak daleko od początku układu współrzędnych będą rozmieszczone obiekty, możesz wpisać tę wartość w polu Distance from origin, a wówczas w polu Resulting Accuracy zostanie wyświetlona dokładność odpowiadająca tej odległości. Możesz to wykorzystać do oszacowania dokładności parametrów. Obiekty położone dalej od środka układu są mniej dokładne. Musisz zachować ostrożność, umieszczając obiekty w dużej odległości od początku układu współrzędnych. Im większa jest ta odległość, tym mniej dokładnie odwzorowywany jest obiekt i z tym mniejszą precyzją możesz go przesuwać. Jeśli masz problemy z dokładnym umiejscowieniem obiektu (szczególnie wtedy, jeśli jest to obiekt zaimportowany z zewnętrznego pliku), sprawdź jego odległość od początku układu współrzędnych. Zmniejszenie tej odległości może rozwiązać problem.

Postępowanie w przypadku niezgodności jednostek Wyobraź sobie, że projektujesz ośrodek sportów zimowych. W takim przypadku najprawdopodobniej wybierzesz kilometr jako jednostkę. Jeśli następnym Twoim zadaniem będzie zaprojektowanie sylwetki samochodu wyścigowego, zapewne zmienisz kilometry na metry. Gdy ponownie otworzysz poprzedni projekt (ośrodek sportowy), Max wyświetli okno dialogowe File Load: Units Mismatch (wczytywanie pliku: niezgodność jednostek), pokazane na rysunku 4.2. Rysunek 4.2. Okno dialogowe Units Mismatch pozwala ujednolicić jednostki w otwieranym pliku i w ustawieniach systemowych

Okno to poinformuje, że jednostki określone w otwieranym pliku różnią się od tych, jakie zostały ustalone w programie. Taka sytuacja może się zdarzyć również podczas dołączania do bieżącej sceny obiektów z innych plików. Okno dialogowe wyświetla jednostki zastosowane zarówno w pliku, jak i w systemie oraz oferuje do wyboru dwie opcje. Pierwsza z nich, Rescale the File Objects to the System Unit Scale, zmienia jednostki w pliku, tak aby pasowały do aktualnych ustawień systemowych, a druga, Adopt the File’s Unit Scale, zmienia jednostki systemowe, tak aby pasowały do jednostek ustalonych w pliku.

170

Część I  Rozpoczynanie pracy z programem 3ds Max Jeśli w celu uzyskania zgodności jednostek przeskalujesz obiekt pochodzący z pliku, może on stać się bardzo mały lub bardzo duży w porównaniu z pozostałymi obiektami sceny. W takiej sytuacji kliknij przycisk Zoom Extents All, aby zobaczyć przeskalowany obiekt w oknie widokowym.

Zmiana skali jednostek globalnych Jeśli w trakcie opracowywania sceny stwierdzisz, że jednostki zostały źle dobrane, możesz przeskalować całą scenę lub tylko wybrane obiekty. Odpowiednim do tego narzędziem jest Rescale World Units (skalowanie jednostek globalnych) — znajdziesz je na liście narzędzi dostępnej po kliknięciu przycisku More w panelu Utilities. Po zaznaczeniu tego narzędzia na liście kliknij przycisk OK. W oknie dialogowym Rescale World Units możesz ustalić wartość współczynnika skali (Scale Factor), zgodnie z którą obiekty lub scena zostaną powiększone lub pomniejszone. Jeśli utworzyłeś scenę, stosując skalę milimetrową, a chciałbyś kontynuować pracę w skali metrowej, zwiększ ten współczynnik do 1000.

Ustawianie preferencji Okno dialogowe Preference Settings umożliwia takie skonfigurowanie Maksa, które pozwoli pracować z programem w sposób maksymalnie wygodny. Aby je otworzyć, wybierz polecenie Customize/Preferences. Okno to zawiera następujące panele: General, Files, Viewports, Gamma and LUT, Rendering, Radiosity, Animation, Inverse Kinematics, Gizmos, MAXScript, i mental ray, Containers i Help. Panel Help okna dialogowego Preference Settings jest nowością w 3ds Max 2012. Najszybszy sposób otwarcia okna dialogowego Preference Settings, jaki udało mi się znaleźć, polega na kliknięciu prawym przyciskiem myszy przycisku Spinner Snap Toggle.

Preferencje ogólne Panel General okna dialogowego Preference Settings, pokazany na rysunku 4.3, zawiera ogólne ustawienia programu. Ustawienia, które się w nim znajdują, mają wpływ na różne aspekty całego interfejsu.

Sekcje Scene Undo i Reference Coordinate System W sekcji Scene Undo możesz ustawić maksymalną liczbę poleceń przechowywanych w specjalnym buforze w celu umożliwienia ich cofnięcia. Mniejsza liczba oznacza mniejsze zapotrzebowanie na pamięć komputera, ale też mniejsze możliwości wycofywania się z błędnych decyzji. Domyślnie liczba ta wynosi 20.

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

171

Rysunek 4.3. W panelu General możesz ustawić wiele różnych opcji Maksa

Stwierdziłem, że chociaż pochłania to więcej pamięci, warto zwiększyć liczbę możliwych cofnięć. Podczas opracowywania modelu nawet nie zauważysz, kiedy wykonasz 20 operacji.

Zaznaczenie opcji Constant (stały) w sekcji Reference Coordinate System (układ odniesienia) sprawia, że wszystkie narzędzia transformacyjne używają tego samego układu odniesienia. Jeśli opcja nie zostanie zaznaczona, każda kolejna transformacja (przesunięcie, skalowanie czy obrót) będzie przeprowadzana w odniesieniu do układu ostatnio wybranego.

Sekcje Plug-In Loading i Sub-Materials Włączona opcja Load Plug-ins When Used powoduje, że moduły dodatkowe są ładowane do pamięci komputera dopiero wtedy, gdy są potrzebne. Dzięki temu moduły te nie zajmują pamięci komputera, a przy tym są zawsze dostępne. Opcja Assign Automatically w sekcji Sub-Materials, jeśli jest zaznaczona, umożliwia nakładanie materiałów przez przeciąganie ich bezpośrednio na zaznaczone elementy struktury obiektu. W ten sposób nakładany jest materiał złożony (Multi/Sub-Object), a nakładanie odbywa się zgodnie z identyfikatorami materiału (Material ID) przypisanymi zaznaczonym elementom obiektu. Jeśli często stosujesz materiały złożone, włącz tę opcję, a zaoszczędzisz dużo czasu, lecz jeśli tego typu materiały są dla Ciebie nowością, opcja ta może znacznie utrudnić ich nakładanie.

Sekcja Scene Selection Włączenie opcji Auto Window/Crossing by Direction umożliwia zaznaczanie obiektów metodą Window (aby obiekt został zaznaczony, musi być w całości otoczony ramką zaznaczenia) lub metodą Crossing (do zaznaczenia obiektu wystarczy, że jego część znajdzie się wewnątrz ramki), w zależności od kierunku przeciągania wskaźnika. Jeśli wybierzesz pierwszą z dostępnych tutaj opcji, przy przeciąganiu wskaźnika od prawej do lewej będzie stosowana metoda Crossing, a przy przeciąganiu od lewej do prawej — metoda Window.

172

Część I  Rozpoczynanie pracy z programem 3ds Max

Preferuję metodę Crossing i, by ją stosować, niezależnie od kierunku przeciągania wskaźnika, pozostawiam opcję Auto Window/Crossing by Direction wyłączoną.

Wartość ustawiona w polu Paint Selection Brush Size będzie domyślnym rozmiarem pędzla stosowanego do zaznaczania obiektów metodą malowania. W domyślnym interfejsie wartość ta wynosi 20. Jeśli stwierdzasz, że ilekroć używasz tego pędzla, musisz zmieniać jego rozmiar, tutaj możesz jednorazowo ustawić właściwą wartość.

Sekcje Spinners, Command Panel i Vertex Normal Style Spinery są elementami umożliwiającymi wpisywanie wartości parametrów lub zmienianie ich w sposób interaktywny przez klikanie strzałek. Okno Preference Settings zawiera ustawienia określające liczbę miejsc dziesiętnych wyświetlanych w polu spinera (parametr Precision) oraz wartość, o jaką zmieni się zawartość spinera po kliknięciu strzałki (parametr Snap). Opcja Use Snap służy do włączania trybu skokowej zmiany zawartości spinerów. Tryb skokowej zmiany zawartości spinerów możesz włączać i wyłączać również za pomocą przycisku Spinner Snap Toggle na głównym pasku narzędzi. Kliknięcie prawym przyciskiem myszy strzałki spinera ustawia jego wartość na minimum.

Zawartość spinera można zmieniać także przez kliknięcie w obrębie strzałek, a następnie przeciąganie kursora w górę lub w dół. Włączenie opcji Wrap Cursor Near Spinner powoduje utrzymywanie kursora w pobliżu spinera podczas takiego przeciągania. Dzięki temu zawartość spinera możesz zmieniać przy użyciu tej metody w dużym zakresie bez obawy, że kursor dojdzie do górnej lub dolnej krawędzi ekranu. Wartość Rollout Threshold określa liczbę pikseli, o jaką można przewinąć zawartość rolety bez przenoszenia jej do następnej kolumny. Takie przenoszenie rolety ma miejsce wtedy, gdy panel poleceń został poszerzony lub jest panelem pływającym. Zaznaczenie opcji Use Legacy R4 Vertex Normals powoduje, że normalne wierzchołków będą obliczane metodą pochodzącą z 4. wersji Maksa. Nowsza metoda jest dokładniejsza, ale nieco inaczej uwzględnia grupy wygładzania. Włączaj tę opcję tylko wtedy, gdy planujesz wykorzystanie modeli wykonanych za pomocą Maksa w wersji 4. lub jeszcze starszej.

Sekcja UI Display Opcje zawarte w sekcji UI Display (wyświetlanie interfejsu) sterują dodatkowymi aspektami interfejsu Maksa. Opcja Enable Viewport Tooltips służy do włączania i wyłączania „dymków” z podpowiedziami (tooltips). Podpowiedzi mogą być pomocne dla kogoś, kto zaczyna poznawać interfejs Maksa, ale dla użytkownika zaawansowanego mogą być denerwujące i z pewnością zechce je wyłączyć. Włączenie opcji AutoPlay Preview File powoduje, że po zakończeniu renderingu animacja zostanie automatycznie odtworzona w domyślnym odtwarzaczu. Jeśli wyłączysz tę opcję, będziesz musiał wybrać polecenie Tools/Grab Viewport/View Animated Sequen-

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

173

ce File w celu odtworzenia animacji. Opcja Display Cross Hair Cursor zmienia wygląd kursora. Po jej włączeniu kursor przyjmie postać podobną do tej, jaka jest stosowana w programie AutoCAD, czyli dwóch prostopadłych linii. Podczas wykonywania poleceń mających wpływ na topologię obiektów, np. skalowania nieproporcjonalnego, Max wyświetla okno dialogowe z żądaniem potwierdzenia naszej decyzji. Takie okno jest również wyświetlane po wydaniu polecenia scalenia stosu modyfikatorów. Aby wyłączyć wyświetlanie tych okien, usuń zaznaczenie opcji Display Topology-Dependence Warning i Display Stack Collapse Warning. Opcja Save UI Configuration on Exit umożliwia automatyczne zapisywanie konfiguracji interfejsu przy zamykaniu programu. Aby uzyskać więcej miejsca na ekranie, możesz wyłączyć opcję Use Large Toolbar Buttons, co spowoduje zastosowanie mniejszych przycisków na paskach narzędzi. Opcja Horizontal Text in Vertical Toolbars pozwala rozwiązać problem przycisków tekstowych na pionowych paskach narzędzi. Możesz także określić stałą szerokość takich przycisków — opcja Fixed Width Text Buttons. Tekst przekraczający zadaną szerokość przycisku zostanie obcięty. Wartość ustawiona w polu Flyout Time określa czas (w milisekundach), jaki upływa od kliknięcia do rozwinięcia grupy przycisków. Na liście rozwijanej Color Selector możesz wskazać okno wyboru koloru, które ma być wykorzystywane przez Max.

Sekcja Layer Defaults Jeśli zaznaczysz obiekt i otworzysz okno z jego właściwościami (Object Properties), w sekcjach Display Properties, Rendering Control i Motion Blur znajdziesz przyciski umożliwiające włączenie jednego z dwóch trybów przypisywania określonych właściwości zaznaczonym obiektom. Trybami tymi są By Object i By Layer. Jeśli włączysz tryb By Object, właściwości będziesz mógł ustawić w oknie Object Properties i zostaną przypisane tylko obiektom zaznaczonym. Jeśli natomiast wybierzesz tryb By Layer, ustawienie tych właściwości będzie możliwe tylko w oknie Layer Properties i będą dotyczyć wszystkich obiektów znajdujących się na danej warstwie. W oknie Preference Settings możesz ustawić domyślny tryb przypisywania właściwości nowym obiektom i źródłom światła. Jeśli zaznaczysz opcje Default to By Layer for New Nodes i New Lights Renderable By Layer, będzie to tryb By Layer. Tutaj możesz także wybrać jedną z trzech opcji dotyczących odkrywania (unhide) i odmrażania (unfreeze) obiektów na warstwach ukrytych lub zamrożonych. Możesz wybrać odkrywanie (lub odmrażanie) warstw, na których znajdują się odkrywane (odmrażane) obiekty — opcja Propagate, pozostawienie tych warstw ukrytych (zamrożonych) — opcja Do Not Propagate lub wyświetlanie okna dialogowego ze stosownym pytaniem — opcja Ask.

Sekcja Texture Coordinates Zaznaczenie opcji Use Real-World Texture Coordinates (zastosuj rzeczywiste współrzędne tekstur) spowoduje włączenie opcji Real-World Scale (skala rzeczywista) w rolecie Coordinates (współrzędne) edytora materiałów oraz opcji Real-World Map Size (rzeczywisty rozmiar mapy) w rolecie Parameters (parametry). Domyślnie opcje te są wyłączone.

174

Część I  Rozpoczynanie pracy z programem 3ds Max Metoda mapowania o nazwie Real-World Texture Coordinates została szczegółowo opisana w rozdziale 17., „Określanie właściwości materiałów przy użyciu map”.

Preferencje dotyczące plików Panel Files zawiera ustawienia dotyczące tworzenia kopii zapasowych, archiwizowania plików i generowania raportów. Możesz tutaj ustawić automatyczne tworzenie kopii zapasowej, zapisywanie pliku jako kolejnej wersji lub kompresowanie go. Panel Files został opisany w rozdziale 3., „Praca z plikami, importowanie i eksportowanie”.

Preferencje dotyczące okien widokowych Okna widokowe (viewports) stanowią tę część interfejsu, która umożliwia oglądanie sceny. Panel Viewports, pokazany na rysunku 4.4, zawiera dużo opcji wpływających na wygląd i funkcjonowanie tych okien. Rysunek 4.4. Panel Viewports zawiera ustawienia parametrów okien widokowych

Oknom widokowym poświęcony został w całości rozdział 2., „Sterowanie oknami widokowymi oraz ich konfigurowanie”, a tutaj opisane są ich preferencje.

Sekcja Viewport Parameters Opcja Use Dual planes włącza metodę dwupłaszczyznowego wyświetlania sceny. Metoda ta umożliwia szybsze odświeżanie zawartości okna widokowego. Obiekty położone bliżej stanowią zawartość przedniej płaszczyzny, a obiekty położone dalej wchodzą w skład płaszczyzny tylnej1. Przy włączonej opcji Use Dual Planes odświeżany jest widok tylko tych obiektów, które należą do przedniej płaszczyzny. 1

Naprawdę na przedniej (odświeżanej) płaszczyźnie umieszczane są obiekty zaznaczone, a pozostałe trafiają na płaszczyznę tylną i nie są odświeżane. Opisywana opcja jest dostępna, jeśli sterownik grafiki obsługuje dwupłaszczyznowy tryb wyświetlania — przyp. tłum.

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

175

W trybie edycji na poziomie struktury obiektu wierzchołki są wyświetlane domyślnie jako małe znaki plus. Włączenie opcji Show Vertices as Dots zmienia te znaki na kwadraty, których rozmiar można ustalić za pomocą parametru Size. Opcja Draw Links as Lines umożliwia wyświetlanie połączeń między obiektami w postaci linii. Stwierdziłem, że pozostawienie włączonej opcji Draw Links as Lines może bardzo utrudniać oglądanie obiektów, dlatego najczęściej ją wyłączam, chociaż czasami może ułatwić rozeznanie się w istniejących połączeniach między obiektami.

Gdy włączona jest opcja Backface Cull on Object Creation, w trybie szkieletowym (wireframe) tylna część obiektu nie jest wyświetlana. Po wyłączeniu tej opcji linie tworzące tylną część obiektu będą widoczne. Ustawienie opcji Backface Cull on Object Creation jest określane podczas tworzenia obiektu, a zatem możesz umieścić w tej samej scenie zarówno obiekty z włączoną, jak i wyłączoną widocznością tylnej części. Sfera i sześcian pokazane w lewej części rysunku 4.5 mają włączoną widoczność tylnej części, a sfera i sześcian po prawej — wyłączoną. Rysunek 4.5. Ukrycie tylnej części obiektu upraszcza jego obraz

Widoczność tylnej części zaznaczonego obiektu można włączyć i wyłączyć również za pomocą opcji Backface Cull w oknie dialogowym Object Properties.

Opcja Attenuate Lights służy do włączania lub wyłączania efektu osłabienia światła wraz z odległością od źródła — obiekty położone w głębi stają się ciemniejsze. W oknie dialogowym Viewport Configuration można ustawić granice obszarów bezpiecznych. Opcja Mask Viewport to Safe Region powoduje, że obiekty leżące poza tymi granicami będą niewidoczne w oknie widokowym. Opcja Update Background While Playing powoduje uaktualnianie tła okna widokowego podczas odtwarzania animacji. Obrazy stanowiące tło okna widokowego mogą być filtrowane, jeżeli włączona zostanie opcja Filter Environment Backgrounds, co zapobiega powstawaniu efektów pikselacji i schodkowania (aliasing), ale wydłuża czas odświeżania tła. Opcja Display World Axis odpowiada za wyświetlanie osi globalnego układu współrzędnych w lewym dolnym rogu każdego okna widokowego, co przydaje się podczas nauki nawigowania w przestrzeni 3D. Wartość parametru Grid Nudge Distance określa odległość, o jaką przesunie się obiekt po wciśnięciu klawisza plus lub minus na klawiaturze numerycznej. Parametr Non-scaling object size określa rozmiar obiektów nieskalowalnych, takich jak reflektory i kamery. Zwiększenie tego parametru sprawia, że obiekty te stają się lepiej widoczne.

176

Część I  Rozpoczynanie pracy z programem 3ds Max

Sekcja Ghosting Technika ghostingu znana w tradycyjnej animacji jako onion-skins (przenikanie ujęć) polega na wyświetlaniu wcześniejszej i późniejszej pozycji animowanego obiektu. Podczas tworzenia animacji możliwość podglądu jednocześnie klatek wyjściowej i docelowej jest bardzo pomocna. Max oferuje kilka trybów stosowania tej techniki. Możesz wybrać wyświetlanie klatek poprzedzających klatkę bieżącą (Ghost Before Current Frame), następujących po niej (Ghost After Current Frame) lub jednych i drugich (Ghost Before and After). Możesz także ustalić liczbę tych klatek oraz włączyć wyświetlanie ich numeracji. Szczegółowy opis techniki ghostingu znajdziesz w rozdziale 21., „Animacja i klatki kluczowe”.

Sekcja Mouse Control Jeśli używasz myszy z trzema przyciskami (dotyczy to także myszy z kółkiem do przewijania), możesz zdefiniować funkcję przypisaną do środkowego przycisku. Do wyboru masz dwie opcje: Pan/Zoom (przesuwanie i zmiana skali widoku) i Stroke (sterowanie za pomocą gestów wykonywanych myszą). Przesuwanie, obracanie i zmienianie skali widoku przy użyciu środkowego przycisku myszy Po zaznaczeniu opcji Pan/Zoom możesz przesuwać widok w aktywnym oknie widokowym, przeciągając kursor przy wciśniętym środkowym przycisku myszy. Przez obracanie kółka uzyskasz skokową zmianę skali widoku. Przeciąganie kursora przy wciśniętym środkowym przycisku myszy i wciśniętym klawiszu Alt powoduje obrót widoku, a takie przeciąganie przy wciśniętych klawiszach Alt+Ctrl umożliwia płynną zmianę skali widoku. Obracając kółkiem przy wciśniętym klawiszu Ctrl, uzyskasz szybką zmianę skali widoku, a wolniejszą — przy wciśniętym klawiszu Alt. Jeśli zaznaczysz opcje Zoom About Mouse Point (Orthographic) i Zoom About Mouse Point (Perspective), zmiana skali widoku, odpowiednio ortogonalnego lub perspektywicznego, będzie następowała wokół punktu wskazywanego przez kursor, a w przeciwnym przypadku wokół środka okna widokowego. Zaznaczenie opcji Right Click Menu Over Selected Only powoduje, że czteroczęściowe menu kontekstowe jest otwierane tylko wtedy, gdy prawym przyciskiem myszy zostanie kliknięty obiekt zaznaczony. Jeśli przywykłeś do częstego korzystania z menu kontekstowego, nie zaznaczaj tej opcji. Gesty to ciekawe rozwiązanie, ale uważam, że najłatwiej sterować widokiem sceny za pomocą środkowego przycisku myszy i klawisza Alt. Dlatego zawsze wybieram opcję Pan/Zoom.

Używanie gestów Opcja Stroke umożliwia sterowanie interfejsem Maksa za pomocą zdefiniowanych wcześniej gestów wykonywanych myszą. Po zaznaczeniu tej opcji zamknij okno Preference Settings i przytrzymując wciśnięty środkowy przycisk myszy, przeciągnij kursor w jed-

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

177

nym z okien widokowych. Wyświetlone zostanie proste okno dialogowe identyfikujące wykonany gest i następuje realizacja polecenia przypisanego do tego gestu. Jeśli żadne polecenie nie zostało wcześniej przypisane do takiego gestu, wyświetlane jest okno dialogowe umożliwiające kontynuowanie pracy bez wykonywania jakiegokolwiek polecenia (przycisk Continue) lub zdefiniowanie nowego gestu (przycisk Define). Inny sposób definiowania gestów polega na użyciu narzędzia Strokes dostępnego na liście narzędzi rozwijanej kliknięciem przycisku More w panelu Utilities. Narzędzie to wyświetla niewielkie okno dialogowe z przyciskiem Draw Strokes. Kliknięcie go powoduje zmianę koloru na żółty i umożliwia definiowanie gestów przy wciśniętym lewym przycisku myszy. Oczywiście, wydawanie poleceń za pomocą tak zdefiniowanych gestów wymaga użycia środkowego przycisku. Jeśli wybierzesz definiowanie gestu, otwarte zostanie okno dialogowe Define Stroke, pokazane na rysunku 4.6 je również otworzyć bezpośrednio, zakreślając gest z wciśniętym środkowym przyciskiem myszy i przy wciśniętym klawiszu Ctrl. W lewej górnej części tego okna znajduje się siatka z liniami oznaczonymi literami. Gest jest identyfikowany przez linie, które zostały przecięte podczas jego zakreślania. Przykładowo gest w postaci pionowej linii zostanie zidentyfikowany jako „HK”. Rysunek 4.6. W oknie dialogowym Define Stroke możesz przypisać poszczególnym poleceniom gesty wykonywane przy wciśniętym środkowym przycisku myszy

Po zidentyfikowaniu gestu możesz wybrać polecenie z listy znajdującej się w prawej górnej części okna. Wybrane polecenie będzie wykonywane za każdym razem, gdy w oknie widokowym wykonasz odpowiedni gest z wciśniętym środkowym przyciskiem myszy. Dla poleceń operujących na obiektach możesz ustawić opcje określające, do jakich obiektów zostaną zastosowane. Opcje te znajdują się w lewej dolnej części okna. Wszystkie zdefiniowane gesty są zapisywane w zestawie gestów. Aby przejrzeć bieżący zestaw, kliknij przycisk Review. W oknie Review Strokes zostaną wyświetlone wszystkie gesty wraz z przypisanymi do nich poleceniami (patrz rysunek 4.7). Jednym z poleceń dostępnych na liście jest polecenie Stroke Preferences. Jego użycie powoduje otwarcie okna dialogowego Stroke Preferences, również pokazanego na rysunku 4.7. Umożliwia ono zapisywanie i usuwanie zestawów gestów, określanie, czy w oknie Review

178

Część I  Rozpoczynanie pracy z programem 3ds Max

Rysunek 4.7. Okna dialogowe Review Strokes i Stroke Preferences umożliwiają przeglądanie zestawów gestów i zarządzanie nimi

Strokes mają być wyświetlane nazwy poleceń, czy gestów, ustalenie czasów wyświetlania siatki i zasięgu gestu (parametry Show Grid Time i Show Extents Time) oraz rozmiaru punktu, jakim gesty są zakreślane (parametr Stroke Point Size).

Sekcja Display Drivers Wraz z Maksem instalowany jest najnowszy sterownik o nazwie Nitrous i domyślnie właśnie on jest wykorzystywany przez program. Jednak w każdej chwili możesz to zmienić, wybierając sterownik Direct3D, OpenGL lub programowy (opcja Software). Sterownik Nitrous umożliwia wykonywanie szybkich i realistycznie wyglądających renderingów w oknach widokowych. Pozwala także na wykonywanie renderingów stylizowanych. Jest nowością w 3ds Max 2012.

W sekcji Display Drivers panelu Viewports okna dialogowego Preference Settings wyświetlana jest nazwa aktualnie zainstalowanego sterownika. Kliknięcie przycisku Configure Driver otwiera okno z ustawieniami tego sterownika. Z kolei kliknięcie przycisku Choose Driver otwiera okno Display Driver Selection, pokazane na rysunku 4.8, w którym można wybrać sterownik Direct3D, OpenGL lub programowy. Jeśli jednak nie masz ku temu specjalnych powodów, pozostaw Nitrous — wybranie innej wersji może spowodować wyłączenie niektórych funkcji programu. Zmiana sterownika zostanie uwzględniona dopiero przy następnym uruchomieniu programu. W oknie dialogowym Display Driver Selection można zobaczyć tylko te sterowniki, które są dostępne w systemie. Niestety, dostępność jakiegoś sterownika nie oznacza, że działa on prawidłowo. Jeśli wybranie sterownika spowodowało zawieszenie programu, możesz go uruchomić ponownie z wiersza poleceń, wpisując 3dsmax.exe -h, wymusisz w ten sposób ponowne wyświetlenie okna Display Driver Selection. Ten sam efekt możesz uzyskać, wybierając Start/Wszystkie programy/Autodesk/Autodesk 3ds Max 2012/Change Graphics Mode.

Przycisk Configure Driver otwiera okno dialogowe umożliwiające skonfigurowanie aktualnie wybranego sterownika. Okno konfiguracyjne może zawierać opcje, takie jak Texture Size, która pozwala określić rozmiar bitmap używanych jako tekstury. Większe mapy dają lepszą jakość obrazu, ale spowalniają wyświetlanie.

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

179

Rysunek 4.8. Korzystając z okien dialogowych Direct3D Driver Setup i Graphics Driver Setup, możesz zmienić sterownik grafiki

Wszystkie ustawienia konfiguracyjne sterowników graficznych sprowadzają się do wyboru między lepszą jakością obrazu a szybszym wyświetlaniem. Dokonując odpowiednich zmian, możesz zoptymalizować ustawienia pod kątem swoich wymagań. Ogólnie mówiąc, im większą pamięcią dysponuje karta graficzna, tym lepsze rezultaty. Więcej informacji na temat różnych sterowników graficznych znajdziesz w dodatku C, „Instalacja i konfigurowanie programu 3ds Max 2012”, na końcu książki.

Preferencje korekcji gamma W panelu Gamma and LUT, pokazanym na rysunku 4.9, umieszczono opcje sterujące korekcją gamma dla monitora i plików zawierających obrazy bitmapowe. Zawiera on również przycisk Browse umożliwiający wczytanie tablicy Autodesk Look-up Table (LUT). W tablicy LUT znajdziesz ustawienia kalibracji koloru, której można poddać oprogramowanie i sprzęt komputerowy wykorzystywany w studiu w celu uzyskania spójności odtwarzania barw. Rysunek 4.9. Włączenie korekcji gamma pozwala uzyskać spójność wyświetlania kolorów, niezależnie od monitora

180

Część I  Rozpoczynanie pracy z programem 3ds Max

Ustawianie korekcji gamma dla monitora Czy w sklepie ze sprzętem RTV zauważyłeś, że kolory na ekranach różnych telewizorów wyglądają odmiennie? Jeśli są to telewizory tej samej marki, różnice mogą być niewielkie, ale w przypadku egzemplarzy różnych marek mogą być wyraźne. Częściowym sposobem na ujednolicenie kolorów na różnych monitorach jest ustawienie współczynnika gamma. Współczynnik gamma wpływa na kontrast wyświetlanego obrazu. Jest to liczba określająca odstępstwo danego monitora od wyznaczonego standardu. Aby włączyć korekcję gamma w Maksie, otwórz panel Gamma and LUT okna dialogowego Preference Settings i zaznacz opcję Enable Gamma/LUT Correction. W celu wyznaczenia wartości gamma dopasuj wartość parametru Gamma, tak aby szary kwadrat wtopił się maksymalnie w tło. Max nie tworzy plików LUT, ale może korzystać z takich plików utworzonych w innych programach, np. w Combustion.

Poszerzanie wpływu ustawień korekcji gamma Ustawienia korekcji gamma mają bezpośredni wpływ na wyświetlanie kolorów w oknach widokowych. Aby rozszerzyć wpływ tych ustawień również na okno edytora materiału i okna wyboru koloru, należy włączyć opcje Affect Material Editor oraz Affect Color Selectors.

Ustawianie korekcji gamma dla obrazów bitmapowych Niektóre formaty stosowane do zapisu obrazów bitmapowych, np. TGA, mają swoje własne ustawienia korekcji gamma. Parametr Input Gamma w sekcji Bitmap Files pozwala ustawić korekcję gamma dla plików, w których takie ustawienia nie zostały zapisane. Parametr Output Gamma określa korekcję dla obrazów bitmapowych zapisywanych przez Max. Aby bitmapy wczytywane jako tekstury były wyświetlane prawidłowo, parametr Input Gamma powinien mieć taką samą wartość jak parametr Gamma w sekcji Display.

Pozostałe preferencje Opcje zawarte w pozostałych panelach okna Preference Settings (czyli Rendering, Animation, Inverse Kinematics, Gizmos, MAXScript, Radiosity, mental ray i Containers) są opisane w odpowiednich rozdziałach.

Podsumowanie Istnieje wiele sposobów dostosowywania interfejsu Maksa do własnych potrzeb i upodobań. Większość niezbędnych do tego celu poleceń i opcji zawiera menu Customize. W tym rozdziale dowiedziałeś się, jak za pomocą tego menu modyfikować różne aspekty interfejsu Maksa, by stał się bardziej wygodny i wydajniejszy.

Rozdział 4.  Modyfikowanie interfejsu i ustawianie jednostek

181

Szczegółowy opis preferencji renderingu znajdziesz w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”. Preferencje animacji zostały opisane w rozdziale 21., „Animacja i klatki kluczowe”. Aby dowiedzieć się więcej na temat metod realizowania kinematyki odwrotnej, zajrzyj do rozdziału 38., „Systemy szkieletowe, riggowanie i kinematyka”. O poszczególnych ustawieniach związanych z gizmami możesz przeczytać w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”. Więcej informacji na temat języka MAXScript i związanych z nim ustawień zawiera dodatek M, „Automatyzacja pracy za pomocą MAXScriptu”. Więcej szczegółów dotyczących metody energetycznej znajdziesz w rozdziale 45., „Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna”. W rozdziale 47., „Renderery mental ray i iray”, znajdziesz informacje na temat renderera mental ray. Preferencje związane z kontenerami są opisane w rozdziale 9., „Grupowanie, łączenie i hierarchizowanie obiektów”.

Tematyka tego rozdziału obejmowała następujące zagadnienia: 

ustalanie jednostek,



ogólne preferencje programu,



ustawianie preferencji okien widokowych.

W pierwszym rozdziale drugiej części zajmiemy się tworzeniem prostych obiektów i rozmieszczaniem ich w scenie.

182

Część I  Rozpoczynanie pracy z programem 3ds Max

Część II

Praca z obiektami W tej części: Rozdział 5. „Tworzenie i edycja obiektów podstawowych” Rozdział 6. „Zaznaczanie obiektów i ustawianie ich właściwości” Rozdział 7. „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie” Rozdział 8. „Klonowanie i ustawianie obiektów w szyku” Rozdział 9. „Grupowanie, łączenie i hierarchizowanie obiektów”

Rozdział 5.

Tworzenie i edycja obiektów podstawowych W tym rozdziale: 

Tworzenie obiektów podstawowych



Nazywanie obiektów oraz przypisywanie im kolorów



Metody tworzenia obiektów



Ustawianie parametrów obiektów



Przegląd różnych typów obiektów podstawowych



Wykorzystanie obiektów AEC

Czego konkretnie używali Rzymianie do budowy swojej cywilizacji? Otóż, były to niezliczone ilości bloków o nieskomplikowanych kształtach. W Maksie nazywane są one obiektami podstawowymi (primitive objects lub primitives). Dzięki temu, że można je wyginać, rozciągać, spłaszczać oraz przycinać, mogą służyć do tworzenia całkiem nowych obiektów i tym samym stanowić bazę każdego projektu. Teraz skupimy się jednak nad obiektami podstawowymi w ich oryginalnych postaciach. W tym rozdziale zawarto omówienie głównych typów obiektów podstawowych, przedstawione zostaną także metody ich tworzenia oraz modyfikowania. Możesz je wykorzystywać podczas studiowania następnych rozdziałów opisujących zaznaczanie, powielanie, grupowanie oraz przekształcanie obiektów. Proces modelowania omówiony zostanie szerzej w części III, najpierw jednak musisz nabyć umiejętności, które są związane z tworzeniem i przekształcaniem prostych brył. Później będziesz mógł zabrać się za budowę nowej cywilizacji. Jestem pewien, że rzymscy budowniczowie zazdrościliby nam takich możliwości.

186

Część II  Praca z obiektami

Tworzenie obiektów podstawowych Głównym zadaniem Maksa jest konstruowanie obiektów i scen, oczywistym wydaje się więc fakt, że jedną z pierwszych rzeczy, których należy się nauczyć, jest tworzenie obiektów. Oprócz możliwości projektowania skomplikowanych modeli, w Maksie dostępnych jest wiele prostych, geometrycznych brył zwanych obiektami podstawowymi. Mogą one służyć jako podstawa do dalszej pracy. Ich tworzenie jest niezwykle proste — sprowadza się do klikania i przeciągania kursora w oknie widokowym.

Korzystanie z menu Create Menu Create (utwórz) umożliwia szybki dostęp do przycisków znajdujących się w panelu Create. Każdy obiekt, który można utworzyć, korzystając z panelu Create, można także wykreować za pomocą odpowiedniego polecenia z menu Create. Wybranie obiektu z menu powoduje automatyczne otwarcie panelu Create oraz wybranie właściwej kategorii, podkategorii oraz przycisku niezbędnego do utworzenia pożądanego obiektu. Po wybraniu odpowiedniego polecenia wystarczy kliknąć i przeciągnąć kursor w jednym z okien widokowych, aby obiekt powstał.

Korzystanie z panelu Create Tworzenie wszystkich standardowych obiektów Maksa, takich jak sfery, kształty, źródła światła czy kamery, ma swój początek w panelu Create (bądź też w menu Create, które jednak też prowadzi do tego panelu). Jest to pierwszy panel w panelu poleceń, oznaczony ikoną przedstawiającą gwiazdę. Ze wszystkich paneli zawartych w bocznym panelu poleceń, jedynie w panelu Create (patrz rysunek 5.1) występuje podział na kategorie i podkategorie. Po kliknięciu zakładki Create w panelu poleceń wyświetlane są ikony siedmiu kategorii. Patrząc od lewej strony, są to: Geometry (obiekty geometryczne), Shapes (kształty), Lights (źródła światła), Cameras (kamery), Helpers (obiekty pomocnicze), Space Warps (pola sił) oraz Systems (systemy). Rysunek 5.1. W panelu Create można wybrać kategorie oraz podkategorie tworzonych obiektów

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

187

Panel Create służy do tworzenia obiektów będących składnikami sceny. Mogą być to bryły geometryczne (sfery, stożki, prostopadłościany), a także źródła światła, kamery lub pola sił. Panel ten udostępnia szeroką gamę różnego rodzaju obiektów. W celu utworzenia danego obiektu wystarczy odnaleźć i kliknąć odpowiedni przycisk, a następnie kliknąć i przeciągnąć kursor w jednym z okien widokowych. To wszystko — obiekt gotowy. Po kliknięciu ikony kategorii Geometry (z ikoną przedstawiającą kulę) niżej pojawi się rozwijana lista z kilkoma podkategoriami. Pierwszą z nich jest podkategoria Standard Primitives. Jeśli ją wybierzesz, ukaże się grupa przycisków służących do tworzenia prostych obiektów podstawowych. Druga podkategoria nosi nazwę Extended Primitives. Ona także zawiera obiekty podstawowe, ale bardziej wyspecjalizowane i rzadziej używane.

W ramach ćwiczenia kliknij przycisk Sphere (nie należy go mylić z przyciskiem kategorii Geometry oznaczonym ikoną w kształcie sfery). W dolnej części panelu poleceń pojawi się kilka rolet. Dla obiektu typu Sphere są to: Name and Color (nazwa i kolor), Creation Method (metoda tworzenia), Keyboard Entry (tworzenie przy użyciu klawiatury) oraz Parameters (parametry). Zawartość rolet dla każdego obiektu, ze względu na zróżnicowanie parametrów, jest inna. Możesz jednak zignorować te wszystkie rolety i po prostu utworzyć sferę. Wystarczy kliknąć i przeciągnąć kursor w jednym z okien widokowych — obiekt zostanie utworzony, a jego wielkość będzie zależała od tego, jak daleko przeciągniesz myszą, zanim zwolnisz jej przycisk. Na rysunku 5.2 przedstawiono gotową sferę oraz jej parametry. Kolor wciśniętego przycisku (w tym przypadku jest to przycisk Sphere) zmienia się na niebieski. Fakt ten przypomina, że znajdujemy się aktualnie w trybie tworzenia. Kliknięcie i przeciągnięcie kursora w oknie widokowym spowoduje utworzenie kolejnej sfery. Pozostając w tym trybie, można skonstruować wiele obiektów danego typu. Aby wyjść z trybu tworzenia, należy kliknąć prawym przyciskiem myszy w aktywnym oknie widokowym lub kliknąć przycisk Select Object (lub jeden z przycisków narzędzi transformujących) na głównym pasku narzędzi. Po wciśnięciu przycisku tworzenia obiektu w panelu poleceń (pod roletą Name and Color) pojawi się kilka nowych rolet, w których przechowywane są parametry wybranego obiektu. Zmiana tych parametrów spowoduje zmodyfikowanie utworzonego właśnie obiektu.

Nadawanie nazw obiektom Każdy obiekt sceny może mieć przypisaną nazwę oraz kolor. Zaraz po utworzeniu zostaje mu nadana domyślna nazwa oraz losowo wygenerowany kolor. Na taką nazwę składa się typ obiektu oraz kolejny numer. Przykładowo po utworzeniu sfery Max nada jej nazwę „Sphere01”. Takie nazwy mają swoje wady — przy dużej liczbie obiektów mogą powodować chaos. W każdej chwili można jednak zmienić nazwę obiektu, wprowadzając nową do pola Name w rolecie Name and Color w panelu poleceń.

188

Część II  Praca z obiektami

Rysunek 5.2. Sferę możesz utworzyć, klikając i przeciągając kursor w oknie widokowym Max nadaje każdemu obiektowi unikatową nazwę, numerując kolejne egzemplarze tej samej kategorii. W ten sposób zapobiega nieporozumieniom, jakie mogłyby wyniknąć z nadania dwom obiektom tej samej nazwy. Uważaj, bo Max umożliwia nadanie różnym obiektom tej samej nazwy.

Nazwy oraz kolory obiektów są szczególnie użyteczne podczas ich wyszukiwania i zaznaczania. Więcej informacji na ten temat znajdziesz w rozdziale 6., „Zaznaczanie obiektów i ustawianie ich właściwości”.

Wybranie polecenia Tools/Rename Objects spowoduje otwarcie okna dialogowego, w którym możesz zmienić nazwę jednego lub kilku obiektów jednocześnie. Okno Rename Objects, pokazane na rysunku 5.3, umożliwia nadawanie obiektom nazw złożonych z następujących członów: Base Name (nazwa podstawowa), Prefix (przedrostek), Suffix (przyrostek) i Number (numer). Nowe nazwy można przypisać obiektom zaznaczonym (opcja Selected) lub wybranym w oknie dialogowym Pick Objects to Rename otwieranym po wybraniu opcji Pick.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

189

Rysunek 5.3. Okno dialogowe Rename Objects pozwala zmienić nazwy kilku obiektów jednocześnie

Przypisywanie kolorów Próbka koloru obiektu umieszczona jest w panelu poleceń po prawej stronie pola z nazwą obiektu. Kolor ten jest używany podczas wyświetlania obiektu w oknach widokowych oraz, jeśli nie został mu przypisany żaden materiał, podczas renderowania. Aby zmienić kolor, wystarczy kliknąć wspomnianą próbkę — pojawi się wtedy okno dialogowe Object Color. W oknie tym, pokazanym na rysunku 5.4, można wybrać jeden z domyślnych kolorów, a nawet utworzyć zupełnie nowy kolor. Rysunek 5.4. W oknie dialogowym Object Color możesz zdefiniować kolor obiektu wyświetlanego w oknach widokowych

W oknie Object Color dostępne są dwie palety kolorów: standardowa 3ds Max oraz AutoCAD ACI. Druga z nich zawiera zdecydowanie większą liczbę kolorów, jednak paleta 3ds Max umożliwia definiowanie kolorów niestandardowych. Powyżej przycisku Cancel znajduje się przycisk Select By Color. Kliknięcie go powoduje otwarcie okna Select Objects, które umożliwia zaznaczanie wszystkich obiektów mających określony kolor. Przy zaznaczonej opcji Assign Random Colors (w oknie Object Color) każdemu nowo tworzonemu obiektowi przypisywany jest kolor wybierany losowo z danej palety. Jeżeli ta opcja zostanie wyłączona, kolory wszystkich nowych obiektów będą jednakowe, aż do momentu, kiedy wybierzesz nowy kolor. Przypisywanie różnych kolorów ułatwia późniejsze odróżnianie obiektów podczas zaznaczania i przekształcania. Okno Object Color wyposażone jest także w przycisk By Object (zamiennie z By Layer), który pojawia się tylko wtedy, gdy przynajmniej jeden z obiektów jest zaznaczony. Korzystając z tego przycisku, możesz zaznaczonym obiektom przypisać kolor wybrany przez siebie lub kolor warstwy, do której należą.

190

Część II  Praca z obiektami

W celu dodania kolorów niestandardowych należy kliknąć przycisk Add Custom Colors. Spowoduje to otwarcie okna Color Selector, pokazanego na rysunku 5.5. Aby dodać wybrany kolor do szeregu Custom Colors w oknie Object Color, należy kliknąć przycisk Add Color. Okno Color Selector można także otworzyć, klikając próbkę Current Color (kolor bieżący). Bieżący kolor można wtedy przeciągnąć do wiersza Custom Colors. Cały wiersz Custom Colors można wypełnić nowymi kolorami, klikając wielokrotnie przycisk Add Color. Rysunek 5.5. Okno dialogowe Color Selector pozwala definiować kolory niestandardowe

Okno Color Selector pozwala zdefiniować kolor w oparciu o jeden z dwóch systemów: RGB (Red — czerwony, Green — zielony, Blue — niebieski) lub HSV (Hue — barwa, Saturation — nasycenie, Value — jasność). Inną metodą wybrania żądanego koloru jest umieszczenie kursora w odpowiednim miejscu „tęczowej” palety w lewej części okna. Aby odnaleziony, odpowiedni kolor pojawił się w oknie Object Color, należy kliknąć przycisk Add Color. Od tego momentu będzie on dostępny po każdym otwarciu okna Object Color. Kolory można wykorzystywać również do filtrowania i zaznaczania obiektów. Przykładowo za pomocą polecenia Edit/Select By/Color (lub po kliknięciu przycisku Select By Color1 w oknie Object Color) można zaznaczyć wszystkie obiekty, które mają przypisany określony kolor. Obiekt może być wyświetlany w swoim własnym kolorze lub w kolorze materiału, jaki został mu przypisany. Przełączania między tymi ustawieniami można dokonywać w rolecie Display Color w panelu Display (piąta od lewej zakładka w panelu poleceń z ikoną przedstawiającą monitor). Mogą być one ustawiane oddzielnie dla widoku Wireframe i Shaded.

Narzędzie do pobierania koloru z ekranu (Sample Screen Color), znajdujące się w dolnej części okna Color Selector, pozwala pobrać kolor z dowolnego otwartego okna Maksa, włącznie z oknem końcowego renderingu (Rendered Scene). Aby użyć tego narzędzia, kliknij je, a następnie przesuwaj wskaźnik po ekranie monitora. Wskaźnik przyjmie postać kroplomierza. Jeśli podczas przesuwania wskaźnika przytrzymasz wciśnięty lewy przycisk myszy, kolor w oknie Color Selector będzie na bieżąco uaktualniany. Jeśli dodat-

1

Przycisk Select By Color w oknie Object Color jest dostępny tylko wtedy, gdy przynajmniej jeden obiekt w scenie ma przypisany bieżący kolor (czyli ten, który jest wyświetlany w polu Current Color) — przyp. tłum.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

191

kowo przytrzymasz wciśnięty klawisz Shift, kolory wskazywane podczas przeciągania wskaźnika będą mieszane ze sobą — otrzymasz w ten sposób kolor będący wypadkową tych kolorów, które wskazałeś kroplomierzem. Narzędzie Sample Screen Color działa tylko w obrębie okien Maksa.

Korzystanie z narzędzia Color Clipboard Przypisywanie kolorów obiektom jest pierwszą, lecz — oczywiście — nie ostatnią okazją do kontaktu z kolorami. Jeżeli uda Ci się znaleźć kolor, który zechcesz wykorzystać w innych etapach pracy, pomocne może okazać się narzędzie Color Clipboard (schowek koloru). Pozwala ono zachowywać wybrane kolory i używać ich w różnych miejscach. Po wybraniu polecenia Tools/Color Clipboard otwarta zostanie roleta tego narzędzia w panelu Utilities, tak jak to pokazano na rysunku 5.6. Rysunek 5.6. Narzędzie Color Clipboard służy do przenoszenia kolorów

Roleta narzędzia Color Clipboard zawiera cztery próbki kolorów. Próbki te mogą być przeciągane w inne miejsca, np. do okna Material Editor. Kliknięcie każdej z nich powoduje otwarcie okna Color Selector. Przycisk New Floater służy natomiast do otwierania pływającego okna Color Clipboard, w którym można przechowywać dwanaście kolorów (patrz rysunek 5.7). Kliknięcie dowolnej próbki prawym przyciskiem myszy rozwija menu podręczne z poleceniami kopiowania (Copy) i wklejania (Paste). Okno to umożliwia również zapisywanie i wczytywanie zestawów kolorów. Pliki z tymi zestawami mają rozszerzenie .ccb. Rysunek 5.7. Pływająca paleta Color Clipboard może przechowywać 12 kolorów

Stosowanie różnych metod tworzenia obiektów Istnieje kilka metod tworzenia obiektów podstawowych przez przeciąganie kursora w oknie widokowym. W pierwszej z nich miejsce początkowego kliknięcia jest zarazem punktem, od którego rozpoczyna się tworzenie obiektu. Następnie przeciągamy kursor, definiując w ten sposób pierwszy wymiar obiektu. Jeśli trzeba, należy powtórzyć tę czynność w celu określenia kolejnego wymiaru. Do utworzenia różnych obiektów potrzebna jest, w zależności od liczby wymiarów, różna liczba kliknięć i przeciągnięć kursora. Przykładem jednego z najprostszych do utworzenia obiektów jest sfera. Aby ją wykreować, kliknij w oknie widokowym, by ustanowić środek sfery, przeciągnij kursor na odległość

192

Część II  Praca z obiektami

równą jej promieniowi i na koniec zwolnij przycisk myszy. Z kolei utworzenie prostopadłościanu (Box) wymaga przeciągnięcia kursora w celu zdefiniowania rozmiarów podstawy (szerokość oraz długość), a następnie kolejnego przeciągnięcia, by określić wysokość. Jeżeli zdarzy Ci się zapomnieć, który z wymiarów ma być akurat definiowany, spójrz na linię zachęty, która wyświetla odpowiednią informację. Gdy klikniesz przycisk z nazwą obiektu, wyświetlona zostanie roleta Creation Method umożliwiająca wybór metody tworzenia obiektu. Przykładowo przy konstruowaniu sfery we wspomnianej rolecie dostępne będą dwie możliwości — Edge oraz Center. Po wybraniu metody Edge kliknięcie w oknie widokowym ustawi punkt leżący na powierzchni sfery, natomiast przeciągnięcie wskaźnika wyznaczy jej średnicę. W domyślnej metodzie Center kliknięcie określa środek sfery, a przeciągnięcie wyznacza jej promień. Dla różnych obiektów istnieją odmienne metody tworzenia. Przy konstruowaniu obiektów typu Box do wyboru mamy np. metodę pozwalającą na uzyskanie idealnego sześcianu przez jedno kliknięcie i przeciągnięcie myszą. W tabeli 5.1 zebrano metody konstruowania oraz liczby kliknięć wymagane do tworzenia wszystkich obiektów podstawowych. Tabela 5.1. Metody tworzenia obiektów podstawowych Obiekt podstawowy

Nazwa obiektu

Liczba kliknięć Domyślna metoda Inna metoda w oknie widokowym tworzenia tworzenia

Box

2

Box

Cube

Cone

3

Center

Edge

Sphere

1

Center

Edge

GeoSphere

1

Center

Diameter

Cylinder

2

Center

Edge

Tube

3

Center

Edge

Torus

2

Center

Edge

Pyramid

2

Base/Apex

Center

Teapot

1

Center

Edge

Plane

1

Rectangular

Square

Hedra

1





Torus Knot

2

Radius

Diameter

ChamferBox

3

Box

Cube

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

193

Tabela 5.1. Metody tworzenia obiektów podstawowych — ciąg dalszy Obiekt podstawowy

Nazwa obiektu

Liczba kliknięć Domyślna metoda Inna metoda w oknie widokowym tworzenia tworzenia

ChamferCyl

3

Center

Edge

OilTank

3

Center

Edge

Capsule

2

Center

Edge

Spindle

3

Center

Edge

L-Ext

3

Corners

Center

Gengon

3

Center

Edge

C-Ext

3

Corners

Center

RingWave

2





Hose

2





Prism

3

Base/Apex

Isosceles

Jeśli w trakcie tworzenia obiektu podstawowego rozmyślisz się, kliknij prawym przyciskiem myszy, aby zakończyć proces. Przy konstruowaniu niektórych obiektów podstawowych, takich jak Hedra, RingWave lub Hose, nie ma możliwości wyboru metody tworzenia.

Precyzyjne określanie wymiarów za pomocą rolety Keyboard Entry Tworząc obiekty podstawowe, możemy zdefiniować ich położenie oraz wymiary metodą klikania i przeciągania kursora w oknie widokowym. Istnieje także możliwość precyzyjnego określenia tych wartości. Służy do tego roleta Keyboard Entry znajdująca się w panelu Create. Możesz tutaj wprowadzić współrzędne X, Y i Z punktu początkowego oraz określić dokładne rozmiary tworzonego obiektu. Wartości współrzędnych odnoszą się do aktywnej płaszczyzny konstrukcyjnej, którą zazwyczaj jest główna siatka konstrukcyjna (Home Grid). Po wypełnieniu wszystkich pól wymiarowych kliknij przycisk Create, aby utworzyć obiekt. Kilkakrotne kliknięcie tego przycisku spowoduje powstanie odpowiednio zwielokrotnionej liczby obiektów. Zmiany dokonane w polach rolety Keyboard Entry nie mają wpływu na obiekt już istniejący. Zawsze można jednak skorzystać z polecenia Undo i skonstruować obiekt od nowa.

194

Część II  Praca z obiektami

Modyfikacja parametrów obiektów Ostatnią roletą, wspólną dla wszystkich obiektów podstawowych, jest roleta Parameters. Zebrane są w niej wszystkie parametry danego obiektu. W odróżnieniu od rolety Keyboard Entry, która służy jedynie do konstruowania obiektów, można ją wykorzystywać do określania parametrów obiektów zarówno tworzonych, jak i już istniejących. Gdy np. zwiększysz wartość parametru Radius, utworzona właśnie sfera zostanie powiększona. Taka możliwość zmiany parametrów utworzonego obiektu istnieje dopóty, dopóki aktywny jest tryb tworzenia danego obiektu. Różne obiekty mają odmienne parametry. Najczęściej służą one do określania rozmiarów, liczby segmentów, z których tworzony jest obiekt, oraz do dzielenia obiektu na sekcje. Istnieje także możliwość zaznaczenia opcji Generate Mapping Coordinates (automatycznie tworzy współrzędne mapowania potrzebne do nałożenia materiału na obiekt) oraz Real-World Map Size (definiuje wymiary tekstury, niezależne od rozmiarów obiektu). Po usunięciu zaznaczenia obiektu roleta Parameters znika z panelu Create i zostaje przeniesiona do panelu Modify. Aby więc dokonać modyfikacji parametrów obiektu w późniejszym czasie, należy go zaznaczyć i kliknąć zakładkę panelu Modify.

Poprawianie błędów oraz usuwanie obiektów Przed przystąpieniem do dalszej nauki musisz sobie przypomnieć, w jaki sposób można cofnąć ostatnią operację. Służy do tego polecenie Undo (skrót klawiszowy Ctrl+Z), niezależnie od tego, czy ostatnim działaniem było tworzenie obiektu, czy też zmiana jego parametrów. Z kolei polecenie Redo (Ctrl+Y) pozwala ponowić cofniętą operację. Do cofania operacji mających wpływ na sposób oglądania sceny służy specjalne polecenie w menu Views. Jest nim Undo View Change (Shift+Z). Za jego pomocą możesz cofać wszelkie operacje związane z oknami widokowymi, np. pomniejszanie, powiększanie, przesuwanie i obracanie widoku.

Liczbę cofniętych operacji możesz ustawić w panelu General okna dialogowego Preference Settings. Jeśli klikniesz małą strzałkę obok przycisku Undo lub Redo w pasku szybkiego dostępu, wyświetlona zostanie lista ostatnich czynności. Możesz wybrać dowolną, aby ją cofnąć. Podczas eksperymentowania z obiektami można korzystać także z poleceń Hold (Ctrl+H) i Fetch (Alt+Ctrl+F) dostępnych w menu Edit. Pierwsze z nich zapisuje całą scenę łącznie z konfiguracją okien widokowych w tymczasowym buforze. Tak zarejestrowaną scenę możesz w każdej chwili przywrócić za pomocą polecenia Fetch. Jest to szybsze niż tradycyjne zapisywanie i otwieranie pliku.

Wybór polecenia Edit/Delete powoduje usunięcie ze sceny zaznaczonego obiektu (lub obiektów). (Skrótem klawiszowym tego polecenia jest, na szczęście, klawisz Delete. Każdy inny skrót mógłby sprawiać kłopoty.)

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

195

Ćwiczenie: Przegląd brył platońskich Wśród wielu odkryć greckiego matematyka i filozofa Platona znaczące miejsce zajmują matematyczne wzory służące do opisu brył foremnych. Są to obiekty zbudowane w całości z jednakowych wielokątów. Istnieje pięć wielościanów spełniających powyższe kryteria. Nazywane są bryłami platońskimi. Za pomocą Maksa można utworzyć te ciekawe obiekty geometryczne i dokładnie im się przyjrzeć. Każdy z nich możesz zbudować, wykorzystując obiekt typu Hedra (wielościan), dostępny w podkategorii Extended Primitives. Aby utworzyć pięć brył platońskich, wykonaj następujące czynności. 1. Otwórz panel Create, kliknij przycisk Geometry i wybierz z listy rozwijanej podkategorię Extended Primitives. Aby przejść do trybu tworzenia obiektu typu Hedra, kliknij odpowiedni przycisk lub wybierz polecenie Create/Extended Primitives/Hedra. 2. Kliknij okno widokowe Top i przeciągnięciem kursora w lewo utwórz czworościan. Po utworzeniu obiektu możesz zmienić jego parametry, modyfikując ustawienia w rolecie Parameters. Podstawowe parametry są dostępne w panelu Create dopóty, dopóki utworzony obiekt 2 jest zaznaczony . Jeśli usuniesz zaznaczenie obiektu, parametry znikną z panelu Create. Aby uzyskać do nich dostęp, będziesz musiał otworzyć panel Modify.

3. W rolecie Parameters zaznacz opcję Tetra, w sekcji Family Parameters (parametry rodziny obiektów) ustaw wartość parametru P na 1,0, a w polu Radius (promień) wpisz 50. Po wpisaniu każdej wartości nie zapomnij wcisnąć klawisza Enter, aby zatwierdzić wprowadzone modyfikacje. W polu Object Name wpisz nazwę Tetrahedron (czworościan). 4. W oknie widokowym Top kliknij i przeciągnij kursor, aby utworzyć nowy obiekt typu Hedra. W rolecie Parameters zaznacz opcję Cube/Octa, w sekcji Family Parameters wpisz w polu P wartość 1,0, a w polu Radius wpisz 50. Powstały obiekt nazwij Octagon (ośmiościan). 5. Ponownie przeciągnij kursor w oknie widokowym Top, aby utworzyć kolejny obiekt. Opcja Cube/Octa niech pozostanie zaznaczona. W polu Q sekcji Family Parameters wprowadź wartość 1,0, natomiast w polu Radius wpisz 50. Obiektowi nadaj nazwę Cube (sześcian). 6. W tym samym oknie utwórz czwarty z kolei obiekt tego samego typu. W rolecie Parameters zaznacz opcję Dodec/Icos, w polu P wpisz wartość 1,0, w polu Radius wpisz 50. Obiektowi nadaj nazwę Icosahedron (dwudziestościan).

2

Nie decyduje o tym zaznaczenie obiektu, lecz pozostawanie w trybie jego tworzenia, o czym informuje odmienny kolor przycisku z nazwą tworzonej bryły. Roleta Parameters zniknie z panelu Create, gdy klikniemy prawym przyciskiem myszy w oknie widokowym lub wybierzemy inne narzędzie, mimo że utworzony właśnie obiekt nadal będzie zaznaczony — przyp. tłum.

196

Część II  Praca z obiektami

7. Kolejnym przeciągnięciem w oknie Top utwórz ostatni już obiekt. Z ciągle zaznaczoną opcją Dodec/Icos w polu Q wpisz wartość 1,0, w polu Radius wpisz 50. Nazwij ten obiekt Dodecahedron (dwunastościan). 8. Aby lepiej przyjrzeć się powstałym obiektom, kliknij okno widokowe Perspective, wciśnij przycisk Zoom Extents oraz zmaksymalizuj okno, klikając przycisk Maximize Viewport Toggle (skrót klawiszowy — Alt+W) znajdujący się w prawym dolnym rogu ekranu. Na rysunku 5.8 przedstawiono pięć obiektów będących bryłami foremnymi. Za pomocą panelu Modify mamy możliwość modyfikowania ich parametrów, a tym samym poznania zależności występujących w omawianych obiektach. Więcej informacji na temat obiektów typu Hedra znajdziesz w dalszej części tego rozdziału.

Rysunek 5.8. Ośmiościan, sześcian, czworościan, dwudziestościan i dwunastościan. Platon byłby zdumiony!

Przegląd typów obiektów podstawowych W panelu Create znajdują się dwie podkategorie obiektów podstawowych — Standard Primitives oraz Extended Primitives. Pozwalają one na tworzenie szerokiej gamy obiektów, począwszy od nieskomplikowanych prostopadłościanów i sfer, na złożonych obiektach typu Torus Knot kończąc. Wszystkie można utworzyć z poziomu panelu Create.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

197

Standardowe obiekty podstawowe Do grupy Standard Primitives (standardowe obiekty podstawowe) należy wiele najprostszych i najczęściej wykorzystywanych obiektów, takich jak prostopadłościany, sfery i walce. Na rysunku 5.9 zebrano wszystkie obiekty tego rodzaju. Rysunek 5.9. Standardowe obiekty podstawowe: prostopadłościan, sfera, walec, torus, dzbanek, stożek, sfera geodezyjna, rura, ostrosłup oraz płaszczyzna

Box (prostopadłościan) Obiekty typu Box służą do tworzenia zarówno foremnych sześcianów, jak i prostopadłościanów o dowolnej szerokości, długości i wysokości. Wciśnięcie klawisza Ctrl podczas pierwszego przeciągania kursora sprawi, że powstanie bryła o podstawie kwadratowej. W celu skonstruowania sześcianu zaznacz w rolecie Creation Method opcję Cube. Wystarczy wtedy jedno kliknięcie i przeciągnięcie. Parametry Length Segs, Width Segs oraz Height Segs określają liczbę segmentów przypadających na każdy z wymiarów obiektu. Domyślne ustawienie to jeden segment.

Sphere (sfera) Sfery pojawiają się we wszystkich dziedzinach życia — mogą być piłkami sportowymi oraz planetami w kosmosie. Bryły te zaliczają się także do grupy najłatwiejszych do skonstruowania obiektów. Po wciśnięciu przycisku Sphere wystarczy kliknąć i przeciągnąć kursor w oknie widokowym. W rolecie Parameters znajduje się parametr Segments, którego wartość określa liczbę wielokątów tworzących sferę. Im większa liczba segmentów, tym bardziej zaokrąglona sfera. Przy domyślnie ustawionej liczbie 32 segmentów bryła ma kształt kulisty, natomiast po zmniejszeniu tej liczby do 4 powstaje obiekt o wyglądzie kryształu diamentu. Opcja Smooth decyduje o tym, czy powierzchnia sfery ma być gładka, czy fasetowana. Ta druga możliwość jest szczególnie pomocna przy określaniu ścianek, które mają być modyfikowane. Na rysunku 5.10 przedstawiono pięć różnych sfer. Pierwsza z lewej została skonstruowana z 32 segmentów i przy zaznaczonej opcji Smooth. Natomiast pozostałe mają tę opcję wyłączoną, a wartości parametru Segments równe, odpowiednio, 32, 16, 8 i 4. Rysunek 5.10. Obiekty podstawowe typu Sphere złożone z różnej liczby segmentów, z włączoną i wyłączoną opcją Smooth

198

Część II  Praca z obiektami

W rolecie Parameters znajduje się także parametr Hemisphere, który umożliwia tworzenie kulistych czasz. O wysokości takiej czaszy decyduje właśnie parametr Hemisphere. Przyjmuje on wartości z zakresu od 0 do 1, przy czym 0 oznacza klasyczną, „pełną” kulę, natomiast 1 oznacza, że nie powstanie żaden obiekt (idealną półkulę uzyskuje się przy wartości 0,5). Po ustawieniu tego parametru pozostaje określić, co ma się stać z wielokątami, z których zbudowana byłaby pełna sfera, a teraz pozostają niewykorzystane. Możesz wybrać jedną z dwóch opcji: Chop, która powoduje usunięcie niepotrzebnych wielokątów, oraz Squash, gdzie wszystkie wielokąty pozostają, są jednak „ściskane”, tak aby dopasowały się do kształtu czaszy. Na rysunku 5.11 przedstawiono dwie czasze utworzone przy wartości parametru Hemisphere wynoszącej 0,5. Włączenie opcji Edged Faces pozwoliło pokazać krawędzie wielokątów. Lewą półkulę utworzono przy włączonej opcji Chop, prawą natomiast przy aktywnej opcji Squash. Widać wyraźnie, że obiekt po prawej stronie zbudowany jest z większej liczby wielokątów. Rysunek 5.11. Półkule utworzone przy włączonych opcjach Chop oraz Squash

Zaznaczenie opcji Slice On umożliwia podział sfery na części (tak jak dzieli się pomarańczę). Parametry Slice From i Slice To przyjmują wartości z zakresu od 0 do 360. Na rysunku 5.12 pokazano cztery utworzone w ten sposób części sfery. Ponieważ nie zmieniano wartości parametru Segments, wszystkie kawałki składają się z takiej samej liczby wielokątów. Rysunek 5.12. Zastosowanie opcji Slice On do tworzenia części sfery

Opcja Slice On dostępna jest dla wielu obiektów podstawowych, takich jak Sphere, Cylinder, Torus, Cone, Tube, Oiltank, Spindle, Chamfercyl czy Capsule.

Opcja Base to Pivot określa, czy środek obrotu ma być umieszczony u dołu, czy też w środku sfery. Przy ustawieniu domyślnym (wyłączona opcja Base to Pivot) środek obrotu pokrywa się ze środkiem sfery.

Cylinder (walec) Obiekty w kształcie walca wykorzystywane mogą być w wielu miejscach — np. jako kolumna podpierająca dach budynku lub wał napędowy w samochodzie. Aby utworzyć obiekt tego typu, najpierw należy zdefiniować koło stanowiące podstawę walca, a następnie określić jego wysokość. Domyślna liczba ścian bocznych, wynosząca 18, daje gładką powierzchnię bryły. Parametry Height Segments i Cap Segments określają liczbę segmentów

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

199

tworzących, odpowiednio, boczne oraz dolne i górne ściany obiektu. Opcje Smooth i Slice mają takie samo działanie jak w przypadku opisywanej wcześniej sfery (patrz poprzedni podpunkt). Jeśli nie planujesz modyfikowania podstaw walca, ustaw wartość Cap Segments równą 1. Dzięki temu obiekt nie będzie miał zbyt skomplikowanej budowy.

Torus Torus (matematyczne określenie kształtu obwarzanka) to pierścień o kołowym przekroju poprzecznym. Do jego skonstruowania potrzebne jest określenie dwóch promieni. Pierwszy definiuje odległość od środka obiektu do punktu będącego środkiem kołowego przekroju; drugi jest po prostu promieniem tegoż przekroju. Domyślne ustawienia prowadzą do powstania torusa zbudowanego z 24 segmentów, z których każdy składa się z 12 ścian bocznych. Parametry Rotation oraz Twist powodują obrót przekrojów poprzecznych o określony kąt3. Na rysunku 5.13 przedstawiono kilka przykładowych torusów utworzonych przy zaznaczonej opcji None w sekcji Smooth (czyli bez wygładzania). Pierwsze trzy mają, odpowiednio, 24, 12 i 6 segmentów. W kolejnych dwóch parametr Twist został ustawiony na 90 oraz 360. Im większa liczba segmentów, tym bardziej kształt torusa przypomina bryłę obrotową. Domyślna liczba tych segmentów, wynosząca 24, jest zazwyczaj wystarczająca, aby torus oglądany z góry miał kształt okrągły. Za wygładzanie przekroju poprzecznego odpowiada liczba ścian bocznych — parametr Sides. Rysunek 5.13. Torusy z różnymi ustawieniami parametrów Segments i Twist

W sekcji Smooth rolety Parameters dostępne są cztery opcje wygładzania. Opcja All powoduje wygładzenie wszystkich krawędzi, a po zaznaczeniu opcji None wszystkie wielokąty widoczne są jako odrębne ścianki. Opcja Sides wygładza krawędzie między bocznymi ścianami sąsiednich segmentów, tworząc gładkie pasma wzdłuż torusa. Po zaznaczeniu opcji Segments wygładzane są krawędzie w obrębie poszczególnych segmentów. Opcja Slice On spełnia takie samo zadanie jak w przypadku walca i sfery, opisywanych wcześniej — patrz podpunkt „Sphere (sfera)”.

Teapot (dzbanek) Zaśpiewajmy teraz wszyscy razem: „Jestem mały dzbanek, niski i pękaty…”. Dzbanek jest kolejnym, podobnie jak sfera, bardzo łatwym do utworzenia obiektem. W rolecie Parameters określić można liczbę segmentów, stan powierzchni (wygładzona lub fasetowana), można także wskazać, które części dzbanka mają być widoczne. Do wyboru mamy Body (korpus), Handle (uchwyt), Spout (dzióbek) oraz Lid (wieczko). 3

Parametr Rotation powoduje obrót wszystkich przekrojów o ten sam kąt, a parametr Twist obraca je w sposób progresywny (każdy kolejny przekrój jest obracany o większy kąt) — przyp. tłum.

200

Część II  Praca z obiektami Większość opisywanych tutaj obiektów to rzeczywiście obiekty „podstawowe”. Wyjątkiem jest dzbanek. Obiekt ten zajmuje jednak specjalne miejsce w grafice komputerowej. W początkowym okresie jej rozwoju często był stosowany jako model testowy przy opracowywaniu różnych algorytmów. Obecnie również wielu grafików wykorzystuje go do testowania programów graficznych.

Cone (stożek) Obiekty typu Cone są często wykorzystywane przy budowaniu modeli rożków lodowych lub megafonów. Tworzone są prawie tak samo jak walce. Jedyną różnicą jest fakt, iż promienie obu podstaw obiektu mogą być różne. Konstruując stożek, należy pierwszym kliknięciem i przeciągnięciem ustalić pierwszą okrągłą podstawę bryły, następnym przeciągnięciem określić jej wysokość i ostatnim już ruchem zdefiniować drugą podstawę. Oprócz możliwości zdefiniowania obu promieni oraz wysokości stożka, w rolecie Parameters możesz określić wartości parametrów Height Segments (liczba segmentów wzdłuż wysokości), Cap Segments (liczba segmentów podstawy) i Sides (liczba boków), a także skorzystać ze znanych już opcji Smooth oraz Slice On.

GeoSphere (sfera geodezyjna) Obiekt GeoSphere jest sferą skonstruowaną z mniejszej niż klasyczna sfera liczby wielokątów. Na całej powierzchni tej bryły ścianki mają mniej więcej takie same rozmiary. W przypadku klasycznej sfery jest inaczej — im bliżej biegunów, tym większa koncentracja wielokątów. Dzięki temu obiekty typu GeoSphere wykorzystują mniej pamięci, a co za tym idzie, są zapisywane w plikach o mniejszych rozmiarach. Jednym z powodów takiego stanu rzeczy jest fakt, iż konstrukcja obiektu GeoSphere oparta jest na trójkątach, a nie na prostokątach. W rolecie Parameters znajduje się sekcja Geodesic Base Type (podstawowy typ geodezyjny), zawierająca następujące opcje: Tetra, Octa oraz Icosa. Tetra tworzy siatkę opartą na czworościanie, Octa — na ośmiościanie, a Icosa — na dwudziestościanie. Ustawiając wartość parametru Segments na 1, można utworzyć każdy z tych wielościanów. Poszczególne typy geodezyjne stosują różne sposoby układania trójkątnych ścianek. Podobnie jak w przypadku klasycznej sfery, także przy konstruowaniu obiektu GeoSphere dostępne są opcje Smooth, Hemisphere i Base to Pivot. Zaznaczenie opcji Hemisphere prowadzi do powstania czaszy kulistej, nie ma jednak dodatkowych opcji Chop i Squash. Z obiektów typu GeoSphere nie można również wycinać żadnych części.

Ćwiczenie: Porównanie obiektów typu Sphere i GeoSphere Aby przekonać się, że GeoSphere jest obiektem bardziej wydajnym niż Sphere, wykonaj następujące czynności. 1. Utwórz obiekt typu Sphere i ustaw wartość parametru Segments na 4. 2. Obok tej zwykłej sfery utwórz obiekt GeoSphere, zaznaczając w sekcji Geodesic Base Type typ Tetra i wpisując w polu Segments wartość 4.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

201

3. Utwórz kolejny obiekt GeoSphere, zaznaczając typ Octa i wpisując w polu Segments wartość 4. 4. Na koniec utwórz obiekt GeoSphere typu Icosa zbudowany z 4 segmentów. Na rysunku 5.14 zostały przedstawione wszystkie cztery sfery. Umieszczona po lewej stronie zwykła sfera ma wygląd diamentu, natomiast obiekt GeoSphere kształtem zbliżony jest już do okrągłej sfery. Warto zwrócić uwagę na fakt, iż najbardziej gładka sfera (pierwsza z prawej) powstała po wybraniu typu geodezyjnego Icosa. Rysunek 5.14. Nawet przy jednakowej liczbie segmentów obiekty typu GeoSphere mają bardziej kulisty kształt

Tube (rura) Obiekty podstawowe Tube mają zastosowanie zawsze wtedy, gdy projektujemy rury. Można je także wykorzystywać do tworzenia brył w kształcie pierścienia o prostokątnym przekroju poprzecznym. Tworzenie rur jest bardzo podobne do kreowania walców i stożków. Wymagane jest określenie dwóch promieni — wewnętrznego i zewnętrznego. Tutaj także dostępne są opcje Smooth i Slice On.

Pyramid (ostrosłup) Obiekty podstawowe typu Pyramid zbudowane są z podstawy w kształcie prostokąta oraz trójkątnych ścian bocznych zbiegających się we wspólnym wierzchołku. Wyglądem przypominają piramidy znane z Egiptu, są jednak znacznie łatwiejsze do zbudowania. Istnieją dwa sposoby tworzenia prostokątnej podstawy. W metodzie Base/Apex przeciągnięciem kursora określa się przekątną podstawy, natomiast w metodzie Center przeciągnięcie wyznacza odcinek między środkiem podstawy a jednym z jej narożników. Wymiary podstawy definiowane są przez parametry Width (szerokość) i Depth (głębokość), a za wysokość piramidy odpowiada wartość parametru Height. Każdemu z wymiarów można także przypisać liczbę tworzących go segmentów.

Plane (płaszczyzna) Obiekt typu Plane może posłużyć do wymodelowania np. krajobrazu Great Plains4 (ciekawy kalambur, nieprawdaż?). Obiekt ten jest płaszczyzną w kształcie prostokąta. Dzięki parametrom zawartym w sekcji Render Multipliers (mnożnik renderowania) możliwe jest skalowanie rozmiaru obiektu podczas renderowania. Funkcja ta ułatwia pracę w oknie widokowym, nie trzeba bowiem pamiętać o tworzeniu dużej płaszczyzny reprezentującej podłoże, co z kolei mogłoby sprawiać, że pozostałe obiekty w scenie byłyby w porównaniu z nią bardzo małe. 4

Wielkie Równiny — kraina geograficzna Ameryki Północnej — przyp. tłum.

202

Część II  Praca z obiektami Obiekt typu Plane złożony z dużej liczby ścianek można przekształcić w pofałdowany teren przez zmianę wysokości poszczególnych wierzchołków za pomocą modyfikatora Noise.

Istnieją dwie metody tworzenia płaszczyzny — Rectangle oraz Square. W metodzie Square przeciągnięcie kursora w oknie widokowym prowadzi do powstania idealnego kwadratu. Ten sam efekt można uzyskać, przeciągając kursor przy wciśniętym klawiszu Ctrl. Za pomocą parametrów Length Segs i Width Segs można także dokładnie określić liczbę segmentów tworzących płaszczyznę, jednak prawdziwą zaletą tego obiektu jest możliwość wykorzystania mnożników Render Multipliers. Wartość mnożnika Scale określa, ile razy płaszczyzna ma się powiększyć podczas renderowania. Wymiary Length (długość) i Width (szerokość) są wówczas mnożone przez tę właśnie wartość. Mnożnik Density wpływa z kolei na ilość segmentów tworzonych w trakcie renderowania. Wyświetlana poniżej wartość Total Faces informuje o całkowitej liczbie ścianek, na jakie ostatecznie zostanie podzielona płaszczyzna. Stosując te mnożniki, można umieścić w scenie niewielką płaszczyznę, która dopiero podczas renderowania urośnie do wymaganych rozmiarów. Dzięki temu uzyskuje się bardziej naturalne działanie przycisku Zoom Extents — obecność dużej płaszczyzny powodowałaby nadmierne zmniejszenie widoku całej sceny.

Rozbudowane obiekty podstawowe W celu uzyskania dostępu do obiektów Extended Primitives (rozbudowane obiekty podstawowe), należy w panelu Create wybrać odpowiednią podkategorię. Obiekty te nie są może tak powszechne jak standardowe, ale są równie użyteczne (patrz rysunek 5.15). Rysunek 5.15. Rozbudowane obiekty podstawowe: wielościan, prostopadłościan sfazowany, zbiornik, wrzeciono, graniastosłup, falujący pierścień, pryzmat, węzeł, walec sfazowany, kapsuła, kątownik, ceownik i wąż

Hedra (wielościan) Bryły typu Hedra stanowią bazę całej klasy obiektów geometrycznych definiowanych przez podstawowe prawa matematyczne. Oprócz wspominanego już Platona, także Jan Kepler badał właściwości wielościanów, a nawet wykorzystał je jako podstawę swojej słynnej teorii harmonii sfer. W Maksie dostępne są następujące rodziny tego typu obiektów:

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

203

Tetra (czworościan), Cube/Octa (sześcian/ośmiościan), Dodec/Icos (dwunastościan/ dwudziestościan) oraz dwa rodzaje gwiazd nazywane Star1 oraz Star2. Bazując na nich, można skonstruować wiele rozmaitych obiektów. Kształt obiektu typu Hedra określa się w sekcji Family (rodzina). Każda rodzina składa się z dwóch głównych obiektów połączonych ze sobą matematycznymi zależnościami. Zmieniając parametry P i Q w sekcji Family Parameters, możesz przechodzić od jednego z tych obiektów do drugiego. Przykładowo po zaznaczeniu opcji Cube/Octa i ustawieniu w polu P wartości 1 powstanie ośmiościan, natomiast ustawienie takiej wartości w polu Q da sześcian. Jeżeli oba te parametry mają wartość 0, obiekt ma kształt będący czymś pośrednim między sześcianem a ośmiościanem. Ponieważ parametry P i Q są ze sobą powiązane5, tylko jeden z nich (dla danej rodziny) może przyjąć wartość 1. Na rysunku 5.16 zostały pokazane wszystkie rodziny obiektów typu Hedra. W kolumnach od lewej do prawej są to: Tetra, Cube/Octa, Dodec/Icos, Star1, Star2. W górnym wierszu parametry P i Q mają wartości, odpowiednio, 1 i 0, w środkowym oba parametry mają wartość 0, a w dolnym wierszu P jest równe 0 i Q jest równe 1. Zauważ, że bryły w środkowym rzędzie są kombinacją obiektów z dolnego i górnego wiersza. Rysunek 5.16. Rodziny wielościanów; wiersze górny i dolny zawierają obiekty o kształtach standardowych, a wiersz środkowy — obiekty o kształtach pośrednich

Zależność między parametrami P i Q można opisać w następujący sposób: jeżeli wartość P wynosi 1 i Q jest równe 0, to wyświetlany jest jeden z obiektów głównych danej pary. Gdy wartość P maleje, każdy wierzchołek zamienia się w oddzielną ściankę, której krawędzie są tym dłuższe, im wartość parametru P jest bliższa zeru. Ta sama zasada odnosi się do parametru Q. Manipulując wartościami parametrów P i Q, można uzyskać obiekty o niezwykłych kształtach. Dla każdej rodziny wielościanów wypróbuj następujące kombinacje: P = 0, Q = 0; P = 1, Q = 0; P = 0, Q = 1; P = 0,5, Q = 0,5; P = 0,5, Q = 0; P = 0, Q = 0,5. Otrzymasz w ten sposób przegląd najważniejszych obiektów tej klasy.

Wraz ze zmianą geometrii brył ściany obiektów typu Hedra mogą być wielokątami maksymalnie trzech rodzajów6. Każdy z tych rodzajów jest reprezentowany przez parametr 5

Suma wartości tych parametrów nie może być większa od 1 — przyp. tłum.

6

Mogą to być trójkąty, czworokąty lub pięciokąty — przyp. tłum.

204

Część II  Praca z obiektami

P, Q lub R w sekcji Axis Scaling (skalowanie osi). Zmiana danego parametru powoduje zmodyfikowanie odpowiadających mu ścianek przez wyciąganie z nich wierzchołków. Jeżeli do budowy ścianek został wykorzystany tylko jeden rodzaj wielokąta, w sekcji Axis Scaling aktywny jest tylko jeden parametr. Przycisk Reset służy do przywrócenia domyślnych wartości tych parametrów (wynoszą one 100). Przykładowo, manipulując parametrem R, można z każdej ścianki sześcianu wyciągnąć piramidę. Na rysunku 5.17 przedstawiono kilka przykładów użycia parametrów Axis Scaling. W górnym rzędzie pokazano po jednym obiekcie z każdej rodziny wielościanów. Natomiast w dolnym rzędzie widoczne są te same obiekty po przeskalowaniu do wartości 170. Takie ustawienie spowodowało wyciągnięcie wierzchołków ze wszystkich ścianek, a co za tym idzie, powstanie nowych kształtów. Rysunek 5.17. Obiekty typu Hedra ze ściankami zmodyfikowanymi za pomocą parametrów Axis Scaling

Parametry sekcji Vertices służą do ustanawiania dodatkowych wierzchołków i krawędzi w obrębie każdej ścianki. Do wyboru mamy trzy opcje: Basic — zaznaczona domyślnie, nie wnosi żadnych nowych informacji do struktury obiektu; Center — tworzy wierzchołek w geometrycznym środku każdej ścianki i dodaje krawędzie łączące ten wierzchołek z narożnikami ścianki; Center & Sides — oprócz wierzchołka i krawędzi, takich jak w opcji Center, tworzy dodatkowe krawędzie łączące nowy wierzchołek z środkami bocznych krawędzi ścianki. Korzystając z tych opcji, możesz modyfikować ścianki według własnego uznania. Na samym dole rolety Parameters znajduje się parametr Radius (promień) określający ogólne rozmiary obiektu.

ChamferBox (prostopadłościan sfazowany) Obiekty sfazowane charakteryzują się łagodnymi krawędziami. Obiekt typu ChamferBox jest po prostu prostopadłościanem o sfazowanych krawędziach. Wielkość zaokrąglenia lub ścięcia krawędzi określany jest za pomocą parametru Fillet. W pewnym sensie obiekty tego typu są po prostu rozwinięciem obiektów typu Box. Jedyną nowością w rolecie Parameters są dwa pola pozwalające ustalić wielkość zaokrąglenia lub ścięcia (Fillet) oraz określić liczbę segmentów zaokrąglenia krawędzi7 — Fillet Segs. Na rysunku 5.18 przedstawiono obiekty typu ChamferBox z wartościami parametru Fillet wynoszącymi, odpowiednio, 0, 5, 10, 20 i 30 oraz przy włączonej opcji Smooth. 7

Im większa wartość parametru Fillet Segs, czyli im większa liczba segmentów, tym bardziej zaokrąglona krawędź (przy danej wartości parametru Fillet) — przyp. tłum.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

205

Rysunek 5.18. Obiekty typu ChamferBox z coraz większą wartością parametru Fillet

Obiekty cylindryczne z grupy Extended Primitives W skład podkategorii Extended Primitives wchodzi kilka podobnych do siebie obiektów zbudowanych na bazie walca. Jedyną istotną różnicą między nimi jest kształt obu podstaw. Do grupy tych obiektów należą: OilTank, Spindle, ChamferCyl oraz Capsule. Zostały one przedstawione na rysunku 5.19. Rysunek 5.19. Cylindryczne obiekty z grupy Extended Primitives: OilTank, Spindle, ChamferCyl oraz Capsule

OilTank (zbiornik) Jak na określenie obiektu podstawowego, nazwa OilTank brzmi nieco dziwnie. W rzeczywistości jest to walec z zakończeniami w kształcie kopuł, przypominający swoim wyglądem cysternę służącą do transportu paliwa. W rolecie Parameters znajduje się parametr Cap Height służący do określania wysokości kopuły. Wysokość obiektu (Height) można zdefiniować przy zaznaczonej opcji Overall — podaje się wtedy wysokość całego obiektu, lub przy zaznaczonej opcji Centers — podana wartość będzie wysokością samego walca, bez kopuł. Jedynym, rzeczywiście nowym parametrem jest Blend, dzięki któremu można uzyskać gładkie przejście między kopułami a powierzchnią boczną walca. Z wszystkich obiektów cylindrycznych można, podobnie jak ze sfery, wycinać określone części, zaznaczając opcję Slice On i podając wartości odpowiednich parametrów. Spindle (wrzeciono) Obiekty typu Spindle i OilTank są niemal identyczne. Różnią się jedynie kształtem zakończeń — kopuły zostały zastąpione stożkami. Wszystkie parametry znajdujące się w rolecie Parameters są dla obu obiektów takie same. ChamferCyl (walec sfazowany) Obiekty tego typu są z kolei bardzo podobne do obiektów ChamferBox. W tym przypadku prostopadłościan zostaje zastąpiony walcem. Roleta Parameters zawiera te same ustawienia pozwalające dopasować parametry fazowania. Capsule (kapsuła) Kolejnym obiektem zbudowanym na bazie walca jest obiekt typu Capsule z zakończeniami w postaci półkul. Wyglądem jest bardzo zbliżony do obiektu typu OilTank. Jedyną różnicę można dostrzec na styku walca i półkul.

206

Część II  Praca z obiektami

Gengon (graniastosłup) Obiekty typu Gengon to graniastosłupy, których podstawami są wielokąty foremne, takie jak trójkąty, kwadraty i pięciokąty. Także w przypadku tych obiektów istnieje możliwość fazowania (lub wygładzenia) krawędzi. Aby określić kształt wielokąta będącego podstawą, ustaw liczbę jego boków w polu Sides. Na rysunku 5.20 przedstawiono pięć prostych graniastosłupów o różnych podstawach. Rysunek 5.20. Obiekty podstawowe typu Gengon to w rzeczywistości wytłoczone wielokąty foremne

RingWave (falujący pierścień) RingWave to wyspecjalizowany obiekt podstawowy, dzięki któremu można utworzyć np. koło zębate lub koronę słoneczną. Składa się z dwóch okręgów, których krawędzie mogą być pofalowane, a nawet mogą się zmieniać w czasie. Obiekty typu RingWave mogą także posłużyć do symulacji gwałtownie rozprzestrzeniających się gazów powstałych po wybuchu bomby. Jeśli przewidujesz tworzenie efektów fali uderzeniowej, powinieneś dokładniej zapoznać się z tym obiektem. Wewnętrzny promień obiektu obliczany jest na podstawie podanej wartości Radius (promień zewnętrznego okręgu) oraz parametru Ring Width (szerokość pierścienia). Można również ustalić wysokość obiektu — parametr Height. Parametry Radial Segs, Height Segs i Sides określające liczbę segmentów decydują o złożoności obiektu. Parametry sekcji RingWave Timing służą do sterowania animacją obiektu. Start Time określa klatkę, w której pierścień się pojawia i zaczyna się powiększać, Grow Time to liczba klatek wymaganych do osiągnięcia przez obiekt pełnych rozmiarów, natomiast End Time określa klatkę, w której pierścień znika. Przy zaznaczonej opcji No Growth powiększanie się pierścienia zostaje wyłączone, jego rozmiary są takie same zarówno w pierwszej, jak i w ostatniej klatce. Po włączeniu opcji Grow and Stay obiekt rozszerza się od klatki Start Time aż do osiągnięcia klatki Grow Time, a następnie zachowuje stały rozmiar aż do klatki End Time. Z kolei opcja Cyclic Growth powoduje cykliczne rozszerzanie się obiektu w przedziałach czasu wyznaczonych przez Grow Time aż do osiągnięcia klatki End Time. Dwie kolejne sekcje rolety Parameters służą do zdefiniowania wyglądu zewnętrznej i wewnętrznej krawędzi obiektu oraz sposobu ich zachowania podczas animacji. Po zaznaczeniu opcji On w sekcjach Edge Breakup (deformacje krawędzi) włączone zostają pozostałe parametry. Pozwalają one określić liczbę głównych i pobocznych pofalowań (parametry Major Cycles i Minor Cycles), zdefiniować rozmiary pofalowań (parametry Width Flux), a także określić szybkość, z jaką obiegają one pierścień (Crawl Time). W sekcji Surface (powierzchnia) dostępna jest opcja Texture Coordinates, która tworzy współrzędne tekstury i działa tak samo jak ręczne mapowanie tych współrzędnych. W sekcji tej znajduje się także opcja Smooth pozwalająca wygładzić powierzchnię obiektu.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

207

Na rysunku 5.21 przedstawiono pięć klatek animacji obiektu typu RingWave utworzonego przy włączonych ustawieniach w sekcjach Inner Edge Breakup i Outer Edge Breakup. Zwróć uwagę na różny wygląd krawędzi w poszczególnych klatkach. Rysunek 5.21. Pięć klatek gwałtownie rozprzestrzeniającego się i falującego obiektu typu RingWave

Ćwiczenie: „Pieczenie” ciastka Ćwiczenie stanowi niezwykły przepis na pieczenie ciastek przy użyciu obiektu typu RingWave. Obiekty te można wykorzystywać zarówno do konstruowania statycznych przedmiotów (np. ciastko), jak i do tworzenia ruchomych elementów, takich jak koła zębate. Aby przy użyciu obiektu RingWave utworzyć ciastko, wykonaj następujące czynności. 1. Wybierz polecenie Create/Extended Primitives/RingWave i przeciągnięciem kursora w oknie widokowym Top utwórz obiekt. 2. W rolecie Parameters w polu Radius wpisz wartość 115, w polu Ring Width wpisz 90, a w polu Height — 30. 3. W sekcji RingWave Timing zaznacz opcję No Growth. Następnie włącz opcję On w sekcji Outer Edge Breakup i w polu Major Cycles wpisz 25, w polu Width Flux wpisz 4,0, a w polu Minor Cycles wpisz 0. 4. Zaznacz opcję On w sekcji Inner Edge Breakup. W polu Major Cycles wpisz 6, w polu Width Flux wpisz 15, a w polach Major Cycles i Width Flux wpisz, odpowiednio, 25 i 10. Pokazane na rysunku 5.22 ciastko wygląda tak, jakby zostało przed chwilą wyjęte z pieca babuni. Można je jeszcze nieco udoskonalić, wybierając polecenie Modifiers/Parametric Deformers/Taper i wpisując w polu Amount wartość 0,1.

Prism (pryzmat) Obiekty typu Prism to w rzeczywistości graniastosłupy o podstawie trójkątnej. Jeśli zaznaczysz metodę tworzenia Base/Apex (podstawa/wierzchołek), to każda krawędź podstawy może być innej długości. Po pierwszym kliknięciu definiowana jest w tym przypadku jedna z krawędzi trójkąta, po drugim kliknięciu ustalany jest jego przeciwległy wierzchołek, który zarazem określa postać pozostałych dwóch krawędzi, a ostatnie kliknięcie określa wysokość obiektu. Drugą metodą tworzenia jest Isosceles (równoramienny). Nie daje ona możliwości przekrzywiania trójkąta przed ustaleniem wysokości graniastosłupa.

208

Część II  Praca z obiektami

Rysunek 5.22. Ciastko utworzone przy użyciu obiektu RingWave

Torus Knot (węzeł) Obiekty typu Torus Knot są podobne do opisywanego wcześniej torusa. O ile jednak w przypadku torusa kołowy przekrój poprzeczny mógł być ułożony jedynie wzdłuż okręgu, to w obiektach typu Torus Knot może on być układany wzdłuż trójwymiarowej krzywej. Metody tworzenia obu obiektów są takie same. Na palecie Parameters istnieje nawet możliwość ustawienia jako bazowej krzywej okręgu (opcja Circle) zamiast węzła (Knot). Węzeł jest tutaj standardową, definiowaną matematycznie trójwymiarową krzywą. Poniżej parametrów Radius i Segments znajdują się pola do wprowadzania wartości P i Q. Przy ich użyciu można tworzyć najdziwniejsze odmiany węzłów. Wartość P to matematyczny współczynnik służący do wyznaczania stopnia zakręcenia krzywej wokół pionowej osi. Jego maksymalna wartość to 25, przy niej węzeł przypomina gęsto nawiniętą szpulę. Parametr Q odpowiada z kolei za zawijanie poziome. Także on może przyjmować maksymalnie wartość 25. Ustawienie obu wartości na tym samym poziomie spowoduje powstanie zwykłego okrągłego pierścienia. Na rysunku 5.23 przedstawiono kilka kształtów uzyskanych za pomocą kombinacji wartości parametrów P i Q. Powstały one przy następujących ustawieniach: w pierwszym przypadku P = 3, Q = 2; w drugim P = 1, Q = 3; w trzecim P = 10, Q = 15; w czwartym P = 15, Q = 20, a w piątym P = 25, Q = 25.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

209

Rysunek 5.23. Różnorodność kształtów obiektu Torus Knot pozwala odkryć piękno matematyki

Po zaznaczeniu opcji Circle w sekcji Base Curve, jak w przypadku z rysunku 5.24, nie ma możliwości manipulowania parametrami P i Q, uaktywniają się natomiast pola Warp Count i Warp Height. Odpowiadają one za częstotliwość i amplitudę pomarszczenia pierścienia. Na rysunku 5.24 przedstawiono kilka wariantów ustawień tych parametrów. Idąc od lewej, obiekty powstały przy następujących wartościach parametrów: Warp Count = 5, Warp Height = 0,5; Warp Count = 10, Warp Height = 0,5; Warp Count = 20, Warp Height = 0,5; Warp Count = 50, Warp Height = 0,5; Warp Count = 100, Warp Height = 0,75.

Rysunek 5.24. Obiekty typu Torus Knot tworzone na bazie okręgu pozwalają uzyskać efektownie wyglądające pierścienie

W sekcji Cross Section mamy dostęp do kilku parametrów sterujących kształtem przekroju poprzecznego. Wartości Radius i Sides określają rozmiar tego przekroju oraz liczbę jego segmentów. Parametr Eccentricity pozwala na utworzenie przekroju w kształcie elipsy przez rozciągnięcie go wzdłuż jednej z jego osi. Za pomocą parametru Twist można obrócić każdy kolejny przekrój względem poprzedniego i otrzymać w ten sposób efekt skręcenia obiektu wzdłuż linii bazowej. Z kolei parametr Lumps służy do definiowania liczby zgrubień węzła. Wartości Lump Height i Lump Offset określają wysokość oraz punkt początkowy pojawiania się tych zgrubień. Opcje Smooth działają podobnie jak w klasycznym torusie. Można wygładzić cały obiekt, jedynie ściany boczne lub pozostawić obiekt niewygładzony. Do mapowania współrzędnych służą wartości Offset i Tiling dla osi U i V.

L-Ext (kątownik) Nazwa obiektu L-Ext jest skrótem od L-Extension (wytłoczona litera L). Możesz go sobie wyobrazić jako dwa prostopadłościany połączone ze sobą pod kątem prostym. Tworząc obiekt typu L-Ext, pierwszym przeciągnięciem określasz prostokątny obszar zajmowany przez cały obiekt. Następne przeciągnięcie definiuje wysokość bryły, a ostatnie ustala szerokość obu części kątownika. W rolecie Parameters znajdują się parametry Side Length i Front Length, Side Width i Front Width określające, odpowiednio, długość i szerokość poszczególnych części kątownika, oraz parametr Height ustalający wysokość całego obiektu. Dla każdego z tych wymiarów można także zdefiniować liczbę segmentów.

210

Część II  Praca z obiektami

C-Ext (ceownik) Obiekt typu C-Ext to nic innego, jak obiekt L-Ext z dodatkowym prostopadłościanem. Odpowiednie połączenie ze sobą tych brył daje obiekt w kształcie litery C. W rolecie Parameters można określić wartości Length i Width (długość i szerokość) wszystkich elementów ceownika: Side (bok), Front (przód) oraz Back (tył), a także ich wspólną wysokość (Height). Dla każdego elementu można także zdefiniować liczbę tworzących go segmentów. Kątownik i ceownik są szczególnie przydatne osobom o inicjałach C.L. A mówiąc serio, wykorzystuje się je do modelowania belek konstrukcyjnych.

Hose (wąż) Obiekty typu Hose służą do tworzenia elastycznych połączeń między dwoma innymi obiektami. Działaniem przypominają sprężynę, nie posiadają jednak właściwości dynamicznych. W rolecie Hose Parameters dostępne są opcje Free Hose oraz Bound to Object Pivots. Zaznaczenie pierwszej z nich pozwala ustalić jedynie wysokość obiektu, czyli parametr Height. Z kolei po uaktywnieniu opcji Bound to Object Pivots dostępne stają się dwa przyciski, Pick Top Object i Pick Bottom Object, przy użyciu których możesz wybrać dwa obiekty, odpowiednio, górny i dolny. Po wskazaniu zostaną one połączone elastycznym wężem. Połączenie to będzie zachowane nawet podczas przesuwania obiektów. Dla obu połączonych obiektów możesz także ustalić sprężystość węża w miejscu połączenia, dobierając odpowiednie wartości parametrów Tension. Dla obu rodzajów węża (Free Hose i Bound to Object Pivots) możesz ustalić parametr Segments (liczba segmentów); włączyć opcję Flex Section Enable, uaktywniającą elastyczną część węża; w sekcji Smoothing możesz włączyć opcję Sides (wygładzającą ściany boczne) lub opcję Segments (wygładzającą poszczególne segmenty) albo opcję None (pozostawiającą obiekt niewygładzony) bądź opcję All (wygładzającą wszystkie elementy). Możesz także określić, czy obiekt ma być renderowany — opcja Renderable — oraz uaktywnić opcję Generate Mapping Coordinates generującą współrzędne mapowania potrzebne podczas nakładania tekstury. Jeśli część elastyczna obiektu jest aktywna, możesz ustalić jej parametry: Starts (początek), Ends (koniec), Cycles (liczba fałdów) i Diameter (średnica fałdów). Istnieje także możliwość zdefiniowania przekroju poprzecznego węża. Do wyboru są trzy możliwości: Round Hose (okrągły), Rectangular Hose (prostokątny) i D-Section Hose (w kształcie litery D). Na rysunku 5.25 przedstawiono elastyczny wąż łączący dwie kule.

Ćwiczenie: Tworzenie zginanej słomki Jeśli zastanawiałeś się kiedyś nad modelowaniem kartonu z sokiem (lub pijąc taki sok, myślałeś: „W jaki sposób zamodelować taką zginaną słomkę?”), poniższe ćwiczenie jest w sam raz dla Ciebie. Dużą zaletą obiektów typu Hose jest fakt, że już po utworzeniu modelu możesz go dowolnie przemieszczać — połączenia będą się automatycznie dostosowywać, tak jak w prawdziwej słomce.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

211

Rysunek 5.25. Obiekt typu Hose łączy w sposób elastyczny dwa inne obiekty

Aby utworzyć zginaną słomkę, wykonaj następujące czynności. 1. Otwórz plik Bendable straw.max znajdujący się w folderze Chap 05 na dołączonej do książki płycie. Plik ten zawiera dwa obiekty typu Tube, które staną się górną i dolną częścią słomki. Lokalne układy współrzędnych tych obiektów zorientowałem tak, aby ich osie Z wskazywały przyszłe położenie obiektu typu Hose. 2. Wybierz polecenie Create/Extended Primitives/Hose i przeciągnij kursor w oknie widokowym Top blisko miejsca styku obu części słomki. Zaznacz opcję Bound to Object Pivots, kliknij przycisk Pick Top Object i zaznacz górny obiekt typu Tube. Następnie wciśnij przycisk Pick Bottom Object i zaznacz dolny obiekt typu Tube. W ten sposób wąż zostanie umieszczony pomiędzy obydwiema częściami słomki. 3. W rolecie Hose Parameters ustaw dla górnej rurki wartość parametru Tension równą 35,0, a dla dolnej — 10,0. W polu Segments wpisz wartość 40, w polu Starts wpisz 0, w polu Ends — 100, a w Cycles — 10, natomiast w polu Diameter wpisz 24. Upewnij się, czy zaznaczona jest opcja Renderable, zaznacz opcję Round Hose i w polu Diameter wpisz 20,0. Na rysunku 5.26 przedstawiono końcową postać zginanej rurki utworzonej z zastosowaniem obiektu typu Hose.

212

Część II  Praca z obiektami

Rysunek 5.26. Do łączenia obiektów możesz wykorzystać obiekt typu Hose

Modyfikowanie parametrów obiektów Obiekty podstawowe stanowią doskonałą bazę wielu dalszych procesów modelowania. Korzystając z nich, można także łatwo przedstawić zasady parametrycznego projektowania obiektów. Każdy obiekt posiada zbiór parametrów ułatwiających definiowanie jego kształtów. Przyjrzyj się bliżej obiektom podstawowym dostępnym w Maksie. Są one obiektami parametrycznymi, czyli są definiowane przez matematyczne zależności i można je modyfikować, zmieniając parametry. Jest to najprostszy sposób modyfikowania obiektów. Przykładowo sfera o promieniu 4 może stać się sferą o promieniu 10 po wpisaniu takiej wartości w polu Radius. Zmiany te są widoczne w oknach widokowych od razu po wciśnięciu klawisza Enter. Parametry tworzonego obiektu są wyświetlane w rolecie Parameters panelu Create. Dopóki obiekt ten jest zaznaczony, możesz zmieniać jego parametry, korzystając z tej rolety. Po wybraniu innego narzędzia lub zaznaczeniu innego obiektu roleta Parameters nie jest już dostępna w panelu Create. Możesz ją wtedy znaleźć w panelu Modify.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

213

Ćwiczenie: Wypełnianie skrzyni skarbami Nie udało mi się ostatnio odkryć wielu skrzyń ze skarbami, ale jeśli dobrze pamiętam, zazwyczaj są one wypełnione błyszczącymi klejnotami. W tym ćwiczeniu najpierw wypełnimy skrzynię dużą liczbą obiektów typu Hedra, a następnie, modyfikując ich parametry w panelu Modify, sprawimy, by wyglądały jak różnego rodzaju klejnoty. Aby utworzyć skrzynię wypełnioną wieloma rozmaitymi klejnotami, wykonaj następujące czynności. 1. Otwórz plik Treasure chest of gems.max znajdujący się w folderze Chap 05 na dołączonej do książki płycie. 2. W pliku tym zapisany jest model prostej skrzyni. 3. Wybierz polecenie Create/Extended Primitives/Hedra, aby w panelu poleceń wybrać podkategorię Extended Primitives i włączyć przycisk z etykietą Hedra. W górnej części rolety Object Type włącz opcję AutoGrid. 4. Opcja AutoGrid tworzy wszystkie nowe obiekty na powierzchni innych obiektów. 5. Utwórz kilka obiektów typu Hedra. 6. W tej chwili rozmiar obiektów nie ma znaczenia. 7. Otwórz panel Modify i zaznacz jeden z utworzonych obiektów. 8. Pozmieniaj wartości na rolecie Parameters tak, aby powstał piękny klejnot. 9. Powtórz etap 5. dla wszystkich obiektów znajdujących się w skrzyni. Na rysunku 5.27 przedstawiono efekt końcowy, czyli skrzynię wypełnioną rozmaitymi klejnotami.

Podstawowe obiekty architektoniczne Być może zetknąłeś się już z programem o nazwie AutoCAD — innym produktem firmy Autodesk. Korzysta z niego rzesza inżynierów i architektów przy projektowaniu różnego rodzaju budowli. Obok AutoCAD-a istnieje jeszcze Revit, kolejny bardzo popularny pakiet, blisko spokrewniony z Maksem. Revit jest wykorzystywany do wizualizacji trójwymiarowych obiektów tworzonych w programie AutoCAD i, podobnie jak Max, umożliwia ich modelowanie, renderowanie i cieniowanie. W rzeczywistości wiele nowych funkcji Maksa było pierwotnie przeznaczonych dla programu Revit.

Stosowanie obiektów AEC Wśród funkcji zaczerpniętych ze świata aplikacji wspomagających projektowanie budowli znalazła się cała grupa przeróżnych obiektów architektonicznych powszechnie spotykanych w budownictwie. Dostęp do nich można uzyskać, wybierając polecenie Create/AEC

214

Część II  Praca z obiektami

Rysunek 5.27. Skrzynia pełna klejnotów utworzonych błyskawicznie przez modyfikację parametrów obiektów

Objects. Można tu znaleźć wiele różnych typów obiektów architektonicznych, takich jak Foliage (rośliny), Railings (balustrady), Walls (ściany), Doors (drzwi), Stairs (schody) oraz Windows (okna).

Foliage (rośliny) Kategoria Foliage zawiera kilkanaście rodzajów roślin zebranych w rolecie Favorite Plants, przedstawionej na rysunku 5.28. Dostępne są następujące modele: Banyan tree (figowiec), Generic Palm (palma), Scotch Pine (sosna szkocka), Yucca (jukka), Blue Spruce (świerk), American Elm (wiąz amerykański), Weeping Willow (wierzba płacząca), Euphorbia (wilczomlecz), Society Garlic (czosnek), Big Yucca (duża jukka), Japanese Flowering Cherry (kwitnąca wiśnia japońska) i Generic Oak (dąb). Modele roślin są rozbudowanymi obiektami (przykładowo jedno drzewko figowca składa się z ponad 100 000 wielokątów) i umieszczenie zbyt wielu w scenie może znacznie spowolnić odświeżanie okien widokowych oraz wydłużyć czas renderowania.

U dołu rolety Favorite Plants znajduje się przycisk Plant Library (biblioteka roślin) otwierający okno dialogowe, w którym możesz zobaczyć szczegółowe informacje o poszczególnych roślinach, włącznie z całkowitą liczbą ścianek składających się na dany model. Zwycięzcą w tej kategorii jest obiekt Banyan tree zbudowany ze 100 000 ścianek. Korzystając

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

215

Rysunek 5.28. Roleta Favorite Plants zawiera miniatury modeli roślin różnych gatunków

z rolety Parameters, możesz ustalić wartości parametrów Height (wysokość), Density (zagęszczenie) i Pruning (przycinanie) dla każdej dostępnej rośliny. W zależności od modelu, możesz także określić, które z elementów — Leaves (liście), Trunk (pień), Fruit (owoc), Branches (gałęzie), Flowers (kwiaty) i Root (korzeń) — mają być widoczne. W sekcji Level-of-Detail możesz wybrać jeden z trzech poziomów szczegółowości: Low (niski), Medium (średni) i High (wysoki). Po pewnym czasie domyślny zestaw roślin okazuje się zbyt mały, a wtedy można go poszerzyć, pobierając nowe gatunki z internetu. W tym celu należy wybrać polecenie Help/3ds Max on the Web/Download Vegetation, które otwiera witrynę Autodesk Seek z wieloma modelami obiektów architektonicznych i rozmaitych roślin.

Railings (balustrady) Konstruując obiekty typu Railing, możesz wskazać ścieżkę wytyczającą kształt balustrady — przycisk Pick Railing Path. Następnie możesz zdefiniować liczbę segmentów balustrady — parametr Segments. Istnieje także możliwość określenia kształtu górnej poręczy przez wybranie jednego z profilów w polu Profile. Do wyboru są trzy możliwości: none (brak poręczy), Round (przekrój kołowy) i Square (przekrój kwadratowy). Ustalić można także jej grubość (Depth), szerokość (Width) oraz wysokość (Height). W podobny sposób zdefiniować można wygląd dolnej poręczy (sekcja Lower Rail(s)), rozmieszczanych na końcach poręczy podpór (sekcja Posts), a także pionowych słupków podtrzymujących konstrukcję (sekcja Fencing). W sekcjach Lower Rail(s), Posts i Fencing umieszczone są ikony pozwalające określić odstępy między elementami danego typu. Po ich kliknięciu pojawia się okno dialogowe, znane już z narzędzia Spacing Tool, w którym można określić wartości Count (liczba elementów), Spacing (odstępy) oraz Start i End Offset (odsunięcie od początku i końca).

Walls (ściany) Konstruowanie obiektów typu Wall polega na ustaleniu parametrów Width (grubość) i Height (wysokość). W sekcji Justification można także określić sposób wyrównywania ścian. Do wyboru są trzy opcje: Left (lewa krawędź), Center (środek) i Right (prawa krawędź). Dużą zaletą tworzenia ścian jest możliwość łączenia kilku takich obiektów

216

Część II  Praca z obiektami

w jedną całą całość, podobnie jak w przypadku narzędzia Line. Przykładowo po utworzeniu w oknie widokowym Top pojedynczej ściany w miejscu ostatniego kliknięcia rozpoczyna się konstruowanie następnego segmentu. Dzieje się tak aż do kliknięcia prawym przyciskiem myszy, które powoduje wyjście z trybu tworzenia. Na rysunku 5.29 pokazano pomieszczenie, którego ściany zostały utworzone za pomocą kliknięć w oknie widokowym Top w miejscach, gdzie jedna ściana łączy się z drugą. Rysunek 5.29. Ściany pomieszczeń można tworzyć kliknięciami w narożnikach

Doors (drzwi) Kategoria Doors zawiera trzy rodzaje obiektów: Pivot (drzwi rozwierane), Sliding (drzwi rozsuwane) oraz BiFold (drzwi łamane). W każdym z wymienionych typów definiuje się inne parametry. Wspólne są jedynie wymiary Height (wysokość), Width (szerokość) i Depth (głębokość) oraz stopień rozwarcia drzwi określany w polu Open. Zwróć uwagę na fakt, iż przy konstruowaniu drzwi w sekcji Creation Method dostępne są dwie metody tworzenia: Width/Depth/Height oraz Width/Hight/Depth. W pierwszej z nich, ustawianej domyślnie, początkowe przeciągnięcie określa szerokość, drugie kliknięcie — głębokość, a ostatnie — wysokość obiektu. W palecie Parameters istnieje także możliwość obrócenia kierunku otwierania drzwi. Jest to szczególnie przydatne w przypadku nieprawidłowego umieszczenia obiektu.

Stairs (schody) W kategorii Stairs dostępne są cztery rodzaje schodów: LType (łamane, w kształcie litery L), Spiral (kręte), Straight (proste) oraz UType (łamane, w kształcie litery U). Dla każdego rodzaju schodów możesz określić jeden z typów: Open (stopnie bez elementów pionowych, czyli podstopnic), Closed (każdy stopień posiada część poziomą i pionową, czyli stopnice i podstopnice) oraz Box (całe schody stanowią jeden zwarty obiekt). Dla każdego typu możesz wybrać następujące elementy: Carriage (centralna podpora trzymająca schody w całości), Stringers (belki policzkowe — podłużne listwy biegnące po obu stronach schodów) oraz Handrail i Rail Path (poręcze). Sekcja Rise pozwala zdefiniować całkowitą wysokość schodów. Możesz tutaj ustawić parametry Overall (całkowita wysokość schodów), Riser Ht (wysokość jednego stopnia) i Riser Ct (całkowita liczba stopni). W sekcji Steps możesz określić Thickness (grubość) oraz Depth (głębokość) stopnic8. 8

Grubość i głębokość stopnic można zmieniać tylko dla schodów typu Open — przyp. tłum.

Rozdział 5.  Tworzenie i edycja obiektów podstawowych

217

Windows (okna) Kategoria Windows zawiera sześć rodzajów okien: Awning (uchylne), Casement (rozwierane), Fixed (zamknięte), Pivoted (obrotowe), Projected (o dwóch uchylnych skrzydłach i trzecim zamkniętym) i Sliding (przesuwne). Podobnie jak w przypadku drzwi, także tutaj w sekcji Creation Method dostępne są dwie metody tworzenia. W metodzie domyślnej najpierw określa się wartość Width, następnie Depth, a na końcu Height. W rolecie Parameters możesz zdefiniować wymiary okna. Sekcja Frame zawiera wymiary futryny. Parametr Thickness w sekcji Glazing określa grubość szyby, a parametry w sekcji Rails and Panels — wymiary skrzydeł. Istnieje także możliwość otworzenia wszystkich okien, z wyjątkiem typu Fixed Window.

Ćwiczenie: Schody na wieżę zegarową Projekty architektoniczne pozostawiam architektom. Jednak w tym przykładzie postaramy się utworzyć proste schody i dołączyć je do przedniej części wieży zegarowej. Aby przyłączyć schody do budynku, wykonaj następujące czynności. 1. Otwórz plik Clock tower building.max znajdujący się w folderze Chap 05 na płycie dołączonej do książki. Zawiera on model budynku, z którego środka wyrasta wieża zegarowa, ale przed głównym wejściem jest pusta przestrzeń. 2. Wybierz polecenie Create/AEC Objects/Straight Stair. W oknie widokowym Top kliknij w miejscu, gdzie schody mają zetknąć się z wejściem do budynku, i przeciągnij kursor w kierunku dolnej części schodów. Następnym przeciągnięciem ustal ich szerokość, klikając po przeciwnej stronie wejścia. Kolejnym przeciągnięciem ustal wysokość schodów, kontrolując ją w oknie widokowym Left. Na koniec kliknij prawy przycisk myszy, aby wyjść z trybu tworzenia schodów. 3. Zachowując zaznaczenie schodów, kliknij przycisk Select and Move (W) na głównym pasku narzędzi i w oknie widokowym Front przesuń schody w taki sposób, aby przylegały do przedniej części wejścia do budynku. 4. Otwórz panel Modify i zaznacz opcję Box w rolecie Parameters. Następnie w polu Overall sekcji Rise ustaw taką wartość, aby wysokość schodów pasowała do poziomu wejścia. 5. Wybierz polecenie Tools/Mirror, w oknie dialogowym zaznacz opcję Copy i w polu Offset wpisz wartość -140 odnoszącą się do osi X. Kliknij przycisk OK. Na rysunku 5.30 pokazano budynek wieży zegarowej wraz z dołączonymi schodami.

Podsumowanie Obiekty podstawowe to grupa modeli o najprostszych kształtach, które bardzo często stanowią bazę dla bardziej zaawansowanych modeli. Dwie kategorie, Standard Primitives i Extended Primitives, udostępniają szeroką gamę tego rodzaju obiektów. W tym rozdziale zostały opisane następujące zagadnienia:

218

Część II  Praca z obiektami

Rysunek 5.30. Kategoria AEC Objects pozwala w łatwy sposób tworzyć modele obiektów architektonicznych, takich jak schody 

główne zasady tworzenia obiektów podstawowych przez przeciąganie oraz ręczne wprowadzanie wartości parametrów,



nadawanie obiektom nazw oraz kolorów,



różne metody tworzenia obiektów podstawowych,



obiekty podstawowe w podkategoriach Standard Primitives i Extended Primitives,



główne parametry obiektów podstawowych,



tworzenie obiektów podkategorii AEC Objects obejmującej modele roślin, balustrad, drzwi i okien.

Teraz, gdy umiesz już konstruować obiekty, możesz skupić się na metodach ich zaznaczania, które są tematem następnego rozdziału. Poznasz szereg różnych sposobów zaznaczania obiektów i ustalania ich właściwości, a także zapoznasz się z warstwami.

Rozdział 6.

Zaznaczanie obiektów i ustawianie ich właściwości W tym rozdziale: 

Zaznaczanie obiektów przy użyciu pasków narzędzi i menu



Korzystanie z zestawów wyboru



Ustawianie właściwości obiektów



Ukrywanie i zamrażanie obiektów



Praca z warstwami



Poznawanie eksploratora sceny

Opanowałeś już sztukę tworzenia obiektów, zatem prawdopodobnie nieraz zdarzyło Ci się utworzyć ich więcej niż potrzeba. Aby usunąć jakiś obiekt lub zmienić jego położenie bądź wygląd, musisz go najpierw zaznaczyć (wyselekcjonować). Wykonanie tego może okazać się dość trudne, jeżeli okna widokowe są pełne obiektów, które na dodatek wzajemnie się przesłaniają. Na szczęście, Max oferuje kilka funkcji ułatwiających wyszukiwanie przysłowiowej igły w stogu siana. Istnieje kilka różnych sposobów zaznaczania obiektów. Możesz w tym celu wybierać obiekty według ich nazw, kolorów, typów, a nawet materiałów. Program pozwala także zastosować odpowiednie filtry umożliwiające określenie typów obiektów, które mogą być zaznaczane. Po wybraniu wszystkich pożądanych obiektów możesz utworzyć z nich zestaw wyboru, aby w przyszłości szybko je zaznaczyć, wybierając tylko nazwę odpowiedniego zestawu. Najpierw jednak musisz poznać sposoby odnajdywania wspomnianej igły. Każdy obiekt ma właściwości opisujące jego cechy fizyczne, takie jak kształt, promień i gładkość, ale ma również właściwości określające jego położenie w scenie, sposób, w jaki jest wyświetlany i renderowany, oraz to, czy jest hierarchicznie przyłączony do innego obiektu. Właściwości te mają duży wpływ na naszą pracę z obiektami i należyte ich rozumienie może tę pracę ułatwić.

220

Część II  Praca z obiektami

Zaznaczanie obiektów Max udostępnia kilka metod zaznaczania obiektów — najłatwiejsza z nich polega na kliknięciu obiektu lub przeciągnięcie po nim myszą w jednym z okien widokowych. Zaznaczony obiekt staje się biały i zostaje otoczony ramką zwaną ramką zaznaczenia (selection brackets). Możesz włączyć jeszcze inne sposoby wyróżniania zaznaczonych obiektów. Odpowiednie opcje znajdziesz w oknie dialogowym Viewport Configuration otwieranym po wybraniu polecenia Views/Viewport Configuration. Możesz tutaj wybrać opcję Use Selection Brackets (ramka zaznaczenia) lub Display Selected with Edged Faces (wyróżnione krawędzie ścianek). Pierwszą z tych opcji można również włączać i wyłączać, wciskając klawisz J, a drugą — klawisz F4. Opcje te mogą być włączane pojedynczo lub obie jednocześnie, co zostało pokazane na rysunku 6.1. Jeszcze inną oznaką świadczącą o zaznaczeniu danego obiektu jest pojawienie się osi lokalnego układu współrzędnych w środku obrotu tego obiektu. Polecenie Views/Shade Selected włącza cieniowanie zaznaczonych obiektów we wszystkich oknach widokowych. Rysunek 6.1. Obiekty zaznaczone mogą być wyróżniane przez otoczenie ramką (po lewej), podświetlenie krawędzi ścianek (w środku) lub jedno i drugie (po prawej)

Okno dialogowe Viewport Configuration zawiera opcję cieniowania zaznaczonych ścianek — Shade Selected Faces (F2) — ale dotyczy ona tylko tych ścianek, które zostały zaznaczone na poziomie struktury obiektu.

Gdy scena zawiera dużo obiektów, zaznaczenie jednego z nich za pomocą bezpośredniego kliknięcia może być trudne, ale przy odrobinie cierpliwości wykonalne. Kolejne kliknięcie obiektu już zaznaczonego powoduje zaznaczenie obiektu położonego bezpośrednio za tym pierwszym. Jeśli np. masz szereg sfer ustawionych jedna za drugą, możesz zaznaczyć trzecią z nich przez trzykrotne kliknięcie pierwszej. Wyszukiwanie i zaznaczanie obiektów w skomplikowanych scenach jest dużo łatwiejsze, jeżeli obiekty mają przypisane stosowne nazwy. Zawsze staraj się nowym obiektom nadawać takie nazwy, korzystając z rolety Name and Color. Gdy zaznaczysz pojedynczy obiekt, jego nazwa zostanie wyświetlona w tejże rolecie.

Filtry selekcji Zanim przejdziemy do omówienia poleceń z menu Edit, które dotyczą zaznaczania, powinieneś zapoznać się z filtrami selekcji. W scenie złożonej z wielu obiektów, źródeł światła, kamer, kształtów itp. zaznaczenie konkretnego obiektu może być trudne. Aby ułatwić sobie to zadanie, możesz skorzystać z filtrów selekcji.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

221

Filtr selekcji (selection filter) określa, które typy obiektów mogą być w danej chwili zaznaczane. Lista rozwijana Selection Filter znajduje się na głównym pasku narzędzi na lewo od przycisku Select Object. Jeśli z tej listy wybierzesz np. pozycję Shapes, będziesz mógł zaznaczać wyłącznie kształty. Kliknięcie w tej sytuacji obiektu innego niż kształt nie da żadnego efektu. Wspomniana lista filtrów zawiera następujące pozycje: All (wszystko), Geometry (obiekty geometryczne), Shapes (kształty), Lights (źródła światła), Cameras (kamery), Helpers (obiekty pomocnicze) i Warps (pola sił). Jeśli stosujesz kinematykę odwrotną, możesz również wybrać pozycje Bone (kość), IK Chain Object (obiekt łańcucha kinematyki odwrotnej) i Point (punkt). Wybranie pozycji Combos powoduje otwarcie okna dialogowego Filter Combinations, pokazanego na rysunku 6.2. W oknie tym możesz określić kombinację kilku filtrów działających jednocześnie. Zdefiniowana w ten sposób kombinacja zostanie dołączona do listy filtrów. Aby np. utworzyć nowy filtr umożliwiający zaznaczanie tylko źródeł światła i kamer, otwórz okno dialogowe Filter Combinations, zaznacz w nim pozycje Lights i Cameras, a następnie kliknij przycisk Add. W sekcji Current Combinations pojawi się nowa kombinacja o nazwie LC. Nowa pozycja o takiej samej nazwie pojawi się również na liście rozwijanej Selection Filter. Rysunek 6.2. Okno dialogowe Filter Combinations umożliwia tworzenie własnych filtrów selekcji

Okno dialogowe Filter Combinations zawiera również pełną listę obiektów. Korzystając z niej, możesz utworzyć filtr dopuszczający zaznaczanie bardziej konkretnych typów obiektów, np. Boolean lub Box. Wymieniane wcześniej pozycje Bone, IK Chain Object i Point na liście filtrów pochodzą właśnie z tej dodatkowej listy obiektów.

Narzędzia selekcji Główny pasek narzędzi zawiera kilka przycisków umożliwiających szybkie wybieranie narzędzi do zaznaczania. Przyciski te zostały przedstawione w tabeli 6.1. Ikona przycisku Select Object wygląda jak strzałka kursora. Kolejne trzy przyciski służą zarówno do

222

Część II  Praca z obiektami

Tabela 6.1. Narzędzia selekcji Przycisk

Nazwa

Opis

Select Object (Q)

Zaznacza obiekt.

Select and Move (W)

Zaznacza obiekt i wprowadza tryb przesuwania.

Select and Rotate (E)

Zaznacza obiekt i wprowadza tryb obrotu.

Select and Scale (R)

Zaznacza obiekt i wprowadza tryb skalowania.

Select and Manipulate

Umożliwia zaznaczanie i korzystanie z manipulatorów.

zaznaczania, jak i transformowania obiektów. Są to: Select and Move (W) — zaznaczanie i przesuwanie, Select and Rotate (E) — zaznaczanie i obracanie i Select and Scale (R) — zaznaczanie i skalowanie. Ostatnim przyciskiem tego typu jest przycisk Select and Manipulate, który umożliwia zaznaczanie obiektów i modyfikowanie ich za pomocą specjalnych manipulatorów, np. suwaków. Więcej informacji na temat narzędzi do zaznaczania i transformacji obiektów znajdziesz w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

Zaznaczanie przy użyciu poleceń z menu Edit Menu Edit zawiera kilka poleceń ułatwiających zaznaczanie obiektów. Polecenie Edit/Select All (Ctrl+A) powoduje zaznaczenie w scenie wszystkich obiektów, które nie są ukryte lub zamrożone i ich typ jest zgodny z aktualnie wybranym filtrem selekcji. Polecenie Edit/Select None (Ctrl+D) usuwa zaznaczenie wszystkich obiektów. Ten sam efekt daje kliknięcie w obszarze okna widokowego niezajętym przez żaden obiekt. Polecenie Edit/Select Invert (Ctrl+I) powoduje „odwrócenie zaznaczenia”, czyli zaznaczenie tych obiektów, których typ jest zgodny z wybranym filtrem selekcji i aktualnie nie są zaznaczone, oraz usunięcie aktualnie istniejącego zaznaczenia. Polecenie Edit/Select Similar (Ctrl+Q) zaznacza wszystkie obiekty podobne do aktualnie zaznaczonych. Jeśli zaznaczono kilka obiektów, polecenie Select Similar zaznaczy dodatkowo te, które są podobne do każdego z zaznaczonych. Obiekty są uznawane za podobne, jeśli spełniają jedno z następujących kryteriów: 

są tego samego typu, na przykład źródła światła, obiekty pomocnicze czy pola sił,



należą do tej samej grupy obiektów podstawowych, takiej jak sfera, prostopadłościan lub wielościan,



reprezentują tę samą kategorię modelowania, np. Editable Spline, Editable Poly lub Editable Patch,



są obiektami zaimportowanymi z pliku AutoCAD DWG i mają przypisany ten sam styl,

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości 

mają przypisany ten sam materiał,



znajdują się na tej samej warstwie.

223

Na rysunku 6.3 pokazano skrzynię z klejnotami utworzonymi w rozdziale 5. jako obiekty typu Hedra. Po zaznaczeniu jednego z nich i wybraniu polecenia Edit/Select Similar (Ctrl+Q) zaznaczone zostały wszystkie.

Rysunek 6.3. Polecenie Edit/Select Similar spowodowało zaznaczenie wszystkich obiektów typu Hedra

Zaznaczanie według nazwy Wybranie polecenia Edit/Select by/Name powoduje otwarcie okna dialogowego Select From Scene, które jest uproszczoną wersją (bez możliwości modyfikowania parametrów) okna eksploratora sceny (Scene Explorer). Okno to można otworzyć również przez kliknięcie przycisku Select by Name, znajdującego się na głównym pasku narzędzi obok przycisku Select Object lub przez wciśnięcie klawisza H. Okno dialogowe Scene Explorer jest szczegółowo opisane w dalszej części tego rozdziału.

Za pomocą tego okna możesz zaznaczyć obiekt, klikając jego nazwę, a następnie przycisk OK. Aby zaznaczyć kilka obiektów, kliknij ich nazwy, wciskając jednocześnie klawisz Ctrl. Wciśnięcie klawisza Shift pozwala dwoma kliknięciami zaznaczyć określony zakres nazw obiektów.

224

Część II  Praca z obiektami

Zaznaczanie według warstw Za pomocą menedżera warstw można rozmieścić wszystkie obiekty na oddzielnych warstwach, co znacznie ułatwia ich zaznaczanie. Polecenie Edit/Select by/Layer otwiera proste okno dialogowe z listą wszystkich warstw. Zaznaczenie warstwy powoduje zaznaczenie również wszystkich obiektów znajdujących się na tej warstwie. Menedżer warstw jest opisany dokładniej w dalszej części rozdziału.

Zaznaczanie według koloru Wybranie polecenia Edit/Select by/Color i kliknięcie jednego obiektu powoduje zaznaczenie wszystkich obiektów mających ten sam kolor, co obiekt kliknięty. Jeśli nawet obiekt w danym kolorze jest już zaznaczony, musisz kliknąć dowolny obiekt w tym kolorze, aby polecenie zadziałało. Musisz także pamiętać o tym, że istotny jest tutaj kolor obiektu, a nie przypisanego mu materiału. Oczywiście, polecenie to nie działa na obiekty, które nie mają przypisanego koloru, np. pola sił.

Zaznaczanie przez zakreślenie obszaru okna widokowego Polecenie Edit/Selection Region pozwala wybrać jeden z dwóch trybów zaznaczania obiektów w oknie widokowym za pomocą myszy. Najpierw upewnij się, czy jest włączony tryb zaznaczania, a następnie kliknij puste miejsce okna widokowego i przeciągnij kursor nad obiektami, które chcesz zaznaczyć. Istnieją dwa tryby takiego zaznaczania. Pierwszy nosi nazwę Window i powoduje zaznaczenie tylko tych obiektów, które całkowicie zawierają się wewnątrz obszaru otoczonego ramką zaznaczenia utworzoną po przeciągnięciu kursora. Drugi tryb, o nazwie Crossing, powoduje zaznaczenie wszystkich obiektów, które w całości lub częściowo znajdą się w obszarze otoczonym ramką. Wyboru jednego z tych trybów możesz dokonać, korzystając z głównego paska narzędzi — odpowiednie przyciski są pokazane w tabeli 6.2. Tabela 6.2. Przyciski wyboru trybu zaznaczania Przycisk

Opis Tryb Window. Tryb Crossing. Jeśli nie możesz się zdecydować, który z trybów wybrać, możesz używać obu. Zakładka General okna dialogowego Preference Settings zawiera opcję Auto Window/Crossing by Direction. Po jej włączeniu możesz wybrać kierunek przeciągania, przy którym automatycznie będzie wybierany tryb Crossing. Podczas przeciągania kursora w przeciwnym kierunku obowiązywać będzie tryb Window. Jeśli np. wybierzesz opcję Left->Right => Crossing, przeciąganie kursora w kierunku od lewej do prawej spowoduje włączenie trybu Crossing, a przeciąganie od prawej do lewej włączy tryb Window.

Istnieje również możliwość zakreślania obszarów zaznaczenia o różnych kształtach. Rozwijana grupa przycisków umieszczona na głównym pasku narzędzi po lewej stronie listy rozwijanej Selection Filter zawiera przyciski umożliwiające wybór jednej z następujących

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

225

metod (patrz tabela 6.3): Rectangular Selection Region (prostokątny obszar zaznaczania), Circular Selection Region (kołowy obszar zaznaczania), Fence Selection Region (wielokątny obszar zaznaczania), Lasso Selection Region (dowolny obszar zaznaczania) i Paint Selection Region (zamalowany obszar zaznaczania). Tabela 6.3. Przyciski umożliwiające zakreślanie obszarów zaznaczania o różnych kształtach Przycisk

Opis Rectangular Selection Region Circular Selection Region Fence Selection Region Lasso Selection Region Paint Selection Region

Metoda Rectangular Selection Region umożliwia zaznaczanie obiektów przez zakreślanie obszarów prostokątnych (kursor należy przeciągać wzdłuż przekątnej takiego prostokąta). Po wybraniu metody Circular Selection Region można utworzyć obszar zaznaczenia w kształcie koła, które podczas przeciągania kursora powiększa się symetrycznie względem swojego środka. Metoda Fence Selection Region pozwala tworzyć obszary w kształcie wielokątów — kolejne kliknięcia wyznaczają wierzchołki wielokąta, a podwójne kliknięcie zamyka go. Wybranie metody Lasso Selection Region daje możliwość zakreślenia obszaru zaznaczenia o dowolnym kształcie. Metoda Paint Selection Region wprowadza tryb zaznaczania obiektów za pomocą zamalowywania obszaru okna widokowego — wszystkie obiekty zakryte przez obszar zakreślony pędzlem zostaną zaznaczone. Wciśnięcie klawisza Q uaktywnia narzędzie Select Object służące do zaznaczania obiektów, a kolejne wciskanie tego klawisza pozwala cyklicznie przełączać metody zakreślania obszarów zaznaczenia. Pierwsze cztery metody zostały zaprezentowane na rysunku 6.4.

Rysunek 6.4. Przednia część modelu wiertarki została zaznaczona przy użyciu metod: Rectangular Selection Region, Circular Selection Region, Fence Selection Region i Lasso Selection Region

226

Część II  Praca z obiektami

Zaznaczanie wielu obiektów Podczas opracowywania scen w Maksie często będziesz chciał poddać określonej modyfikacji lub transformacji kilka obiektów jednocześnie. W tym celu będziesz musiał zaznaczyć te obiekty. Max udostępnia kilka sposobów zaznaczania wielu obiektów. Korzystając z okna dialogowego Select From Scene (otwieranego poleceniem Edit/Select by/Name, przyciskiem Select by Name w głównym pasku narzędziowym lub skrótem klawiszowym H), możesz zaznaczyć kilka obiektów przez wybranie ich nazw przy wciśniętym klawiszu Shift lub Ctrl. Klikanie z wciśniętym klawiszem Ctrl pozwala zaznaczać lub usuwać zaznaczenie poszczególnych pozycji listy, a klikanie z wciśniętym klawiszem Shift powoduje zaznaczenie całego zakresu tych pozycji. Klawisz Ctrl działa tak samo również podczas zaznaczania obiektów w oknach widokowych za pomocą narzędzi z głównego paska narzędziowego. O tym, czy włączony jest tryb zaznaczania, możesz się przekonać, sprawdzając, czy przycisk jednego z tych narzędzi jest wyróżniony kolorem żółtym. Jeśli przytrzymasz wciśnięty klawisz Ctrl i klikniesz niezaznaczony jeszcze obiekt, zostanie on dodany do aktualnie istniejącego zestawu obiektów zaznaczonych. Przeciągnięcie kursora nad kilkoma obiektami przy wciśniętym klawiszu Ctrl spowoduje dodanie tych obiektów do istniejącego zestawu obiektów zaznaczonych. Klawisz Alt działa odwrotnie do klawisza Ctrl, umożliwiając usuwanie zaznaczenia obiektów już zaznaczonych. Przeciąganie kursora przy wciśniętym klawiszu Shift powoduje odwrócenie zaznaczenia. Obiekty, które były zaznaczone, stają się niezaznaczone i na odwrót. Do tworzenia połączeń hierarchicznych między obiektami służy narzędzie Select and Link, którego przycisk jest dostępny na głównym pasku narzędzi. Aby zaznaczyć całą hierarchię obiektów, wystarczy kliknąć dwukrotnie obiekt zajmujący w niej najwyższe miejsce. Ogólnie mówiąc, dwukrotne kliknięcie obiektu rodzica powoduje zaznaczenie również wszystkich połączonych z nim obiektów dzieci. Jeśli zaznaczysz obiekt należący do hierarchii, wówczas możesz przenosić zaznaczenie na obiekty położone niżej lub wyżej w tej hierarchii, używając odpowiednio klawiszy Page Down lub Page Up. Jeszcze innym sposobem zaznaczania wielu obiektów jest przeciąganie kursora w oknie widokowym przy użyciu metod Window i Crossing, które zostały opisane wcześniej, w podpunkcie „Zaznaczanie przez zakreślenie obszaru okna widokowego”. Przyciski Select and Move, Select and Rotate i Select and Scale mogą służyć do zaznaczania, ale przy zaznaczaniu kilku obiektów jednocześnie mogą wystąpić problemy. Przypadkowe poruszenie myszą podczas klikania kolejnych obiektów spowoduje przesunięcie, obrót lub przeskalowanie tych, które już są zaznaczone (pierwotny stan można im przywrócić za pomocą funkcji Undo). Aby tego uniknąć, do zaznaczania wielu obiektów używaj raczej narzędzia Select Object.

Zaznaczanie przez malowanie Paint Selection Region jest ostatnie w grupie narzędzi do zaznaczania obiektów przez zakreślanie obszaru okna widokowego. Używanie go polega na przeciąganiu pędzlem w obrębie okien widokowych — wszystkie obiekty zakryte przez obszar „zamalowany” zostaną zaznaczone.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

227

Rozmiar pędzla jest reprezentowany przez okrąg widoczny po wybraniu tego narzędzia1 i może być zmieniany przez dobór wartości parametru Paint Selection Brush Size na zakładce General okna dialogowego Preference Settings. Aby otworzyć to okno, możesz kliknąć prawym przyciskiem myszy przycisk Paint Selection Region na głównym pasku narzędzi. Na rysunku 6.5 pokazano, w jaki sposób użyć narzędzia Paint Selection Region do zaznaczenia kilku sfer.

Rysunek 6.5. Narzędzie Paint Selection Region umożliwia zaznaczenie wielu obiektów przez „zamalowanie” odpowiedniego obszaru

Ćwiczenie: Zaznaczanie obiektów Do przećwiczenia różnych technik zaznaczania wykorzystamy prosty model lwa zabawki. Po zakończeniu ćwiczenia możesz rzucić ten model swojemu psu, aby się nim pobawił. Aby przećwiczyć zaznaczanie obiektów, wykonaj następujące czynności. 1. Otwórz plik Lion toy.max, który znajdziesz w folderze Chap 06 na płycie dołączonej do książki. 2. Kliknij przycisk Select Object (lub wciśnij klawisz Q), a następnie kliknij tułów lwa w jednym z okien widokowych.

1

Dla ścisłości, okrąg ten pojawia się dopiero po rozpoczęciu przeciągania kursora — przyp. tłum.

228

Część II  Praca z obiektami

Nazwa zaznaczonego obiektu, lion, zostanie wyświetlona w rolecie Name and Color w panelu poleceń. 3. Kliknij przycisk Select and Move (lub wciśnij klawisz W) i w oknie Perspective przeciągnij tułów lwa w prawo. Jak widać, tułów i głowa lwa tworzą jeden obiekt niezależny od pozostałych części modelu. Przesunięcie tego obiektu spowodowało oddzielenie go od pozostałych elementów. 4. Wybierz polecenie Edit/Undo Move (lub wciśnij klawisze Ctrl+Z), aby tułów lwa wrócił na swoje miejsce. 5. Pozostawiając włączone narzędzie Select and Move, przeciągnij kursor w oknie widokowym Top, tak aby ramka zaznaczenia objęła całego lwa. Następnie przesuń cały model w nowe położenie. Tym razem cały model jest przesuwany, tak jakby stanowił jeden obiekt. Jednak w rolecie Name and Color wyświetlany jest tekst Objects Selected oraz liczba zaznaczonych obiektów. 6. Otwórz okno dialogowe Select From Scene. W tym celu kliknij przycisk Select by Name na głównym pasku narzędzi lub wciśnij klawisz H. Na liście obiektów widoczne będą nazwy wszystkich części modelu. 7. Kliknij dwukrotnie pozycję nose na tej liście. Okno Select From Scene zostanie automatycznie zamknięte, a w oknach widokowych zaznaczony będzie nos lwa. Na rysunku 6.6 przedstawiono naszego przyjaciela lwa z zaznaczonym nosem. Zwróć uwagę, że w rolecie Name and Color widoczna jest nazwa nose.

Blokowanie zaznaczenia Gdy już udało Ci się zaznaczyć te obiekty, z którymi chcesz pracować, możesz zablokować wykonywanie jakichkolwiek operacji zaznaczania, klikając przycisk Selection Lock Toggle na pasku stanu (ten z ikoną w kształcie kłódki). Stan włączenia blokady sygnalizowany jest żółtym kolorem tego przycisku. Wówczas klikanie obiektów w oknach widokowych nie wpływa w żaden sposób na aktualne zaznaczenie. Skrótem klawiszowym dla włączania i wyłączania tej blokady jest klawisz spacji. W Photoshopie i Illustratorze klawisz spacji jest skrótem do funkcji przesuwania widoku w oknie obrazu, natomiast w Maksie włącza blokadę aktualnego zaznaczenia. Jeśli przypadkowo włączysz tę blokadę, nie będziesz mógł zaznaczyć innych obiektów.

Stosowanie imiennych zestawów wyboru Po zaznaczeniu grupy obiektów możesz utworzyć z nich zestaw wyboru. Później będziesz mógł powrócić do tej grupy zaznaczonych obiektów, wybierając jej nazwę z listy rozwijanej Named Selection Sets na głównym pasku narzędzi lub w oknie dialogowym Named Selection Sets, pokazanym na rysunku 6.7.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

229

Rysunek 6.6. Komiksowa postać lwa z zaznaczonym nosem

Okno to możesz otworzyć kliknięciem przycisku Edit Named Selection Sets na głównym pasku narzędzi lub przez wybranie polecenia Edit/Manage Selection Sets. Aby utworzyć zestaw wyboru, wpisz jego nazwę w polu listy rozwijanej Named Selection Sets na pasku narzędzi lub wykorzystaj do tego celu wspomniane okno dialogowe. Zestawy wyboru można kreować także na poziomie struktury obiektu, ale są one dostępne tylko w trybie edycji tej struktury i tylko dla aktualnie zaznaczonego obiektu.

Zarządzanie zestawami wyboru Do zarządzania zestawami wyboru służy okno dialogowe Named Selection Sets. Przyciski w górnej części tego okna umożliwiają tworzenie i usuwanie zestawów, dodawanie i usuwanie obiektów z zestawów oraz zaznaczanie i wyróżnianie obiektów w zestawach. Można również przenosić obiekty między zestawami przez przeciąganie ich nazw z jednego zestawu do innego. Przeciągnięcie nazwy zestawu do innego zestawu powoduje połączenie obiektów z obu w zestawie docelowym. Dwukrotne kliknięcie nazwy zestawu sprawi, że zaznaczone zostaną wszystkie obiekty wchodzące w jego skład.

230

Część II  Praca z obiektami

Rysunek 6.7. Okno dialogowe Named Selection Sets umożliwia przeglądanie zestawów wyboru i zarządzanie nimi

Wydzielanie bieżącego zaznaczenia Polecenie Tools/Isolate Selection (Alt+Q) ukrywa wszystkie obiekty, które aktualnie nie są zaznaczone. Jednocześnie skala widoku aktywnego okna widokowego jest dopasowywana do rozmiarów zaznaczenia i widzimy małe okno dialogowe z przyciskiem Exit Isolation. Kliknięcie tego przycisku powoduje powrót do normalnego trybu i wyświetlenie wszystkich obiektów. Tryb wydzielania zaznaczenia jest bardzo przydatny podczas opracowywania określonych obszarów sceny. Na rysunku 6.8 przedstawiono efekt zastosowania tego trybu po zaznaczeniu obiektów składających się na przednią część głowy lwa zabawki.

Zaznaczanie obiektów w innych oknach interfejsu Obiekty można zaznaczać nie tylko w oknach widokowych, ale również w wielu innych oknach wchodzących w skład interfejsu Maksa. Przykładowo okno edytora materiałów zawiera przycisk umożliwiający zaznaczenie w scenie wszystkich obiektów, którym został przypisany ten sam materiał. Przycisk Select by Material otwiera okno dialogowe Select Objects, w którym wszystkie obiekty mające przypisany aktualnie wybrany materiał są wyróżnione przez podświetlenie ich nazw.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

231

Rysunek 6.8. Wydzielanie zaznaczenia pozwala skoncentrować się na szczegółach wybranego obiektu

Inny sposób zaznaczania obiektów polega na wykorzystaniu okna Track View otwieranego poleceniem Graph Editors/New Track View. Aby zobaczyć wszystkie obiekty, kliknij znak plus poprzedzający ścieżkę Objects (obiekty). Ścieżkę obiektów można łatwo rozpoznać, bo jest oznaczona małym sześcianikiem. Wyświetlana jest tutaj cała hierarchia obiektów. W dolnym lewym rogu tego okna znajduje się pole edycyjne, w którym możesz wpisać nazwę obiektu, co spowoduje zaznaczenie jego ścieżki. Jednak nie oznacza to jeszcze zaznaczenia obiektu w oknach widokowych. Aby to uzyskać, należy kliknąć sześcianik obok nazwy obiektu. Trzecim oknem, jakie można wykorzystać do zaznaczania obiektów, jest Schematic View otwierane poleceniem Graph Editors/New Schematic View. Przedstawia ono hierarchiczny układ sceny i wyświetla wszystkie połączenia oraz zależności między obiektami. Każdy obiekt jest tutaj reprezentowany przez prostokąt z nazwą obiektu. Aby zaznaczyć obiekt, korzystając z okna Schematic View, należy włączyć tryb synchronizacji zaznaczania przez wybranie z menu tegoż okna polecenia Select/Sync Selection, a następnie kliknąć prostokąt reprezentujący żądany obiekt. Można również zaznaczyć kilka obiektów, przeciągając kursor nad odpowiednimi prostokątami, tak aby otoczyć je ramką zaznaczenia2. 2

Zaznaczenie wielu obiektów można również uzyskać przez klikanie odpowiednich prostokątów przy wciśniętym klawiszu Ctrl — przyp. tłum.

232

Część II  Praca z obiektami

Okno Schematic View, podobnie jak okno Track View, również zawiera pole edycyjne umożliwiające zaznaczanie obiektów przez wpisywanie ich nazw. Edytor materiałów jest szczegółowo opisany w rozdziale 15., „Rozszerzony edytor materiałów”, okno TrackView — w rozdziale 37., „Praca z krzywymi funkcyjnymi w oknie Track View”, a okno Schematic View — w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Ustawianie właściwości obiektu Po zaznaczeniu jednego lub kilku obiektów możesz obejrzeć ich właściwości. Aby to zrobić, wybierz z głównego menu polecenie Edit/Object Properties lub kliknij prawym przyciskiem myszy w aktywnym oknie widokowym i w menu kontekstowym wskaż polecenie Properties. W jednym i drugim przypadku zostanie otwarte okno dialogowe Object Properties, pokazane na rysunku 6.9. Okno to zawiera cztery panele: General (ogólne), Advanced Lighting (oświetlenie zaawansowane), mental ray i User Defined (zdefiniowane przez użytkownika). Rysunek 6.9. Okno dialogowe Object Properties wyświetla cenne informacje dotyczące zaznaczonego obiektu

Informacje dotyczące obiektu Gdy zaznaczony został pojedynczy obiekt, w panelu General okna Object Properties wyświetlane są (w sekcji Object Information) szczegółowe informacje odnoszące się do tego obiektu. Informacje te zawierają następujące dane: Name (nazwa obiektu), kolor, Dimensions (maksymalne rozmiary wzdłuż osi X, Y i Z), Vertices (liczba wierzchołków), Faces (liczba płaszczyzn elementarnych), Parent (nazwa obiektu rodzica), Material Name (nazwa przypisanego materiału), Num. Children (liczba obiektów dzieci), In Group/Assembly

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

233

(nazwa grupy, do której obiekt należy) i Layer (warstwa, na której obiekt się znajduje). Z wyjątkiem nazwy obiektu i jego koloru, są to dane tylko do odczytu i tutaj nie mogą być zmieniane. W polach poniżej pola Faces informacje wyświetlane są tylko wtedy, gdy obiektem zaznaczonym jest kształt (shape). Wówczas pola te przyjmują nazwy Shape Vertices oraz Shape Curves i wyświetlają, odpowiednio, liczbę wierzchołków i liczbę krzywych, z których składa się dany kształt.

Gdy zaznaczono kilka obiektów, w polu Name wyświetlany jest tekst Multiple Selected. Z pozostałych danych są wyświetlane tylko te, które są wspólne dla wszystkich zaznaczonych obiektów. Po zaznaczeniu kilku obiektów możesz za jednym razem ustawić dla nich właściwości związane z wyświetlaniem i renderowaniem. Okno dialogowe Object Properties może być wyświetlane dla wszystkich obiektów geometrycznych, kształtów, źródeł światła, kamer, obiektów pomocniczych i pól sił, ale nie wszystkie właściwości wszystkich obiektów są w nim dostępne. Opcje Hide i Freeze zawarte w sekcji Interactivity są opisane w podrozdziale „Ukrywanie i zamrażanie obiektów”, w dalszej części tego rozdziału.

Ustawianie właściwości związanych z wyświetlaniem Właściwości zawarte w sekcji Display Properties decydują o sposobie wyświetlania obiektów w oknach widokowych. Nie mają wpływu na to, jak obiekty będą renderowane. W tej sekcji, podobnie jak w sekcjach Rendering Control (sterowanie renderingiem) i Motion Blur (rozmycie ruchu), znajduje się przełącznik By Object/By Layer. Jeśli wyświetlany jest przycisk By Object, wówczas można ustawiać właściwości zaznaczonego obiektu, ale kiedy wyświetlany jest przycisk By Layer, wszystkie opcje stają się niedostępne, a obiekt przyjmuje właściwości warstwy ustawione w oknie menedżera warstw (Layer Manager). Właściwości obiektu związane z jego wyświetlaniem możesz również ustawić w rolecie Display Properties panelu Display, a także w oknie Display Floater.

Włączenie opcji See-Through sprawia, że obiekt cieniowany staje się przezroczysty. Opcja ta działa podobnie jak parametr Visibility (widoczność) w sekcji Rendering Control, ale nie wpływa na sposób renderowania obiektu. Efekt jej działania jest widoczny jedynie w oknie widokowym pod warunkiem, że nie jest w nim włączony tryb wyświetlania Wireframe. Na rysunku 6.10 przedstawiono model lwa zabawki i umieszczone za nim kule. W pierwszej wersji bez włączonej opcji See-Through, a w drugiej — po włączeniu tej opcji. Rysunek 6.10. Nadanie obiektowi właściwości See-Through sprawia, że staje się on przezroczysty

234

Część II  Praca z obiektami

Wiele tych właściwości może wpływać na szybkość odświeżania okien widokowych. Przykładowo włączenie opcji Display as Box (wyświetl jako prostopadłościan) zdecydowanie zwiększa tę szybkość, ale kosztem wyświetlania jakichkolwiek szczegółów obiektu. Może to być przydatne dla ogólnej oceny wzajemnego dopasowania obiektów. Podobne działanie mają opcje dostępne w oknie dialogowym Viewport Configuration i w menu rozwijanym po kliknięciu prawym przyciskiem myszy nazwy okna widokowego. Jednak w oknie Object Properties możemy tę opcję włączyć tylko dla jednego obiektu, a nie dla całego okna widokowego. Po włączeniu opcji Backface Cull tylna część obiektu nie jest wyświetlana. Max sprawdza zwrot każdej normalnej i nie wyświetla tych ścianek obiektu, których normalne są zwrócone do tyłu. Normalna jest to wektor prostopadły do płaszczyzny ścianki i wyznaczający jej orientację. Opcja Backface Cull daje taki sam efekt jak opcja Force 2-Sided w oknie dialogowym Viewport Configuration, z tą różnicą, że może być zastosowana w odniesieniu tylko do jednego obiektu, a nie całego okna widokowego. Efekt działania tej opcji jest widoczny tylko w oknach widokowych z włączonym trybem wyświetlania Wireframe. Opcja Edges Only powoduje wyświetlanie tylko krawędzi obiektu w oknie z włączonym trybem Wireframe. Jeżeli jest wyłączona, widoczne są również linie przerywane wyznaczające połączenia płaszczyzn elementarnych. W trybie edycji wierzchołków na poziomie struktury obiektu wszystkie wierzchołki są wyświetlane jako niebieskie znaki plus. Opcja Vertex Ticks umożliwia wyświetlanie wierzchołków obiektu w taki właśnie sposób bez konieczności przechodzenia do trybu edycji wierzchołków. Na rysunku 6.11 przedstawiono model lwa zabawki z włączoną opcją. Opcja Trajectory służy do włączania wyświetlania ścieżki animacji, po której porusza się dany obiekt. Wyświetlanie takiej ścieżki możesz włączyć również w bocznym panelu Motion, klikając przycisk Trajectories. Rysunek 6.11. Włączenie opcji Vertex Ticks powoduje wyświetlanie wierzchołków w postaci niebieskich znaków plus

Opcja Trajectory wyświetla każdą ścieżkę ruchu jako splajn. Więcej informacji na temat animowanych ścieżek ruchu zawiera rozdział 21., „Animacja i klatki kluczowe”.

Włączenie opcji Ignore Extents sprawia, że dany obiekt nie jest brany pod uwagę przy dopasowywaniu skali widoku po kliknięciu przycisku Zoom Extents lub Zoom Extents All. Jeśli np. umieściłeś kamerę lub źródło światła daleko od pozostałych obiektów w scenie, to za każdym razem, gdy używasz jednego z tych przycisków, obiekty w scenie stają się

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

235

bardzo małe, bo skala widoku jest tak dobierana, aby objąć również tę kamerę lub źródło światła. Po włączeniu opcji Ignore Extents dla takiego odległego obiektu skala widoku będzie lepiej dopasowywana do pozostałych obiektów. Obiekty zamrożone są wyświetlane w kolorze ciemnoszarym, ale jeśli wyłączysz opcję Show Frozen in Gray, obiekt będzie wyświetlany normalnie, czyli tak jakby nie był zamrożony. Włączenie opcji Never Degrade sprawia, że obiekt nie jest uwzględniany w procesie degradacji adaptacyjnej stosowanej w celu utrzymania zadanej prędkości odtwarzania animacji w oknach widokowych. Po włączeniu opcji Vertex Channel Display każdy wierzchołek obiektu będzie wyświetlany w kolorze, jaki został mu przypisany. Z listy rozwijanej możesz wybrać, jakie dane mają być do tego celu wykorzystane: Vertex Color (kolor wierzchołka), Vertex Illumination (jasność wierzchołka), Vertex Alpha (przezroczystość wierzchołka), Map Channel Color (kolor kanału mapowania) lub Soft Selection Color (kolor miękkiego zaznaczenia). Przycisk Shaded służy do włączania cieniowania siatek w kolorach wierzchołków. Jeśli ten tryb nie zostanie włączony, obiekt nie będzie cieniowany. Kolory można przypisywać wierzchołkom obiektów typu Editable Mesh, Editable Poly i Editable Patch. Jeśli wybierzesz opcję Map Channel Color, będziesz mógł również określić kanał mapowania, wpisując jego numer w polu Map Channel. Aby dowiedzieć się więcej na temat kolorów wierzchołków, zajrzyj do rozdziału 34., „Tworzenie wypiekanych tekstur i map normalnych”.

Ustawianie właściwości związanych z renderowaniem Opcje zawarte w sekcji Rendering Control okna dialogowego Object Properties mają wpływ na sposób renderowania obiektu. Parametr Visibility określa stopień widoczności (nieprzezroczystości) obiektu. Wartość 1 oznacza, że obiekt jest w pełni widoczny, a wartość np. 0,1 — prawie pełną przezroczystość. Opcja Inherit Visibility powoduje, że obiekt przejmuje to ustawienie od swojego obiektu rodzica. Parametr Visibility może być animowany, co umożliwia uzyskanie efektu stopniowego zanikania obiektu.

Opcja Renderable decyduje o tym, czy obiekt będzie renderowany. Jeśli zostanie wyłączona, wszystkie pozostałe opcje w tej sekcji staną się niedostępne — w takiej sytuacji nie mają one żadnego znaczenia. Opcja Renderable przydaje się do wyłączania z renderingu skomplikowanych obiektów, które powodują wydłużenie czasu renderingu. W ten sposób można przyspieszyć renderowanie innych obiektów w scenie. Opcje Visible to Camera i Visible to Reflection/Refraction decydują o tym, czy obiekt ma być widoczny dla kamery, i o tym, czy ma brać udział w tworzeniu odbić i załamań światła. Mogą one być przydatne podczas wykonywania próbnych renderingów różnych elementów sceny.

236

Część II  Praca z obiektami Jeśli obiekt ma wyłączoną opcję Visible to Camera i włączoną opcję Cast Shadows, sam nie będzie renderowany, ale cienie rzucane przez niego będą renderowane.

Opcja Receive Shadows decyduje o tym, czy obiekt może przyjmować cienie, a opcja Cast Shadows — o tym, czy obiekt sam może rzucać cienie. Opcja Apply Atmospherics umożliwia włączenie lub wyłączenie wpływu efektów atmosferycznych na wygląd obiektu. Włączenie tej opcji może wydłużyć czas renderingu nawet dziesięciokrotnie. Efekty atmosferyczne zostały szczegółowo opisane w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Opcja Render Occluded Objects wpływa na renderowanie obiektów ukrytych za danym obiektem. Jeśli zostanie włączona, różne efekty specjalne przypisane do tych obiektów (np. efekt poświaty) będą widoczne po zrenderowaniu sceny. Parametr Object ID w sekcji G-Buffer umożliwia przypisanie obiektowi efektów specjalnych typu Render Effects lub Video Post. Dopasowanie wartości tego parametru do numeru efektu (effect ID) powoduje przypisanie danego efektu do obiektu. Bufor grafiki (G-Buffer) jest to tymczasowo wydzielana część pamięci operacyjnej używana do przetwarzania obrazu bez konieczności przesyłania danych na dysk twardy. Interfejs Video Post został opisany w rozdziale 49., „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”.

Włączanie efektu Motion Blur W oknie dialogowym Object Properties możesz włączyć także efekt rozmycia spowodowanego ruchem (Motion Blur). Efekt ten przydaje się do podkreślania ruchu obiektów, zwłaszcza poruszających się z dużą prędkością (takich jak struś Pędziwiatr). Efekt tworzony jest przez renderowanie wielu kopii obiektu lub obrazu i odpowiednie łączenie ze sobą tych renderingów. Więcej informacji na temat efektu rozmycia i jego opcji znajdziesz w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

W oknie dialogowym Object Properties można wybrać jeden z dwóch typów tego efektu — Object lub Image. Pierwszy z nich wpływa tylko na wygląd obiektu i nie zależy od ruchu kamery, a drugi dotyczy całego obrazu i jest wprowadzany po zrenderowaniu sceny. Trzeci typ efektu Motion Blur o nazwie Scene Motion Blur jest dostępny w oknie Video Post. Więcej informacji na jego temat znajdziesz w rozdziale 49., „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”.

Przez włączanie i wyłączanie opcji Enabled możesz spowodować występowanie tego efektu tylko w określonych klatkach animacji. Parametr Multiplier jest dostępny tylko po wybraniu typu Image i pozwala dobrać intensywność rozmycia. Im większa wartość tego parametru, tym dłuższe są smugi spowodowane rozmyciem obrazu. Ustawienia dokonane w oknie Object Properties mogą być zmienione przez odpowiednie ustawienia w oknie dialogowym Render Setup.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

237

Mimo włączenia efektu Motion Blur w oknie Object Properties, nie będzie on widoczny w końcowym renderingu, jeśli zostanie wyłączony w oknie dialogowym Render Setup (zakładka Renderer).

Panele Advanced Lighting i mental ray Panele drugi i trzeci okna dialogowego Object Properties zawierają ustawienia dotyczące oświetlenia zaawansowanego i renderera mental ray. Opcje dostępne w panelu Advanced Lighting umożliwiają wyłączenie obiektu z wszelkich obliczeń związanych z zaawansowanym oświetleniem, włączenie lub wyłączenie rzucania cieni przez obiekt i przyjmowania przez niego oświetlenia. Tutaj także można ustawić liczbę iteracji przeprowadzanych podczas obliczania oświetlenia. Panel mental ray zawiera opcje decydujące o tym, czy obiekt bierze udział w obliczeniach związanych z efektami kaustycznymi i globalną iluminacją. Oświetlenie zaawansowane zostało opisane w rozdziale 45., „Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna”, a renderer mental ray — w rozdziale 47., „Renderery mental ray i iray”.

Panel User Defined Panel User Defined zawiera pole tekstowe, w którym możesz wpisywać dowolne informacje. Informacje te są zapisywane wraz ze sceną — jest to wygodny sposób przechowywania własnych uwag na temat danego obiektu.

Ukrywanie i zamrażanie obiektów Obiektów ukrytych lub zamrożonych nie można zaznaczać i w związku z tym nie mogą być przemieszczane. Jest to przydatne podczas ustawiania obiektów w scenie — gdy już ustawisz obiekt we właściwym położeniu, warto go zamrozić, aby uniknąć przypadkowego przesunięcia. Możesz również taki obiekt ukryć, aby w ogóle nie był widoczny w oknach widokowych. Zasadnicza różnica między tymi trybami polega na tym, że obiekty zamrożone są renderowane, a ukryte — nie. Istnieje kilka sposobów ukrywania i zamrażania obiektów. Możesz to zrobić przez zaznaczenie opcji Hide lub Freeze w oknie dialogowym Object Properties lub użyć do tego celu okna dialogowego Display Floater otwieranego poleceniem Tools/Display Floater. Określone typy obiektów można ukrywać za pomocą skrótów klawiszowych. Takie skróty działają na zasadzie przełączników — pierwsze wciśnięcie ukrywa obiekty, a następne odkrywa je. W ten sposób można ukrywać następujące typy obiektów: kamery (Shift+C), obiekty geometryczne (Shift+G), siatki konstrukcyjne (G), obiekty pomocnicze (Shift+H), źródła światła (Shift+L), systemy cząstek (Shift+P), kształty (Shift+S) i pola sił (Shift+W).

Opcja Hide (ukrywanie) sprawia, że obiekt staje się niewidoczny, a opcja Freeze (zamrażanie) zmienia jego kolor na ciemnoszary (jeśli zaznaczona jest opcja Show Frozen in

238

Część II  Praca z obiektami

Gray w oknie dialogowym Object Properties). W obu przypadkach obiekt nie może być zaznaczany ani przekształcany. Obiektu ukrytego nie da się zaznaczyć za pomocą klikania w oknie widokowym. Obiekty ukryte nie są również uwzględniane podczas dopasowywania skali widoku za pomocą przycisku Zoom Extents.

Korzystanie z okna dialogowego Display Floater Okno dialogowe Display Floater zawiera dwa panele: Hide/Freeze i Object Level. Pierwszy z nich został podzielony na dwie kolumny, jedną dla opcji ukrywania i drugą dla opcji zamrażania. Obie kolumny zawierają podobne przyciski umożliwiające ukrywanie lub zamrażanie obiektów zaznaczonych (przyciski z etykietą Selected), niezaznaczonych (przyciski z etykietą Unselected), wybranych wg nazwy (przyciski z etykietą By Name) lub wybranych przez kliknięcie (przyciski z etykietą By Hit). Przyciski By Name otwierają znane już okno dialogowe Select Objects (które tym razem ma nazwę Hide Objects lub Freeze Objects). Przyciski By Hit umożliwiają wskazanie obiektów ukrywanych lub zamrażanych przez kliknięcie ich w jednym z okien widokowych. Każda kolumna zawiera także przyciski ułatwiające odkrywanie (Unhide) i odmrażanie (Unfreeze) wszystkich obiektów (przyciski z etykietą All) lub wybranych wg nazwy (By Name), a w przypadku odmrażania także wybranych przez kliknięcie (By Hit). Możesz również spowodować, że obiekty zamrożone zostaną automatycznie ukryte — w tym celu musisz zaznaczyć opcję Hide Frozen Objects. Przyciski, takie jak w oknie Display Floater, można znaleźć również w innych miejscach, np. w roletach Hide i Freeze panelu Display należącego do panelu poleceń. Te same funkcje pełnią również odpowiednie opcje menu kontekstowego okien widokowych.

Panel Object Level okna dialogowego Display Floater pozwala ukrywać obiekty według kategorii, np. wszystkie źródła światła lub wszystkie kamery. Tutaj także możesz sprawdzić i zmienić wiele właściwości obiektu, które poznałeś przy okazji opisywania okna dialogowego Object Properties. Oba panele, Hide/Freeze i Object Level, okna dialogowego Display Floater zostały pokazane na rysunku 6.12. Rysunek 6.12. Okno dialogowe Display Floater zawiera dwa panele, Hide/Freeze i Object Level

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

239

Korzystanie z panelu Display Jeśli weźmiesz większość funkcji zawartych w oknach dialogowych Display Floater oraz Object Properties i zmieszasz je razem, dorzucając jeszcze kilka dodatkowych, otrzymasz zawartość panelu Display. Aby uzyskać do niego dostęp, kliknij piątą od lewej ikonę w panelu poleceń (tę, która przedstawia monitor). Pierwsza w tym panelu jest roleta Display Color (patrz rysunek 6.13). Zawiera ona opcje pozwalające zdecydować, czy do wyświetlania obiektu w trybach Wireframe i Shaded ma być używany kolor obiektu (opcja Object Color), czy kolor materiału przypisanego obiektowi (opcja Material Color). Rysunek 6.13. Panel Display udostępnia większość tych samych funkcji, co okna dialogowe Display Floater i Object Properties

Panel ten zawiera również roletę Hide by Category. Korzystając z niej, możesz dodać nowe pozycje do listy kategorii wyświetlanej w panelu Object Level okna dialogowego Display Floater. Aby dodać nową kategorię, kliknij przycisk Add w rolecie Hide by Category. Spowoduje to otwarcie okna dialogowego Add Display Filter, pokazanego na rysunku 6.14, z listą wszystkich kategorii obiektów. Wybrane tutaj pozycje zostaną dodane do listy Hide by Category. Rysunek 6.14. W tym oknie dialogowym możesz wskazać kategorie, które mają być dodane do listy Hide by Category

240

Część II  Praca z obiektami

Rolety Hide oraz Freeze zawierają przyciski realizujące te same funkcje, co przyciski umieszczone w panelu Hide/Freeze okna dialogowego Display Floater. Roleta Display Properties zawiera te same opcje, co panel Object Level okna dialogowego Display Floater i okno dialogowe Object Properties. W rolecie Link Display, położonej w dolnej części panelu, znajdziesz opcje dotyczące wyświetlania w oknach widokowych połączeń między obiektami. Połączenia te są wyświetlane w postaci linii łączących obiekty dzieci z obiektami rodzicami. Przez włączenie opcji Link Replaces Object możesz ukryć obiekty, pozostawiając widoczne połączenia między nimi.

Ćwiczenie: Ukryte szczoteczki do zębów W tym ćwiczeniu ukryłem kilka szczoteczek do zębów, a Twoim zadaniem będzie ich odszukanie. Aby znaleźć ukryte szczoteczki, wykonaj następujące czynności. 1. Otwórz plik Toothbrushes.max. Po otwarciu tego pliku zobaczysz tylko jedną szczoteczkę, ale w rzeczywistości jest ich więcej. Czy możesz je wskazać? Model szczoteczki do zębów został wykonany w firmie Viewpoint Datalabs i możesz go znaleźć w katalogu Chap 06 na płycie dołączonej do książki. 2. Aby odszukać w scenie ukryte obiekty, otwórz okno dialogowe Display Floater (wybierz polecenie Tools/Display Floater). 3. W oknie Display Floater kliknij zakładkę Hide/Freeze. W sekcji Unhide kliknij przycisk By Name. Otwarte zostanie okno dialogowe Unhide Objects zawierające listę wszystkich ukrytych obiektów w bieżącej scenie. 4. Zaznacz na tej liście obiekt o nazwie green toothbrush (zielona szczoteczka) i kliknij przycisk Unhide. Okno dialogowe Unhide Objects zostanie zamknięte, a ukryty do tej pory obiekt stanie się widoczny. Zauważ, że okno Display Floater pozostaje nadal otwarte. Ponieważ jest to okno niemodalne, możesz kontynuować pracę bez jego zamykania.

5. Aby wyświetlić wszystkie pozostałe obiekty, kliknij przycisk All w sekcji Unhide okna Display Floater. Na rysunku 6.15 przedstawiono efekt końcowy z wyświetlonymi wszystkimi szczoteczkami.

Stosowanie warstw Co wspólnego ma program 3ds Max z tortem weselnym? Warstwy. Umożliwiają one podział obiektów w scenie na łatwe do manipulowania grupy. Każda warstwa ma określone właściwości, które można włączać i wyłączać.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

241

Rysunek 6.15. Oto szczoteczki do zębów dla całej rodziny. Nie zapomnij, jaki jest kolor Twojej szczoteczki! Animacje również mogą być dzielone na warstwy (Animation Layers). Więcej o tych warstwach dowiesz się podczas lektury rozdziału 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Korzystanie z menedżera warstw Do tworzenia i zarządzania warstwami służy okno dialogowe Layer Manager (menedżer warstw), pokazane na rysunku 6.16. Jest to okno pływające, które może pozostawać otwarte, gdy pracujesz w oknach widokowych. Aby je otworzyć, możesz wybrać polecenie Tools/Manage Layers, kliknąć przycisk Manage Layers na głównym pasku narzędzi lub kliknąć taki sam przycisk na pasku Layers. Rysunek 6.16. Okno menedżera warstw wyświetla wszystkie warstwy wraz z zawartymi w nich obiektami

242

Część II  Praca z obiektami Zwykłe warstwy różnią się od warstw animacji umożliwiających rozbijanie sekwencji animacyjnej na kilka różnych części, które z kolei mogą być mieszane ze sobą. Więcej informacji na ten temat zawiera rozdział 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Po zdefiniowaniu warstw możesz nimi sterować za pomocą narzędzi z paska Layers, pokazanego na rysunku 6.17. Nie musisz za każdym razem otwierać okna menedżera warstw. Aby wyświetlić ten pasek, kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędzi i z rozwiniętego menu wybierz opcję Layers lub w głównym menu wskaż polecenie Customize/Show UI/Show Floating Toolbars. Rysunek 6.17. Za pomocą paska narzędzi Layers możesz uaktywnić dowolną warstwę

Tabela 6.4 zawiera opisy wszystkich przycisków znajdujących się w oknie menedżera warstw. Tabela 6.4. Przyciski menedżera warstw Przycisk

Nazwa

Opis

Create New Layer (Containing Selected Objects) Tworzy nową warstwę zawierającą zaznaczone obiekty. Delete Highlighted Empty Layers

Usuwa warstwę, jeżeli jest wyróżniona i pusta.

Add Selected Objects to Highlighted Layer

Umieszcza zaznaczone obiekty na warstwie, która jest aktualnie wyróżniona.

Select Highlighted Objects and Layers

Zaznacza w oknach widokowych wszystkie wyróżnione warstwy i obiekty.

Highlight Selected Object’s Layers

Wyróżnia w oknie menedżera warstw te warstwy, które zawierają obiekty zaznaczone w oknach widokowych.

Hide/Unhide All Layers

Ukrywa lub odkrywa wszystkie warstwy.

Freeze/Unfreeze All Layers

Zamraża lub odmraża wszystkie warstwy.

Mając otwarte okno menedżera warstw, możesz tworzyć nowe warstwy kliknięciem przycisku Create New Layer. Nowa warstwa otrzyma domyślną nazwę, np. „Layer01”, i będzie zawierać wszystkie aktualnie zaznaczone obiekty. Jeśli klikniesz jej nazwę, będziesz mógł wpisać nową. Warstwa 0 jest warstwą domyślną. Jej nazwy nie można zmienić. Jeśli nie zostały utworzone inne warstwy, na niej umieszczane są wszystkie obiekty.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

243

W oknie menedżera warstw możesz zmieniać nazwy warstw, ale nie można tego robić w odniesieniu do obiektów. Jeśli chcesz zmienić nazwę obiektu z poziomu menedżera warstw, kliknij ikonę obiektu, aby otworzyć okno dialogowe Object Properties i tutaj dokonaj odpowiedniej zmiany.

Nowo utworzona warstwa staje się automatycznie warstwą aktywną (bieżącą), o czym świadczy znak zaznaczenia pojawiający się w drugiej kolumnie okna menedżera warstw. Wszystkie tworzone obiekty są umieszczane na warstwie aktywnej. W danej chwili tylko jedna warstwa może być aktywna, natomiast wyróżnienie może obejmować jednocześnie wiele warstw i obiektów. Wyróżnione warstwy i obiekty są oznaczane żółtym kolorem. Aby wyróżnić warstwę lub obiekt, kliknij odpowiednią nazwę w oknie menedżera warstw. Warstwa wyróżniona może być usunięta za pomocą przycisku Delete Highlighted Empty Layers, ale tylko wtedy, gdy nie jest warstwą aktywną i nie zawiera żadnych obiektów. Nowo utworzone obiekty są umieszczane na warstwie aktywnej (oznaczonej znakiem zaznaczenia w oknie menedżera warstw). Jeśli przed utworzeniem obiektu zapomniałeś uaktywnić właściwą warstwę, możesz zaznaczyć obiekt w oknie widokowym, wyróżnić odpowiednią warstwę w oknie menedżera i kliknąć przycisk Add Selected Objects to Highlighted Layer. Zaznaczony obiekt zostanie przeniesiony na warstwę wyróżnioną. Każdy obiekt może być umieszczony tylko na jednej warstwie. Nie można umieścić tego samego obiektu na kilku warstwach.

Kliknięcie przycisku Select Highlighted Objects and Layers powoduje zaznaczenie w oknach widokowych tych obiektów i warstw, które są aktualnie wyróżnione. Jest do doskonały sposób na zaznaczanie wszystkich obiektów należących do danej warstwy. Z kolei przycisk Highlight Selected Object’s Layers umożliwia szybkie sprawdzenie, do której warstwy należy obiekt zaznaczony w oknie widokowym. Jeśli klikniesz znak plus widoczny obok nazwy warstwy, ujrzysz listę wszystkich obiektów znajdujących się na tej warstwie. Jeśli klikniesz ikonę warstwy (bezpośrednio przed nazwą warstwy), otwarte zostanie okno dialogowe Layer Properties, pokazane na rysunku 6.18. Z kolei kliknięcie ikony obiektu powoduje otwarcie okna Object Properties. Każde z tych okien można otworzyć również przez kliknięcie nazwy warstwy prawym przyciskiem myszy i wybranie odpowiedniego polecenia z menu podręcznego.

Lista warstw Główną częścią okna menedżera warstw (powtórzoną na pasku narzędzi Layers) jest lista warstw z kolumnami umożliwiającymi włączanie i wyłączanie określonych właściwości. Kolejnym kolumnom zostały przypisane następujące właściwości warstw: Hide (ukryta), Freeze (zamrożona), Render (renderowana), Color (kolor) i Radiosity (uwzględniana w obliczeniach radiosity). Włączenie właściwości jest sygnalizowane odpowiednią ikoną, a wyłączenie — poziomą kreską. Jeśli obiekt przejmuje daną właściwość od warstwy (np. przez włączenie trybu By Layer w oknie dialogowym Object Properties), wówczas wyświetlana jest ikona w kształcie kropki. Poszczególne obiekty w obrębie jednej warstwy mogą mieć różne właściwości. Możesz posortować warstwy ze względu na daną właściwość, klikając nagłówek odpowiedniej kolumny.

244

Część II  Praca z obiektami

Rysunek 6.18. Okno dialogowe Layer Properties jest podobne do okna Object Properties, ale odnosi się do całej warstwy

Właściwości warstw lub obiektów możesz włączać i wyłączać, po prostu klikając je. Właściwości warstw możesz zmieniać również na pasku narzędziowym Layers. Właściwość Hide decyduje o tym, czy obiekty należące do danej warstwy będą widoczne w oknach widokowych. Freeze zamraża obiekty danej warstwy, uniemożliwiając ich zaznaczenie. Właściwość Render odpowiada za możliwość renderowania obiektów danej warstwy. Color określa kolor warstwy. Włączenie właściwości Radiosity oznacza, że obiekty należące do danej warstwy będą uwzględniane w obliczaniu oświetlenia metodą energetyczną (radiosity). W oknie menedżera warstw dostępne jest także menu podręczne otwierane po kliknięciu prawym przyciskiem myszy. Większość poleceń tego menu jest reprezentowana przez przyciski, ale dwa z nich takiej reprezentacji nie mają. Są to polecenia Cut (wytnij) i Paste (wklej). Korzystając z nich, możesz przenosić obiekty z jednej warstwy do innej. Jeżeli w oknie menedżera wyróżniono kilka obiektów, kliknięcie prawym przyciskiem nazwy obiektu lub warstwy powoduje usunięcie dotychczasowego wyróżnienia. Aby tego uniknąć, klikaj poza kolumną Layers.

Ćwiczenie: Podział sceny na warstwy W miarę rozwoju sceny coraz trudniejsze staje się manipulowanie poszczególnymi jej elementami. W takiej sytuacji z pomocą przychodzą warstwy. W tym ćwiczeniu podzielimy prostą scenę na kilka warstw. Aby podzielić scenę na warstwy, wykonaj następujące czynności. 1. Otwórz scenę zapisaną w pliku Elk on hill layers.max. Plik ten znajdziesz w folderze Chap 06 na płycie dołączonej do książki. Zawiera on model łosia wykonany przez Viewpoint Datalabs. 2. Wybierz polecenie Tools/Manage Layers, aby otworzyć okno menedżera warstw. 3. Zanim zaznaczysz jakikolwiek obiekt, kliknij przycisk Create New Layer i nazwij nową warstwę Hill and Trees (wzgórze i drzewa). Kliknij ponownie ten sam

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

245

przycisk i zmień nazwę nowej warstwy na Elk (łoś). Utwórz w ten sam sposób trzecią warstwę i nazwij ją Background and light (tło i światło). Menedżer warstw zawiera teraz cztery warstwy, włącznie z warstwą 0. 4. W oknie menedżera warstw kliknij w drugiej kolumnie obok nazwy Elk, aby uaktywnić tę warstwę3. Za pomocą polecenia Edit/Select All (Ctrl+A) zaznacz wszystkie obiekty w scenie, a następnie kliknij przycisk Add Selected Objects to Highlighted Layer w oknie menedżera warstw. 5. Rozwiń warstwę Elk, klikając ikonę ze znakiem plus na lewo od nazwy warstwy. Wyświetlone zostaną nazwy wszystkich obiektów znajdujących się na tej warstwie. 6. Wyróżnij wszystkie obiekty drzew i wzgórza, klikając z wciśniętym klawiszem Ctrl ich nazwy w oknie menedżera warstw. Następnie kliknij prawym przyciskiem myszy poza kolumną z nazwami i z menu podręcznego wybierz polecenie Cut. Kliknij nazwę warstwy Hill and trees, aby ją wyróżnić, a następnie wybierz z menu podręcznego polecenie Paste. 7. Wyróżnij obiekty tła i źródła światła (czyli background i Omni01) w warstwie Elk i kliknij przycisk Select Highlighted Objects and Layers. Następnie wyróżnij warstwę Background and light i kliknij przycisk Add Selected Objects to Highlighted Layer, aby przenieść obiekty tła i źródła światła na właściwą warstwę. Teraz uaktywniaj poszczególne warstwy, w zależności od tego, na której chcesz umieszczać dodatkowe obiekty lub modyfikować istniejące. Możesz również zmieniać właściwości tych warstw zgodnie z potrzebami. Aby np. skoncentrować uwagę na modelu łosia, możesz ukryć pozostałe warstwy za pomocą menedżera warstw.

Eksplorator sceny Eksplorator sceny (Scene Explorer) udostępnia parametry wyświetlania wszystkich obiektów obecnych w scenie. Jego okno zawiera hierarchiczną listę wszystkich obiektów i kolumny z ich właściwościami. Istnieje możliwość filtrowania zawartości listy i ograniczania liczby wyświetlanych kolumn, tak aby widoczne były tylko te dane, które nas interesują. Eksplorator umożliwia również zaznaczanie obiektów, zmienianie ich nazw i kolorów, ukrywanie, zamrażanie, sortowanie, łączenie oraz usuwanie. Okno eksploratora sceny, pokazane na rysunku 6.19, jest otwierane poleceniem Tools/New Scene Explorer (Alt+Ctrl+O). Kolejne widoki eksploratora są numerowane, ale można także nadawać im nazwy — służy do tego pole View dostępne w górnej części okna. Dostęp do poszczególnych widoków można uzyskać przez wybranie odpowiedniej pozycji z podmenu Tools/Saved Scene Explorers. Z kolei polecenie Tools/Manage Scene Explorer otwiera proste okno dialogowe umożliwiające wczytywanie widoków (Load), zapisywanie (Save), usuwanie (Delete) i zmienianie ich nazw (Rename).

3

Aby uzyskać zamierzony w tym punkcie efekt (umieszczenie wszystkich obiektów na wybranej warstwie), należy wyróżnić warstwę Elk. Uaktywnienie tej warstwy nie jest konieczne (oczywiście, podczas uaktywniania warstwy następuje również jej wyróżnienie) — przyp. tłum.

246

Część II  Praca z obiektami

Rysunek 6.19. W oknie eksploratora sceny wyświetlane są wszystkie obiekty i ich właściwości Widoki eksploratora są automatycznie zapisywane i wczytywane razem z plikami Maksa.

Nazwy obiektów wyświetlane w oknie eksploratora zachowują porządek hierarchiczny — nazwy obiektów dzieci są umieszczane z wcięciem pod nazwami obiektów rodziców. Klikaniem znaków plus (+) bądź minus (–) przy obiektach rodzicach można rozwijać lub zwijać listy obiektów zajmujących niższe miejsce w hierarchii.

Zaznaczanie i filtrowanie obiektów Kliknięcie nazwy obiektu w oknie eksploratora powoduje podświetlenie całego wiersza z właściwościami tego obiektu. Do wyróżniania w ten sposób wielu obiektów można wykorzystać znane techniki klikania z wciśniętym klawiszem Ctrl lub Shift. W tym drugim przypadku zaznaczony zostanie określony dwoma kliknięciami zakres sąsiadujących ze sobą obiektów. Aby usunąć zaznaczenie danego obiektu, należy go ponownie kliknąć przy wciśniętym klawiszu Ctrl. Do zaznaczania obiektów w oknie eksploratora można także wykorzystać polecenia z menu Select. Polecenia Select All (Ctrl+A), Select None (Ctrl+D) i Select Invert (Ctrl+I)

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

247

działają zgodnie z oczekiwaniami, tzn. pierwsze zaznacza wszystkie obiekty, drugie usuwa zaznaczenie wszystkich obiektów, a trzecie odwraca istniejące zaznaczenie. Polecenia te są dostępne również w postaci przycisków na dolnej belce okna eksploratora. Polecenie Select Children (Ctrl+C) włącza tryb automatycznego zaznaczania obiektów dzieci, jeśli zaznaczony zostanie obiekt rodzic. Select Influences zaznacza wszystkie obiekty oddziałujące na obiekty zaznaczone. Są to te obiekty, które wywierają wpływ na ruch lub kształt innych obiektów. Jeśli np. sfera jest zmuszana do poruszania się wzdłuż określonej krzywej, krzywa ta jest obiektem oddziałującym na sferę. Innym przykładem może być oddziaływanie szkieletu na siatkę okrywającej go skóry. Z kolei polecenie Select Dependencies zaznacza obiekty, które są zależne od obiektów zaznaczonych. Przykładem takiej zależności jest relacja między obiektem a odnośnikiem. Włączenie synchronizacji zaznaczania (polecenie Select/Sync Selection) sprawia, że zaznaczenie obiektu w oknie eksploratora powoduje zaznaczenie tego obiektu również w oknach widokowych. Synchronizacja działa w obie strony, co oznacza, że jeśli zaznaczymy obiekt w oknie widokowym, zostanie on zaznaczony również w oknie eksploratora. Eksplorator sceny rozpoznaje także zdefiniowane przez użytkownika zestawy selekcji i umożliwia ich zaznaczanie przez wybranie odpowiedniej pozycji z listy rozwijanej Selection Set dostępnej w dolnej części okna. Pasek narzędziowy Display zawiera przyciski odpowiadające poszczególnym typom obiektów. Włączenie przycisku sprawia, że obiekty danego typu są uwzględnianie na liście eksploratora. Aby więc wykluczyć z tej listy określony typ obiektów, należy po prostu wyłączyć odpowiedni przycisk. Te same funkcje są dostępne w menu Display/Object Types. Menu Display zawiera także kilka poleceń związanych z wyświetlaniem obiektów podrzędnych (Display Cildren), oddziaływań (Display Influences) i zależności (Display Dependencies). Jest tu również polecenie Display in Track View, które otwiera okno Track View z widocznymi ścieżkami obiektu zaznaczonego. Okno Track View jest szczegółowo opisane w rozdziale 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Wyszukiwanie obiektów Za pomocą pola Find można wyszukiwać obiekty o określonych nazwach. W trakcie wpisywania w tym polu kolejnych liter zaznaczane będą te obiekty, których nazwy pasują do wpisanego już tekstu. Jeśli w menu Select eksploratora zostanie włączona opcja Find Case Sensitive, wielkie i małe litery będą traktowane odmiennie. Po włączeniu opcji Select/Find Using Wildcards można posługiwać się znakami specjalnymi. Gwiazdka (*) zastępuje wtedy ciąg znaków, a pytajnik (?) zastępuje pojedynczy znak. Jeśli np. wpiszesz hedra*, zaznaczone zostaną wszystkie obiekty o nazwach zaczynających się od hedra, a przez wpisanie hedra?1 zaznaczysz obiekty o nazwach hedra01 i hedra11, ale nie hedra02 czy hedra0001.

248

Część II  Praca z obiektami

Jeszcze inna metoda wyszukiwania i zaznaczania obiektów to opcja Select/Find Using Regular Expressions. Wyrażenia regularne (regular expressions) są powszechnie używane w skryptach i wymagają zachowania określonych reguł składniowych. W tabeli 6.5 zebrano najważniejsze elementy takich wyrażeń. Tabela 6.5. Podstawowe elementy składniowe wyrażeń regularnych Znak

Opis

Przykład

[htk]

Służy do definiowania grup wyszukiwanych Zaznacza wszystkie obiekty, których nazwy znaków. rozpoczynają się od liter h, t lub k.

Eye|light|key

Oddziela wyszukiwane wyrazy.

\w

Zastępuje dowolną literę lub cyfrę, podobnie Dopuszcza występowanie na danej pozycji jak pytajnik w trybie Find Using Wildcards. w nazwie obiektu dowolnej litery lub cyfry.

\s

Zastępuje tzw. białą spację.

Dopuszcza występowanie odstępu o dowolnej długości między wyrazami.

\d

Zastępuję dowolną cyfrę.

Dopuszcza występowanie na danej pozycji w nazwie obiektu dowolnej cyfry, od 0 do 9.

[^geft]

Wyklucza znaki stojące za nim w obrębie nawiasów.

Zaznacza wszystkie obiekty z wyjątkiem tych, których nazwy rozpoczynają się od liter g, e, f lub t.

t.*1

Zastępuje dowolną liczbę liter między podanymi znakami.

Zaznacza wszystkie obiekty, których nazwy rozpoczynają się od litery t i na dalszym miejscu zawierają cyfrę 1.

Zaznacza wszystkie obiekty, których nazwy rozpoczynają się od wyrazów eye, light lub key.

Jeśli wyrażenia regularne wydają Ci się zbyt skomplikowane, możesz skorzystać z okna dialogowego Advanced Search, pokazanego na rysunku 6.20. Do jego otwierania służy polecenie Select/Search oraz przycisk Configure Advanced Filter. Z listy rozwijanej Property można wybrać wyszukiwanie według nazwy (Name), typu (Type), koloru (Color), liczby ścianek (Faces) lub jakiejkolwiek innej właściwości obiektu spośród podawanych we wszystkich dostępnych kolumnach okna eksploratora. Lista warunków (Condition) zawiera następujące opcje: Starts With (zaczyna się od), Does Not Start With (nie zaczyna się od), Contains String (zawiera ciąg znaków), Does Not Contain String (nie zawiera ciągu znaków), Regular Expression Matches (pasuje do wyrażenia regularnego) i Inverse Regular Expression Matches (pasuje do zaprzeczenia wyrażenia regularnego)4. Takich kryteriów wyszukiwania można zdefiniować więcej i zażądać, aby zaznaczane obiekty spełniały je wszystkie (opcja Match All) lub przynajmniej jedno z nich (Match Any).

4

Autor przytoczył tutaj tylko te warunki, które odnoszą się do właściwości Name mającej charakter tekstowy. Warunki, jakie można nałożyć na daną właściwość, są — oczywiście — zależne od jej charakteru, np. dla właściwości przyjmującej wartości logiczne (TAK lub NIE) dostępne są warunki Is (jest) i Is Not (nie jest) — przyp. tłum.

Rozdział 6.  Zaznaczanie obiektów i ustawianie ich właściwości

249

Rysunek 6.20. Okno dialogowe Advanced Search umożliwia definiowanie kryteriów wyszukiwania przez wybieranie odpowiednich opcji z list rozwijanych

Czynności edycyjne w eksploratorze sceny Każdą właściwość obiektu dostępną w oknie eksploratora można włączyć lub wyłączyć przez kliknięcie odpowiedniego pola wyboru. Jeśli zaznaczono kilka obiektów, włączenie jakiejś właściwości dla jednego z nich spowoduje włączenie jej także dla pozostałych. Jeśli zostanie włączony przycisk blokady ustawień (Lock Cell Editing), jakiekolwiek zmiany w ustawieniach właściwości nie będą możliwe.

Kliknięcie nagłówka kolumny dowolnej właściwości powoduje sortowanie obiektów zgodnie z rosnącą lub malejącą wartością danej właściwości. Pierwsze kliknięcie sortuje obiekty w porządku rosnącym, a drugie — w porządku malejącym. Sposób sortowania można wybrać także z menu podręcznego, rozwijanego kliknięciem prawym przyciskiem myszy w obrębie nagłówka kolumny danej właściwości. Jeśli przykładowo klikniesz nagłówek kolumny Faces, obiekty zostaną posortowane tak, że u góry tabeli znajdą się te, które mają najmniejszą liczbę ścianek, a na dole te, które mają tych ścianek najwięcej. Można zmieniać także układ tabeli. Przez przeciąganie nagłówków kolumn można zmieniać ich kolejność, a po wybraniu polecenia Customize/Configure Columns można zmieniać ich liczbę. Polecenie to otwiera bowiem okno dialogowe Configure Columns, pokazane na rysunku 6.21, z którego można pobrać kolumny niewyświetlane w oknie eksploratora lub przenieść do niego te, które są aktualnie wyświetlane. Takie przenoszenie kolumny z (lub do) okna Configure Columns sprowadza się do przeciągnięcia jej nagłówka w odpowiednie miejsce. Rysunek 6.21. W oknie dialogowym Configure Columns dostępne są właściwości, które aktualnie nie są wyświetlane w tabeli eksploratora sceny

250

Część II  Praca z obiektami

Okno Configure Columns zawiera mnóstwo właściwości, które można dodać do eksploratora jako kolumny. Właściwości te odnoszą się do obiektów importowanych z programu Revit i polegają na podawaniu kategorii obiektu (Revit Category), jego rodziny (Revit Family), poziomu (Revit Level) i typu (Revit Type). Nowością jest także właściwość o nazwie Application Origin podająca nazwę programu, z którego obiekt został zaimportowany. Szerokości kolumn można zmieniać przez przeciąganie ich bocznych krawędzi. Aby przywrócić pierwotne szerokości wszystkich kolumn, należy kliknąć prawym przyciskiem myszy nagłówek jednej z nich i z podręcznego menu wybrać polecenie Best Fit (all columns).

Menu Edit zawiera polecenia wycinania, kopiowania i wklejania zaznaczonych obiektów zwanych tutaj węzłami (nodes). Podczas wklejania obiektów otwiera się okno z opcjami klonowania (Clone Options). W menu Customize znajdują się również polecenia służące do wyświetlania i ukrywania poszczególnych pasków narzędzi (Toolbars) oraz zmiany orientacji okna z pionowej na poziomą i odwrotnie (Layout).

Podsumowanie Umiejętność zaznaczania jest podstawą w pracy z obiektami. Max oferuje wiele sposobów zaznaczania obiektów. W tym rozdziale zapoznałeś się z zagadnieniami, takimi jak: 

stosowanie filtrów selekcji,



zaznaczanie obiektów za pomocą poleceń menu Edit (By Name, By Layer, By Color i By Region),



zaznaczanie wielu obiektów i stosowanie zestawów wyboru,



zaznaczanie obiektów za pomocą różnych okien interfejsu,



korzystanie z okna dialogowego Object Properties w celu ustawienia opcji związanych z wyświetlaniem i renderowaniem obiektów,



ukrywanie i zamrażanie obiektów,



dzielenie scen na warstwy,



korzystanie z eksploratora sceny.

Teraz, kiedy już potrafisz zaznaczać obiekty, możesz przystąpić do ustawiania ich w scenie przy użyciu narzędzi transformujących. To właśnie jest tematem następnego rozdziału.

Rozdział 7.

Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie W tym rozdziale: 

Transformacje obiektów



Sterowanie transformacjami za pomocą gizm, okna dialogowego Transform Type-in i narzędzi z grupy Transform Managers



Operowanie środkiem obrotu i ograniczeniami transformacji



Wyrównywanie obiektów za pomocą odpowiednich narzędzi



Korzystanie z siatek i funkcji przyciągania obiektów do określonych punktów

Chociaż słowo transformacja (przekształcenie) może kojarzyć się z filmami o superbohaterach, dla nas oznacza po prostu proces zmiany położenia obiektu, jego obrót lub przeskalowanie. A zatem zwykłe przesunięcie obiektu z jednego miejsca w drugie jest transformacją. Nawiasem mówiąc, ciekawe, co na to powiedziałby Superman. Max oferuje szereg różnych narzędzi pomocnych w przeprowadzaniu transformacji obiektów, m.in. gizma transformacji, okno dialogowe Transform Type-In i tzw. menedżery transformacji (Transform Managers). W niniejszym rozdziale zapoznasz się z tymi narzędziami, a także z kilkoma innymi, umożliwiającymi pewne zautomatyzowanie transformacji, np. z narzędziami służącymi do wyrównywania obiektów, z siatkami i funkcjami przyciągania.

252

Część II  Praca z obiektami

Przesuwanie, obracanie i skalowanie obiektów Utworzony obiekt pozostaje w miejscu, w którym go utworzyłeś, i czeka. Na co? Czeka, aż zostanie poddany transformacji, czyli przesunięty nieco w lewo lub obrócony w celu pokazania go z lepszej strony albo po prostu pomniejszony. Wszystkie te operacje są nazywane transformacjami, jako że prowadzą do zmiany stanu obiektu. Transformacje nie są tym samym, co modyfikacje. Modyfikacje zmieniają geometrię obiektu, natomiast transformacje w ogóle jej nie naruszają. Istnieją trzy typy transformacji: translacja (to takie wyszukane słowo oznaczające to samo, co przesunięcie), obrót i skalowanie.

Przesuwanie Pierwszym typem transformacji jest translacja, czyli przesunięcie. Ma ono ścisły związek z parametrem Position (położenie). Obiekty mogą być przesuwane wzdłuż jednej z trzech osi lub w obrębie jednej z trzech płaszczyzn. Możesz przesunąć obiekt do miejsca określonego konkretnymi współrzędnymi lub przesunąć go o określony wektor w stosunku do aktualnego położenia. Aby przesunąć obiekt, kliknij przycisk Select and Move na głównym pasku narzędzi (lub wciśnij klawisz W), zaznacz obiekt, który chcesz przesunąć, i przeciągnij go w nowe położenie. Przemieszczenie jest mierzone w jednostkach przyjętych jako systemowe dla danej sceny — mogą to być cale, centymetry, metry itp.

Obracanie Drugim rodzajem transformacji jest obrót obiektu wokół danego środka transformacji. Aby obrócić obiekt, kliknij przycisk Select and Rotate na głównym pasku narzędzi (lub wciśnij klawisz E), zaznacz właściwy obiekt i przeciągnij kursor w oknie widokowym. Obroty mierzone są w stopniach, przy czym obrót o 360 stopni oznacza powrót do pierwotnego położenia (pełny obrót).

Skalowanie Skalowanie oznacza powiększanie lub pomniejszanie całkowitych rozmiarów obiektu. Zazwyczaj mamy do czynienia ze skalowaniem proporcjonalnym (uniform scaling), czyli jednakowym we wszystkich kierunkach. Skalowanie odbywa się zawsze względem środka transformacji. Aby przeskalować obiekt w sposób proporcjonalny, kliknij przycisk Select and Uniform Scale na głównym pasku narzędzi (lub wciśnij klawisz R), zaznacz obiekt przeznaczony do skalowania i przeciągnij kursor w oknie widokowym. Skalowanie jest wyrażane w procentach rozmiarów początkowych, np. sześcian przeskalowany do 200% będzie dwa razy większy w porównaniu z oryginałem.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

253

Skalowanie nieproporcjonalne W grupie narzędzi do skalowania (pod przyciskiem Select and Uniform Scale) znajdują się dwa narzędzia służące do skalowania nieproporcjonalnego, czyli odmiennego w różnych kierunkach. Są to Select and Non-uniform Scale oraz Select and Squash. Wszystkie te narzędzia zostały zebrane w tabeli 7.1. Przez przeskalowanie piłki za pomocą narzędzia Select and Non-uniform Scale możemy nadać jej podłużny, obły kształt. Takie skalowanie odbywa się przy ograniczeniu do jednej lub dwóch osi, które można wybrać na pasku narzędziowym Axis Constraints. Tabela 7.1. Narzędzia transformacji Przycisk na pasku narzędzi

Nazwa narzędzia

Opis

Select and Move (W)

Włącza tryb przesuwania, w którym kliknięcie i przeciągnięcie obiektu powoduje jego przesunięcie.

Select and Rotate (E)

Włącza tryb obrotu, w którym kliknięcie i przeciągnięcie obiektu powoduje jego obrót.

Select and Uniform Scale (R), Select and Non-uniform Scale, Select and Squash

Włącza tryb skalowania, w którym kliknięcie i przeciągnięcie obiektu powoduje jego przeskalowanie.

Zgniatanie obiektów Opcja Squash (zgniatanie) jest specjalnym typem skalowania nieproporcjonalnego. Polega ono na tym, że gdy obiekt jest powiększany wzdłuż jednej osi, wzdłuż pozostałych jest pomniejszany. I na odwrót. Jeśli np. zmniejszysz wysokość piłki wzdłuż osi Z, jej rozmiary wzdłuż osi X i Y zostaną odpowiednio powiększone. Symuluje to zachowanie się materiałów elastycznych, takich jak guma czy plastik. Wciskając wielokrotnie klawisz R, możesz cykliczne przełączać narzędzia do skalowania.

Na rysunku 7.1 przedstawiono piłkę, która została poddana skalowaniu proporcjonalnemu, nieproporcjonalnemu i zgniataniu. Rysunek 7.1. Ta piłka została przeskalowana w trybie proporcjonalnym, nieproporcjonalnym i zgniatania Bardzo ważna jest kolejność zabiegów, jakim poddawane są obiekty. Transformacje zwykle zajmują najwyższe miejsca na stosie modyfikacji (Modifier Stack), co oznacza, że są stosowane po ustaleniu wszystkich właściwości obiektu i zastosowaniu odpowiednich modyfikatorów. Więcej na ten temat można znaleźć w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

254

Część II  Praca z obiektami

Korzystanie z przycisków narzędzi transformacji Na głównym pasku narzędzi znajdują się trzy przyciski umożliwiające szybkie wybranie jednego z narzędzi transformacji: Select and Move, Select and Rotate i Select and Uniform Scale. Opis każdego z nich znajdziesz w tabeli 7.1. Za pomocą narzędzi reprezentowanych przez te przyciski możesz zaznaczać obiekty i przekształcać je, przeciągając kursor w dowolnym oknie widokowym. Narzędzia te możesz wybrać także przy użyciu trzech spośród wielkiej czwórki skrótów klawiszowych: Q — Select Object (zaznacz obiekt), W — Select and Move (zaznacz i przesuń), E — Select and Rotate (zaznacz i obróć) oraz R — Select and Scale (zaznacz i przeskaluj).

Posługiwanie się narzędziami transformacji Podczas przeprowadzania transformacji obiektów możesz korzystać z narzędzi pomocniczych, takich jak gizma transformacji, okno dialogowe Transform Type-In (F12), pola transformacji znajdujące się na pasku stanu w dole ekranu i menedżery transformacji.

Gizma transformacji Gizmo transformacji jest wyświetlane w środku zaznaczonego obiektu (a dokładnie w środku obrotu tego obiektu) po kliknięciu jednego z przycisków narzędzi transformujących. Rodzaj wyświetlanego gizma zależy od wybranego typu transformacji. Każdemu z trzech typów transformacji odpowiada inne gizmo, ale każde z nich zawiera trzy różnokolorowe strzałki lub okręgi reprezentujące osie X, Y i Z. Oś X ma kolor czerwony, Y — zielony, a Z — niebieski. Na rysunku 7.2 zostały pokazane gizma wszystkich trzech typów transformacji — przesunięcia, obrotu i skalowania.

Rysunek 7.2. Gizma transformacji umożliwiają ograniczenie przekształcenia do jednej osi lub do jednej płaszczyzny

Jeśli gizmo transformacji jest niewidoczne, możesz je włączyć, wybierając polecenie Views/Show Transform Gizmo lub wciskając klawisz X. W ten sam sposób możesz wyłączyć gizmo. Za pomocą klawiszy – (minus) i = (znak równości) możesz zmniejszać i zwiększać rozmiary gizma.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

255

Korzystanie z interaktywności gizma Przesunięcie kursora na jedną z osi gizma transformacji w aktywnym oknie widokowym powoduje zaznaczenie tej osi, co objawia się zmianą jej koloru na żółty. Przeciąganie kursora w takiej sytuacji powoduje ograniczenie transformacji do kierunku wyznaczonego przez tę oś. Jeśli np. zaznaczysz czerwoną oś X gizma przesunięcia, to podczas przeciągania kursora obiekt będzie przesuwany tylko wzdłuż osi X. Gizma transformacji umożliwiają inną (wizualną) metodę ograniczania transformacji do jednej osi lub jednej płaszczyzny. W związku z tym, że już nie trzeba często korzystać z przycisków ograniczających transformacje, zostały one przeniesione z głównego paska narzędzi na oddzielny pasek pływający Axis Constraints.

Gizmo przesunięcia Gizmo przesunięcia, oprócz strzałek reprezentujących poszczególne osie, zawiera w każdym narożniku dwie prostopadłe linie wyznaczające płaszczyzny układu współrzędnych. Linie te tworzą tzw. uchwyty płaszczyzn (plane handles) i umożliwiają przesuwanie obiektu wzdłuż dwóch osi jednocześnie. Kolory tych linii pokrywają się z kolorami odpowiednich osi. Jeśli np. w oknie z widokiem perspektywicznym przeciągniesz narożnik czerwono-niebieski, przesunięcie obiektu zostanie ograniczone do płaszczyzny XZ. Wskazanie kursorem jednej z tych linii powoduje podświetlenie odpowiedniego narożnika. W środku gizma znajduje się sześcian (Center Box) wyznaczający środek transformacji. Gizmo obrotu Gizmo obrotu ma kształt sfery. Łuki w kolorach odpowiadających poszczególnym osiom otaczają tę sferę. Podczas wykonywania obrotu zgodnie z zaznaczonym łukiem wyświetlany jest wycinek koła reprezentujący kąt, o jaki obiekt został obrócony. Wartość tego kąta jest również wyświetlana w postaci liczbowej nad gizmem. Kliknięcie i przeciąganie punktu leżącego w obrębie sfery, ale poza kolorowymi łukami, umożliwia obracanie obiektu we wszystkich kierunkach. Przeciąganie kursora przy aktywnym szarym, zewnętrznym okręgu gizma powoduje obrót obiektu w płaszczyźnie równoległej do płaszczyzny widoku. Gizmo skalowania Gizmo skalowania składa się z trzech osi i dwóch trójkątów. Przeciąganie punktu leżącego w obrębie wewnętrznego trójkąta powoduje proporcjonalne skalowanie obiektu, przeciąganie fragmentów trójkąta zewnętrznego powoduje skalowanie wzdłuż dwóch przyległych osi, a przeciąganie punktów leżących na osiach — skalowanie wzdłuż danej osi. Aby nie pomylić kolorów trzech osi, zapamiętaj, że RGB = XYZ.

Ustawianie preferencji gizma Preferencje dla każdego typu gizma możesz ustawić w panelu Gizmos okna dialogowego Preference Settings. Panel ten został pokazany na rysunku 7.3. Wspólnymi dla wszystkich gizm są następujące opcje: On (włącza wyświetlanie gizma), Show Axis Labels

256

Część II  Praca z obiektami

Rysunek 7.3. Panel Gizmos okna dialogowego Preference Settings umożliwia sterowanie wyglądem gizm

(wyświetla nazwy osi), Allow Multiple Gizmos (dopuszcza wyświetlanie wielu gizm jednocześnie) orazparametr Size (rozmiar gizma). Opcja Allow Multiple Gizmos umożliwia wyświetlanie oddzielnych gizm dla każdego obiektu należącego do zestawu selekcji. Włączenie opcji Show Axis Labels powoduje oznaczenie każdej osi odpowiednia literą, czyli X, Y lub Z. W sekcji Move Gizmo (gizmo przesunięcia) możesz ustawić parametr Relative Size określający rozmiar gizma przesunięcia w stosunku do rozmiaru określonego wartością parametru Size. Ustawienie 100% będzie oznaczało pełny rozmiar wynoszący 40 jednostek (przy ustawieniach takich jak na rysunku), a ustawienie 50% spowoduje zmniejszenie gizma przesunięcia do 20 jednostek, czyli do połowy pełnego rozmiaru. Możesz także włączyć lub wyłączyć wyświetlanie uchwytów płaszczyzn (opcja On w sekcji Plane Handles), a przez ustawienie parametrów Size i Offset określisz rozmiar i położenie tych uchwytów. Ustawienie tych parametrów na 100% sprawia, że uchwyty rozciągają się na całą długość strzałek reprezentujących osie. Zaznaczenie opcji Move in Screen Space włącza widoczność uchwytu środkowego sześcianu (Center Box Handle), którego przeciąganie umożliwia przesuwanie obiektu we wszystkich trzech kierunkach. Sekcja Rotate Gizmo (gizmo obrotu) również zawiera parametr Relative Size. Opcja Free Rotation umożliwia obracanie obiektu wokół wszystkich trzech osi przez przeciąganie punktu leżącego wewnątrz gizma. Opcja Show Tripod odpowiada za wyświetlanie układu trzech osi w środku obrotu. Opcja Screen Handle wyświetla dodatkowy, szary okrąg otaczający sferę gizma. Przeciąganie tego okręgu powoduje obrót obiektu w płaszczyźnie równoległej do płaszczyzny ekranu. Opcja Show Pie Slice pokazuje wycinek koła wyznaczający kąt obrotu, a opcja Angle Data włącza wyświetlanie wartości tego kąta ponad gizmem. Z listy rozwijanej Rotation Method możesz wybrać jedną z trzech metod obracania obiektu: Linear Roll, Circular Crank lub Legacy R4. Metoda Linear Roll polega na przeciąganiu kursora wzdłuż stycznej do łuku gizma. Styczna jest wyświetlana w punkcie początkowym obrotu. Obracanie obiektu metodą Circular Crank odbywa się przez koliste

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

257

przeciąganie kursora wzdłuż łuków gizma. W metodzie Legacy R4 gizmo obrotu wygląda jak gizmo przesunięcia, a obracanie odbywa się tak jak w starych wersjach Maksa. Parametr Planar Angle Threshold określa minimalny kąt między osią obrotu a płaszczyzną okna widokowego, przy którym możliwe będzie korzystanie z metody Circular Crank — dla mniejszych kątów zostanie ona automatycznie zastąpiona metodą Linear Roll. W sekcji Scale Gizmo (gizmo skalowania) również możesz ustawić parametr Relative Size. Parametry Uniform Handle Size i 2-Axis Handle Size określają rozmiary trójkątnych uchwytów skalowania, odpowiednio, wewnętrznego i zewnętrznego. Włączenie opcji Uniform 2-Axis Scaling powoduje, że skalowanie za pomocą trójkąta zewnętrznego jest proporcjonalne względem obu osi. Sekcja Move/Rotate Transforms zawiera dodatkowe opcje i parametry sterujące ruchem obiektów w oknie z widokiem perspektywicznym. Opcje Intersection i Projection pozwalają wybrać jeden z dwóch różnych trybów. W trybie Intersection obiekty położone dalej są przesuwane szybciej. W trybie Projection relację między ruchem myszy a ruchem obiektu ustala parametr Persp Sens (czułość perspektywy). Przy małych wartościach tego parametru dużym przesunięciom myszy odpowiadają małe przemieszczenia obiektu. Parametr Rotation Increment decyduje o kącie obrotu odpowiadającym przeciągnięciu kursora na określoną odległość, a parametr Viewport Orbit Snap Angle określa przyrost kąta w skokowym trybie obracania widoku.

Przybornik transformacji Przybornik transformacji (Transform Toolbox), pokazany na rysunku 7.4, jest samodzielnym panelem umożliwiającym szybki dostęp do większości typowych operacji transformacyjnych. Aby go otworzyć, należy wybrać polecenie Edit/Transform Toolbox. Domyślnie jest to panel swobodny, ale można go zadokować przy brzegu okna programu przez przeciągnięcie go dostatecznie blisko wybranej krawędzi okna. Rysunek 7.4. Przybornik transformacji umożliwia szybki dostęp do większości typowych operacji transformacyjnych

258

Część II  Praca z obiektami

Przybornik jest podzielony na cztery części: Rotate (obrót), Size (rozmiar), Align Pivot (ustawienie środka obrotu) i Object (obiekt). Część Rotate zawiera przyciski służące do obracania zaznaczenia o określony kąt w lewo lub w prawo w odniesieniu do bieżącego widoku. Z rozwijanej listy można wybrać kąt obrotu o wartości 1, 5, 10… 90, 120, 180 i 240 stopni. W części Size znajdują się kontrolki skalowania obiektów. Przycisk Set Size skaluje zaznaczony obiekt zgodnie z wartością ustawioną w polu Size. Skalowanie odbywa się względem jednej wybranej osi lub względem wszystkich, jeśli wybierzesz opcję All (wszystkie). Przycisk R „zeruje” transformacje obiektu przez zastosowanie modyfikatora XForm i scalenie stosu modyfikatorów aż do obiektu bazowego. Przycisk Get otwiera niewielki panel, w którym wyświetlane są aktualne wartości skali względem poszczególnych osi, a przycisk Put Size umieszcza w polu Size wartość skalowania względem aktualnie wybranej osi. Kontrolki zawarte w części Align Pivot umożliwiają zmianę położenia środka obrotu obiektu bez otwierania panelu Hierarchy. Za pomocą opcji Min, Max i Center oraz przycisków X, Y i Z można umieszczać środek obrotu w położeniach minimalnym, maksymalnym lub środkowym względem danej osi. Opcja Origin przenosi środek obrotu do punktu zerowego danej osi. Przyciski Center i Origin umieszczają go, odpowiednio, w samym środku obiektu lub w początku globalnego układu współrzędnych. Część Object zawiera tylko dwa przyciski. Center przenosi cały obiekt do początku globalnego układu współrzędnych, a QClone (Quick Clone — szybkie klonowanie) tworzy kopię obiektu i umieszcza ją obok oryginału. Więcej informacji o funkcji szybkiego klonowania znajdziesz w rozdziale 8., „Klonowanie i ustawianie obiektów w szyku”.

Używanie okna dialogowego Transform Type-In Okno dialogowe Transform Type-In (F12) pozwala na wprowadzanie dokładnych wartości przesunięcia, obrotu i skalowania. Umożliwia to bardziej precyzyjne niż za pomocą myszy sterowanie położeniem obiektów. W oknie tym możesz wpisywać docelowe wartości współrzędnych lub zmiany tych współrzędnych. Aby je otworzyć, wybierz polecenie Edit/Transform Type-In lub wciśnij klawisz F12. Okno dialogowe Transform Type-In można otworzyć także przez kliknięcie prawym przyciskiem myszy dowolnego przycisku narzędzi transformujących, ale wtedy jego zawartość będzie dostosowana do transformacji, której przycisk jest aktualnie włączony.

Okno Transform Type-In jest oknem niemodalnym, a zatem możesz, nie zamykając go, wybierać inne obiekty lub zmieniać narzędzia transformujące. Po otwarciu tego okna w kolumnie Absolute:World wyświetlane są współrzędne środka obrotu bieżącego zaznaczenia względem globalnego układu odniesienia. W oknie Transform Type-In znajdują się dwie kolumny. W pierwszej wyświetlane są współrzędne globalne. Ich zmiana powoduje zmianę położenia zaznaczonego obiektu w scenie.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

259

W drugiej kolumnie można zobaczyć przyrosty współrzędnych (Offset). W chwili otwarcia okna wartości w tej kolumnie są równe 0,0. Wpisanie tutaj nowej wartości powoduje transformację obiektu względem odpowiedniej osi o wartość, która została wprowadzona. Na rysunku 7.5 przedstawiono okno Transform Type-In dla transformacji przesunięcia, o czym świadczy słowo Move w jego nazwie. Rysunek 7.5. Okno dialogowe Transform Type-In wyświetla aktualne współrzędne oraz ich przyrosty Nazwa tego okna zmienia się, w zależności od tego, jakie narzędzie zostało wybrane, a nazwy kolumn zależą od wybranego układu odniesienia. Gdy wskażesz narzędzie Select and Move i układ odniesienia World (globalny), wówczas okno otrzyma nazwę Move Transform Type-In, a w nazwach kolumn pojawi się wyraz World.

Używanie pól ze współrzędnymi transformacji na pasku stanu Pasek stanu zawiera trzy pola oznaczone literami X, Y i Z, w których wyświetlane są współrzędne transformacji. Podczas przesuwania, obracania lub skalowania obiektu tutaj wyświetlane są przyrosty współrzędnych. Wartości zawarte w tych polach zależą od typu przeprowadzanej transformacji. Podczas przesuwania wyświetlane są odległości, podczas obracania — kąty wyrażone w stopniach, a w czasie skalowania — wartości procentowe. Po wybraniu narzędzia Select Object w polach tych wyświetlane są współrzędne położenia kursora względem globalnego układu odniesienia (wtedy, gdy znajduje się on w obrębie aktywnego okna widokowego). W tych polach, tak jak w oknie Transform Type-In, możesz wpisywać współrzędne transformacji. Rodzaj wprowadzanych w ten sposób współrzędnych zależy od aktualnie wybranego narzędzia transformacji. Przycisk znajdujący się na lewo od pól transformacji umożliwia przełączanie między trybem Absolute (współrzędnych bezwzględnych) lub Offset (przyrostów współrzędnych), co zostało pokazane w tabeli 7.2. Tabela 7.2. Przełącznik trybów Absolute/Offset Ikona

Opis Absolute Offset Jeśli klikniesz prawym przyciskiem myszy dowolne z pól transformacji, pojawi się menu podręczne, z którego będziesz mógł wybrać polecenie wycinania (Cut), kopiowania (Copy) lub wklejania (Paste) aktualnej zawartości.

260

Część II  Praca z obiektami

Menedżery transformacji Aby śledzić położenie każdego obiektu w scenie, Max rejestruje współrzędne X, Y, Z wierzchołków obiektu wyznaczane względem uniwersalnego układu współrzędnych (UCS — Universal Coordinate System) związanego ze sceną jako całością, a nie z żadnym z jej elementów. Jednak stosowanie takiego uniwersalnego układu współrzędnych nie zawsze jest najłatwiejszym sposobem określania położenia obiektu. Wyobraź sobie pociąg z wieloma wagonami. W większości przypadków prościej określać położenie poszczególnych wagonów względem lokomotywy niż względem jakiegoś zewnętrznego układu odniesienia. Grupę menedżerów transformacji (Transform Managers) stanowią trzy rodzaje elementów sterujących, które pozwalają na określenie układu współrzędnych, względem którego obiekty są przekształcane, przez co mają bezpośredni wpływ na przeprowadzane transformacje. Elementy te znajdują się na głównym pasku narzędzi i na pasku Axis Constraints. Są to: 

lista układów odniesienia — pozwala wybrać układ współrzędnych, względem którego transformacja będzie przeprowadzana,



ustawienia środka transformacji — pozwalają umieścić środek transformacji w środku obrotu obiektu, w środku zaznaczenia lub w środku układu odniesienia,



ustawienia ograniczeń osiowych — umożliwiają przeprowadzanie transformacji względem jednej osi lub w jednej płaszczyźnie. Odpowiednie przyciski znajdują się na pasku narzędzi Axis Constraints.

Układy odniesienia Max umożliwia pracę z różnymi układami współrzędnych. Podczas przeprowadzania transformacji obiektów istotna jest znajomość układu, względem którego dana transformacja jest wykonywana. Zastosowanie niewłaściwego układu współrzędnych może dać nieoczekiwane rezultaty. W lewych dolnych rogach okien widokowych wyświetlane są osie uniwersalnego układu współrzędnych (UCS), a gizmo transformacji jest orientowane względem tego układu, który został wybrany dla danej transformacji. Aby zrozumieć pojęcie układu odniesienia (czyli układu współrzędnych, względem którego wykonywana jest transformacja), wyobraź sobie, że jesteś na wycieczce w Wielkim Kanionie i właśnie stoisz dokładnie na krawędzi pola widokowego. Inni obserwatorzy, zaniepokojeni Twoją postawą, wzywają strażników, określając przy tym Twoje położenie. Osoba stojąca obok Ciebie twierdzi, że jesteś obok niej. Osoba znajdująca się po drugiej stronie kanionu powie, że jesteś naprzeciwko niej. Osoba stojąca na dnie kanionu poinformuje, że jesteś nad nią, a osoba obserwująca Cię z samolotu stwierdzi, że znajdujesz się na wschodnim brzegu kanionu. Każda z tych osób inaczej opisuje Twoje położenie (stosując swój własny układ odniesienia), mimo że Ty ciągle stoisz w tym samym miejscu.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

261

Max rozpoznaje następujące układy współrzędnych. 

View (układ współrzędnych widoku) — jego podstawą jest okno widokowe. Oś X jest zwrócona w prawo, oś Y — w górę, a oś Z — w stronę patrzącego. Jest to chyba najbardziej intuicyjny układ odniesienia, co wynika z faktu, że okno widokowe zajmuje stałą pozycję względem patrzącego.



Screen (układ współrzędnych ekranu) — od układu View różni się tym, że orientacja osi układu współrzędnych w nieaktywnych oknach widokowych jest określona przez orientację tych osi w aktywnym oknie widokowym.



World (globalny układ współrzędnych) — oś X zwrócona jest w prawo, oś Z — w górę, a oś Y — w głąb ekranu (od patrzącego). Układ ten charakteryzuje się tym, że jego położenie i orientacja względem sceny są stałe. Dla Maksa jest on tożsamy z układem uniwersalnym (UCS).



Parent (układ współrzędnych rodzica) — wykorzystywany jest lokalny układ współrzędnych obiektu rodzica, z którym obiekt transformowany jest połączony. Zapewnia to spójność transformacji obiektów połączonych hierarchicznie. Jeżeli obiekt transformowany nie został w ten sposób połączony z innym obiektem, układ ten pokrywa się z układem globalnym.



Local (lokalny układ współrzędnych) — jest zgodny z układem współrzędnych zaznaczonego obiektu. Środek tego układu pokrywa się z środkiem obrotu obiektu. Położenie i orientację tego układu można zmienić, wykorzystując przycisk Pivot w panelu Hierarchy.



Gimbal („przegubowy” układ współrzędnych) — umożliwia interaktywne przekształcanie obiektów z przypisanym kontrolerem Euler XYZ. Jeśli taki kontroler nie został przypisany, układ ten pokrywa się z układem globalnym.



Grid (układ współrzędnych siatki konstrukcyjnej) — jest zgodny z układem współrzędnych aktywnej siatki konstrukcyjnej.



Working (roboczy układ współrzędnych) — umożliwia przekształcanie obiektów względem roboczego środka obrotu zdefiniowanego przy użyciu panelu Hierarchy.



Pick (wybierany układ współrzędnych) — pokrywa się z lokalnym układem współrzędnych wskazanego obiektu. Na liście rozwijanej Reference Coordinate System przechowywane są nazwy czterech ostatnio wybieranych obiektów jako opcje wyboru układu odniesienia.

Wszystkie transformacje są przeprowadzane względem układu odniesienia aktualnie wybranego z listy rozwijanej Reference Coordinate System znajdującej się na głównym pasku narzędzi. Każdemu z trzech podstawowych typów transformacji możesz przypisać inny układ odniesienia. Innym rozwiązaniem jest jednolite przypisywanie tego samego układu wszystkim typom transformacji za każdym razem, gdy dokonujesz wyboru nowego układu. Aby zastosować to drugie rozwiązanie, zaznacz opcję Constant w sekcji Ref. Coord. System okna dialogowego Preference Settings.

262

Część II  Praca z obiektami

Środek transformacji Przeprowadzając transformację obiektu, musisz znać nie tylko układ współrzędnych, względem którego przekształcasz obiekt, ale także środek tego przekształcenia. Rozwijana grupa przycisków nazywana Transform Center (środek transformacji) składa się z trzech przycisków, takich jak Use Pivot Point Center, Use Selection Center i Use Transform Coordinate Center, pokazanych w tabeli 7.3. Każdy z nich wpływa na przeprowadzaną transformację. Środek gizma transformacji jest zawsze umieszczany w środku transformacji określonym przez te przyciski. Tabela 7.3. Przyciski wyboru środka transformacji Przycisk

Opis Use Pivot Point Center (środek obrotu obiektu) Use Selection Center (środek zaznaczenia) Use Transform Coordinate Center (środek układu odniesienia)

Środek obrotu obiektu Środek obrotu (pivot point) podczas tworzenia obiektu jest zazwyczaj umieszczany w jego centrum geometrycznym. Później może być przeniesiony w dowolne miejsce w obrębie sceny — nie musi mieścić się wewnątrz obiektu. Przenoszenie środka obrotu umożliwia obracanie obiektu wokół różnych punktów. Jeśli np. chcesz ustawić model samochodu na równi pochyłej, przesuń jego środek obrotu do najniżej położonego punktu jednego z kół, a wówczas wyrównanie samochodu z równią stanie się dużo łatwiejsze. Przy wybranej opcji Use Pivot Point Center narzędzie Select and Rotate obraca obiekt wokół jego środka obrotu, a ten może znajdować się w dowolnym miejscu sceny. Środki obrotu zostały opisane bardziej szczegółowo w następnym podrozdziale.

Środek zaznaczenia Wybranie przycisku Use Selection Center powoduje ustawienie środka transformacji w geometrycznym centrum zaznaczonego obiektu lub zaznaczonych obiektów bez względu na położenie środka obrotu tego obiektu (lub obiektów). Gdy zaznaczenie obejmuje kilka obiektów, jego środek pokrywa się z środkiem geometrycznym prostopadłościennej ramki otaczającej te obiekty. Środek układu odniesienia Przycisk Use Transform Coordinate Center umieszcza środek transformacji w środku układu odniesienia wybranego dla danej transformacji. Jeśli wybierzesz układ odniesienia View, wówczas wszystkie obiekty będą przekształcane względem centralnego punktu

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

263

okna widokowego, a jeśli jako układ odniesienia wskażesz układ związany z jakimś obiektem (wskazanym po wybraniu opcji Pick), wówczas wszystkie obiekty będą przekształcane względem środka obrotu tego wybranego obiektu. Gdy wybierzesz układ odniesienia Local, przycisk Use Transform Coordinate Center jest ignorowany i każdy obiekt jest przekształcany względem jego własnego środka obrotu. Jeśli w ten sposób będziesz przekształcał kilka obiektów jednocześnie, każdy z nich będzie korzystał z własnego, lokalnego układu współrzędnych i własnego środka obrotu. Obiekty tworzące grupę będą transformowane względem układu i środka obrotu całej grupy. Przykładowo dla walca domyślnym środkiem obrotu jest środek jego podstawy, dlatego po wybraniu opcji Use Pivot Point Center walec obraca się wokół tego punktu. Jeśli wybierzesz opcję Use Selection Center, walec będzie obracał się wokół swojego środka geometrycznego, a jeśli wskażesz Use Transform Coordinate Center, przy układzie odniesienia View walec będzie obracany wokół środka okna widokowego. Na rysunku 7.6 przedstawiono w oknie widokowym Left prosty walec z różnymi środkami transformacji. Na rysunku z lewej widoczny jest tryb Pivot Point Center, na środkowym — tryb Selection Center, a na rysunku z prawej — tryb Transform Coordinate Center. Zwróć uwagę, że na każdym z tych rysunków gizmo obrotu znajduje się w innym miejscu.

Rysunek 7.6. Gizmo obrotu zajmuje różne położenia, w zależności od wybranego środka transformacji

Ograniczanie transformacji W przestrzeni trójwymiarowej można wyróżnić trzy podstawowe kierunki określone przez osie układu współrzędnych X, Y i Z. Jeśli spojrzysz wzdłuż każdej z tych osi w głąb sceny, zobaczysz trzy różne płaszczyzny: XY, YZ i ZX. Każda z nich uwzględnia tylko dwa wymiary i ogranicza każdą transformację do dwóch osi. Płaszczyzny te są widoczne w oknach widokowych Top (z góry), Left (z lewej) i Front (z przodu). Przy ustawieniach domyślnych w każdym z okien widokowych Top, Left i Front widoczna jest tylko jedna płaszczyzna, co powoduje ograniczenie transformacji tylko do niej. Przesunięcia wykonywane w oknie Top są ograniczone do płaszczyzny XY, w oknie Left — do płaszczyzny YZ, a w oknie Front — do płaszczyzny ZX. Takie ustawienie jest odpowiednie dla większości prac związanych z modelowaniem, ale czasami możesz zechcieć wykonać transformację obiektów względem tej samej osi lub płaszczyzny we wszystkich oknach widokowych. Max umożliwia również ograniczanie ruchu tak, aby odbywał się wzdłuż jednej, wybranej osi układu odniesienia; udostępnia w tym celu odpowiednie przyciski na pasku narzędzi Axis Constraints (patrz rysunek 7.7). Aby wyświetlić ten pasek, kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędzi i w menu podręcznym zaznacz opcję Axis Constraints.

264

Część II  Praca z obiektami

Rysunek 7.7. Przyciski paska narzędzi Axis Constraints umożliwiają ograniczanie transformacji do jednej osi lub płaszczyzny

Pierwsze trzy przyciski służą do nakładania ograniczeń osiowych: Restrict to X (F5), Restrict to Y (F6) i Restrict to Z (F7). Rozwijana grupa przycisków zawiera przyciski umożliwiające nakładanie ograniczeń płaszczyznowych: Restrict to XY Plane, Restrict to YZ Plane i Restrict to ZX Plane (F8). Ostatni przycisk, Snaps Use Axis Constraints Toggle, służy do włączania ograniczeń transformacji w trybie przyciągania kursora. Efekt działania tych przycisków zależy od wybranego układu odniesienia. Jeśli np. przy wybranym układzie współrzędnych View klikniesz przycisk Restrict to X, będziesz mógł transformować obiekty tylko względem osi skierowanej w oknie widokowym od lewej do prawej — w układzie współrzędnych View oś X zawsze leży w płaszczyźnie widoku i jest zwrócona w prawo. Jeśli klikniesz ten sam przycisk, ale przy wybranym układzie współrzędnych Local (układ związany z obiektem), wówczas transformacje będą wykonywane względem osi X, której orientacja jest niezależna od okna widokowego. Jeśli odnosisz wrażenie, że nakładanie ograniczeń nie działa, sprawdź, czy w sekcji Reference Coordinate System panelu General okna dialogowego Preference Settings została zaznaczona opcja Constant.

Transformacje mogą być ograniczane również do jednej z płaszczyzn aktualnego układu współrzędnych. Do tego celu służą przyciski Restrict to XY Plane, Restrict to YZ Plane i Restrict to ZX Plane tworzące wspólnie grupę rozwijaną. Za pomocą klawisza F8 możesz cyklicznie przełączać kolejne przyciski. Jeśli włączone jest wyświetlanie gizma transformacji, wybranie jednego z ograniczeń na pasku Axis Constraints spowoduje wyświetlenie odpowiedniej osi lub płaszczyzny gizma w kolorze żółtym. Jeśli transformujesz obiekty za pomocą gizma, odpowiedni przycisk na pasku Axis Constraints zostanie wybrany automatycznie.

Blokowanie transformacji Jeśli chcesz w sposób bardziej trwały zablokować możliwość transformowania obiektu względem określonych osi, przejdź do panelu poleceń i kliknij zakładkę Hierarchy. Następnie kliknij przycisk Link Info, aby otworzyć roletę Locks pokazaną na rysunku 7.8. Roleta ta umożliwia zablokowanie transformacji względem dowolnej osi1 oddzielnie dla każdego z trzech typów transformacji: Move (przesunięcie), Rotate (obrót) i Scale (skalowanie). Upewnij się, czy zaznaczony jest właściwy obiekt, a następnie zaznacz osie, względem których dana transformacja ma być zablokowana. Jeśli np. zaznaczysz wszystkie trzy osie w sekcji Move, obiekt w ogóle nie będzie mógł być przesuwany. Innym rozwiązaniem jest zamrożenie obiektu — możesz to zrobić np. w oknie dialogowym Display Floater.

1

Blokady nałożone za pomocą rolety Locks dotyczą lokalnego układu współrzędnych (niezależnie od układu wybranego z listy Reference Coordinate System) — przyp. tłum.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

265

Rysunek 7.8. Korzystając z rolety Locks, możesz zablokować określone transformacje względem wybranych osi

Blokowanie transformacji względem wybranych osi przydaje się, gdy chcemy zapobiec przypadkowemu przeskalowaniu obiektu lub musimy ograniczyć ruch pojazdu do płaszczyzny tworzącej drogę. Domyślnie roleta Locks wyświetla niezaznaczone pola wyboru X, Y i Z dla transformacji Move, Rotate i Scale. Przez zaznaczenie tych pól sprawiasz, że obiekt może być transformowany tylko względem określonych osi. Jeśli np. w sekcji Move zaznaczysz pola X i Y, będziesz mógł przesuwać obiekt tylko wzdłuż osi Z lokalnego układu współrzędnych. Blokowanie transformacji działa niezależnie od innych ograniczeń, wprowadzanych np. za pomocą paska narzędzi Axis Constraints.

Ćwiczenie: Lądowanie statku kosmicznego Transformacje należą do najbardziej elementarnych i najczęściej stosowanych metod manipulowania obiektami. W tym ćwiczeniu zajmiemy się dwoma obiektami — statkiem kosmicznym i platformą lądowniczą. Naszym celem będzie umieszczenie statku na specjalnym lądowisku. Oryginalny model statku jest zbyt duży i zajmuje niewłaściwe położenie, ale po wykonaniu kilku prostych transformacji wszystko zostanie dopasowane. Aby osadzić statek na stacji kosmicznej, wykonaj następujące czynności. 1. Otwórz plik Transforming spaceship.max z folderu Chap 07 znajdującego się na płycie dołączonej do książki. 2. Aby zapobiec przypadkowym i niepożądanym przemieszczeniom platformy, zaznacz ją, a następnie otwórz panel Hierarchy i kliknij przycisk Link Info. W rolecie Locks zaznacz dziewięć pól wyboru, aby zablokować wszystkie transformacje tego obiektu. 3. Zaznacz obiekt statku kosmicznego i kliknij przycisk Select and Move na głównym pasku narzędzi (lub wciśnij przycisk W). W centrum obiektu powinno zostać wyświetlone gizmo przesunięcia. Jeśli jest niewidoczne, wciśnij klawisz X. Upewnij się, czy aktualnie wybranym układem odniesienia jest View. Sprawdź również, czy włączona jest opcja Use Selection Center. Kliknij prawym przyciskiem

266

Część II  Praca z obiektami

myszy w oknie widokowym Left, aby je uaktywnić, a następnie zaznacz oś X (czerwoną) gizma przesunięcia i przeciągnij statek w prawo, tak aby jego środek znalazł się nad lądowiskiem. 4. Kliknij prawym przyciskiem myszy w oknie widokowym Front i przeciągnij czerwoną strzałkę gizma w lewo, aby ustawić statek na środku lądowiska. 5. Kliknij przycisk Select and Uniform Scale (lub wciśnij klawisz R). Umieść kursor nad wewnętrznym trójkątem gizma i przeciągnij w dół, aby dopasować rozmiary statku do rozmiarów lądowiska. 6. Ponownie kliknij przycisk Select and Move (lub wciśnij klawisz W), a następnie, pozostając nadal w oknie widokowym Front, przeciągnij zieloną oś Y gizma w dół, aby umieścić statek na platformie. 7. Kliknij przycisk Select and Rotate (lub wciśnij klawisz E). Następnie kliknij prawym przyciskiem myszy w oknie widokowym Top i przeciągając niebieski łuk Z gizma w dół, obróć statek zgodnie z ruchem wskazówek zegara tak, aby był zwrócony tyłem do zabudowań platformy. Właściwe ustawienie statku jest pokazane na rysunku 7.9.

Rysunek 7.9. Do ustawienia statku kosmicznego we właściwym położeniu zostały użyte przyciski i gizma transformacji

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

267

Środek obrotu Środek obrotu obiektu (pivot point) jest punktem, wokół którego obiekt jest obracany i skalowany. Jest również punktem odniesienia dla większości modyfikatorów działających na obiekt. Środek obrotu jest przypisywany obiektowi w chwili jego tworzenia i zwykle umieszczany w geometrycznym środku obiektu lub w jego podstawie. Można go dowolnie przesuwać i obracać2, ale nie można tych transformacji animować. Każdy obiekt ma swój środek obrotu — niezależnie od tego, czy jest częścią hierarchii, czy nie. Zawsze staraj się ustawić środek obrotu przed przystąpieniem do animowania obiektu. Jeśli dokonasz transformacji środka obrotu po ustanowieniu klatki kluczowej, wszystkie transformacje obiektu zostaną zmodyfikowane — obiekt zostanie przekształcony względem nowego środka obrotu.

Ustawianie środka obrotu Aby przesunąć środek obrotu lub zmienić jego orientację, otwórz panel Hierarchy w panelu poleceń i kliknij przycisk Pivot. W górnej części rolety Adjust Pivot znajdują się trzy przyciski służące do włączania różnych trybów manipulowania środkami obrotu. Tryb Affect Pivot Only oznacza, że wykonywane transformacje będą dotyczyły tylko środka obrotu aktualnego zaznaczenia, a nie obiektów. Znaczenie trybu Affect Object Only jest dokładnie przeciwnie — transformacji podlega zaznaczony obiekt, a jego środek obrotu pozostaje na swoim miejscu. Tryb Affect Hierarchy Only pozwala na przemieszczanie obiektów przyłączonych do danego obiektu. Aby zlokalizować położenie środka obrotu danego obiektu, wystarczy go zaznaczyć którymkolwiek z narzędzi transformujących i włączyć wyświetlanie gizma. Gizmo transformacji jest zawsze umieszczane właśnie w środku obrotu (patrz rysunek 7.10)3. Rysunek 7.10. Gizmo transformacji umieszczone w środku obrotu obiektu

2

Środek obrotu ma swój własny układ współrzędnych (tożsamy z lokalnym układem współrzędnych obiektu), dlatego uprawnione jest mówienie o jego obracaniu — przyp. tłum.

3

Pod warunkiem, że jako środek transformacji wybrany jest środek obrotu (Pivot Point Center) — przyp. tłum.

268

Część II  Praca z obiektami Bez względu na to, który z tych trybów został włączony, skalowanie zawsze dotyczy zaznaczonych obiektów i w żaden sposób nie wpływa na środek obrotu ani połączenia hierarchiczne między obiektami4.

Wyrównywanie środków obrotu Kolejne trzy przyciski w rolecie Adjust Pivot służą do wyrównywania środków obrotu. Są to: Center to Object (lub Center to Pivot), Align to Object (lub Align to Pivot) i Align to World. Dopóki nie zostanie wybrany jeden z opisanych w poprzednim punkcie trybów, przyciski te są niedostępne. Pierwsze dwa odnoszą się do obiektu lub środka obrotu, w zależności od wybranego trybu (w danej chwili może być wybrany tylko jeden tryb, a odpowiadający mu przycisk jest wyróżniany kolorem niebieskim). Przycisk Center to Object przesuwa środek obrotu tak, aby znalazł się w geometrycznym środku obiektu, a przycisk Center to Pivot przesuwa obiekt tak, aby jego środki geometryczny i obrotu pokryły się. Przycisk Align to Object (lub Align to Pivot) obraca środek obrotu (lub obiekt) tak, aby układy odniesienia związane z tymi elementami5 uzyskały taką samą orientację. Przycisk Align to World obraca obiekt (albo jego środek obrotu) tak, aby orientacja układu odniesienia związanego z obiektem (lub środkiem obrotu) była zgodna z orientacją globalnego układu odniesienia. Jeśli np. włączony jest tryb Affect Object Only i środek obrotu nie pokrywa się z środkiem geometrycznym obiektu, to kliknięcie przycisku Center to Pivot spowoduje takie przesunięcie obiektu, aby te środki pokryły się. Poniżej tych trzech przycisków znajduje się jeszcze jeden, oznaczony etykietą Reset Pivot, który pozwala przywrócić pierwotne (określone podczas tworzenia obiektu) położenie i orientację środka obrotu względem obiektu.

Roboczy środek obrotu Następną po Adjust Pivot jest roleta Working Pivot, służąca do manipulowania roboczym środkiem obrotu. Roboczy środek obrotu umożliwia dowolne ustawianie obiektu bez konieczności modyfikowania domyślnego środka obrotu tego obiektu. Do ustanawiania takiego środka służy przycisk Edit Working Pivot. Wprowadza on tryb analogiczny do opisywanego wyżej Affect Pivot Only. Różnica polega tylko na tym, że tym razem możliwa jest edycja roboczego środka obrotu. Po ustanowieniu roboczego środka obrotu można go użyć zamiast domyślnego środka obrotu związanego z obiektem. W tym celu należy kliknąć przycisk Use Working Pivot Point. Roboczy środek obrotu będzie aktywny tak długo, jak długo będzie włączony ten przycisk, i będzie środkiem obrotu dla wszystkich obiektów w scenie. O takim stanie rzeczy Max informuje, wyświetlając pod nazwą każdego okna widokowego tekst „USE WP”. Gdy włączony jest tryb Edit Working Pivot, wyświetlany jest tekst „EDIT WP”. 4

Jest to prawdą, ale tylko w odniesieniu do dwóch pierwszych trybów. W trybie Affect Hierarchy Only skalowanie obiektu rodzica oznacza przemieszczanie obiektów dzieci względem środka obrotu obiektu rodzica — przyp. tłum.

5

Układ związany z obiektem to wewnętrzny układ współrzędnych przypisany obiektowi na stałe w chwili jego utworzenia. Nie należy go mylić z lokalnym układem współrzędnych obiektu, który związany jest z środkiem obrotu obiektu i daje się transformować, niezależnie od obiektu — przyp. tłum.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

269

Roboczy środek obrotu można również uaktywnić przez wybranie opcji Working z listy rozwijanej Reference Coordinate System na głównym pasku narzędzi.

Roleta Working Pivot zawiera również przyciski wspomagające ustawianie roboczego środka obrotu. Przycisk Aligne To View dostosowuje orientację układu współrzędnych roboczego środka obrotu do bieżącego widoku. Natomiast przycisk Reset przenosi ten środek do środka układu związanego z aktualnie zaznaczonym obiektem lub do środka globalnego układu współrzędnych, jeśli żaden obiekt nie jest zaznaczony. Istnieć może tylko jeden roboczy środek obrotu, ale można go używać w odniesieniu do każdego obiektu w scenie.

Przycisk View w sekcji Place Pivot To wprowadza tryb oznaczany napisem „PLACE WP VIEW”. Tryb ten umożliwia umieszczenie roboczego środka obrotu w dowolnym miejscu aktywnego okna widokowego — wystarczy kliknąć odpowiednie miejsce. Z kolei przycisk Surface z tej samej sekcji wprowadza tryb umieszczania roboczego środka obrotu na powierzchni obiektu — podczas przesuwania kursora po ściankach obiektu środek obrotu jest do nich automatycznie dopasowywany. Tryb ten oznaczany jest w oknach widokowych napisem „PLACE WP SURFACE”. Jeśli włączona jest opcja Align To View, orientacja układu współrzędnych związanego z roboczym środkiem obrotu podczas stosowania trybów View i Surface jest dostosowywana do układu współrzędnych aktywnego okna widokowego.

Korygowanie transformacji Panel Hierarchy zawiera również roletę o nazwie Adjust Transform, która umożliwia korzystanie z trybu przydatnego podczas pracy z obiektami połączonymi hierarchicznie. Kliknięcie przycisku Don’t Affect Children włącza tryb, w którym żadna transformacja obiektu nie jest przenoszona na przyłączone do niego obiekty dzieci. Bez włączenia tego trybu wszystkie transformacje obiektu należącego do danej hierarchii mają wpływ na wszystkie obiekty zajmujące niższą pozycję w tej hierarchii. Roleta ta zawiera także dwa przyciski pozwalające „wyzerować” orientację lokalnego układu odniesienia i procentowe wartości skalowania obiektu. Lokalny układ odniesienia zostaje zorientowany zgodnie z układem globalnym, a procentowe wartości skalowania są ustawiane na 100%. Jeśli np. obrócisz obiekt o 30 stopni i przeskalujesz go do 200%, wartości te będą wyświetlane w polach współrzędnych transformacji na pasku stanu (gdy włączone są narzędzia obrotu lub skalowania). Kliknięcie przycisków Transform i Scale w sekcji Reset spowoduje ustawienie tych wartości na, odpowiednio, 0 i 100. Przycisk Scale bywa używany do ustawiania wartości skalowania na 100% dla obiektów, które zostały przeskalowane nieproporcjonalnie. Skalowanie nieproporcjonalne może stwarzać problemy wtedy, gdy do tak przeskalowanego obiektu zostanie dołączony obiekt dziedziczący ten typ skalowania. Przywrócenie domyślnych wartości skalowania obiektu rodzica za pomocą przycisku Scale może te problemy rozwiązać. Wygląd obiektu nie ulegnie przez to zmianie, ale jeśli będziesz miał wtedy otwarte okno dialogowe Scale Transform Type-In, zauważysz, że w kolumnie Absolute: Local wszystkie wartości są ustawiane na 100.

270

Część II  Praca z obiektami Jeśli do obiektu, który został przeskalowany nieproporcjonalnie, zamierzasz dołączyć inny obiekt i planujesz stosowanie modyfikatorów, kliknij wcześniej przycisk Scale w sekcji Reset. Unikniesz nieprzyjemnych niespodzianek.

Narzędzie Reset XForm Przywrócenie domyślnych wartości parametrów transformacji możesz uzyskać również przy użyciu narzędzia Reset XForm dostępnego w panelu Utilities (jeden z domyślnie umieszczonych tam przycisków). Zaletą tego narzędzia jest to, że za jego pomocą można przywrócić domyślne wartości transformacji dla wielu obiektów jednocześnie. Odbywa się to przez zastosowanie modyfikatora XForm do każdego obiektu. Roleta tego narzędzia zawiera tylko jeden przycisk oznaczony etykietą Reset Selected (wyzeruj zaznaczone).

Ćwiczenie: Pszczoła latająca wokół kwiatka Odpowiednie ustawienie środka obrotu obiektu ułatwia sterowanie jego transformacjami. W tym przykładzie wykonamy animację pszczoły latającej wokół kwiatka i trzepoczącej skrzydełkami. Aby odpowiednio zaanimować ruch skrzydełek i całej pszczoły, zmienimy położenie środków obrotu tych obiektów. Aby sterować ruchem pszczoły, wykonaj następujące czynności. 1. Otwórz plik Buzzing bee.max z folderu Chap 07 znajdującego się na płycie dołączonej do książki. Plik ten zawiera modele pszczoły i kwiatu utworzone z obiektów podstawowych. Są one dziełem pracowników firmy Zygote Media. 2. Kliknij model pszczoły, aby go zaznaczyć, a następnie wciśnij klawisz Z, by powiększyć widok tego obiektu we wszystkich oknach widokowych. Kliknij prawe skrzydło, otwórz panel Hierarchy i kliknij przycisk Affect Pivot Only. Spowoduje to wyświetlenie osi układu odniesienia związanego z środkiem obrotu skrzydła. W oknie widokowym Top przesuń ten środek obrotu w prawo, a następnie w oknie Front — w dół, tak aby znalazł się w miejscu połączenia skrzydła z tułowiem pszczoły. Wyłącz przycisk Affect Pivot Only. Te same czynności powtórz dla lewego skrzydła. 3. Kliknij przycisk Auto Key (lub wciśnij klawisz N), aby włączyć tryb animacji, i przeciągnij suwak czasu do 1. klatki. Następnie kliknij przycisk Select and Rotate (E) i w oknie widokowym Front obróć skrzydło wokół jego osi Z tak, aby przyjęło pozycję niemal pionową. Zwróć uwagę, jak skrzydło obraca się wokół nowego środka obrotu. Przeciągnij suwak czasu do 2. klatki i obróć skrzydło do pozycji wyjściowej. Kliknij ponownie przycisk Auto Key (N), aby wyłączyć tryb animacji. 4. Jeśli chcesz, żeby obroty były powtarzane w całej animacji, kliknij prawym przyciskiem myszy obiekt skrzydła i z menu kontekstowego wybierz polecenie Curve Editor. Otwarte zostanie okno Track View z zaznaczonymi ścieżkami obrotu. Wybierz w nim polecenie Controller/Out-of-Range Types, aby otworzyć okno dialogowe Param Curve Out-of-Range Types. W tym oknie zaznacz opcję Loop i kliknij przycisk OK, a następnie zamknij okno Track View.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

271

Szczegółowy opis okna Track View wykracza poza ramy tego rozdziału, ale jeśli chcesz dowiedzieć się więcej na jego temat, zajrzyj do rozdziału 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

5. Powtórz czynności z punktów 3. i 4. dla drugiego skrzydła, a następnie kliknij przycisk Play Animation, aby zobaczyć, jak pszczoła trzepoce skrzydełkami. 6. W oknie widokowym Top zaznacz wszystkie obiekty, z których zbudowana jest pszczoła, a następnie wybierz polecenie Group/Group i nadaj tworzonej grupie nazwę bee (pszczoła). W oknie Left zaznacz pszczołę i kwiat, a następnie wciśnij klawisz Z, by uzyskać zbliżenie obu modeli we wszystkich oknach widokowych. 7. Zaznacz grupę obiektów stanowiących model pszczoły, w panelu Hierarchy kliknij przycisk Affect Pivot Only i w oknie widokowym Front przesuń środek obrotu tej grupy tak, aby znalazł się w centrum kwiatu. Kliknij ponownie przycisk Affect Pivot Only, by wyłączyć tryb transformacji środka obrotu. Jeśli w celu wykonania obrotu pszczoły wokół kwiatu nie chcesz przesuwać jej środka obrotu, możesz zastosować roboczy środek obrotu lub z listy układów odniesienia wybrać opcję Pick i wskazać kwiat.

8. Ponownie kliknij przycisk Auto Key (lub wciśnij klawisz N) i przeciągnij suwak czasu do klatki 35. Za pomocą narzędzia Select and Rotate (E) obróć pszczołę w oknie widokowym Top o jedną trzecią kąta pełnego wokół kwiatu. Przeciągnij suwak do klatki 70. i obróć pszczołę o kolejną jedną trzecią kąta pełnego. Po przesunięciu suwaka do klatki 100. obróć pszczołę tak, aby przyjęła pozycję wyjściową. Kliknij jeszcze raz przycisk Auto Key, aby wyjść z trybu animacji. 9. Kliknij przycisk Play Animation (/), aby obejrzeć latającą pszczołę. Na rysunku 7.11 przedstawiono pszczołę krążącą wokół kwiatka, czyli miejsca, gdzie znajduje się jej środek obrotu.

Dopasowywanie położenia i orientacji obiektów Szybki sposób automatycznego transformowania obiektów oferują narzędzia przeznaczone do wyrównywania położenia i orientacji obiektów. Narzędzia te umożliwiają wyrównywanie obiektów względem ich środków lub krawędzi, dopasowywanie normalnych i odbłysków, wyrównywanie do widoków i siatek konstrukcyjnych, a nawet wyrównywanie kamer.

Wyrównywanie obiektów Operacjom wyrównywania położenia i orientacji podlegają wszystkie obiekty, które mogą być transformowane, a więc, poza zwykłymi obiektami geometrycznymi, mogą to być także źródła światła, kamery i pola sił. Po zaznaczeniu obiektów, które chcesz wyrównać, kliknij przycisk Align na głównym pasku narzędzi lub wybierz polecenie Tools/Align

272

Część II  Praca z obiektami

Rysunek 7.11. Przesunięcie środka obrotu pszczoły pozwoliło łatwo zaanimować jej ruch wokół kwiatu

(lub wciśnij klawisze Alt+A). Ikona kursora zmieni się w ikonę narzędzia Align. Teraz kliknij obiekt docelowy, do którego mają być wyrównane zaznaczone obiekty. To spowoduje otwarcie okna dialogowego Align Selection z nazwą obiektu docelowego wyświetlaną na pasku tytułowym, co widać na rysunku 7.12. Rysunek 7.12. W oknie dialogowym Align Selection możesz wybrać wyrównywanie obiektów wzdłuż poszczególnych osi z uwzględnieniem punktów minimalnych, środkowych, maksymalnych i środków obrotu

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

273

Okno dialogowe Align Selection pozwala wybrać osie, wzdłuż których obiekty mają być wyrównane, oraz określić, czy obiekty mają być wyrównywane względem ich wymiarów zewnętrznych (opcje Minimum i Maximum), środków geometrycznych (opcja Center) lub środków obrotu (opcja Pivot Point). Wyboru tych elementów można dokonać niezależnie dla obiektów zaznaczonych (sekcja Current Object) i obiektu docelowego (sekcja Target Object). Podczas dokonywania ustawień w tym oknie obiekty zmieniają swoje położenie, ale rzeczywiste transformacje są wykonywane dopiero po kliknięciu przycisku Apply lub OK. Nieco inny sposób wyrównywania obiektów oferuje narzędzie Clone and Align opisane w rozdziale 8., „Klonowanie i ustawianie obiektów w szyku”.

Narzędzie Quick Align Zarówno w rozwijanej grupie przycisku na pasku narzędzi, jak i w menu Tools bezpośrednio pod narzędziem Align znajduje się narzędzie do szybkiego wyrównywania obiektów o nazwie Quick Align (Shift+A). Jeśli je wybierzesz i klikniesz obiekt docelowy, środki obrotu wszystkich zaznaczonych wcześniej obiektów zostaną wyrównane z środkiem obrotu obiektu docelowego. Nie będzie przy tym otwierane żadne okno dialogowe.

Dopasowywanie normalnych Narzędzie Normal Align (dopasowywanie normalnych) służy do takiego dopasowywania dwóch obiektów, aby ich powierzchnie stykały się w ściśle określonym punkcie. Normalna jest wektorem wychodzącym z środka ścianki obiektu i prostopadłym do tej ścianki. Dopasowanie dwóch normalnych należących do różnych obiektów oznacza, że obiekty te będą styczne. Jeśli będą to sfery, będą się stykać dokładnie w jednym punkcie. Aby dopasować normalne, najpierw zaznacz obiekt, który będzie przemieszczany (obiekt źródłowy). Następnie wskaż polecenie Tools/Normal Align lub z rozwijanej grupy przycisku Align na głównym pasku narzędzi wybierz przycisk Normal Align (lub wciśnij klawisze Alt+N). Ikona kursora zmieni się w ikonę narzędzia Normal Align. Przeciągaj kursor po powierzchni obiektu źródłowego, obserwując niebieską strzałkę symbolizującą normalną wystającą z aktualnie wskazywanej ścianki. Po wybraniu właściwej ścianki zwolnij przycisk myszy. Następnie kliknij obiekt docelowy i, tak jak w przypadku obiektu źródłowego, przeciągnij kursor, aby wybrać odpowiednią ściankę. Tym razem strzałka symbolizująca normalną ma kolor zielony. Gdy zwolnisz przycisk myszy, obiekt źródłowy przemieści się, tak aby oba obiekty zetknęły się wybranymi ściankami, i wyświetlone zostanie okno dialogowe Normal Align, pokazane na rysunku 7.13. Po wstępnym dopasowaniu normalnych obiekty stykają się wybranymi ściankami, ale w oknie dialogowym Normal Align można określić wartości przesunięcia obiektu źródłowego względem docelowego. W polu Angle należy podać kąt, o jaki obiekt źródłowy zostanie obrócony wokół osi wyznaczonej przez normalną obiektu docelowego. Opcja Flip Normal ustawia obiekty w taki sposób, aby ich normalne były tak samo zwrócone.

274

Część II  Praca z obiektami

Rysunek 7.13. Okno dialogowe Normal Align pozwala określić względne przesunięcie obiektów podczas dopasowywania normalnych

Na użytek procesu dopasowywania normalnych obiekty niemające ścianek, np. obiekty pomocnicze lub pola sił, tworzą normalną wychodzącą z ich środka w kierunku osi Z.

Ćwiczenie: Całująca się para Podczas dopasowywania normalnych dwie ścianki są ustawiane dokładnie naprzeciw siebie. W tym ćwiczeniu w taki właśnie sposób ustawimy modele dwóch twarzy. Aby za pomocą narzędzia Normal Align połączyć parę zakochanych, wykonaj następujące czynności. 1. Otwórz plik Kissing couple.max z folderu Chap 07 znajdującego się na płycie dołączonej do książki. Plik ten zawiera dwa modele głów chłopca i dziewczyny. Modele zostały wykonane techniką wytłaczania kształtów, co dało płaskie boczne ścianki, łatwe do dopasowania. 2. Zaznacz głowę dziewczyny i wybierz polecenie Tools/Normal Align (lub wciśnij klawisze Alt+N), a następnie przeciągaj kursor wzdłuż wytłoczonego kształtu, aż niebieski wektor pojawi się na przedniej ściance wargi (patrz rysunek 7.14). Rysunek 7.14. Za pomocą narzędzia Normal Align możesz dopasować wybrane ścianki obiektów

3. Następnie przeciągnij kursor wzdłuż wytłoczonego kształtu głowy chłopca, tak aby zielony wektor pojawił się na przedniej ściance jego wargi. Zwolnij przycisk myszy. W oknie dialogowym Normal Align wpisz wartość 5 w polu Z i kliknij przycisk OK. Na rysunku 7.14 przedstawiono naszą parę przed dopasowaniem normalnych i po nim.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

275

W rozwijanej grupie przycisku Align na głównym pasku narzędzi są jeszcze dwa przyciski narzędzi służących do wyrównywania obiektów: Align Camera i Place Highlight (Ctrl+H). Szczegółowy opis tych narzędzi znajdziesz w rozdziałach, odpowiednio, 19., „Operowanie kamerami”, i 20., „Podstawowe techniki oświetlania sceny”.

Wyrównywanie do widoku Narzędzie Align to View pozwala łatwo i szybko ustawiać obiekt tak, aby wybrana oś jego lokalnego układu współrzędnych była zgodna z osią Z aktywnego okna widokowego. Aby zastosować to narzędzie, zaznacz obiekt i wybierz polecenie Tools/Align to View. Otwarte zostanie okno dialogowe Align to View pokazane na rysunku 7.15. Rezultaty zmian ustawień w tym oknie są natychmiast widoczne w oknach widokowych. Opcja Flip pozwala odwrócić orientację obiektu. Użycie tego narzędzia nie jest możliwe, jeśli żaden obiekt nie jest zaznaczony.

Rysunek 7.15. Okno dialogowe Align to View umożliwia takie wyrównanie obiektu, aby jedna z osi jego lokalnego układu odniesienia była zgodna z osią Z aktywnego okna widokowego

Narzędzie Align to View jest szczególnie przydatne w ustalaniu prawidłowej orientacji obiektu, który został utworzony w niewłaściwym oknie widokowym. Jeśli zaznaczysz kilka obiektów, ich orientacja jest dopasowywana do okna widokowego zgodnie z lokalnym układem odniesienia każdego z tych obiektów. Działanie narzędzia Align to View w przypadku obiektów symetrycznych (takich jak np. sfera) jest z trudem zauważalne w oknach widokowych.

Stosowanie siatek konstrukcyjnych Po uruchomieniu Maksa jedynym elementem widocznym w oknach widokowych jest główna siatka konstrukcyjna (home grid). Pełni ona rolę punktu odniesienia ułatwiającego tworzenie i rozmieszczanie obiektów w przestrzeni trójwymiarowej. Siatka ta zawiera dwie ciemniejsze linie przechodzące przez jej środek. Przecięcie tych linii wyznacza początek globalnego układu współrzędnych (wartość współrzędnych X, Y i Z w tym punkcie wynosi 0,0). Jest to punkt, w którym domyślnie umieszczane są wszystkie obiekty. Poza główną siatką konstrukcyjną możesz tworzyć i dowolnie rozmieszczać w scenie inne siatki. Nie są one renderowane, ale mogą być pomocne przy ustawianiu i wyrównywaniu innych obiektów w przestrzeni.

276

Część II  Praca z obiektami

Główna siatka konstrukcyjna Widoczność głównej siatki konstrukcyjnej może być włączana i wyłączana za pomocą polecenia Tools/Grids and Snaps/Show Home Grid (skrót klawiszowy G umożliwia włączanie i wyłączanie widoczności tej siatki w aktywnym oknie widokowym). Jeśli główna siatka jest jedyną siatką konstrukcyjną w scenie, nowe obiekty tworzone są właśnie na niej. Parametry głównej siatki konstrukcyjnej (patrz rysunek 7.16) są dostępne po wybraniu polecenia Tools/Grids and Snaps/Grid and Snap Settings lub kliknięciu prawym przyciskiem myszy jednego z przycisków, takich jak Snaps Toggle, Angle Snap Toggle lub Percent Snap Toggle, znajdujących się na głównym pasku narzędzi. Rysunek 7.16. W panelach Home Grid i User Grids okna dialogowego Grid and Snap Settings możesz ustawić parametry siatki konstrukcyjnej

W panelu Home Grid okna dialogowego Grid and Snap Settings możesz ustalić odstępy między liniami (Grid Spacing) siatki oraz częstotliwość występowania głównych linii siatki (Major Lines). (Wartość parametru Grid Spacing aktywnej siatki konstrukcyjnej jest wyświetlana również na pasku stanu). W sekcji Dynamic Update możesz wybrać, czy wygląd siatki ma być dynamicznie uaktualniany tylko w aktywnym oknie widokowym (Active Viewport), czy też we wszystkich oknach (All Viewports). W panelu User Grids możesz włączyć opcję Activate grids when created, aby każda nowa siatka automatycznie stawała się aktywna w momencie utworzenia.

Tworzenie i uaktywnianie dodatkowych siatek konstrukcyjnych Scena, oprócz głównej siatki, może zawierać również dodatkowe siatki konstrukcyjne. Aby utworzyć taką siatkę, wybierz polecenie Create/Helpers/Grid lub w panelu poleceń kliknij zakładkę Create, wybierz kategorię Helpers i kliknij przycisk Grid. W rolecie Parameters możesz ustawić rozmiary nowej siatki, odstępy między liniami i kolor, a także wybrać, która płaszczyzna układu współrzędnych ma być wyświetlana (XY, YZ czy ZX). Jak już wspominałem, można włączyć opcję automatycznego uaktywniania każdej nowo utworzonej siatki. Jeśli jednak musisz uaktywnić inną siatkę, zaznacz ją, a następnie wybierz polecenie Tools/Grids and Snaps/Activate Grid Object. Pamiętaj przy tym, że w danej chwili może być aktywna tylko jedna siatka, oraz o tym, że głównej siatki nie można zaznaczyć. Siatkę dodatkową możesz uaktywnić także przez kliknięcie jej prawym przyciskiem myszy i wybranie z menu kontekstowego polecenia Activate Grid. Aby ponownie

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

277

uaktywnić główną siatkę, wybierz polecenie Tools/Grids and Snaps/Activate Home Grid lub kliknij ją prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Activate Home Grid. Dalsze ustawienia dotyczące dodatkowych siatek konstrukcyjnych znajdziesz w panelu User Grids okna dialogowego Grid and Snap Settings. Poza wspominaną już opcją automatycznego uaktywniania nowych siatek, znajdziesz tu opcje wyrównywania siatek tworzonych w trybie AutoGrid względem globalnego lub lokalnego układu odniesienia.

Tryb AutoGrid Tryb AutoGrid ułatwia tworzenie płaszczyzny konstrukcyjnej stycznej do wybranej ścianki obiektu. Dzięki temu można budować i ustawiać obiekty ściśle dopasowane do siebie, bez konieczności ich dopasowywania ręcznego lub przy użyciu narzędzi typu Align. Tryb AutoGrid możesz włączyć w rolecie Object Type panelu Create. Jest on dostępny dla każdej kategorii tworzonych obiektów. Pole wyboru tego trybu staje się niedostępne po wyjściu z trybu tworzenia obiektu. Aby wykreować obiekt w trybie AutoGrid, wybierz typ obiektu, jaki chcesz utworzyć, i zaznacz opcję AutoGrid. Jeśli scena jest pusta, obiekt będzie tworzony w zwykły sposób, ale jeśli jakiś obiekt już istnieje, możesz wskazać konkretną jego ściankę (wraz z kursorem przemieszcza się lokalny układ współrzędnych nowego obiektu ustawiający się zawsze prostopadle do wskazywanej ścianki6), na której nowy obiekt ma być umieszczony. W tym momencie wystarczy kliknąć i przeciągnąć kursor, aby taki właśnie obiekt utworzyć. Jeżeli nie wyłączysz trybu AutoGrid, będzie on obowiązywał podczas tworzenia wszystkich kolejnych obiektów. Jeśli podczas tworzenia nowego obiektu w trybie AutoGrid przytrzymasz wciśnięty klawisz Alt, nowa siatka pozostanie widoczna i będzie aktywną siatką konstrukcyjną. Jednocześnie zostanie wyłączony tryb AutoGrid. Aby powrócić do tego trybu, należy ponownie włączyć opcję AutoGrid.

Ćwiczenie: Tworzenie lunety Dodawanie nowych obiektów do istniejącej już sceny z dala od jej środka staje się dużo łatwiejsze, jeśli włączy się tryb AutoGrid. Umożliwia on ustawianie nowych obiektów na (lub obok) powierzchni obiektów sąsiednich. Najlepiej sprawdza się to podczas tworzenia obiektów, które środek obrotu mają umieszczony na swojej powierzchni, takich jak np. prostopadłościan lub walec. W tym ćwiczeniu utworzymy model lunety. Zastosowanie trybu AutoGrid pozwoli uniknąć przeprowadzania dodatkowych transformacji poszczególnych składników tego modelu. Aby utworzyć lunetę, używając trybu AutoGrid, wykonaj następujące czynności.

6

Oczywiście, prostopadłą do ścianki jest tylko oś Z tego układu — przyp. tłum.

278

Część II  Praca z obiektami

1. Przed przystąpieniem do tworzenia obiektów uaktywnij okno widokowe Left i zmniejsz skalę widoku na tyle, aby możliwa była obserwacja wszystkich elementów składowych lunety. 2. Wybierz polecenie Create/Standard Primitives/Cylinder, a następnie przeciągnij kursor w oknie Top, rozpoczynając w środku okna, aby utworzyć walec. Parametr Radius (promień) ustaw na 40, a Height (wysokość) — na 200. Następnie włącz opcję AutoGrid w rolecie Object Type. 3. Ponownie przeciągnij kursor w oknie Top (rozpocznij również od środka) i utwórz drugi cylinder, ustawiając jego parametry w sposób następujący: Radius na 35, a Height na 200. Powtórz to samo jeszcze trzykrotnie, zmniejszając za każdym razem promień walca o 5 jednostek. Gotowy model lunety jest pokazany na rysunku 7.17.

Rysunek 7.17. Model lunety został utworzony szybko i łatwo po zastosowaniu trybu AutoGrid

Korzystanie z funkcji przyciągania (Snap) Zazwyczaj obiekt podczas transformowania chcemy umieścić w ściśle określonym położeniu. Dużą pomocą w takim precyzyjnym ustawianiu obiektów jest funkcja przyciągania (Snap). Jeśli np. konstruujesz model schodów złożony ze zwykłych prostopadłościanów,

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

279

możesz włączyć funkcję Edge Snap (przyciąganie do krawędzi), która pozwoli Ci dokładnie dopasować każdy kolejny stopień do krawędzi poprzedniego. Jeśli funkcja przyciągania jest włączona, obiekt znajdujący się dostatecznie blisko określonego miejsca zostaje automatycznie w to miejsce przesunięty (przyciągnięty). Funkcja ta współpracuje z każdym typem transformacji7. Elementy (miejsca), do których obiekt może być przyciągany, są określone w oknie dialogowym Grid and Snap Settings otwieranym przez wybranie polecenia Tools/Grids and Snaps/Grid and Snap Settings lub kliknięcie prawym przyciskiem myszy jednego z pierwszych trzech przycisków przyciągania na głównym pasku narzędzi (przyciski z ikoną w kształcie magnesu). Na rysunku 7.18 przedstawiono panel Snaps tego okna zarówno dla obiektów typu Standard, jak i NURBS. Dostępna jest również możliwość konfigurowania funkcji przyciągania dla obiektów Body. Obiekty typu NURBS (skrót od Non-Uniform Rational B-Splines — niejednorodne wymierne krzywe B-sklejane) są tworzone na bazie krzywych sklejanych (tzw. splajnów). Rysunek 7.18. Panel Snaps umożliwia wybór różnych punktów przyciągania, w zależności od typu obiektu

Więcej informacji na temat obiektów NURBS znajdziesz w dodatku G, „Praca z obiektami NURBS”.

Po określeniu punktów przyciągania możesz włączyć tę funkcję za pomocą przycisków przyciągania znajdujących się na głównym pasku narzędzi (możesz też po prostu wcisnąć klawisz S). Pierwszy z tych przycisków, Snaps Toggle, tworzy grupę rozwijaną złożoną z trzech przycisków: 3D Snap Toggle, 2.5D Snap Toggle i 2D Snap Toggle. Przycisk 2D Snap Toggle ogranicza przyciąganie do punktów leżących na aktywnej siatce konstrukcyjnej. Przycisk 2.5D Snap Toggle wprowadza przyciąganie do punktów leżących na aktywnej siatce konstrukcyjnej oraz do rzutów pozostałych punktów na tę siatkę. Przycisk 3D Snap Toggle włącza przyciąganie do wszystkich charakterystycznych punktów w przestrzeni 3D. Gdy funkcja przyciągania jest włączona, w środku obrotu zaznaczenia widoczny jest maleńki okrąg. Ma on przypominać, że przyciąganie jest aktywne, ale też służy do swobodnego przesuwania zaznaczonych obiektów pomiędzy punktami przyciągania. Przesuwanie przy użyciu pozostałych elementów gizma translacji spowoduje oczywiście ograniczenie ruchu do określonej płaszczyzny lub prostej.

7

Dla ścisłości, funkcja przyciągania działa w opisany tutaj sposób tylko podczas przesuwania obiektów. Dla obrotu i skalowania funkcja ta oznacza transformację „skokową” o określony kąt (obrót) lub procent (skalowanie) — przyp. tłum.

280

Część II  Praca z obiektami

Podczas przesuwania rysowana jest linia łącząca położenie bieżące z początkowym. Dostępne punkty przyciągania są oznaczane odpowiednimi markerami. Gdy marker i wspomniana linia mają kolor żółty, to znaczy, że przyciąganie działa w trybie podglądu. Jeśli wtedy zwolnisz przycisk myszy, obiekt przesuwany zostanie przyciągnięty do oznaczonego markerem punktu. Jeżeli jeszcze bardziej przysuniesz obiekt do zaznaczonego punktu, obiekt zostanie przyciągnięty (bez zwalniania przycisku myszy), a linia i marker zmienią kolor na zielony. Gdy umieścisz wskaźnik myszy w pobliżu punktu przyciągania, punkt ten zostanie oznaczony stosownym markerem. Przykładowo, jeśli w oknie Grid and Snap Settings włączysz opcję Vertex, a następnie ustawisz kursor blisko wierzchołka jakiegoś obiektu, w miejscu tego wierzchołka pojawi się żółty krzyżyk. Zacznij wtedy przesuwanie obiektu, a wierzchołkiem przyciąganym do kolejnych punktów będzie właśnie ten, który został wyróżniony markerem.

Ćwiczenie: Tworzenie dwuwymiarowego konturu obiektu Tryb przyciągania 2.5D może budzić wątpliwości. Przyciąganie jest tutaj aktywne tylko na bieżącej siatce konstrukcyjnej, ale w jej obrębie obejmuje również punkty będące rzutami charakterystycznych punktów leżących w przestrzeni (poza siatką). Wykorzystując ten tryb, można łatwo utworzyć dwuwymiarową reprezentację obiektu trójwymiarowego. Aby utworzyć płaski kontur obiektu w kształcie walca, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Cylinder i utwórz walec. 2. Za pomocą narzędzia Select and Rotate obróć walec tak, aby zawisł nad siatką konstrukcyjną. 3. Kliknij przycisk Snap Toggle, lecz nie zwalniaj przycisku myszy. Z rozwiniętej w ten sposób grupy przycisków wybierz ten z napisem 2.5. Następnie kliknij ten przycisk prawym przyciskiem myszy i na panelu Snaps okna dialogowego Grid and Snap Settings zaznacz tylko jedną opcję — Vertex (wierzchołek). Zamknij okno dialogowe Grid and Snap Settings. 4. Wybierz polecenie Create/Shapes/Line i w oknie widokowym Top utwórz linię łączącą punkty wyznaczające kontur walca. Ukończony kontur walca został pokazany na rysunku 7.19. Kliknięcie prawym przyciskiem myszy jednego z przycisków przyciągania otwiera okno dialogowe Grid and Snap Settings. Wyjątkiem jest przycisk Spinner Snap Toggle, który w takiej sytuacji otwiera okno dialogowe Preference Settings.

Przyciski tworzące grupę Snaps Toggle sterują przyciąganiem podczas przesuwania obiektów. Na prawo od tej grupy znajdują się dwa inne przyciski: Angle Snap Toggle i Percent Snap Toggle. Pierwszy z nich włącza przyciąganie podczas obracania obiektu, a drugi — podczas skalowania.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

281

Rysunek 7.19. W trybie 2.5D obiekty są przyciągane do punktów będących rzutami wierzchołków na aktywną siatkę konstrukcyjną Skrótem klawiszowym włączającym i wyłączającym funkcję przyciągania jest wciśnięcie klawisza S.

Ustalanie punktów przyciągania Panel Snaps okna dialogowego Grid and Snap Settings zawiera listę punktów, do których obiekt może być przyciągany, zebranych w dwóch kategoriach — Standard i NURBS8. W kategorii Standard mamy do wyboru następujące punkty (patrz lewa część rysunku 7.18):

8



Grid Points — punkty przecięcia linii siatki,



Grid Lines — linie siatki,



Pivot — środek obrotu obiektu,



Bounding Box — narożniki pudełka otaczającego obiekt,

Oczywiście kategorie są trzy, a tą trzecią jest Body Snaps, która obejmuje następujące punkty: Vertex (wierzchołek), Edge (krawędź), Face (ścianka), End Edge (koniec krawędzi) i Edge Midpoint (środek krawędzi) — przyp. tłum.

282

Część II  Praca z obiektami 

Perpendicular — punkt splajnu, który wraz z punktem początkowym przesunięcia tworzy odcinek prostopadły do splajnu,



Tangent — punkt splajnu, który wraz z punktem początkowym przesunięcia tworzy odcinek styczny do splajnu,



Vertex — wierzchołek ścianki obiektu,



Endpoint — punkt końcowy segmentu splajnu lub krawędzi ścianki,



Edge/Segment — dowolny punkt krawędzi obiektu lub segmentu splajnu,



Midpoint — punkt środkowy segmentu splajnu lub krawędzi ścianki,



Face — dowolny punkt ścianki obiektu,



Center Face — środek ścianki obiektu.

Kategoria NURBS zawiera następujące, specyficzne dla siebie elementy (patrz prawa część rysunku 7.18): 

CV — wierzchołek kontrolny (Control Vertex) krzywej lub powierzchni NURBS,



Point — punkt krzywej lub powierzchni NURBS,



Curve Center — środek krzywej NURBS,



Curve Normal — punkt krzywej NURBS, który wraz z punktem początkowym przesunięcia tworzy odcinek prostopadły do tej krzywej,



Curve Tangent — punkt krzywej NURBS, który wraz z punktem początkowym przesunięcia tworzy odcinek styczny do tej krzywej,



Curve Edge — krawędź krzywej NURBS,



Curve End — koniec krzywej NURBS,



Surf Center — środek powierzchni NURBS,



Surf Normal — punkt powierzchni NURBS, który wraz z punktem początkowym przesunięcia tworzy odcinek prostopadły do tej powierzchni,



Surf Edge — krawędź powierzchni NURBS.

Ustawianie opcji przyciągania Okno dialogowe Grid and Snap Settings zawiera także panel Options, pokazany na rysunku 7.20, w którym możesz włączyć wyświetlanie markera oraz ustalić jego rozmiar Parametr Snap Preview Radius określa odległość od punktu przyciągania, w jakiej musi się znaleźć kursor, aby ten punkt przyciągania został oznaczony markerem. Wartość tego parametru może być większa lub równa wartości parametru Snap Radius, który określa odległość od punktu przyciągania, w jakiej musi się znaleźć obiekt, aby jeszcze w trakcie przesuwania został przyciągnięty do tego punktu. Parametry Angle i Percent określają odpowiednio: skok wartości kąta obrotu i skok wartości procentowej skalowania. Włączenie opcji Snap to frozen objects umożliwia korzystanie z funkcji przyciągania także w odniesieniu do obiektów zamrożonych. Z kolei włączenie

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

283

Rysunek 7.20. Panel Options zawiera ustawienia dotyczące rozmiaru markera oraz inne parametry przyciągania

opcji Use Axis Constraints sprawia, że obiekt będzie mógł być przesuwany tylko wzdłuż osi określonych przez ograniczenia transformacji. Opcja Display rubber band odpowiada za wyświetlanie linii łączącej punkty początkowego i aktualnego położenia obiektu. Jeśli w aktywnym oknie widokowym klikniesz prawym przyciskiem myszy przy jednocześnie wciśniętym klawiszu Shift, rozwinięte zostanie menu kontekstowe, gdzie możesz wybrać dodatkowe punkty przyciągania lub zmienić ustawienia opcji, takich jak przyciąganie do obiektów zamrożonych i uwzględnianie ograniczeń transformacji.

Korzystanie z paska narzędziowego Snaps Szybki dostęp do poszczególnych kategorii przyciągania umożliwia pasek narzędziowy Snaps pokazany na rysunku 7.21. Aby go wyświetlić, kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędzi i w menu podręcznym zaznacz opcję Snaps. Przyciski na tym pasku są niezależne, co oznacza, że można włączyć kilka jednocześnie. Każdy włączony przycisk zmienia kolor na żółty. Rysunek 7.21. Pasek narzędzi Snaps umożliwia szybki dostęp do niektórych ustawień funkcji przyciągania

Ćwiczenie: Modelowanie cząsteczki metanu Molekuły substancji chemicznych często są przedstawiane w postaci układu kul, które reprezentują atomy. Ręczne zestawienie takiego modelu może być zajęciem żmudnym i frustrującym, ale jeśli wykorzystamy funkcję przyciągania, stanie się bardzo łatwe. Cząsteczka metanu jest stosunkowo prosta — składa się z jednego atomu węgla otoczonego czterema atomami wodoru. Konstruowanie modelu takiej cząsteczki rozpoczniemy od utworzenia czworościanu foremnego, a następnie, wykorzystując funkcję przyciągania, umieścimy sfery (atomy) na jego wierzchołkach.

284

Część II  Praca z obiektami

Aby utworzyć model cząsteczki metanu, wykonaj następujące czynności. 1. Kliknij prawym przyciskiem myszy przycisk Snaps Toggle na głównym pasku narzędzi, aby otworzyć okno dialogowe Grid and Snap Settings, i zaznacz w nim opcje Grid Points oraz Vertex. Następnie kliknij przycisk Snaps Toggle (lub wciśnij klawisz S), aby włączyć przyciąganie w trybie 3D Snap. 2. Wybierz polecenie Create/Extended Primitives/Hedra, w sekcji Family Parameters rolety Parameters ustaw parametr P na 1,0, a następnie przeciągnij kursor w oknie widokowym Top od punktu centralnego głównej siatki konstrukcyjnej do pierwszego punktu po prawej stronie. Utworzony zostanie czworościan foremny. 3. Wybierz polecenie Create/Standard Primitives/Sphere, kliknij prawym przyciskiem myszy okno widokowe Left, a następnie przeciągnij kursor, rozpoczynając od lewego górnego wierzchołka czworościanu, aby utworzyć kulę. Parametr Radius (promień) tej kuli ustaw na 25. 4. Utwórz jeszcze trzy takie kule (o promieniu 25) w pozostałych wierzchołkach czworościanu. 5. Na koniec utwórz kulę w oknie widokowym Top, wykorzystując jako punkt początkowy ten sam punkt, z którego rozpoczynałeś tworzenie czworościanu. Promień tej kuli ustaw na 80. Gotowy model cząsteczki metanu pokazano na rysunku 7.22.

Podsumowanie Transformacje obiektów należą do operacji najczęściej wykonywanych w Maksie. Obejmują trzy podstawowe typy przekształceń: przesunięcie, obrót i skalowanie. Max oferuje wiele dodatkowych funkcji ułatwiających precyzyjne przeprowadzanie tych transformacji. Opisywane w tym rozdziale zagadnienia obejmowały: 

posługiwanie się narzędziami do przesuwania, obracania i skalowania obiektów oraz gizmami transformacji,



precyzyjne przekształcanie obiektów za pomocą okna dialogowego Transform Type-In i odpowiednich pól na pasku stanu,



używanie narzędzi z grupy Transform Managers w celu zmiany układu odniesienia i ograniczania transformacji,



wyrównywanie położenia i orientacji obiektów względem innych obiektów, względem normalnych i względem okien widokowych,



manipulowanie środkami obrotu i używanie roboczego środka obrotu,



pracę z siatkami konstrukcyjnymi,



ustalanie punktów przyciągania,



korzystanie z funkcji przyciągania obiektów do określonych punktów.

Rozdział 7.  Przekształcanie, obracanie, wyrównywanie i przyciąganie

285

Rysunek 7.22. Podczas tworzenia modelu cząsteczki metanu została wykorzystana funkcja przyciągania

W następnym rozdziale dowiesz się, jak powielać (klonować) obiekty. Jeśli zastanawiałeś się nad sposobem utworzenia dużej liczby jednakowych obiektów, znajdziesz tam gotowe rozwiązanie.

286

Część II  Praca z obiektami

Rozdział 8.

Klonowanie i ustawianie obiektów w szyku W tym rozdziale: 

Klonowanie obiektów



Kopie, klony i odnośniki



Używanie narzędzi Mirror i Snapshot



Rozmieszczanie obiektów wzdłuż ścieżki za pomocą narzędzia Spacing



Używanie narzędzia Clone and Align



Tworzenie szyków



System Ring Array

Jedyną rzeczą lepszą od doskonałego obiektu są dwa doskonałe obiekty. Klonowanie obiektów jest procesem tworzenia kopii obiektów istniejących. Sklonowany obiekt może zachować wewnętrzne połączenie z obiektem oryginalnym (tak jest w przypadku klonów i odnośników), które sprawia, że podlega on tym samym modyfikacjom, co oryginał. Jeśli np. utworzysz model szkolnego biurka i sklonujesz go, aby „umeblować” całą klasę, każda dalsza modyfikacja parametrów oryginału będzie dotyczyć także wszystkich klonów biurka. Szyk (array) jest to zbiór regularnie rozmieszczonych obiektów. Tworzenie szyku polega na sklonowaniu oryginalnego obiektu i rozmieszczeniu jego kopii według określonego schematu, np. w rzędach i kolumnach lub wokół okręgu. Jestem pewien, że masz wiele pomysłów na utworzenie doskonałych modeli, a jeśli zechcesz je później wielokrotnie powielić, teraz dowiesz się, jak to zrobić.

288

Część II  Praca z obiektami

Klonowanie obiektów Max umożliwia klonowanie obiektów na kilka sposobów (na szczęście, nie ma to nic wspólnego z DNA ani z modyfikowaniem genów). Jedna z metod polega na zastosowaniu polecenia Edit/Clone (Ctrl+V), a inna — na transformowaniu obiektu przy wciśniętym klawiszu Shift. Takie klonowanie jest zupełnie bezpieczne. Nie obawiaj się, że wyprodukowane przez Ciebie klony kogoś zaatakują (w przeciwieństwie do tych z filmu Gwiezdne wojny. Epizod II).

Polecenie Clone Duplikat obiektu możesz utworzyć, wybierając polecenie Edit/Clone (Ctrl+V). Wcześniej jednak musisz zaznaczyć ten obiekt i nie możesz być wtedy w trybie tworzenia. Po wybraniu tego polecenia otwarte zostanie okno dialogowe Clone Options, pokazane na rysunku 8.1, w którym możesz nadać nazwę tworzonemu klonowi oraz wybrać jedną z opcji: Copy (kopia), Instance (klon) lub Reference (odnośnik). Dla kopiowanych wraz z obiektem kontrolerów możesz wybrać opcję Copy lub Instance. Rysunek 8.1. W oknie dialogowym Clone Options możesz zdecydować, czy nowy obiekt ma być kopią, klonem czy odnośnikiem

Menu Edit nie zawiera, znanych z innych programów działających w systemie Windows, poleceń Cut (wytnij), Copy (kopiuj) i Paste (wklej), jako że wklejenie obiektu lub jego części w innym miejscu nie zawsze byłoby łatwe. Możesz jednak tworzyć duplikaty obiektów, korzystając z polecenia Clone (Ctrl+V). Objaśnienie różnic między kopią, klonem i odnośnikiem znajduje się w dalszej części tego rozdziału (patrz punkt „Kopie, klony i odnośniki”).

Gdy klonujemy obiekt za pomocą polecenia Clone, nowy obiekt zostaje umieszczony dokładnie w tym samym miejscu, które zajmuje oryginał, co bardzo utrudnia ich rozróżnienie. Aby sprawdzić, czy klon rzeczywiście został utworzony, otwórz okno dialogowe Select From Scene (wciśnij klawisz H) i na liście obiektów odszukaj nazwę klonu (ma nazwę taką samą jak oryginał, ale z dodanym kolejnym numerem). Jeśli chcesz zobaczyć oba obiekty, kliknij przycisk Select and Move na głównym pasku narzędzi i przesuń jeden z nich w inne położenie.

Klonowanie przy użyciu klawisza Shift Łatwiejsza metoda klonowania polega na wciśnięciu klawisza Shift podczas transformowania obiektu za pomocą jednego z narzędzi: Select and Move, Select and Rotate i Select and Scale. Przytrzymanie wciśniętego klawisza Shift podczas używania tych

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

289

narzędzi1 powoduje sklonowanie obiektu i otwarcie okna dialogowego Clone Options, które od opisanego wcześniej różni się tylko tym, że dodatkowo pozwala określić liczbę tworzonych kopii. Podczas transformowania obiektu przy wciśniętym klawiszu Shift określane jest przemieszczenie kolejnych kopii. Jeśli np. przesuniesz w ten sposób obiekt o pięć jednostek w lewo i ustawisz przy tym wartość parametru Number of Copies (liczba kopii) na 5, pierwszy sklonowany obiekt zostanie umieszczony w odległości pięciu jednostek od oryginału, drugi — w odległości dziesięciu jednostek itd.

Ćwiczenie: Klonowanie dinozaurów Fabuła filmu Park Jurajski to czysta fantazja, ale w Maksie możemy klonować dinozaury i nie musimy w tym celu dysponować ich DNA. Aby poznać procedurę klonowania obiektów, wykonaj następujące czynności. 1. Otwórz plik Cloning dinosaurs.max z folderu Chap 08 na płycie dołączonej do książki. 2. Zaznacz model dinozaura, klikając go w jednym z okien widokowych. 3. Wybierz polecenie Edit/Clone lub wciśnij klawisze Ctrl+V. Otwarte zostanie okno dialogowe Clone Options. 4. Wpisz nazwę nowego obiektu: First clone (pierwszy klon), zaznacz opcję Copy i kliknij przycisk OK. 5. Kliknij przycisk Select and Move (lub wciśnij klawisz W) na głównym pasku narzędzi. Następnie w oknie widokowym Top przeciągnij model dinozaura w prawo. Po przesunięciu kopii dinozaura oryginalny model będzie widoczny na swoim dotychczasowym miejscu. 6. Zaznacz kolejno każdy model i zwróć uwagę, jak zmienia się nazwa obiektu wyświetlana w rolecie Name and Color w panelu Create. Zauważ także, że kopia obiektu ma ten sam kolor, co oryginał. 7. Przy nadal włączonym przycisku Select and Move wciśnij klawisz Shift i nie zwalniając go, przeciągnij sklonowanego dinozaura w oknie widokowym Top jeszcze raz w prawo. W oknie dialogowym Clone Options, które wówczas się otworzy, zaznacz opcję Copy, w polu Number of Copies (liczba kopii) wpisz 3 i kliknij przycisk OK. 8. Aby zobaczyć wszystkie dinozaury, kliknij przycisk Zoom Extents All w prawym dolnym rogu (lub wciśnij klawisze Shift+Ctrl+Z). Pojawiły się trzy nowe dinozaury w jednakowych odległościach od siebie. Odstęp między nimi został określony przez odległość, na jaką została przesunięta pierwsza 1

Aby obiekt został sklonowany, klawisz Shift powinien być wciśnięty już w chwili rozpoczęcia transformacji — przyp. tłum.

290

Część II  Praca z obiektami

kopia podczas tworzenia trzech kolejnych. Na rysunku 8.2 przedstawiono rezultat naszych eksperymentów z klonowaniem dinozaurów (teraz musisz zbudować naprawdę solidne ogrodzenie).

Rysunek 8.2. Użycie klawisza Shift umożliwia szybkie klonowanie obiektów

Szybkie klonowanie W przyborniku transformacji (Transform Toolbox) znajduje się przycisk QClone (Quick Clone — szybkie klonowanie), który tworzy kopię zaznaczonego obiektu i umieszcza ją obok oryginału. Kopia jest przesuwana na odległość równą połowie szerokości obiektu, tak że oba obiekty stykają się ze sobą. Użycie tego przycisku przy wciśniętym klawiszu Shift powoduje utworzenie klonu obiektu, a przy wciśniętym klawiszu Alt powstają dwie kopie. Jest to szybki sposób kopiowania obiektów z jednoczesnym ich wyrównywaniem.

Opcje klonowania Podczas klonowania obiektów Max oferuje do wyboru trzy opcje: tworzenie kopii, klonów lub odnośników. Dotyczy to nie tylko klonowania obiektów geometrycznych, ale także materiałów, modyfikatorów i kontrolerów.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

291

Kopie, klony i odnośniki Podczas klonowania obiektu wyświetlane jest okno dialogowe Clone Options, w którym znajdują się opcje pozwalające utworzyć kopię (Copy), klon (Instance) lub odnośnik (Reference) do oryginalnego obiektu. Każdy z tych rodzajów klonowania daje nieco inny rezultat. Kopia, zgodnie z nazwą, jest dokładną repliką pierwowzoru. Nie ma żadnych powiązań z oryginalnym obiektem i funkcjonuje niezależnie od niego. Zmiany wprowadzane w kopii nie mają wpływu na wygląd oraz zachowanie oryginału i na odwrót. Klon zachowuje się inaczej niż kopia, ponieważ występują tu silne powiązania z obiektem oryginalnym. Wszelkie modyfikacje geometrii (wykonane za pomocą modyfikatorów lub przez zmianę parametrów obiektu) jednego klonu są przenoszone automatycznie na wszystkie pozostałe klony tego obiektu. Jeśli np. utworzyłeś wiele klonów skrzynki pocztowej i przypisałeś modyfikator dowolnemu z nich, wszystkie pozostałe również zostaną zmodyfikowane. Klony i odnośniki mogą mieć przypisane różne kolory, materiały, transformacje (przesunięcia, obroty i skalowania) oraz właściwości obiektu.

W przypadku odnośnika modyfikacje obiektu są przenoszone tylko w jedną stronę, czyli z obiektu oryginalnego na odnośnik. Odnośnik przejmuje wszystkie modyfikatory przypisane oryginałowi, ale można mu przypisać także jego własne modyfikatory. Załóżmy np., że utworzyłeś model jabłka oraz cały zbiór odnośników do niego. Jeśli przypiszesz jakiś modyfikator do pierwotnego jabłka, spowoduje to zmiany wszystkich jabłek, ale jeśli przypiszesz modyfikator do jednego z odnośników, tylko on zostanie zmodyfikowany. Klony i odnośniki są ściśle związane z pojęciem modyfikatorów, o których możesz przeczytać w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

W dowolnej chwili możesz przerwać połączenie odnośnika z oryginałem, klikając przycisk Make Unique, znajdujący się w panelu Modify bezpośrednio pod stosem modyfikatorów. Jeśli w menu Views jest włączona opcja Show Dependencies, po otwarciu panelu Modify wszystkie obiekty powiązane z obiektem aktualnie zaznaczonym — związkami typu klon lub odnośnik — są wyświetlane w kolorze magenty. Ułatwia to orientację we wzajemnych zależnościach między obiektami.

Ćwiczenie: Klonowanie pączków Dzięki właściwemu zrozumieniu różnic między poszczególnymi opcjami klonowania możesz w przyszłości uniknąć wykonywania wielu niepotrzebnych modyfikacji. W celu bliższego zapoznania się z tymi opcjami, wybierzmy się do pobliskiej ciastkarni. Aby sklonować kilka pączków, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Torus i dwoma przeciągnięciami kursora w oknie widokowym Top utwórz pączek w kształcie torusa.

292

Część II  Praca z obiektami

2. Zaznacz utworzony właśnie obiekt. 3. Kliknij przycisk Select and Move (lub wciśnij klawisz W). Wciśnij klawisz Shift i w oknie widokowym Top przeciągnij pączek ku górze. W oknie dialogowym Clone Options zaznacz opcję Instance, w polu Number of Copies wpisz liczbę 5 i kliknij przycisk OK. Aby poszerzyć widok, kliknij przycisk Zoom Extents All (lub wciśnij klawisze Shift+Ctrl+Z). 4. Za pomocą polecenia Edit/Select All (Ctrl+A) zaznacz wszystkie obiekty, a następnie, wciskając klawisz Shift, przeciągnij je w prawo (nadal w oknie widokowym Top). W oknie dialogowym Clone Options ponownie zaznacz opcję Instance, w polu Number of Copies wpisz tym razem liczbę 3 i kliknij przycisk OK. W ten sposób otrzymałeś 24 pączki ułożone w rzędach i kolumnach. Aby je wszystkie zobaczyć, kliknij przycisk Zoom Extents All (lub wciśnij klawisze Shift+Ctrl+Z). 5. Zaznacz jeden z pączków i w rolecie Parameters w panelu Modify nadaj parametrom Radius1 i Radius2 wartości, odpowiednio, 20 i 10. Wszystkie pączki jednocześnie zmieniły swój kształt. 6. Wybierz polecenie Modifiers/Parametric Deformers/Bend. W rolecie Parameters panelu Modify ustaw parametr Angle (kąt) na 25, a w sekcji Band Axis zaznacz oś X. Wszystkie pączki zostały lekko wygięte. Modyfikatory mogą być przypisywane wszystkim obiektom geometrycznym. Więcej informacji na temat stosowania modyfikatorów znajdziesz w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Wszystkie pączki widoczne na rysunku 8.3 zostały zmodyfikowane w dokładnie taki sam sposób. Wyobraź sobie, ile czasu musiałbyś poświęcić, aby zmodyfikować każdy pączek oddzielnie. Stosowanie klonów znacznie ułatwia i przyspiesza taką pracę.

Ćwiczenie: Jabłka jako odnośniki Teraz, kiedy najedliśmy się pączków, dla równowagi musimy zjeść coś zdrowszego. Najlepszym sposobem na to, aby trzymać się z dala od lekarzy, jest jedzenie owoców. Aby utworzyć kilka jabłek w charakterze odnośników, wykonaj następujące czynności. 1. Otwórz plik Referenced Apples.max z folderu Chap 08 na płycie dołączonej do książki. 2. Zaznacz jabłko, kliknij przycisk Select and Move (W) i wciskając klawisz Shift, przeciągnij jabłko w oknie widokowym Top. Aby nowe jabłko miało charakter odnośnika, w oknie dialogowym Clone Options zaznacz opcję Reference, po czym zamknij to okno. 3. Zaznacz ponownie oryginalne jabłko i kilkakrotnie powtórz czynności z punktu 2., tworząc jeszcze kilka jabłek odnośników wokół oryginalnego. 4. Jeszcze raz zaznacz jabłko oryginalne, a następnie wybierz polecenie Modifiers/ Subdivision Surfaces/MeshSmooth. W rolecie Subdivision Amount ustaw parametr Iterations (liczba iteracji) na 2.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

293

Rysunek 8.3. Dwa tuziny pączków gotowych do polukrowania

To spowoduje wygładzenie wszystkich jabłek. 5. Zaznacz jedno z jabłek odnośników i wybierz polecenie Modifiers/Parametric Deformers/Taper, aby zastosować modyfikator przewężenia. Parametr Amount (wartość) ustaw na 0,5 i zaznacz oś Z. 6. Zaznacz inne jabłko odnośnik i wybierz polecenie Modifiers/Parametric Deformers/Squeeze, aby zastosować modyfikator ściskania. Parametr Amount w sekcji Axial Bulge (wybrzuszenie osiowe) ustaw na 0,3. 7. Zaznacz kolejne jabłko odnośnik i ponownie wybierz polecenie Modifiers/ Parametric Deformers/Squeeze. Tym razem ustaw parametr Amount w sekcji Radial Squeeze (ściskanie radialne) na 0,2. 8. Zaznacz jeszcze inne jabłko odnośnik i zastosuj polecenie Modifiers/Parametric Deformers/Bend. Parametr Angle (kąt wygięcia) ustaw na 20 i zaznacz oś Z. Podczas przypisywania modyfikatorów do obiektu odnośnika w stosie modyfikatorów pojawia się szeroka szara linia, zwana linią obiektów pochodnych (derived object line), oddzielająca modyfikatory przypisane do wszystkich odnośników (poniżej tej linii) od modyfikatorów przypisanych tylko do aktualnie zaznaczonego obiektu (powyżej tej linii). Jeśli przeciągniesz modyfikator znad szarej linii do obszaru leżącego pod nią, zostanie przypisany wszystkim odnośnikom.

294

Część II  Praca z obiektami

Stosowanie odnośników umożliwia tworzenie klas obiektów podobnych przez przypisanie im tych samych podstawowych modyfikacji, przy zachowaniu możliwości ich zróżnicowania przez wprowadzanie dodatkowych modyfikacji dla poszczególnych obiektów. Widoczne na rysunku 8.4 jabłka są podobne, ale nie takie same.

Rysunek 8.4. Nawet jabłka zerwane z tego samego drzewa nie są identyczne

Odbicia lustrzane Czy zdarzyło Ci się kiedyś zbliżyć twarz do krawędzi lustra i oglądać połowę swojej głowy w lustrzanym odbiciu? Wiele obiektów posiada naturalną symetrię, co można wykorzystać w procesie modelowania — w przypadku takiego obiektu wystarczy wymodelować tylko jedną jego połowę. Twarz człowieka jest tego przykładem. Drugą połowę można uzyskać przez sklonowanie pierwszej za pomocą narzędzia Mirror.

Narzędzie Mirror Narzędzie Mirror tworzy kopię obiektu, będącą jego lustrzanym odbiciem w wybranym układzie odniesienia (możesz też zrezygnować z tworzenia kopii, wybierając opcję No Clone). Aby otworzyć okno dialogowe Mirror, pokazane na rysunku 8.5, wybierz polecenie Tools/Mirror lub kliknij przycisk Mirror na głównym pasku narzędzi. Okno to zostanie otwarte tylko wtedy, gdy zaznaczony jest jakiś obiekt.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

295

Rysunek 8.5. Okno dialogowe Mirror zawiera opcje tworzenia odbić lustrzanych

W oknie Mirror możesz określić oś lub płaszczyznę, względem której zostanie wykonane lustrzane odbicie zaznaczonego obiektu. Możesz też przesunąć odbijany obiekt, zmieniając wartość parametru Offset. Podobnie jak w innych poleceniach do klonowania obiektów, tutaj również możesz wybrać jedną z następujących opcji: Copy (kopia), Instance (klon) czy odnośnik (Reference). Możesz również wybrać opcję No Clone, która powoduje odwrócenie istniejącego obiektu wokół wybranej osi, ale bez tworzenia żadnej kopii. Włączenie opcji Mirror IK Limits spowoduje, że odbicie lustrzane będzie dotyczyło także ograniczeń kinematyki odwrotnej, dzięki czemu można zmniejszyć liczbę parametrów kinematycznych wymagających ustawiania. Więcej informacji na temat kinematyki odwrotnej znajdziesz w rozdziale 38., „Systemy szkieletowe, riggowanie i kinematyka”.

Ćwiczenie: Tworzenie drugiej nogi robota Wykorzystanie symetrii postaci pozwala zaoszczędzić wiele czasu podczas jej modelowania, ale nie może polegać na zwykłym sklonowaniu jednej połowy. Rozważmy np. położenie prawego ucha danej postaci względem jej prawego oka. Jeśli sklonujemy to ucho, wówczas każde z uszu będzie tak samo zorientowane względem prawego oka, a postać będzie wyglądać raczej dziwnie. W takim przypadku musimy zastosować narzędzie Mirror, które nie tylko sklonuje obiekt, ale również odwróci go względem wybranej osi. W tym przykładzie mamy mechanicznego robota, któremu na razie skonstruowano jedną nogę. Za pomocą narzędzia Mirror utworzymy drugą nogę i ustawimy ją we właściwym miejscu. Aby sklonować nogę robota za pomocą narzędzia Mirror, wykonaj następujące czynności. 1. Otwórz plik Robot mech.max z folderu Chap 08 na płycie dołączonej do książki. Plik ten zawiera model robota z jedną nogą. 2. W oknie widokowym Left zaznacz wszystkie obiekty, z których zbudowana jest noga robota, a następnie wybierz polecenie Tools/Mirror, aby otworzyć okno dialogowe Mirror. 3. W sekcji Mirror Axis okna dialogowego Mirror zaznacz oś X (względem tej osi nastąpi odbicie lustrzane), a w sekcji Clone Selection zaznacz opcję Instance.

296

Część II  Praca z obiektami

Wartość parametru Offset dobierz tak, aby klon nogi znalazł się we właściwym położeniu (wartość ta powinna wynosić ok. -2,55). Wybór osi, względem której ma być odbijany obiekt, zależy od tego, które okno widokowe jest aktualnie aktywne. Upewnij się więc, czy jest nim okno Left.

Wszelkie zmiany w ustawieniach dokonywane w oknie dialogowym są natychmiast widoczne w oknach widokowych. 4. Kliknij przycisk OK, aby zamknąć okno dialogowe. Wybierając podczas takiego klonowania opcję Instance, sprawiasz, że jeśli w przyszłości zmodyfikujesz jedną połowę modelu, druga zostanie automatycznie zmodyfikowana w taki sam sposób.

Na rysunku 8.6 przedstawiono pełnosprawnego robota — teraz już się nie przewróci.

Rysunek 8.6. Idealna symetria robota została uzyskana za pomocą narzędzia Mirror

Klonowanie w czasie Kolejnym sposobem klonowania jest tworzenie kopii poruszających się obiektów w różnych klatkach animacji. Do tego celu służy narzędzie Snapshot.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

297

Narzędzie Snapshot Narzędzie Snapshot (migawka) pozwala tworzyć statyczne kopie, klony, odnośniki, a nawet siatki (meshes) obiektu poruszającego się po ścieżce animacji. Możesz np. utworzyć zestaw śladów stóp, animując ich ruch w zakresie stu klatek, a następnie wybierając polecenie Tools/Snapshot i wpisując liczbę kroków w oknie Snapshot. Ślady pojawią w regularnych odstępach wzdłuż całej ścieżki animacji. Pamiętaj o tym, że narzędzie Snapshot działa w ten sposób tylko dla tych obiektów, dla których wcześniej zdefiniowano ścieżkę animacji. Okno Snapshot możesz otworzyć poleceniem Tools/Snapshot lub kliknięciem przycisku Snapshot (znajdziesz go w grupie rozwijanej pod przyciskiem Array na pasku narzędziowym Extras). W tej grupie jest to przycisk drugi od góry. W oknie dialogowym Snapshot, pokazanym na rysunku 8.7, możesz zdecydować, czy chcesz utworzyć pojedynczą kopię w bieżącej klatce animacji (opcja Single), czy też serię kopii w ustalonym zakresie klatek (opcja Range). Rysunek 8.7. Narzędzie Snapshot pozwala tworzyć kopie, klony, odnośniki lub siatki

Jeśli w polu Copies okna dialogowego Snapshot wpisujesz liczbę kopii, pamiętaj o tym, że jedna kopia zostanie umieszczona na początku ścieżki i jedna na jej końcu, a zatem jeśli ścieżka jest zamknięta, dwa obiekty zostaną nałożone na siebie. Gdy np. ścieżka jest kwadratem i chcesz umieścić kopię obiektu w każdym rogu tego kwadratu, musisz wpisać liczbę 5. Narzędzie Snapshot może być stosowane również w odniesieniu do systemów cząstek.

Ćwiczenie: Wyznaczanie ścieżki w labiryncie Narzędzie Snapshot można zastosować do tworzenia obiektów w trakcie przemieszczania się modelu wzdłuż ścieżki animacji. W tym ćwiczeniu utworzymy ślady stóp wskazujące wyjście z labiryntu. Aby za pomocą narzędzia Snapshot utworzyć ślady stóp, wykonaj następujące czynności. 1. Otwórz plik Path through a maze.max z folderu Chap 08 na płycie dołączonej do książki. Plik ten zawiera animowane ślady stóp prowadzące do wyjścia z labiryntu. 2. Zaznacz oba ślady widoczne przed wejściem do labiryntu.

298

Część II  Praca z obiektami

3. Wybierz polecenie Tools/Snapshot, aby otworzyć okno dialogowe Snapshot. W oknie tym zaznacz opcję Range, w polu Copies wpisz liczbę 20, zaznacz opcję Instance i kliknij przycisk OK. Na rysunku 8.8 przedstawiono wiodącą przez labirynt ścieżkę wyznaczoną przez ślady stóp.

Rysunek 8.8. Ślady stóp wskazujące drogę przez labirynt zostały utworzone za pomocą narzędzia Snapshot

Rozmieszczanie klonowanych obiektów Narzędzie Snapshot oferuje wygodny i szybki sposób klonowania obiektów wzdłuż ścieżki animacji, ale co zrobić w sytuacji, gdy zechcemy sklonować obiekty wzdłuż krzywej, która nie jest ścieżką animacji? Można zastosować narzędzie Spacing (rozstawianie). Narzędzie to może ustawiać obiekty w regularnych odstępach wzdłuż zadanej ścieżki. W tym celu wystarczy podać liczbę kopii obiektu i wskazać ścieżkę lub dwa punkty w oknie widokowym.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

299

Stosowanie narzędzia Spacing Narzędzie Spacing jest dostępne po kliknięciu przedostatniego przycisku w grupie rozwijanej pod przyciskiem Array na pasku narzędzi Extras (aby wyświetlić ten pasek, kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędzi i w menu podręcznym zaznacz opcję Extras). W zamian można wybrać polecenie Tools/Align/Spacing Tool lub użyć skrótu klawiszowego Shift+I. Narzędzie to otwiera okno dialogowe Spacing Tool, pokazane na rysunku 8.9. W górnej części okna znajdują się dwa przyciski — Pick Path (wskaż ścieżkę) i Pick Points (wskaż punkty). Jeśli zostanie wskazana ścieżka, jej nazwa będzie wyświetlona jako etykieta przycisku Pick Path. Rysunek 8.9. Okno Spacing Tool pozwala wybrać sposób rozmieszczenia klonów wzdłuż określonej ścieżki

W tym oknie możesz określić również następujące parametry: Count (liczba obiektów), Spacing (odstępy) oraz Start Offset i End Offset (przesunięcia względem początku i końca ścieżki). Z listy rozwijanej możesz wybrać jeden z wielu gotowych sposobów rozmieszczenia obiektów, np. Divide Evenly (podziel równomiernie), Free Center (wolny środek), End Offset (odstęp od końca) itd. Sposób rozmieszczenia obiektów zależy od tego, które parametry zostaną określone. Jeśli np. podasz tylko wartość parametru Count, obiekty zostaną rozmieszczone równomiernie wzdłuż ścieżki, przy czym dwa obiekty zostaną umieszczone na jej końcach. Jeśli dodatkowo określisz jeden z parametrów Offset, wówczas pierwszy lub ostatni obiekt zostanie odsunięty od początku lub końca ścieżki na odległość określoną przez ten parametr. Jeśli określisz parametr Spacing, liczba obiektów, konieczna do uzyskania podanych odstępów, zostanie automatycznie obliczona. Ikony blokowania widoczne obok pól Start Offset i End Offset służą do wymuszania wartości danego przesunięcia równej odstępom między obiektami. Po zablokowaniu tych przesunięć obiekty nie będą umieszczane na końcach ścieżki. Zanim klikniesz przyciski Pick Path lub Pick Points, musisz zaznaczyć obiekt, który ma być klonowany. Jeśli klikniesz przycisk Pick Path, będziesz mógł wskazać ścieżkę w postaci splajnu istniejącego już w scenie. Klony zaznaczonego obiektu zostaną rozmieszczone wzdłuż tej ścieżki zgodnie z ustawionymi wartościami parametrów. Kliknięcie przycisku Pick Points umożliwia wyznaczenie dwoma kliknięciami w oknie widokowym prostoliniowej ścieżki, wzdłuż której klony zostaną odpowiednio rozmieszczone. Sposób określania odstępów zależy od wyboru jednej z dwóch opcji — Edges lub Centers. Po wybraniu pierwszej z nich odstępy są wyznaczane między ramkami otaczającymi

300

Część II  Praca z obiektami

sąsiednie obiekty, a po wybraniu drugiej pod uwagę brane są odległości między środkami obiektów. Opcja Follow służy do wyrównywania rozmieszczanych obiektów względem ścieżki. W sekcji Type of Object możesz wybrać typ tworzonych obiektów: Copy (kopia), Instance (klon) lub Reference (odnośnik). W polu tekstowym u dołu okna wyświetlana jest informacja o liczbie obiektów i odstępach między nimi. Dokładne wyrównanie obiektów względem ścieżki czasami może być trudne. W takiej sytuacji może pomóc dopasowanie środka obrotu obiektu do współrzędnych okna widokowego.

Dopóki nie klikniesz przycisku Apply (zastosuj), możesz modyfikować wartości parametrów i zmieniać opcje w oknie Spacing Tool, obserwując wpływ tych modyfikacji na rozmieszczenie obiektów. Jednak rzeczywiste dodanie obiektów do sceny następuje dopiero po kliknięciu tego przycisku. Przycisk Cancel zamyka okno bez wprowadzania jakichkolwiek zmian w scenie2.

Ćwiczenie: Układanie klocków domina Dobrym przykładem zastosowania narzędzia Spacing jest ustawienie długiego szeregu z klocków domina. Ułożenie w ten sposób prawdziwych klocków nie należy do łatwych zadań, natomiast Max radzi sobie z tym błyskawicznie, niezależnie od ścieżki, wzdłuż której każemy mu te klocki ustawić. Aby ułożyć klocki domina w szereg, korzystając z narzędzia Spacing, wykonaj następujące czynności. 1. Otwórz plik Row of dominoes.max z folderu Chap 08 na płycie dołączonej do książki. Plik ten zawiera jeden klocek domina i pofalowaną ścieżkę. 2. Zaznacz klocek, a następnie kliknij przycisk Spacing Tool w grupie rozwijanej pod przyciskiem Array na pasku narzędzi Extras (lub wciśnij klawisze Shift+I). 3. W oknie dialogowym Spacing Tool kliknij przycisk Pick Path i zaznacz pofalowaną ścieżkę. Nazwa przycisku Pick Path zostanie zastąpiona nazwą ścieżki. 4. W sekcji Parameters okna dialogowego Spacing Tool ustaw tylko parametr Count, nadając mu wartość 35. Ustawienie tylko tego parametru jest równoważne wybraniu z listy rozwijanej opcji Divide Evenly, Objects at Ends (rozmieść równomiernie z obiektami na końcach ścieżki). 5. W pozostałych sekcjach zaznacz opcje Edges, Follow oraz Instance. Jeśli wszystko wygląda właściwie, kliknij przycisk Apply, a następnie zamknij okno, klikając przycisk Close. Uzyskany rezultat został pokazany na rysunku 8.10.

2

Po kliknięciu przycisku Apply przycisk Cancel zmienia się w Close i umożliwia zamknięcie okna — przyp. tłum.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

301

Rysunek 8.10. Ułożenie tych klocków okazało się dużo łatwiejsze w Maksie niż w rzeczywistości

Narzędzie Clone and Align Wyobraź sobie, że pracujesz w zespole i jeden z członków właśnie poinformował, iż potrzebuje więcej czasu na dopracowanie szczegółów kolumn budynku. Zanim zwrócisz się do swojego współpracownika, aby przypomnieć mu, że „termin to rzecz święta”, rozważ możliwość zastosowania narzędzia Clone and Align (klonowanie i wyrównywanie). Możesz przecież tymczasowo umieścić obiekty zastępcze zamiast szczegółowych modeli, a następnie, kiedy modele będą już gotowe, za pomocą narzędzia Clone and Align umieścisz ich kopie dokładnie w tych miejscach, w których wstawiłeś obiekty zastępcze. W ten sposób Twój współpracownik będzie zadowolony i Ty nie musisz przerywać pracy w oczekiwaniu na kolumny. Kolejny sukces pracy zespołowej.

Wyrównywanie obiektów źródłowych względem docelowych Zanim wybierzesz polecenie Tools/Align/Clone and Align, musisz zaznaczyć model szczegółowy, którym chcesz zastąpić obiekt tymczasowy. Model ten będziemy nazywać obiektem źródłowym (source object). Narzędzie Clone and Align otwiera okno dialogowe o takiej samej nazwie (patrz rysunek 8.11). Okno to umożliwia wskazanie obiektów

302

Część II  Praca z obiektami

zastępczych, które zajmują miejsca przeznaczone dla modeli szczegółowych. Obiekty zastępcze będziemy nazywać obiektami docelowymi (destination objects). W oknie dialogowym wyświetlane są liczby zaznaczonych obiektów źródłowych i docelowych. Rysunek 8.11. Po otwarciu okna dialogowego Clone and Align możesz wskazać obiekty docelowe, które powinny być zastąpione przez obiekty źródłowe

Narzędzie Align jest opisane w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

W oknie Clone and Align możesz także zdecydować, czy obiekty źródłowe mają być powielane jako kopie, klony czy odnośniki. W rolecie Align Parameters tego okna możesz określić położenie i orientację obiektu, zaznaczając odpowiednie osie i wpisując odpowiednie wartości w poszczególnych polach Offset. Podczas wprowadzania zmian w oknie Clone and Align możesz na bieżąco obserwować ich efekt w oknach widokowych, ale ostateczne ustalenie położenia obiektów w scenie nastąpi dopiero wtedy, gdy klikniesz przycisk Apply. Okno dialogowe Clone and Align jest oknem zachowawczym, co oznacza, że dokonane w nim ustawienia są zachowywane, dopóki nie zostaną zmienione.

Ćwiczenie: Klonowanie i wyrównywanie obiektów Aby przećwiczyć posługiwanie się narzędziem Clone and Align, wykorzystamy specjalnie przygotowaną scenę z plażą, grupą drzew i kilkoma obiektami w postaci zwykłych prostopadłościanów, które zostały różnie usytuowane i odmiennie zorientowane. Grupa drzew będzie obiektem źródłowym, a prostopadłościany — obiektami docelowymi. Aby odpowiednio ustawić i zorientować dodatkowe grupy drzew za pomocą narzędzia Clone and Align, wykonaj następujące czynności.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

303

1. Otwórz plik Trees on beach.max z folderu Chap 08 na płycie dołączonej do książki. Plik ten zawiera model plaży wykonany w Viewpoint Datalabs. 2. Zaznacz grupę drzew, a następnie wybierz polecenie Tools/Align/Clone and Align, aby otworzyć okno dialogowe narzędzia Clone and Align. Okno dialogowe Clone and Align pamięta ostanie ustawienia. Jeśli Ci nie odpowiadają, możesz je wyzerować za pomocą przycisku Reset All Parameters widocznego w dolnej części okna.

3. W oknie Clone and Align kliknij przycisk Pick i zaznacz wszystkie prostopadłościany, jakie zostały umieszczone w scenie. 4. W sekcji Align Position rolety Align Parameters zaznacz osie X i Y, a w sekcji Align Orientation zaznacz osie X, Y i Z. Na koniec kliknij przycisk Apply. Wynik powyższego ćwiczenia został pokazany na rysunku 8.12. Zwróć uwagę, że obiekty docelowe nie zostały usunięte, lecz nadal pozostają na swoich miejscach.

Rysunek 8.12. Za pomocą narzędzia Clone and Align możesz rozmieścić te drzewa zgodnie z położeniem i orientacją obiektów zastępczych

304

Część II  Praca z obiektami

Tworzenie szyku obiektów Teraz, gdy już odkryłeś, że można ustawiać obiekty w rzędach i kolumnach przy użyciu metody przeciągania z wciśniętym klawiszem Shift, zabawa dopiero zacznie się rozkręcać, ponieważ narzędzie Array (szyk) pozwala w jednej chwili utworzyć dowolną liczbę kopii danego obiektu. W oknie Array możesz określić rozmiary szyku, przesunięcia poszczególnych kopii i ich transformacje. W ten sposób możesz szybko utworzyć szyk złożony z dowolnej liczby kopii danego obiektu. Aby otworzyć okno dialogowe Array, zaznacz obiekt, a następnie wybierz polecenie Tools/Array lub kliknij przycisk Array na pasku narzędzi Extras. Okno dialogowe Array jest pokazane na rysunku 8.13. U góry tego okna wyświetlana jest informacja o wybranym układzie współrzędnych i punkcie, względem którego wykonywane są transformacje obiektów. Rysunek 8.13. W oknie Array określamy liczbę kopii i sposoby ich transformacji względem wybranego układu współrzędnych

Okno dialogowe Array również ma charakter zachowawczy. Jeśli jednak zechcesz przywrócić ustawienia domyślne, możesz po prostu kliknąć przycisk Reset All Parameters. Po kliknięciu przycisku Preview uzyskasz podgląd tworzonego szyku — w tym momencie obiekty nie są jeszcze umieszczane w scenie. Włączenie opcji Display as Box powoduje wyświetlenie szyku w postaci otaczającej go ramki, co umożliwia ocenę rozmiarów, położenia i orientacji szyku w stosunku do innych obiektów.

Szyk liniowy W szyku liniowym obiekty tworzą układ prostoliniowy, np. rząd lub kolumnę. Gdy korzystasz z okna dialogowego Array, możesz określić wartości poszczególnych transformacji (przesunięcia, obrotu i skalowania) względem osi X, Y i Z aktualnego układu odniesienia, podając przyrosty tych wartości między sąsiednimi obiektami (grupa Incremental) lub sumaryczne wartości dla całego szyku (grupa Total). Jeśli zamiast przyrostów chcesz wprowadzić wartości sumaryczne (lub na odwrót), użyj strzałek znajdujących się po prawej (lub po lewej) stronie etykiet Move (przesunięcie), Rotate (obrót) i Scale (skalowanie). Przykładowo w szyku złożonym z 10 obiektów i z przyrostem przesunięcia równym 5 jednostek każdy kolejny obiekt będzie przesunięty o 5 jednostek w stosunku do poprzedniego. Natomiast w szyku złożonym z dziesięciu obiektów i z sumarycznym przesunięciem równym 100, odległość między sąsiednimi obiektami wyniesie 10 jednostek.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

305

Wartości w wierszu Move wyrażane są w jednostkach określonych w oknie dialogowym Units Setup. W wierszu Rotate wszystkie wartości są w stopniach, natomiast w wierszu Scale — w procentach. Każda z tych wartości może być dodatnia lub ujemna. Włączenie opcji Re-Orient sprawia, że po obróceniu kolejnego obiektu układ współrzędnych również jest obracany. Jeśli opcja ta jest wyłączona, kolejne obiekty nie są sukcesywnie obracane. Gdy włączysz opcję Uniform, na prawo od wiersza Scale, kolumny współrzędnych dla skalowania względem osi Y i Z staną się nieaktywne, więc możliwe będzie tylko proporcjonalne skalowanie obiektów. Jeśli zechcesz skalować obiekty nieproporcjonalnie, po prostu wyłącz opcję Uniform. W sekcji Type of Object możesz zdecydować, czy mają być tworzone kopie, klony, czy odnośniki obiektów. Jeśli planujesz poddawać obiekty tym samym modyfikacjom, wybierz opcję Instance (klon) lub Reference (odnośnik). Sekcja Array Dimensions służy do określenia liczby obiektów powielonych wzdłuż jednej, dwóch lub trzech osi układu współrzędnych. Każdy kolejny rząd obiektów może być przesunięty o określony przyrost współrzędnych, podany w kolumnach Incremental Row Offsets. Za pomocą narzędzia Array można utworzyć olbrzymią liczbę obiektów. Jeśli będzie ich zbyt wiele, program może się zawiesić.

Ćwiczenie: Budowa płotu Na początek wykonamy proste ćwiczenie polegające na zbudowaniu białego płotu. Ponieważ płot będzie skonstruowany z wielu identycznych listewek, wystarczy, że utworzymy jedną i za pomocą narzędzia Array odpowiednio ją skopiujemy. Aby utworzyć płot ze sztachet, wykonaj następujące czynności. 1. Otwórz plik White picket fence.max z folderu Chap 08 na płycie dołączonej do książki. 2. Po zaznaczeniu sztachety wybierz polecenie Tools/Array lub kliknij ikonę Array na pasku narzędzi Extras, aby otworzyć okno dialogowe Array. 3. W oknie Array kliknij przycisk Reset All Parameters, aby przywrócić domyślne ustawienia wszystkim parametrom. Następnie w polu przesunięcia względem osi X (wiersz Move) w grupie Incremental wpisz wartość 50 (każda kolejna sztacheta będzie przesunięta względem poprzedniej o 50 jednostek). Potem w sekcji Array Dimensions wpisz 20 jako wartość parametru 1D (jest to sumaryczna liczba obiektów w szyku). Kliknij OK, aby potwierdzić utworzenie nowych obiektów. Przycisk Preview pozwala obejrzeć tworzony szyk, zanim właściwe obiekty zostaną umieszczone w scenie. Nie przejmuj się, jeżeli za pierwszym razem nie udało Ci się dobrać odpowiednich wartości. Jeśli błąd zauważyłeś już po utworzeniu szyku, możesz cofnąć operację, a następnie powtórzyć ją z nowymi ustawieniami. Nie musisz wszystkiego ustawiać od nowa — ostatnio wprowadzone wartości są zapamiętywane aż do momentu wyłączenia programu.

306

Część II  Praca z obiektami

4. Kliknij przycisk Zoom Extents All (lub wciśnij klawisze Shift+Ctrl+Z) w prawym dolnym rogu okna programu, aby ujrzeć cały płot we wszystkich oknach widokowych. Gotowy płot jest pokazany na rysunku 8.14.

Rysunek 8.14. Tomek Sawyer z pewnością ucieszyłby się, widząc taki płotek utworzony za pomocą narzędzia Array

Szyk kołowy Okno dialogowe Array umożliwia tworzenie nie tylko szyków liniowych. Wszystkie transformacje są przeprowadzane względem punktu środkowego, który można określić za pomocą przycisków Use Pivot Point Center, Use Selection Center i Use Transform Coordinate Center tworzących grupę rozwijaną na głównym pasku narzędzi. Więcej informacji na temat tych przycisków i ich znaczenia dla przeprowadzanych transformacji znajdziesz w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

307

Ćwiczenie: „Diabelski młyn” „Diabelski młyn” jest jedną z wielu atrakcji czekających na gości przeróżnych parków rozrywki. Jest to ogromne, obracające się koło, na obrzeżu którego w równych odstępach rozmieszczone są fotele dla wycieczkowiczów. Korzystając z narzędzia Array, możesz rozmieszczać obiekty również wokół wybranego punktu centralnego. W tym ćwiczeniu zastosujemy transformację obrotu, a do wyznaczenia jej środka wykorzystamy przycisk Use Transform Coordinate Center. Naszym celem będzie ustawienie obiektów w szyku kołowym. Aby utworzyć szyk kołowy, wykonaj następujące czynności. 1. Otwórz plik Ferris wheel.max z folderu Chap 08 na płycie dołączonej do książki. W pliku tym okno widokowe Front jest powiększone na cały ekran i widać w nim profil „diabelskiego młyna”. 2. Kliknij przycisk Use Pivot Point Center na głównym pasku narzędziowym, przytrzymaj wciśnięty przycisk myszy, a następnie z rozwiniętej listy wybierz pozycję Use Transform Coordinate Center (najniżej położony przycisk). Po uaktywnieniu przycisku Use Transform Coordinate Center wszystkie transformacje będą wykonywane względem środka układu współrzędnych okna widokowego3. 3. Zaznacz błękitny fotel i otwórz okno dialogowe Array, wybierając polecenie Tools/Array lub klikając ikonę Array na pasku narzędzi Extras. Zanim zaczniesz wprowadzać nowe wartości parametrów, kliknij przycisk Reset All Parameters. 4. Pomiędzy grupami parametrów Incremental i Totals znajdują się etykiety Move, Rotate i Scale. Kliknij strzałkę znajdującą się na prawo od etykiety Rotate. W rzędzie Rotate i kolumnie Z wprowadź wartość 360 i upewnij się, że opcja Re-Orient jest wyłączona. Wartość 360 odpowiada jednemu pełnemu obrotowi, co oznacza, że kolejne kopie fotela zostaną rozmieszczone na całym obwodzie koła. Wyłączenie opcji Re-Orient zapobiegnie odwracaniu się foteli dołem do góry. 5. W polu Array Dimensions ustaw parametr 1D Count na 8, a następnie kliknij przycisk OK, aby zakończyć tworzenie szyku. 6. Zaznacz zieloną rozpórkę i ponownie otwórz okno Array za pomocą polecenia Tools/Array. Włącz opcję Re-Orient, a pozostałe ustawienia pozostaw bez zmian. Kliknij OK, aby utworzyć nowy szyk. Na rysunku 8.15 pokazany jest gotowy model „diabelskiego młyna”. Jeśli chcesz obejrzeć go we wszystkich oknach widokowych, kliknij ikonę Maximize Viewport Toggle w prawym dolnym rogu ekranu.

3

Pod warunkiem, że wybranym układem odniesienia jest View — przyp. tłum.

308

Część II  Praca z obiektami

Rysunek 8.15. Kolisty szyk obiektów utworzony przez obracanie kolejnych kopii względem odpowiedniego środka transformacji

Tworzenie szyków pierścieniowych System Ring Array (szyk pierścieniowy) jest dostępny w bocznym panelu Create — po kliknięciu ikony kategorii Systems. Kliknięcie przycisku Ring Array powoduje rozwinięcie rolety Parameters. Roleta zawiera następujące parametry: Radius (promień pierścienia), Amplitude (amplituda falowania), Cycles (liczba cykli), Phase (przesunięcie fazowe) oraz Number (liczba elementów). Szyk pierścieniowy tworzymy, przeciągając kursor w jednym z okien widokowych. Początkowo wszystkie elementy tworzące taki szyk są zwykłymi sześcianami rozmieszczonymi wokół zielonego obiektu pozornego (dummy object). Parametry Amplitude, Cycles i Phase definiują sinusoidalny kształt pierścienia. Parametr Amplitude określa maksymalną odległość obiektów od poziomej płaszczyzny. Jeśli parametr ten ustawisz na wartość 0, wszystkie obiekty będą leżały w jednej płaszczyźnie. Parametr Cycles określa liczbę cykli, czyli maksimów i minimów sinusoidy. Parametr Phase wpływa na położenie maksimów i minimów sinusoidy wzdłuż pierścienia.

Rozdział 8.  Klonowanie i ustawianie obiektów w szyku

309

Ćwiczenie: Tworzenie modelu karuzeli przy użyciu systemu Ring Array Kontynuując motyw atrakcji z lunaparku, tym razem utworzymy karuzelę. Model konia został wykonany w programie Poser, a następnie uproszczony za pomocą modyfikatora MultiRes. Aby utworzyć model karuzeli przy użyciu systemu Ring Array, wykonaj następujące czynności. 1. Otwórz plik Carousel.max z folderu Chap 08 na płycie dołączonej do książki. Plik ten zawiera konstrukcję karuzeli wykonaną z obiektów podstawowych oraz model konia. 2. Otwórz panel Create, wybierz kategorię Systems i kliknij przycisk Ring Array. W oknie widokowym Top przeciągnij kursor wzdłuż promienia karuzeli, aby utworzyć szyk pierścieniowy. Parametry tego szyku ustaw w sposób następujący: Radius na 250, Amplitude na 20, Cycles na 3 i Number na 6. Następnie prawym przyciskiem myszy kliknij w aktywnym oknie widokowym, aby wyłączyć narzędzie Ring Array. Jeżeli wyjdziesz z trybu tworzenia systemu Ring Array, to po ponownym zaznaczeniu udostępni on swoje parametry nie w panelu Modify, tak jak robią to inne obiekty, lecz w panelu Motion.

3. W oknie widokowym Left zaznacz obiekt Dummy, wybierz polecenie Tools/ Align/Align i kliknij walec stanowiący oś karuzeli. W otwartym w ten sposób oknie dialogowym Align Selection zaznacz opcje X Position, Y Position i Z Position. W sekcjach Target Object i Current Object zaznacz opcje o nazwie Center i kliknij przycisk Apply. W ten sposób szyk pierścieniowy zostanie ustawiony centralnie na karuzeli. 4. Zaznacz model konia, a następnie wybierz polecenie Tools/Align/Clone and Align. W oknie Clone and Align zaznacz opcję Instance oraz wszystkie trzy osie (X, Y i Z) w sekcjach Align Position i Align Orientation. Następnie włącz przycisk Pick i kliknij kolejno wszystkie sześciany w szyku. W sekcji Align Orientation ustaw wartości Offset w polach X i Y na 90, aby ustalić właściwą orientację koni. Na koniec kliknij przycisk Apply i zamknij okno Clone and Align. Gotowa karuzela jest pokazana na rysunku 8.16. Zauważ, że każdy koń jest na innej wysokości. Po umieszczeniu koni możesz usunąć lub ukryć obiekty systemu Ring Array.

Podsumowanie Istnieje wiele sposobów klonowania obiektów. Możesz w tym celu wybrać polecenie Clone z menu Edit lub zastosować technikę przesuwania z wciśniętym klawiszem Shift, która umożliwia szybkie tworzenie wielu duplikatów obiektu. Duplikaty mogą być kopiami, klonami lub odnośnikami, w zależności od stopnia powiązania z oryginałem. Do powielania obiektów możesz również używać takich narzędzi jak Mirror, Snapshot i Spacing.

310

Część II  Praca z obiektami

Rysunek 8.16. Konie tej karuzeli zostały utworzone za pomocą systemu Ring Array

Tworzenie szyków to jeszcze jeden sposób klonowania obiektów. Za pomocą narzędzia Array możesz rozmieszczać duplikaty obiektu w trzech wymiarach, poddając każdy z tych duplikatów określonej transformacji. W tym rozdziale zostały opisane następujące zagadnienia związane z klonowaniem obiektów: 

różne techniki powielania obiektów,



różnice między kopiami, klonami i odnośnikami,



stosowanie narzędzi Mirror, Snapshot, Spacing i Clone and Align,



tworzenie szyków liniowych, kołowych i spiralnych,



tworzenie szyków pierścieniowych za pomocą systemu Ring Array.

W następnym rozdziale zapoznasz się z łączeniem obiektów w grupy i hierarchie, co umożliwi organizowanie wszystkich tworzonych obiektów w odpowiednie struktury.

Rozdział 9.

Grupowanie, łączenie i hierarchizowanie obiektów W tym rozdziale: 

Grupowanie obiektów



Tworzenie zespołów obiektów



Relacje między obiektami typu korzeń (root), rodzic (parent) i dziecko (child)



Łączenie i rozłączanie obiektów

Zapoznałeś się już z metodami zaznaczania i klonowania obiektów, zatem przyszedł czas, abyś nauczył się łączyć je w formy ułatwiające zarządzanie całością. Jest to szczególnie przydatne, gdy scena staje się coraz bardziej złożona. Max pozwala łączyć obiekty w grupy i kontenery, co sprawia, że praca staje się znacznie efektywniejsza. Inną metodą zarządzania obiektami jest budowanie hierarchii połączeń. Hierarchia ta polega na łączeniu obiektów w taki sposób, że przesunięcie jednego z nich pociąga za sobą przemieszczenie drugiego. Klasycznym przykładem obiektów połączonych hierarchicznie jest ręka — przy obrocie ramienia poruszają się także przedramię, dłoń i palce. Ustalenie takiej hierarchii połączeń w znacznym stopniu ułatwia przesuwanie, ustawianie oraz animowanie dużej liczby obiektów.

Praca z grupami Grupowanie obiektów pozwala je uporządkować i w znacznym stopniu ułatwia ich zaznaczanie oraz transformowanie. Grupy, w odróżnieniu od zestawów wyboru, zachowują się jak jeden obiekt. Wskazanie dowolnego obiektu grupy spowoduje zaznaczenie całej grupy, podczas gdy po wskazaniu obiektu należącego do zestawu wyboru zaznaczony zostanie tylko ten obiekt, a nie cały zestaw. Po otwarciu grupy można do niej dodawać kolejne obiekty, usuwać je lub przemieszczać, niezależnie od siebie. W skład grupy mogą także wchodzić mniejsze podgrupy — mówimy wtedy o grupach zagnieżdżonych.

312

Część II  Praca z obiektami

Tworzenie grup Do tworzenia grup służy polecenie Group/Group. Wystarczy zaznaczyć wybrane obiekty i wybrać to polecenie. Otworzy się okno dialogowe Group, w którym można wpisać nazwę nowej grupy. W oknie widokowym pojawi się prostopadłościenna ramka obejmująca wszystkie obiekty wchodzące w skład grupy. Rozpoznanie grup nie powinno sprawiać trudności. W oknie dialogowym Select From Scene ich wyświetlanie można włączać i wyłączać za pomocą przycisku Display Groups, natomiast w rolecie Name and Color panelu poleceń są one wyświetlane pogrubioną czcionką.

Likwidowanie grup Polecenie Ungroup pozwala rozbić grupę (podobnie grupa muzyków rozpada się po nagraniu niezbyt udanej płyty). Aby tego dokonać, wystarczy zaznaczyć daną grupę i wybrać polecenie Group/Ungroup. Grupa zostanie rozbita, a jej elementy staną się ponownie niezależnymi obiektami. Polecenie to likwiduje jedynie aktualnie zaznaczoną grupę. Grupy zagnieżdżone w niej pozostają nienaruszone. Jeśli utworzysz animację grupy obiektów, a następnie zastosujesz polecenie Ungroup, utracisz wszystkie klucze zdefiniowane dla całej grupy.

Najłatwiejszym sposobem rozbicia grupy, włącznie z grupami zagnieżdżonymi, jest zastosowanie polecenia Explode, które likwiduje zaznaczone grupy wraz z ich podgrupami, w efekcie każdy element staje się oddzielnym obiektem.

Otwieranie i zamykanie grup Polecenie Open umożliwia dostęp do poszczególnych obiektów tworzących grupę. Podczas przesuwania, skalowania oraz obracania zgrupowane obiekty zachowują się jak jedna całość. Jednak po otworzeniu grupy za pomocą polecenia Open obiekty mogą być transformowane niezależnie od siebie. Aby przesunąć pojedynczy obiekt należący do grupy, zaznacz tę grupę i wybierz polecenie Group/Open. Biała ramka otaczająca obiekty grupy zmieni kolor na różowy. Następnie za pomocą narzędzia Select and Move (skrót klawiszowy — W) przesuń wybrany obiekt. W celu przywrócenia spójności grupy wybierz polecenie Group/Close.

Przyłączanie i odłączanie obiektów Polecenia Attach oraz Detach pozwalają wstawiać i usuwać obiekty z otwartej grupy bez konieczności jej rozbijania. Aby dołączyć obiekt do istniejącej grupy, zaznacz go, wybierz polecenie Group/Attach i kliknięciem wskaż grupę, do której chcesz go dołączyć. Aby odłączyć obiekt z danej grupy, należy ją najpierw otworzyć, a następnie wskazać wybrany obiekt i wybrać polecenie Group/Detach. Nie zapomnij o zamknięciu grupy po zakończeniu operacji.

Rozdział 9.  Grupowanie, łączenie i hierarchizowanie obiektów

313

Obiekty edytowalne, takie jak Editable Poly, również mogą korzystać z funkcji przyłączania (attach), ale takie przyłączenie obiektu do obiektu edytowalnego ma charakter stały. O obiektach typu Editable Poly możesz przeczytać w rozdziale 13., „Modelowanie na poziomie wielokątów”. Do przenoszenia wielu obiektów naraz z jednej sceny do innej przydają się kontenery. Szczegółowy opis tej metody łączenia obiektów znajdziesz w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Ćwiczenie: Grupowanie części samolotu Ustawianie obiektów względem siebie wymaga staranności oraz precyzji. Po pochłaniającym mnóstwo czasu rozmieszczeniu skrzydeł, ogona oraz kadłuba samolotu w odpowiednich miejscach każda transformacja tych obiektów może spowodować katastrofalne skutki. Grupując je razem, masz pewność, że żaden nie zmieni swego położenia względem pozostałych. W tym ćwiczeniu nabędziesz nieco wprawy w grupowaniu obiektów, połączysz wszystkie elementy samolotu w jedną całość. Wykonaj następujące czynności. 1. Otwórz plik T-28 Trojan plane.max z folderu Chap 09 znajdującego się na płycie dołączonej do książki. 2. Kliknij przycisk Select by Name na głównym pasku narzędzi (lub wciśnij klawisz H), aby otworzyć okno dialogowe Select From Scene. Wyszczególnione w nim będą poszczególne części samolotu. Wciśnij przycisk Select All w celu zaznaczenia wszystkich obiektów, a następnie kliknij przycisk OK, by zamknąć okno. 3. Po zaznaczeniu wszystkich potrzebnych obiektów wybierz polecenie Group/Group, aby otworzyć okno dialogowe Group. Nadaj nowej grupie nazwę Plane (samolot) i kliknij przycisk OK. 4. Kliknij przycisk Select and Move (lub wciśnij klawisz W), a następnie kliknij i przeciągnij samolot. Teraz wszystkie obiekty poruszają się razem. Na rysunku 9.1 przedstawiono elementy samolotu zgrupowane w jedną całość. Zauważ, że w polu widokowym Perspective są one otoczone tylko jedną, wspólną ramką. W rolecie Name and color panelu poleceń wyświetlona jest nazwa grupy zamiast informacji o liczbie zaznaczonych obiektów, jak w zestawie wyboru.

Tworzenie zespołów Na samym dole menu Group znajduje się podmenu Assembly (zespół), którego polecenia wyglądają niezwykle podobnie do poleceń menu Group. Różnica między grupą a zespołem polega na tym, że zespół może zawierać źródło światła z obiektem pomocniczym typu Luminaire jako głową zespołu (assembly head). Umożliwia to budowanie całych instalacji oświetleniowych, w których źródła światła są grupowane (łączone w zespoły) z obiektami stanowiącymi ich oprawę. Kiedy zbudujesz takie zespoły oświetleniowe, możesz je zaznaczać i przemieszczać jak zwykłe obiekty.

314

Część II  Praca z obiektami

Rysunek 9.1. Po zgrupowaniu obiektów samolot można przesuwać jak jedną całość

Po utworzeniu obiektu stanowiącego geometryczną część zespołu oświetleniowego wybierz polecenie Group/Assembly/Assemble. Otwarte zostanie okno dialogowe Create Assembly, w którym możesz nadać zespołowi nazwę i dodać obiekt Luminaire jako głowę zespołu. Ponieważ obiekt Luminaire jest głową zespołu, jego parametry są wyświetlane w panelu Modify za każdym razem, gdy jest zaznaczony zespół. Manipulować można dwoma parametrami — Dimmer (ściemniacz) oraz Filter Color (filtr kolorowy). Można z nich korzystać jedynie wtedy, gdy są sprzężone ze źródłem światła wchodzącym w skład zespołu. Obiekty Luminaire mogą wprowadzać nieco zamieszania, ponieważ w rzeczywistości nie są źródłami światła. Możesz je tworzyć, wybierając w panelu Create kategorię Helpers, a następnie podkategorię Assembly Heads. Zaletą obiektów pomocniczych Luminaire jest to, że dodają do zespołu kilka prostych parametrów, które stają się dostępne, gdy tylko zespół zostanie zaznaczony. Parametry te działają jedynie po sprzężeniu z parametrami źródła światła wchodzącego w skład zespołu. Więcej informacji o sprzęganiu parametrów znajdziesz w rozdziale 21., „Animacja i klatki kluczowe”.

Aby sprząc parametry obiektu Luminaire z parametrami źródła światła, zaznacz zespół i poleceniem Animation/Wire Parameters/Parameter Wire Dialog (lub za pomocą skrótu Alt+5) otwórz okno dialogowe Parameter Wiring. W lewym panelu odnajdź i zaznacz

Rozdział 9.  Grupowanie, łączenie i hierarchizowanie obiektów

315

parametr Dimmer znajdujący się w gałęzi Object (Luminaire). Z kolei w prawym panelu odszukaj i zaznacz parametr Multiplier, który znajdziesz, rozwijając kolejno gałąź zespołu, gałąź źródła światła w tym zespole i gałąź Object (typ źródła światła). Kliknij znajdujący się w centralnej części okna przycisk jednokierunkowego sprzężenia, który połączy wybrane parametry, i naciśnij przycisk Connect (połącz). Następnie w podobny sposób połącz parametr FilterColor z parametrem Color źródła światła. Po sprzęgnięciu parametrów źródła światła z parametrami obiektu Luminaire możesz korzystać z ustawień Dimmer i FilterColor za każdym razem, gdy zestaw będzie zaznaczony.

Relacje między obiektami typu korzeń, rodzic i dziecko W Maksie występuje kilka pojęć opisujących wzajemne relacje między obiektami. Obiekt rodzic (parent object) kontroluje zachowanie przyłączonych do niego obiektów podrzędnych, czyli obiektów dzieci (child object). Obiekt rodzic może posiadać wiele dzieci, natomiast obiekt dziecko może posiadać tylko jednego rodzica. W dodatku każdy obiekt może być jednocześnie rodzicem i dzieckiem. Można to ująć następująco: 

obiekty dzieci są połączone z obiektami rodzicami,



przemieszczanie obiektu rodzica powoduje przemieszczanie połączonych z nim obiektów dzieci,



obiekty dzieci mogą być przemieszczane niezależnie od ich rodziców.

Hierarchia jest kompletnym zestawem połączonych obiektów z uwzględnieniem między nimi powyższych relacji. Przodkami (ancestors) danego obiektu są wszystkie obiekty znajdujące się w hierarchii wyżej od niego. Potomkowie (descendants) to z kolei wszystkie dzieci znajdujące się w hierarchii poniżej danego obiektu. Korzeniem (root) nazywany jest obiekt położony najwyżej w hierarchii, który ją w całości kontroluje. Każda hierarchia może posiadać wiele gałęzi (branches) zwanych również drzewami podrzędnymi (subtrees). Każdy rodzic posiadający co najmniej dwoje dzieci stanowi początek nowej gałęzi. Hierarchie tworzone domyślnie za pomocą narzędzia Select and Link nazywane są systemami kinematyki prostej, w których ruch przekazywany jest w dół hierarchii od rodzica do dzieci. W takim systemie ruch dziecka nie ma żadnego wpływu na zachowanie rodzica. Z kolei systemy kinematyki odwrotnej (opisane dokładniej w rozdziale 38,. „Systemy szkieletowe, riggowanie i kinematyka”) umożliwiają dzieciom sterowanie ruchami rodziców.

Wszystkie obiekty sceny, połączone ze sobą lub nie, należą do hierarchii. Obiekty, które nie zostały połączone z innymi, są domyślnie połączone z wirtualnym obiektem globalnym (world object), który jest rodzicem wszystkich obiektów. Obiekt globalny pojawia się w oknie Track View pod nazwą Objects. Wszystkie obiekty umieszczone w scenie są tutaj widoczne w gałęziach wywodzących się z gałęzi Objects.

316

Część II  Praca z obiektami

Max udostępnia kilka sposobów tworzenia hierarchii. Najprostszy z nich polega na użyciu przycisków Select and Link oraz Unlink Selection umieszczonych na głównym pasku narzędzi. Znajdziesz je także w oknie Schematic View. Panel Hierarchy umożliwia dostęp do cennych informacji i parametrów związanych z istniejącymi hierarchiami. Przy budowaniu złożonych hierarchii pomocne może okazać się wykorzystanie systemu kości (bone system). Okno Schematic View zostało szerzej opisane w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”, a systemy kości — w rozdziale 38,. „Systemy szkieletowe, riggowanie i kinematyka”.

Tworzenie połączeń hierarchicznych Na głównym pasku narzędzi znajdują się dwa przyciski służące do budowania hierarchii — Select and Link oraz Unlink Selection. O tym, który z obiektów ma być rodzicem, a który dzieckiem, decyduje kolejność zaznaczenia łączonych obiektów.

Łączenie obiektów Przycisk Select and Link zawsze przyłącza dzieci do rodziców. Aby zapamiętać tę kolejność, przypomnij sobie fakt, że jeden rodzic może mieć wiele dzieci, natomiast dziecko tylko jednego rodzica. W celu połączenia dwóch obiektów kliknij przycisk Select and Link. Przejdziesz wtedy do trybu łączenia, w którym pozostaniesz aż do momentu wciśnięcia innego przycisku (np. Select lub jednego z przycisków narzędzi transformujących). Oznaką, że znajdujesz się w trybie łączenia, jest ciemnożółty kolor przycisku Select and Link. Przy włączonym przycisku Select and Link kliknij obiekt, który ma być dzieckiem, i przeciągnij linię do obiektu, który ma być rodzicem. Strzałka kursora, gdy natknie się na potencjalnego rodzica, zmieni się w ikonę łączenia. Jeśli w tym momencie zwolnisz przycisk myszy, obiekt rodzic zostanie przez chwilę podświetlony — będzie to oznaką ustanowienia połączenia. Jeżeli od tego samego dziecka przeciągniesz linię do innego rodzica, połączenie z poprzednim zostanie zastąpione przypisaniem do nowego rodzica. Po wykonaniu połączenia wszystkie transformacje dokonywane na rodzicu stosowane są także do jego dzieci. Punktem odniesienia jest środek obrotu (pivot point) rodzica, czyli punkt, wokół którego następuje obrót obiektu.

Rozłączanie obiektów Przycisk Unlink Selection służy do likwidowania połączenia zaznaczonego obiektu z jego rodzicem. Jeżeli przykładowo zaznaczony obiekt posiada zarówno dzieci, jak i rodzica, to kliknięcie przycisku Unlink Selection spowoduje zlikwidowanie jedynie jego połączenia z rodzicem. Powiązania z dziećmi pozostaną nienaruszone. W celu zlikwidowania wszystkich połączeń w całej hierarchii trzeba dwukrotnie kliknąć należący do niej obiekt, aby zaznaczyć całą hierarchię, a następnie kliknąć przycisk Unlink Selection.

Rozdział 9.  Grupowanie, łączenie i hierarchizowanie obiektów

317

Ćwiczenie: Łączenie rodziny kaczek Czy może być lepszy sposób zademonstrowania relacji dziecko – rodzic niż pokazanie przykładnej rodziny? Mógłbym w tym celu utworzyć model własnej rodziny, ale z nieznanych mi powodów moje dzieci nie zawsze chcą mnie słuchać. Aby utworzyć model kaczej rodziny, wykonaj następujące czynności. 1. Otwórz plik Linked duck family.max z folderu Chap 09 znajdującego się na płycie dołączonej do książki. Plik ten zawiera kilka prostych modeli kaczek ustawionych jeden za drugim. 2. Kliknij przycisk Select and Link na głównym pasku narzędzi i z ostatniej kaczki przeciągnij linię do kaczki przedostatniej. Możesz połączyć kilka obiektów naraz, zaznaczając obiekty dzieci i przeciągając je do obiektu rodzica. W ten sposób utworzysz połączenie między obiektem rodzicem a każdym z zaznaczonych obiektów.

3. Kontynuuj łączenie kaczek, aż dojdziesz do tej, która stoi na czele. 4. Kliknij przycisk Select and Move (lub wciśnij klawisz W) i przesuń kaczkę matkę. Zauważ, że wszystkie kaczątka podążają za nią posłusznie. Na rysunku 9.2 widać, jak małe kaczątka karnie podążają za matką. Dzięki połączeniu wszystkich kaczek wystarczy przesunąć ich matkę, aby wprawić w ruch całą rodzinę.

Wyświetlanie hierarchii i ich wewnętrznych połączeń Panel Display zawiera roletę umożliwiającą włączenie wyświetlania wszystkich połączeń w oknach widokowych. Hierarchie, utworzone przez ustanowienie odpowiednich połączeń między obiektami, możesz obejrzeć w kilku miejscach. Hierarchiczny układ obiektów wyświetlany jest w oknie dialogowym Select From Scene, otwieranym po kliknięciu przycisku Select by Name (lub wciśnięciu klawisza H), a także w oknach Schematic View i Track View.

Wyświetlanie połączeń w oknach widokowych Aby w oknach widokowych zobaczyć połączenia hierarchiczne, zaznacz połączone obiekty, a następnie włącz opcję Display Links w rolecie Link Display znajdującej się w panelu Display. Połączenia są wyświetlane w postaci łączących środki obrotu obiektów linii zakończonych markerami w kształcie ośmiościanu foremnego. Linie i markery przyjmują kolor obiektu dziecka. Opcja Display Links może być włączana oddzielnie dla każdego obiektu w scenie. Aby wyświetlić połączenia wszystkich obiektów, wybierz polecenie Edit/Select All (Ctrl+A), a następnie włącz wspomnianą opcję.

318

Część II  Praca z obiektami

Rysunek 9.2. Każdy obiekt dziecko dziedziczy transformacje po obiekcie rodzicu

Roleta Link Display zawiera jeszcze jedną opcję, Link Replaces Object, która ukrywa zaznaczony obiekt, pozostawiając marker i linie połączenia. Umożliwia to uproszczenie sceny i pozwala jednocześnie na swobodną pracę z samymi połączeniami. Mimo że obiekty są niewidoczne, można je transformować, wykorzystując do tego celu markery.

Przeglądanie hierarchii Okno dialogowe Select From Scene (uproszczona wersja okna eksploratora sceny), podobnie jak okna Schematic View i Track View, może wyświetlać hierarchię obiektów jako uporządkowaną listę, w której obiekty dzieci znajdują się poniżej swoich rodziców i są przesunięte względem nich w prawo. Kliknięcie przycisku Select by Name na głównym pasku narzędzi (lub wciśnięcie klawisza H) otwiera okno dialogowe Select From Scene. Jeśli chcesz zobaczyć listę obiektów w układzie hierarchicznym, zaznacz opcję Display/Display Children. Na rysunku 9.3 jest pokazane okno Select From Scene, w którym opcja ta została zaznaczona. Więcej informacji na temat eksploratora sceny (Scene Explorer) znajdziesz w rozdziale 6., „Zaznaczanie obiektów i ustawianie ich właściwości”.

Rozdział 9.  Grupowanie, łączenie i hierarchizowanie obiektów

319

Rysunek 9.3. W widoku hierarchicznym obiekty dzieci znajdują się poniżej swoich rodziców i są przesunięte w prawo

W oknie Schematic View (otwieranym po wybraniu polecenia Graph Editors/New Schematic View) wyświetlany jest schemat sceny, w którym każdy obiekt jest reprezentowany przez prostokątny blok, a połączenia między obiektami — przez linie łączące odpowiednie bloki. Więcej informacji na temat okna Schematic View znajdziesz w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Okno Track View (otwierane poleceniem Graph Editors/New Track View), poza układem hierarchicznym obiektów, wyświetla jeszcze wiele innych szczegółów sceny. W nim możesz zwijać i rozwijać poszczególne gałęzie hierarchii, koncentrując uwagę na tych elementach, które chcesz obejrzeć lub zaznaczyć. Więcej informacji na temat okna Track View znajdziesz w rozdziale 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Praca z obiektami połączonymi Wyobraź sobie, że utworzyłeś hierarchię obiektów, ustawiłeś odpowiednie klucze animacji i kliknąłeś przycisk Play, aby określone obiekty rozpoczęły swoją podróż w przestrzeni, ale okazuje się, że do tej hierarchii dołączony został obiekt, który nie powinien się w niej znaleźć. Kluczem do tworzenia efektownych animacji jest właściwe rozumienie połączeń hierarchicznych między obiektami i umiejętność transformowania obiektów tworzących hierarchie. Wszystkie transformacje obiektu są wykonywane względem jego środka obrotu, którego położenie i orientacja mogą być zmieniane. Umożliwia to przycisk Pivot w panelu Hierarchy. Panel Hierarchy (jego zakładka oznaczona jest ikoną przypominającą diagram organizacyjny) zawiera — oczywiście — jeszcze inne ustawienia. Przykładowo kliknięcie przycisku Link Info otwiera dwie rolety (jeśli zaznaczony jest jakiś obiekt), Locks (blokowanie) oraz Inherit (dziedziczenie), w których możesz zablokować transformacje względem określonych osi i zdecydować, jakie transformacje dany obiekt może dziedziczyć. Więcej informacji na temat transformowania obiektów znajdziesz w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

320

Część II  Praca z obiektami

Blokowanie transformacji dziedziczonych Roleta Inherit, podobnie jak roleta Locks, zawiera pola wyboru dla każdej osi i każdej transformacji, ale tutaj wszystkie pola są domyślnie zaznaczone. Usunięcie zaznaczenia któregokolwiek z nich spowoduje, że dany obiekt nie będzie dziedziczył po swym rodzicu określonej transformacji. Załóżmy, że utworzono obiekt dziecko i połączono go z obiektem rodzicem, a następnie w rolecie Inherit usunięto zaznaczenie pola X dla transformacji Move (przesunięcie). Gdy obiekt rodzic będzie przesuwany wzdłuż osi Y lub Z, obiekt dziecko będzie za nim podążać, ale nie będzie już tak posłuszny, gdy obiekt rodzic zacznie poruszać się w kierunku wyznaczonym przez oś X. Naturalnie, jeśli jakiś obiekt nie dziedziczy transformacji, jego dzieci też jej nie dziedziczą.

Narzędzie Link Inheritance Narzędzie Link Inheritance pełni taką samą rolę jak roleta Inherit, tyle że można go używać w odniesieniu do wielu obiektów jednocześnie. Aby skorzystać z tego narzędzia, należy otworzyć panel Utility, kliknąć przycisk More i w otwartym w ten sposób oknie Utilities zaznaczyć pozycję Link Inheritance (Selected) oraz kliknąć przycisk OK. W panelu Utility pojawi się roleta identyczna z opisaną wyżej roletą Inherit.

Zaznaczanie hierarchii Zanim przystąpisz do transformowania hierarchii, musisz ją zaznaczyć. Możesz to zrobić na kilka sposobów, z których najprostszy polega na dwukrotnym kliknięciu należącego do niej obiektu. Powoduje to zaznaczenie tego obiektu i wszystkich jego potomków. Jeśli będzie to obiekt zajmujący najwyższe miejsce w hierarchii, zaznaczone zostaną wszystkie obiekty wchodzące w jej skład. Po zaznaczeniu obiektu należącego do hierarchii możesz przenosić to zaznaczenie na obiekty położone wyżej (obiekt rodzic) lub niżej (obiekty dzieci) w hierarchii, używając klawiszy Page Up i Page Down. Jeśli w scenie z kaczkami zaznaczysz kaczkę matkę i wciśniesz klawisz Page Down, zaznaczone zostanie pierwsze kaczątko, a zaznaczenie kaczki matki zostanie usunięte. Z kolei zaznaczenie któregokolwiek kaczątka i wciśnięcie klawisza Page Up spowoduje zaznaczenie kaczątka stojącego bliżej matki.

Łączenie z obiektami pozornymi Jako obiekty zajmujące najwyższe miejsce w hierarchii często wykorzystuje się obiekty pozorne (dummy objects) w celu uproszczenia sterowania ruchem całej hierarchii. Transformowanie obiektu pozornego oznacza wówczas transformowanie wszystkich obiektów w hierarchii. Aby utworzyć obiekt pozorny, wybierz polecenie Create/Helpers/Dummy lub w panelu Create kliknij ikonę kategorii Helpers (w kształcie taśmy mierniczej), wybierz podkategorię Standard i kliknij przycisk Dummy w rolecie Object Type. Następnie przeciągnij

Rozdział 9.  Grupowanie, łączenie i hierarchizowanie obiektów

321

kursor w oknie widokowym tam, gdzie chcesz umieścić ten obiekt. Obiekty pozorne są wyświetlane w oknach widokowych jako siatki prostopadłościanów, ale nie są renderowane.

Ćwiczenie: Lot dookoła Ziemi Sterowanie ruchem skomplikowanych modeli złożonych z wielu elementów staje się łatwiejsze, gdy taki model zostanie połączony z obiektem pozornym, bo wówczas można się ograniczyć do animowania ruchu tylko tego obiektu. Aby to przećwiczyć, utworzymy prostą animację samolotu latającego wokół Ziemi. W tym celu w środku sfery stanowiącej model Ziemi umieścimy obiekt pozorny, do którego przyłączymy model samolotu. Następnie obiekt ten wprawimy w ruch obrotowy. Ćwiczenie to wymaga umiejętności transformowania i animowania obiektów, o czym możesz przeczytać w innych rozdziałach tej książki. Obracanie obiektów zostało opisane w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”, a podstawy animacji — w rozdziale 21., „Animacja i klatki kluczowe”.

Aby utworzyć animację z wykorzystaniem obiektu pozornego, wykonaj następujące czynności. 1. Otwórz plik Circling the globe.max z folderu Chap 09 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model globu ziemskiego i umieszczony nad nim model samolotu. Samolot został wykonany w Viewpoint Datalabs. 2. Wybierz polecenie Create/Helpers/Dummy i przeciągnij kursor w centrum globu, aby utworzyć obiekt pozorny. Zachowując zaznaczenie tego obiektu, wybierz polecenie Tools/Align (lub wciśnij klawisze Alt+A) i kliknij glob. W oknie dialogowym Align Selection zaznacz opcje X Position, Y Position i Z Position oraz obie opcje Center. Kliknij przycisk OK, aby wyrównać środki globu i obiektu pozornego. 3. Przyłączenie samolotu do obiektu pozornego umieszczonego wewnątrz sfery może być trudne, a zatem, by uprościć sobie to zadanie, zaznacz sferę, kliknij prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Hide Selection. Sfera zostanie ukryta i możesz swobodnie utworzyć połączenie między samolotem a obiektem pozornym. 4. Kliknij przycisk Select and Link na głównym pasku narzędzi i przeciągnij kursor od samolotu do obiektu pozornego. 5. Kliknij przycisk Auto Key (lub wciśnij klawisz N), aby włączyć tryb automatycznego kluczowania animacji, a następnie przeciągnij suwak czasu do klatki nr 100. Kliknij przycisk Select and Rotate na głównym pasku narzędzi (lub wciśnij klawisz E) i zaznacz obiekt pozorny. Następnie obróć ten obiekt, obserwując, jak samolot zatacza okrąg. 6. Kliknij prawym przyciskiem myszy w aktywnym oknie widokowym i z menu kontekstowego wybierz polecenie Unhide All, aby przywrócić widoczność sfery.

322

Część II  Praca z obiektami

Dzięki połączeniu samolotu z obiektem pozornym nie musisz przesuwać środka obrotu samolotu, aby uzyskać ruch po okręgu. Na rysunku 9.4 przedstawiono jedną z klatek utworzonej w ten sposób animacji.

Rysunek 9.4. Po połączeniu samolotu z obiektem pozornym zmuszenie tego pierwszego do okrążania kuli ziemskiej stało się bardzo łatwe

Podsumowanie W miarę rozwoju sceny coraz ważniejsza staje się jej organizacja. Do organizowania obiektów w scenie możesz zastosować grupowanie, łączenie i tworzenie hierarchii. Ten rozdział obejmował następujące zagadnienia: 

grupowanie obiektów za pomocą poleceń menu Group oraz pracę z grupami,



relacje między obiektami połączonymi hierarchicznie,



tworzenie i usuwanie połączeń hierarchicznych za pomocą odpowiednich narzędzi,



wyświetlanie połączeń w oknach widokowych,



tworzenie i stosowanie obiektów pozornych,

W następnym rozdziale rozpoczniemy poznawanie zagadnień związanych z modelowaniem. Zapoznamy się tam m.in. z podobiektami i obiektami pomocniczymi.

Część III

Podstawy modelowania W tej części: Rozdział 10. „Praca z podobiektami oraz obiektami pomocniczymi” Rozdział 11. „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji” Rozdział 12. „Rysowanie i edycja dwuwymiarowych splajnów i kształtów” Rozdział 13. „Modelowanie na poziomie wielokątów ” Rozdział 14. „Korzystanie z narzędzi Graphite i malowanie obiektami”

Rozdział 10.

Praca z podobiektami oraz obiektami pomocniczymi W tym rozdziale: 

Omówienie typów modelowania



Posługiwanie się wektorami normalnymi



Praca z podobiektami



Miękka selekcja



Korzystanie z obiektów i narzędzi pomocniczych

Modelowanie to proces czysto twórczy. Może mieć wiele postaci, takich jak rzeźbienie, składanie elementów, konstruowanie, wykonywanie pracy snycerskiej czy też sztukatorskiej, i służy wytworzeniu pewnych obiektów. Max oferuje wiele różnych typów modeli i jeszcze więcej sposobów ich tworzenia. W bieżącym rozdziale poznasz proces modelowania w Maksie oraz liczne narzędzia wspomagające, które ułatwią modelowanie obiektów. Omówiona tu zostanie także koncepcja podobiektów (sub-objects) oraz normalnych (normals). Celem tego rozdziału jest zapoznanie Cię z ogólnymi zasadami modelowania, a szczegóły będą sukcesywnie prezentowane w kolejnych rozdziałach.

Omówienie typów modelowania Tak jak możesz zdobyć szczyt, wchodząc różnymi drogami, tak wymodelować go można, stosując różne metody. Model góry utworzysz, wykorzystując obiekty parametryczne, takie jak prostopadłościany, sześciany czy kule, ale można też nadać mu formę siatki wielokątów. W miarę jak rosło będzie Twoje doświadczenie, z pewnością zauważysz, że niektóre obiekty łatwiej modelować przy użyciu jednej metody, zaś inne poprzez zastosowanie drugiej. Max oferuje kilka różnych typów modelowania, które stosuje się w odmiennych sytuacjach.

326

Część III  Podstawy modelowania

Obiekty parametryczne i edytowalne Ogół obiektów geometrycznych w Maksie można podzielić na dwie kategorie główne — obiekty parametryczne (inaczej podstawowe) i obiekty edytowalne. Określenie parametryczny oznacza, że geometrią obiektu można sterować za pomocą zmiennych zwanych parametrami. Modyfikacja tychże parametrów skutkuje zmianą geometrii obiektu. Koncepcja ta zapewnia obiektom ogromną elastyczność. Przykładowo jednym z parametrów kuli jest promień (Radius). Jego zmiana powoduje zmianę wielkości obiektu. Grupę obiektów parametrycznych w Maksie tworzą obiekty dostępne z poziomu menu Create. Obiekty edytowalne nie oferują takiej elastyczności w zakresie edycji parametrów, ale można je edytować poprzez modyfikowanie podobiektów oraz wykorzystanie specjalnych funkcji edycyjnych. Do tej grupy należą obiekty, takie jak Editable Spline, Mesh, Poly, Patch i NURBS. Obiekty edytowalne są wyświetlane w stosie modyfikatorów z poprzedzającym nazwę obiektu podstawowego wyrazem Editable (wyjątek stanowią obiekty NURBS, które nazywane są po prostu powierzchniami NURBS, czyli NURBS Surfaces). Przykładowo obiekt typu Mesh figuruje w stosie jako Editable Mesh. Właściwie to obiekty NURBS zmieniają swoją naturę. Gdy są tworzone z poziomu menu Create, stają się obiektami parametrycznymi, ale kiedy zaznacza się je w panelu Modify, wtedy przekształcają się w obiekty edytowalne, udostępniające zbiór podobiektów i funkcji edycyjnych.

Obiektów edytowalnych nie tworzy się bezpośrednio. Powstają one w wyniku konwersji lub modyfikacji innych obiektów. Kiedy obiekt parametryczny zostaje przekształcony w obiekt innego typu, np. Editable Mesh lub NURBS, wówczas traci swą parametryczną naturę, co oznacza, że nie można go już edytować poprzez modyfikację parametrów bazowych. Obiekty edytowalne mają jednak pewne zalety. Pozwalają na edycję indywidualnych podobiektów, takich jak wierzchołek (vertice), krawędź (edge) i ścianka (face) — czyli wszystkiego, czego nie można modyfikować w przypadku obiektów parametrycznych. Z obiektami edytowalnymi związany jest cały szereg funkcji edycyjnych, specyficznych dla danego typu obiektu. Funkcje te będą omawiane w kolejnych rozdziałach. Niektóre modyfikatory pozwalają edytować podobiekty z jednoczesnym zachowaniem parametrycznej natury obiektów. Do modyfikatorów tych należą: Edit Patch, Edit Mesh, Edit Poly oraz Edit Spline.

Max oferuje następujące typy modeli. 

Obiekty podstawowe (primitives) — są to obiekty parametryczne, takie jak prostopadłościany, kule czy ostrosłupy. Obiekty te dzieli się na dwie grupy — Standard i Extended. Do podstawowych zalicza się także obiekty klasy AEC Objects. Pełna lista obiektów podstawowych omówiona została w rozdziale 5., „Tworzenie i edycja obiektów podstawowych”.



Kształty (shapes) i splajny (splines) — proste kształty wektorowe, takie jak okręgi, gwiazdy czy łuki, ale też tekst oraz splajny, np. Helix. Obiekty te są w pełni renderowalne. Menu Create oferuje wiele parametrycznych kształtów i splajnów. Obiekty tego typu mogą być konwertowane do postaci Editable Spline i dodatkowo edytowane. Omówione zostaną w rozdziale 12., „Rysowanie i edycja dwuwymiarowych splajnów i kształtów”.

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

327



Obiekty siatkowe typu Mesh — złożone modele składające się ze ścianek wielokątnych, wygładzanych podczas renderowania. Obiekty te dostępne są wyłącznie w formie Editable Mesh. Ich omówienie znajdziesz w rozdziale 13., „Modelowanie na poziomie wielokątów”.



Obiekty siatkowe typu Poly — obiekty te budowane są z wielokątnych ścianek i przypominają obiekty siatkowe typu Mesh, ale mają nieco inne właściwości. Są dostępne tylko w formie obiektów Editable Poly. Wszystkie razem poznasz w rozdziale 13., „Modelowanie na poziomie wielokątów”. Do modelowania tego typu obiektów służą narzędzia o nazwie Graphite. Szczegóły na ten temat znajdziesz w rozdziale 14., „Korzystanie z narzędzi Graphite i malowanie obiektami”.



Powierzchnie sklejane (patches) — oparte na krzywych typu Spline powierzchnie sklejane można modyfikować przy użyciu węzłów sterujących. Menu Create udostępnia dwa obiekty parametryczne typu Patch, ale większość obiektów można konwertować do postaci Editable Patch. Szczegółowy opis powierzchni sklejanych zawarty jest w dodatku F, „Modelowanie przy użyciu łat”.



NURBS — to skrót terminu Non-Uniform Rational B-Splines (niejednorodne wymierne krzywe b-sklejane). Obiekty NURBS są podobne do powierzchni sklejanych w tym względzie, że kształtuje się je również za pomocą węzłów kontrolnych. Owe węzły decydują o rozłożeniu powierzchni wzdłuż krzywych. Obiekty NURBS zostały opisane w dodatku G, „Praca z obiektami NURBS”.



Obiekty złożone (compound objects) — grupa kilka typów modeli, w tym obiekty boolowskie, wytłaczane (Loft) i rozrzucane (Scatter). Pozostałe obiekty złożone, takie jak Terrain czy BlobMesh, są przydatne podczas modelowania niektórych obiektów specjalnych. Wszystkie obiekty złożone zostaną omówione w rozdziale 27., „Obiekty złożone”.



Obiekty pełne (body objects) — importowane z plików SAT generowanych przez aplikacje takie jak Revit. Siatkowe obiekty tworzone w Maksie na ogół mają tylko powierzchnię, ale mogą być również wypełniane. Komplet informacji o obiektach pełnych znajdziesz w rozdziale 28., „Praca z bryłami, czyli obiektami pełnymi”.



Systemy cząsteczkowe (particle systems) — systemy składające się z wielu drobnych obiektów współdziałających ze sobą jako jedna grupa. Są bardzo użyteczne w tworzeniu efektów, takich jak deszcz, śnieg czy iskry. Obiekty tego typu, wraz z interfejsem Particle Flow, będą omawiane w rozdziale 41., „Cząsteczki i system Particle Flow”.



Włosy (hair) i futra (fur) — próba uzyskania wiarygodnego modelu fryzury poprzez modelowanie setek tysięcy cylindrycznych obiektów szybko doprowadziłaby do zablokowania każdego komputera. Dlatego też włosy są modelowane przy użyciu odrębnego systemu, w którym każdy włos reprezentowany jest jako splajn. Modyfikatory Hair i Fur opisane zostaną w rozdziale 29., „Tworzenie i układanie włosów, futer oraz tkanin”.



Systemy tkanin (cloth) — tkanina — ze swym falowaniem i wiotkością — w niektórych przypadkach zachowuje się jak ciecz, w innych zaś jak ciało stałe. Max wyposażony jest w zestaw specjalizowanych modyfikatorów do obsługi systemów tkanin. O tworzeniu i korzystaniu z takich systemów mowa będzie w rozdziale 29., „Tworzenie i układanie włosów, futer oraz tkanin”.

328

Część III  Podstawy modelowania Włosy, futra i tkaniny są często traktowane jak efekty specjalne lub dynamiczne symulacje, a nie jak konstrukcje otrzymywane na drodze modelowania, i dlatego włączenie ich do tej listy może być uznane za swego rodzaju nadużycie.

Przy takiej obfitości opcji do wyboru modelowanie w Maksie może nieco przerażać, ale im więcej czasu poświęcisz tym zagadnieniom, tym więcej dowiesz się na ich temat. Początkujący użytkownicy powinni zacząć od poznawania obiektów parametrycznych i importowanych, a dopiero potem podejmować próby konwertowania ich do postaci obiektów edytowalnych. W pojedynczej scenie można umieszczać obiekty różnego typu.

Konwertowanie obiektów do postaci edytowalnej Pośród poleceń dostępnych w górnym menu Create i bocznym panelu o tej samej nazwie nie znajdziesz ani jednego, które odnosiłoby się do tworzenia obiektów edytowalnych. Aby dodać do sceny obiekt edytowalny, musisz go więc zaimportować z zewnętrznego pliku lub przekształcić do takiej postaci obiekt innego rodzaju. Konwersji możesz dokonać, klikając prawym przyciskiem myszy wybrany obiekt w oknie widokowym i wybierając polecenie konwertowania (Convert To) w menu kontekstowym, albo też klikając, również prawym przyciskiem myszy, obiekt podstawowy w stosie modyfikatorów i wskazując typ docelowy w menu podręcznym. Po zakończeniu konwersji w panelu Modify udostępnione zostają wszystkie funkcje edycyjne związane z wybranym typem obiektu. Jednakże obiekt przestaje być obiektem parametrycznym i niedostępne stają się jego parametry, takie jak promień czy liczba segmentów. Max oferuje wyspecjalizowane modyfikatory, takie jak Edit Poly, które zachowują parametryczny charakter obiektów, umożliwiając jednocześnie stosowanie funkcji edycyjnych typowych dla obiektów edytowalnych. Więcej informacji na temat tych modyfikatorów znajdziesz w kolejnych rozdziałach poświęconych modelowaniu. Jeśli obiekt został poddany działaniu modyfikatora, opcja Convert To w menu podręcznym, wywoływanym z poziomu stosu, pozostaje niedostępna aż do chwili użycia polecenia scalania modyfikatorów (Collapse All).

Menu podręczne udostępnia opcje konwersji obiektów do postaci Editable Mesh, Editable Poly, Editable Patch oraz NURBS. Jeżeli zaznaczony jest kształt bądź splajn, wówczas obiektowi temu można też nadać postać Editable Spline. Użycie którejkolwiek z opcji Convert To powoduje scalenie stosu modyfikatorów. Obiekty można konwertować wielokrotnie, ale każda z kolejnych konwersji może powodować postępujące zmiany w ich strukturze. Dlatego też nie zaleca się wielokrotnego przekształcania obiektów.

W zasadzie konwersja obiektu z jednego typu na inny odbywa się automatycznie w oparciu o wewnętrzne mechanizmy Maksa, ale pewne parametry takiej konwersji są dostępne. Przykładowo modyfikator konwertujący Turn to Mesh pozwala włączyć opcję Use Invisible Edges, która odpowiada za podział wielokątów niewidocznymi krawędziami. Jeśli jest wyłączona, cały obiekt zostaje podzielony na trójkątne ścianki. Z kolei modyfikator Turn to Patch udostępnia opcję pozwalającą zamieniać czworokątne ścianki na czworokątne łaty. Bez włączenia tej opcji wszystkie takie ścianki są dzielone na trójkąty.

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

329

Modyfikator Turn to Poly zawiera opcje Keep Polygons Convex, Limit Polygon Size, Require Planar Polygons i Remove Mid-Edge Vertices. Pierwsza z nich, Keep Polygons Convex, jeśli jest włączona, dzieli wklęsłe wielokąty na mniejsze, tak aby wszystkie były wypukłe. Włączenie opcji Limit Polygon Size umożliwia określenie maksymalnej liczby boków wielokąta. Dzięki temu można wyeliminować z siatki wszelkie pięciokąty i sześciokąty. Opcja Require Planar Polygons odpowiada za niełączenie sąsiednich trójkątnych ścianek w jeden płaski wielokąt, jeśli kąt między nimi przekracza wartość określoną w polu Threshold. Ostatnia z tych opcji, Remove Mid-Edge Vertices, usuwa wierzchołki powstające na krawędziach w miejscach przecięć z krawędziami niewidocznymi. Każdy z tych modyfikatorów zawiera również opcje pozwalające zachować (Preserve), usunąć (Clear) lub odwrócić (Invert) istniejące zaznaczenie podobiektów (włącznie z zaznaczeniem miękkim — Include Soft Selection), a także opcje służące do określenia wynikowego poziomu zaznaczenia (sekcja Selection Level). Przy wybranej opcji From Pipeline wykorzystywane są odpowiedniki tych podobiektów, które są zaznaczone w konwertowanym obiekcie. Aby zakończyć proces konwersji, po zastosowaniu modyfikatora należy scalić stos modyfikatorów.

Wektory normalne Zanim przejdziesz do poznawania kolejnych tematów, musisz zrozumieć, czym są normalne i w jaki sposób wykorzystuje się je do określania zewnętrznej powierzchni wielokątów. Normalne są wektorami prostopadłymi do powierzchni obiektu i skierowanymi na zewnątrz. Nie są renderowane, a określają jedynie, w którą stronę zwrócony jest wielokąt. Jeżeli wektor skierowany jest ku kamerze, wtedy widoczna jest cała powierzchnia wielokąta. Jeśli natomiast wektor kieruje się w stronę przeciwną, wtedy widoczna jest tylna powierzchnia wielokąta, ale tylko wówczas, gdy opcja Backface Cull w oknie dialogowym Object Properties jest wyłączona. Wektory normalne wpływają też na kilka innych właściwości wielokątów, takich jak cieniowanie, wygładzanie czy oświetlenie. Są również używane w symulacjach dynamicznych do określania zderzeń między obiektami.

Wyświetlanie normalnych Normalne dowolnego obiektu można wyświetlić, ustawiając przy tym wartość Scale, w trybie dowolnego podobiektu oprócz Edge. Na rysunku 10.1 zaprezentowano obiekty Plane, Box oraz Sphere. Każdy z nich przekonwertowany został do postaci edytowalnej siatki, a ich wszystkie ścianki zaznaczono w trybie podobiektu Face. Włączona też została opcja wyświetlania normalnych (Show Normals).

Ćwiczenie: Oczyszczanie zaimportowanych siatek Niemal wszystkie formaty 3D są formatami siatkowymi, a import obiektów tego typu może sprawiać kłopoty. Przekształcając taki obiekt do postaci edytowalnej siatki, można wykorzystać niektóre jej właściwości i usunąć rzeczone problemy.

330

Część III  Podstawy modelowania

Rysunek 10.1. Opcja Show Normals włącza wyświetlanie wektorów normalnych każdej ścianki obiektu

Menu Modifiers zawiera dwa modyfikatory, których można użyć podczas pracy z wektorami normalnymi. O modyfikatorach Normals oraz Edit Normals będzie mowa w rozdziale 26., „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni”.

Na rysunku 10.2 ukazano model wyeksportowany z programu Poser w formacie 3ds. Zauważ, że talia postaci jest czarna. Dzieje się tak, ponieważ w oknie dialogowym Object Properties wyłączona została opcja Backface Cull. Gdyby była aktywna, talia modelu stałaby się niewidoczna. Problem polega na tym, że wektory normalne tego obiektu zostały zwrócone w niewłaściwym kierunku. Jest to typowy problem, jaki spotyka się podczas importowania siatek, a teraz nauczysz się go rozwiązywać.

Rysunek 10.2. Siatka po lewej jest wyświetlana niewłaściwie na skutek odwrócenia normalnych, co powoduje, że ścianki są niewidoczne

Aby skorygować zwrot wektorów normalnych w importowanym modelu siatkowym, wykonaj takie oto czynności.

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

331

1. Otwórz plik Hailing taxi man with incorrect normals.max. Znajduje się on w folderze Chap 10 na płycie dołączonej do książki. 2. Zaznacz problematyczny obiekt — w tym przypadku talię modelu z lewej. Rozwiń hierarchię obiektu, klikając symbol plus widoczny po lewej stronie nazwy Editable Mesh w stosie modyfikatorów, po czym wybierz tryb podobiektu Element i kliknij w obrębie talii. 3. Zaznacz Show Normals w rolecie Selection, a parametrowi Scale nadaj małą wartość, np. 0.1. Wektory normalne staną się widoczne. Zwróć uwagę, że niektóre są skierowane na zewnątrz, a inne do wewnątrz. 4. Mając zaznaczony podobiekt elementu, kliknij przycisk ujednolicania (Unify) znajdujący się w rolecie Surface Properties, a następnie przycisk odwracania (Flip). Celem jest zwrócenie wszystkich wektorów na zewnątrz. Problem został naprawiony, w rezultacie talia stała się widoczną częścią siatki. Skorygowana siatka po prawej wygląda niemal jak siatka pierwotna, ale nie widać na niej tych brzydkich, czarnych szortów (patrz rysunek 10.2).

Praca z podobiektami Wszystkie typy modeli edytowalnych oferują możliwość pracy na podobiektach (subobjects). Podobiekty są częściami tworzącymi model i mogą nimi być wierzchołki (vertices), krawędzie (edges), ścianki (faces), wielokąty (polygons) i elementy (elements). Owe podobiekty można przekształcać, tak jak zwykłe obiekty, czyli przy użyciu narzędzi transformacyjnych, dostępnych na głównym pasku narzędziowym. Zanim jednak możliwe stanie się przekształcenie podobiektu, należy go najpierw zaznaczyć. Podobiekty można selekcjonować tylko wówczas, gdy aktywny jest tryb edycji danego typu podobiektu. Każdy typ obiektów edytowalnych udostępnia specyficzny zestaw podobiektów. Gdy w stosie modyfikatorów rozwiniesz hierarchię danego obiektu (klikając niewielki symbol plus widoczny po lewej stronie nazwy obiektu), wówczas wyświetlone zostaną wszystkie jego podobiekty, co widać na rysunku 10.3. Zaznaczenie któregoś z nich powoduje włączenie trybu edycji danego podobiektu. Tryb ten można też włączyć, klikając jedną z pięciu ikon widocznych w górnej części rolety Selection bądź wciskając klawisze od 1 do 5. Po włączeniu danego trybu nazwa podobiektu oraz odpowiadająca mu ikona w rolecie Selection zostają podświetlone na żółto. Praca na podobiektach możliwa jest tylko w odpowiadających im trybach. Aby dokonać przekształcenia całego obiektu, należy opuścić tryb podobiektu, klikając jego nazwę lub ikonę albo też wciskając klawisz skrótu, czyli od 1 do 5. Dostęp do trybów edycji podobiektów możliwy jest także z czteroczęściowego menu kontekstowego, wywoływanego kliknięciem prawym przyciskiem myszy. Aby opuścić tryb podobiektu, należy z tegoż menu wybrać pozycję Top-level.

Zaznaczenie podobiektów można zablokować przyciskiem Selection Lock Toggle (klawisz spacji), a także przekształcić w zestaw wyboru (Selection Set) przez wpisanie jego nazwy

332

Część III  Podstawy modelowania

Rysunek 10.3. Rozwinięcie obiektu edytowalnego w stosie modyfikatorów powoduje wyświetlenie tworzących go podobiektów

na rozwijanej liście Named Selection Set, znajdującej się na głównym pasku narzędziowym. Po utworzeniu taki zestaw można w dowolnej chwili przywołać pod warunkiem, że uaktywniony został ten sam tryb podobiektu. Zestawy wyboru można kopiować i wklejać z jednego obiektu do innego, do czego służą przyciski Copy i Paste w rolecie Selection. Są one dostępne dla większości obiektów edytowalnych.

Stosowanie miękkiej selekcji Kiedy edytujesz obiekty typu Editable Mesh, Poly, Patch czy Spline na poziomie podobiektów, możesz korzystać z rolety Soft Selection przedstawionej na rysunku 10.4. Działanie miękkiej selekcji polega na tym, że wraz z zaznaczonym podobiektem wyselekcjonowane zostają podobiekty w jego bezpośrednim sąsiedztwie. Poddawane też są tym samym przekształceniom, aczkolwiek w mniejszym stopniu. Jeśli np. zaznaczysz ściankę, a następnie przesuniesz ją o 2 jednostki, to po wybraniu opcji liniowej miękkiej selekcji sąsiednie ścianki zostaną przesunięte o 1 jednostkę. W ten sposób odkształcenie siatki staje się łagodniejsze i bardziej płynne. Różne typy modeli oferują odmienne opcje miękkiej selekcji. Przykładowo dla obiektu typu Editable Mesh jest to standardowy zestaw opcji, taki jak na rysunku 10.4, ale obiekt Editable Poly ma tych opcji więcej, włącznie z trybem zaznaczania przez malowanie (Paint Soft Selection).

Funkcję miękkiej selekcji włącza się i wyłącza za pomocą opcji Use Soft Selection. Opcja Edge Distance określa zasięg działania funkcji (liczbę krawędzi od obecnie zaznaczonej). Gdy opcja ta jest wyłączona, wówczas zasięg jest ustalany za pomocą parametru Falloff. Z kolei uaktywnienie opcji Affect Backfacing powoduje, że miękką selekcją objęte zostają również tylne elementy obiektu. Jeśli np. zaznaczyłeś wierzchołki z przodu kuli, to po włączeniu opcji Affect Backfacing zaznaczone zostaną również wierzchołki po przeciwnej stronie obiektu. Krzywa miękkiej selekcji stanowi graficzną prezentację sposobu zastosowania tej funkcji. Wartość Falloff definiuje sferyczny obszar oddziaływania miękkiego zaznaczania. Para-

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

333

Rysunek 10.4. Roleta Soft Selection dostępna jest wyłącznie w trybie edycji podobiektów

metr Pinch wpływa na środkową część wykresu i powoduje wyostrzenie lub złagodzenie jego wierzchołka. Z kolei parametr Bubble działa na zewnętrzne obszary krzywej. Na rysunku 10.5 zaprezentowano kilka przykładów ustawień i odpowiadających im kształtów krzywej. Rysunek 10.5. O kształcie krzywej miękkiej selekcji decydują parametry Falloff, Pinch oraz Bubble

Parametry miękkiej selekcji można zmieniać również w sposób interaktywny bez opuszczania okna widokowego. Trzeba tylko włączyć tryb edycji miękkiej selekcji (Edit Soft Selection Mode) za pomocą odpowiedniego skrótu klawiszowego. Domyślnym skrótem dla większości typów edytowalnych modeli jest klawisz 7, ale dla niektórych, np. Editable Poly, trzeba taki skrót utworzyć w oknie dialogowym Customize User Interface. Okno dialogowe Customize User Interface i przypisywanie skrótów klawiszowych opisano w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Po uaktywnieniu wspomnianego trybu kursor przyjmuje postać sygnalizującą możliwość zmiany parametru Falloff. Przeciąganie kursora zmienia wartość parametru, a kliknięcie zatwierdza tę zmianę i włącza tryb modyfikacji parametru Pinch, co objawia się kolejną zmianą postaci kursora. Ponowne kliknięcie pozwala zmienić wartość parametru Bubble, a następne oznacza powrót do trybu edycji parametru Falloff. Aby wyjść z trybu edycji miękkiej selekcji, należy ponownie użyć skrótu klawiszowego. W przypadku obiektów typu Editable Poly u dołu rolety Soft Selection znajdziesz sekcję Paint Soft Selection. Korzystając z umieszczonych tam kontrolek, możesz definiować intensywność działania funkcji miękkiej selekcji metodą malowania. Więcej informacji na temat interfejsu malarskiego oraz wspomnianych kontrolek znajdziesz w rozdziale 26., „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni”.

334

Część III  Podstawy modelowania

Ćwiczenie: Miękka selekcja kształtu serca na płaszczyźnie Funkcja Soft Selection tworzy miękkie przejścia pomiędzy podobiektami, ale czasami przejście takie musi być ostre i wyraźne. W ćwiczeniu tym zobaczysz, jak zachowują się wierzchołki płaskiego obiektu podczas przesuwania z włączoną i wyłączoną funkcją miękkiej selekcji. Aby przesunąć wierzchołki obiektu z użyciem miękkiej selekcji i bez niej, wykonaj następujące czynności. 1. Otwórz plik Soft selection heart.max. Znajduje się on w folderze Chap 10 na płycie dołączonej do książki. W pliku tym zawarte są dwa płaskie obiekty skonwertowane do postaci Editable Mesh. Zaznaczona część wierzchołków tworzy kształt serca. 2. Wierzchołki obiektu z lewej są zaznaczone. Pracując w trybie edycji wierzchołków (Vertex), kliknij przycisk Select and Move (albo wciśnij klawisz W), przenieś wskaźnik myszy w oknie widokowym Left nad wyselekcjonowane wierzchołki i przesuń je ku górze. 3. Wyłącz tryb edycji podobiektów, zaznacz drugi obiekt i ponownie włącz tryb Vertex. Zaznaczone zostaną te same wierzchołki. Otwórz roletę Soft Selection, włącz opcję Use Soft Selection i ustaw wartość Falloff na 40. 4. Kliknij przycisk Select and Move (lub użyj klawisza W) i przesuń wyselekcjonowane wierzchołki w górę. Zwróć uwagę na różnice, jakie wprowadziło włączenie funkcji miękkiej selekcji. Na rysunku 10.6 przedstawiono obie powierzchnie z wytłoczonymi kształtami serca. Rysunek 10.6. Miękka selekcja nadaje gładkość przejściom między podobiektami przesuniętymi i pozostawionymi na miejscu

Wyselekcjonowane podobiekty oznaczane są kolorem czerwonym. Te, których nie zaznaczyłeś, pozostają niebieskie. Zakres miękkiej selekcji natomiast wyróżniany jest pomarańczowo-żółtym gradientem. Ta wizualna wskazówka znacząco ułatwia obserwacje wpływu miękkiej selekcji na podobiekty. Na rysunku 10.7 widać wierzchołki zaznaczone w powyższym ćwiczeniu, przy ustawieniach Falloff na 0, 20, 40, 60 i 80. Jeśli edytujesz obiekt typu Editable Poly bądź Editable Patch, to poniżej wykresu miękkiej selekcji w rolecie Soft Selection dostępny jest przycisk Shaded Face Toggle (przełącznik cieniowania ścianki). Jego kliknięcie powoduje, że powierzchnia obiektu jest cieniowana przy użyciu kolorów gradientu miękkiej selekcji, co zostało pokazane na

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

335

Rysunek 10.7. Gradient kolorów ilustruje przejścia pomiędzy podobiektami zaznaczonymi przy użyciu funkcji miękkiej selekcji

rysunku 10.8. Powierzchnia obiektu jest prezentowana w ten sposób w każdym cieniowanym oknie widokowym. Tam, gdzie kolory są zimniejsze, intensywność transformacji jest mniejsza.

Rysunek 10.8. Funkcja Shaded Face Toggle cieniuje powierzchnię obiektu, korzystając z kolorów gradientu miękkiej selekcji

Działanie na zaznaczone podobiekty przy użyciu modyfikatorów W następnym rozdziale dowiesz się, czym są modyfikatory i jak działać nimi na całe obiekty. Jednak mogą być one stosowane także w celu modyfikacji podobiektów. Gdy dany modyfikator nie jest dostępny dla edycji podobiektu, wówczas zostaje wykluczony z listy Modifier List w panelu Modify i dezaktywowany w menu Modifiers. Jeżeli obiekt nie jest obiektem edytowalnym z dostępnymi podobiektami, to i tak można stosować wobec niego specjalizowane modyfikatory selekcji (Select). Pozwalają one

336

Część III  Podstawy modelowania

zaznaczać podobiekty i przekształcać je przy użyciu modyfikatorów, bez konieczności konwertowania obiektu do postaci nieparametrycznej. Grupę selekcji tworzą modyfikatory Mesh Select, Poly Select, Patch Select, Spline Select, Volume Select, FFD (Free Form Deformers) Select oraz Select by Channel. Znajdziesz je wszystkie w podmenu Modifiers/Selection. Po zastosowaniu modyfikatora z grupy selekcji możesz zaznaczać podobiekty w standardowy sposób, korzystając z hierarchii w stosie modyfikatorów albo ikon podobiektów w rolecie Parameters. Każdy modyfikator zastosowany po modyfikatorze typu Select (w stosie umieszczany powyżej modyfikatora Select) wpływa wyłącznie na wyselekcjonowane podobiekty.

Obiekty wspomagające modelowanie W panelu Create (a także w menu Create) dostępna jest kategoria różnych obiektów zwanych obiektami pomocniczymi (ikona wygląda jak taśma pomiarowa). Obiekty te są użyteczne podczas pozycjonowania obiektów w scenie i dokonywania pomiarów. Przyciski w kategorii Helpers reprezentują takie obiekty jak Dummy, Container, Crowd, Delegate, ExposeTM, Grid, Point, Tape, Protractor oraz Compass. Obiekt pomocniczy Container będzie omawiany w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”, obiekty Crowd i Delegate będą omawiane w rozdziale 39., „Animowanie postaci przy użyciu modułu CAT”, a obiekt Expose Transform — w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Korzystanie z obiektów pomocniczych Dummy i Point Dummy (atrapa; obiekt pozorny) jest obiektem przydatnym do sterowania złożonymi hierarchiami obiektów. W oknie widokowym ma on kształt sześcianu, z centralnie umieszczonym środkiem obrotu. Nie jest renderowany, nie ma też żadnych parametrów. Stosuje się go wyłącznie jako obiekt, względem którego przekształcane są inne obiekty. Przykładowo można go użyć jako obiektu, za którym podąża kamera w sekwencji animacyjnej. Z obiektów Dummy będziesz korzystał wielokrotnie, wykonując ćwiczenia opisane w książce. Obiekt Point (punkt) jest podobny do Dummy w tym względzie, że tak jak on nie jest renderowany i ma minimalną liczbę parametrów. Obiekt Point definiuje punkt w przestrzeni i jest identyfikowany przez znak X, osie układu współrzędnych (Axis Tripod) lub sześcian (Box). Opcja Center Marker umieszcza znak X w centrum obiektu Point (tak więc ów X stanowi właściwy znacznik obiektu). Po włączeniu opcji Axis Tripod wyświetlane są osie X, Y i Z wychodzące z zadanego punktu, zaś opcja Cross wyświetla odcinki biegnące wzdłuż osi i przecinające się w tym punkcie. Z kolei uaktywniona opcja Box sprawia, że obiekt Point przyjmuje formę sześcianu. Parametr Size decyduje o wielkości trójwymiarowej ikony reprezentującej obiekt. Możliwość sterowania rozmiarami obiektów pomocniczych typu Point sprawia, że są stosowane chętniej niż obiekty Dummy.

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

337

Opcja Constant Screen Size utrzymuje stałą wielkość obiektu, bez względu na skalę widoku. Natomiast włączenie opcji Draw on Top powoduje, że obiekt Point rysowany jest przed wszystkimi obiektami w scenie, co znacznie ułatwia jego odnalezienie. Obiekty Point stosuje się głównie do oznaczania specjalnych punktów w obrębie sceny. Obiekty Point są słabo widoczne i łatwo je stracić z oczu. Korzystając z nich, warto więc nadawać im nazwy, dzięki którym łatwo będzie je odnaleźć za pomocą okna dialogowego Select From Scene.

Określanie odległości i współrzędnych Kategoria Helpers zawiera kilka narzędzi przydatnych do mierzenia wymiarów i określania kierunków. Narzędziami tymi są taśma miernicza (Tape), kątomierz (Protractor) oraz kompas (Compass). Dokonują one pomiarów w jednostkach aktualnie wybranego systemu.

Posługiwanie się narzędziem Measure Distance W menu Tools znajduje się polecenie uruchamiające narzędzie do mierzenia odległości (Measure Distance). Posługiwanie się tym narzędziem jest bardzo proste. Wystarczy je włączyć, kliknąć w miejscu początkowym pomiaru, a następnie w końcowym — odległość pomiędzy wyznaczonymi w ten sposób punktami wyświetlana jest na pasku stanu, na samym dole okna programu. Measure Distance podaje także współrzędne wektora łączącego te punkty (wartości Delta). Narzędzia tego można używać w połączeniu z funkcją przyciągania (Snap), co zwiększa dokładność pomiarów.

Korzystanie z narzędzia Tape Taśma miernicza (Tape) też służy do mierzenia odległości. Pomiaru dokonuje się przez przeciągnięcie myszą pomiędzy punktami, których wzajemną odległość chce się zmierzyć. Zmierzony dystans wyświetlany jest w rolecie Parameters. Opcja Specify Length pozwala odgórnie ustalić długość obiektu taśmy. Po kliknięciu przycisku Select and Move można przesuwać skrajne punkty taśmy, zmieniając ich położenie. Natomiast funkcja Select and Rotate nie wywiera na taśmę żadnego wpływu.

Korzystanie z narzędzia Protractor Obiekt Protractor działa podobnie jak Tape, ale służy do mierzenia kątów tworzonych przez inne obiekty. Aby użyć kątomierza, należy kliknąć w oknie widokowym, pozycjonując tam obiekt Protractor. (Obiekt ten ma postać dwóch stykających się wierzchołkami ostrosłupów i reprezentuje punkt odniesienia). Następnie trzeba kliknąć przycisk Pick Object 1 i wybrać obiekt w scenie. Pomiędzy kątomierzem i wskazanym obiektem narysowana zostanie linia. Później należy kliknąć przycisk Pick Object 2 i wskazać drugi obiekt. Wartość kąta leżącego na płaszczyźnie wyznaczonej przez oba obiekty oraz kątomierz wyświetlana jest w rolecie Parameters. Zmienia się ona wraz z przesuwaniem któregokolwiek z tych trzech obiektów.

338

Część III  Podstawy modelowania Wszystkie wyniki pomiarów są prezentowane w szarych polach rolety Parameters. Szare wypełnienie pola oznacza, że widocznej w nim wartości nie można bezpośrednio modyfikować.

Korzystanie z narzędzia Compass Obiekt Compass wyznacza kierunki północny (North), wschodni (East), zachodni (West) i południowy (South) na bazie płaskiej, ośmioramiennej gwiazdy. Rozmiary tej gwiazdy można zmieniać, przeciągając kursor podczas tworzenia obiektu Compass. Obiekt pomocniczy Grid został omówiony wraz z siatkami konstrukcyjnymi w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”. Obiekt Compass jest używany zwykle w połączeniu z systemem oświetlenia słonecznego (Sunlight System), o którym więcej dowiesz się w rozdziale 20., „Podstawowe techniki oświetlania sceny”.

Korzystanie z narzędzia Measure W bocznym panelu Utilities znajduje się jeszcze jedno użyteczne narzędzie, umożliwiające dokonywanie pomiarów na wyselekcjonowanym obiekcie — narzędzie Measure. Można je uruchomić jako pływające okno dialogowe, przedstawione na rysunku 10.9. W oknie tym wyświetlana jest nazwa obiektu oraz informacje na temat wielkości jego powierzchni (Surface Area), objętości (Volume), współrzędnych środka ciężkości (Center of Mass), długości (Length — w przypadku kształtów) oraz wymiarów (Dimensions). Okno udostępnia też opcję blokowania bieżącego zaznaczenia. Rysunek 10.9. Okno dialogowe narzędzia Measure to źródło użytecznych informacji

Korzystanie z narzędzia Level of Detail Podczas animowania sceny niektóre obiekty znajdują się bliżej kamery niż inne. Renderowanie skomplikowanego obiektu położonego w głębi sceny nie ma większego sensu. Za pomocą narzędzia Level of Detail (LOD) można nakazać Maksowi, by obiekty znajdujące się daleko od kamery renderował w sposób uproszczony, a te, które znajdują się bliżej, z zachowaniem pełnej szczegółowości. Modyfikator MultiRes pozwala zmieniać poziom szczegółowości w czasie rzeczywistym. Będzie o nim mowa w rozdziale 26., „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni”.

Rozdział 10.  Praca z podobiektami oraz obiektami pomocniczymi

339

Aby uruchomić opisywane narzędzie, kliknij przycisk More na panelu Utilities i wybierz nazwę Level of Detail. W panelu Utilities pojawi się wtedy roleta przedstawiona na rysunku 10.10. Jeśli chcesz użyć tego narzędzia, musisz najpierw utworzyć kilka wersji obiektu i je zgrupować. Przycisk Create New Set pozwala wybrać grupę obiektów w oknie widokowym. W środkowej części rolety wyświetlana jest lista tych obiektów. Rysunek 10.10. Narzędzie Level of Detail (podzielone na dwie części) daje możliwość określenia sposobu wyświetlania obiektów na podstawie wartości progowych

Po zaznaczeniu obiektu na liście możesz określić, czy wartość progowa (Threshold) wyrażana będzie w pikselach, czy jako procentowy udział obiektu w całym obrazie. Dla każdej pozycji listy można ustalić minimalne i maksymalne ustawienia progowe. Z kolei wartości Image Output Size służą do definiowania wielkości obrazu wyjściowego, a poszczególne modele przekształcane są w oparciu o wymiary, jakie mają przyjąć w tym obrazie. Włączenie opcji Display in Viewport zapewnia wyświetlanie odpowiednich modeli LOD w oknie widokowym.

Podsumowanie Zrozumienie podstaw modelowania ułatwia tworzenie sceny. W rozdziale tym poznałeś kilka dostępnych w Maksie typów obiektów. Wiele z nich zawiera podobne funkcje, takie jak Soft Selection. Wiesz już także, czym są obiekty pomocnicze. W bieżącym rozdziale omówiono następujące zagadnienia: 

charakterystykę obiektów parametrycznych oraz różnych typów modelowania,



wyświetlanie normalnych,



korzystanie z podobiektów i miękkiej selekcji,



posługiwanie się obiektami i narzędziami pomocniczymi.

W następnym rozdziale poznasz kolejne narzędzia do edycji obiektów siatkowych. Modyfikatory umożliwiają deformowanie obiektów przez ich wyginanie, skręcanie i marszczenie powierzchni.

340

Część III  Podstawy modelowania

Rozdział 11.

Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji W tym rozdziale: 

Zarządzanie modyfikatorami za pomocą stosu



Posługiwanie się gizmami modyfikatorów



Zapoznanie się z modyfikatorami typu Select



Deformowanie obiektów przy użyciu modyfikatorów z grup Parametric Deformer i FFD

Wyobraź sobie sklep stolarski, wypełniony najrozmaitszymi (drogimi) narzędziami i maszynami. Niektóre narzędzia, takie jak dłuta czy pilniki, są proste, inne zaś, np. strugarki i wyrzynarki, bardziej skomplikowane. Jednak wszystkie służą jednemu celowi, którym jest modyfikowanie kształtu (czyli modelowanie) drewnianych przedmiotów różnymi sposobami. Pod pewnymi względami modyfikatory można postrzegać jak owe narzędzia i maszyny, przeznaczone do obróbki trójwymiarowych obiektów. Każde narzędzie stolarskie ma inne parametry, które decydują o sposobie jego działania, takie jak siła docisku ostrza strugarki czy granulacja papieru ściernego zastosowanego w szlifierce. Podobnie jest w przypadku modyfikatorów, których oddziaływanie na obiekty 3D definiują indywidualne parametry. Modyfikatory można stosować na wiele różnych sposobów, zmieniając kształty obiektów, mapując materiały, deformując powierzchnie i przeprowadzając operacje innego typu. Istnieje wiele rodzajów modyfikatorów. W rozdziale tym zapoznasz się z koncepcją modyfikatorów oraz przyswoisz sobie podstawowe wiadomości na temat ich stosowania. Omówione tu zostaną także dwie specyficzne kategorie modyfikatorów, czyli parametryczne (Parametric Deformers) i dowolne (Free Form Deformers, w skrócie FFD).

342

Część III  Podstawy modelowania

Stos modyfikatorów Wszystkie modyfikatory przypisane do obiektu są zestawione razem, w specjalnym miejscu zwanym stosem modyfikatorów (Modifier Stack). Stos ten pełni rolę menedżera wszystkich modyfikatorów użytych do edycji danego obiektu, a jego roletę znaleźć można w górnej części bocznego panelu Modify. Za pomocą stosu możesz nie tylko dodawać modyfikatory, ale też je usuwać, wycinać, kopiować i wklejać, przenosząc je pomiędzy obiektami, a także zmieniać ich kolejność.

Istota obiektów bazowych Pierwszą pozycją na stosie modyfikatorów wcale nie jest modyfikator tylko tzw. obiekt bazowy (base object). Reprezentuje on pierwotny typ obiektu. Obiekt bazowy dla obiektu podstawowego jest to po prostu jego typ, np. kula (Sphere) czy pierścień (Torus). Obiektami bazowymi mogą być także edytowalne siatki, wieloboki, powierzchnie sklejane i splajny, jak również powierzchnie i krzywe NURBS. Obiekty bazowe można wyświetlić, korzystając z okna widoku schematycznego (Schematic View), o ile włączona została opcja Base Objects w pływającym oknie Display.

Stosowanie modyfikatorów Dany obiekt może podlegać działaniu wielu modyfikatorów jednocześnie. Możesz je wybierać z poziomu menu Modifiers albo też z rozwijanej listy Modifier List znajdującej się u góry panelu Modify, tuż pod nazwą obiektu. Wybranie modyfikatora z menu Modifiers lub listy Modifier List powoduje zastosowanie go w odniesieniu do aktualnie zaznaczonego obiektu. Jeśli zaznaczona jest większa liczba obiektów, modyfikator zostanie zastosowany do wszystkich. Aby szybko wybrać żądany modyfikator z listy Modifier List, rozwiń listę i rozpocznij wpisywanie nazwy modyfikatora. Jeśli np. pierwszą wpisaną literą będzie T, na liście zostanie zaznaczony modyfikator Taper. Niektóre modyfikatory są niedostępne dla obiektów określonych typów, np. modyfikatorów Extrude i Lathe można użyć tylko wówczas, gdy zaznaczony jest kształt lub splajn.

Inne pozycje na stosie modyfikatorów Większość modyfikatorów należy do kategorii Object-Space (przestrzeń obiektu), ale istnieje też inna kategoria, World-Space (przestrzeń globalna). Modyfikatory World-Space są podobne do tych z grupy Object-Space, z tą różnicą, że działają w globalnym, a nie lokalnym układzie współrzędnych. Modyfikatory typu World-Space omówione zostaną w dalszej części rozdziału, ale tymczasem powinieneś zapamiętać, że modyfikatory te (określane skrótem WSM) wyświetlane są na szczycie stosu i stosowane po modyfikatorach Object-Space.

Rozdział 11.  Korzystanie ze stosu modyfikacji

343

U góry stosu modyfikatorów, oprócz modyfikatorów World-Space, wyświetlane są powiązania z polami sił (Space Warps). Pola sił omówione zostaną w rozdziale 42., „Stosowanie pól sił”.

Posługiwanie się stosem modyfikatorów Po przypisaniu modyfikatora jego parametry wyświetlane są w odpowiedniej rolecie bocznego panelu Modify. Roleta Modifier Stack (stos modyfikatorów), przedstawiona na rysunku 11.1, wyświetla po kolei obiekt bazowy oraz wszystkie modyfikatory, które zostały zastosowane do jego edycji. Każdy nowo użyty modyfikator umieszczany jest na górze stosu. Po zaznaczeniu modyfikatora na stosie wyświetlone zostają rolety ze wszystkimi jego parametrami. Rysunek 11.1. W stosie modyfikatorów wyświetlane są nazwy wszystkich modyfikatorów przypisanych danemu obiektowi

Rozmiary stosu modyfikatorów można zmieniać, przeciągając poziomy pasek widoczny pod przyciskami.

Poniżej widnieje pięć przycisków oddziałujących na zaznaczony modyfikator. Opis ich funkcji znajdziesz w tabeli 11.1. Więcej informacji na temat konfigurowania zestawów modyfikatorów znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Gdy klikniesz modyfikator prawym przyciskiem myszy, wyświetlone zostanie menu podręczne. Zawiera ono polecenie służące do zmiany nazwy (Rename) wyselekcjonowanego modyfikatora, co może mieć uzasadnienie, gdy modyfikator ten został wielokrotnie zastosowany do tego samego obiektu. Ponadto menu zawiera m.in. polecenie usuwania (Delete) zaznaczonego modyfikatora.

344

Część III  Podstawy modelowania

Tabela 11.1. Przyciski stosu modyfikatorów Przycisk

Nazwa

Opis

Pin Stack

Pozwala na edytowanie parametrów zaznaczonego modyfikatora nawet po wyselekcjonowaniu innego obiektu (działanie przycisku można porównać do użycia pinezki, za pomocą której parametry modyfikatora pozostają przypięte do ekranu).

Show end result on/off toggle

Po włączeniu tego przycisku program prezentuje końcowy rezultat zastosowania wszystkich modyfikatorów w całym stosie, a po jego wyłączeniu tylko wynik działania aktualnie zaznaczonego modyfikatora.

Make unique

Przycisk służy do uniezależnienia wyselekcjonowanego obiektu od jego klonów (Instances) lub odnośników (References). Po kliknięciu go zaznaczony obiekt nie będzie modyfikowany wraz z innymi obiektami, których jest klonem lub odnośnikiem. Działa w odniesieniu do obiektów bazowych i modyfikatorów.

Remove modifier from the stack

Przycisk powodujący usunięcie ze stosu zaznaczonego modyfikatora lub powiązania z polem sił, o ile takowe zostało zaznaczone. Usunięcie modyfikatora przywraca obiektowi stan sprzed jego przypisania.

Configure Modifier Sets

Otwiera menu, w którym można wybrać wyświetlanie zestawów modyfikatorów w postaci przycisków nad stosem. Możliwe jest także wybranie zestawu, który ma być w ten sposób wyświetlany. To samo menu zawiera opcje konfigurowania i definiowania różnych zestawów.

Kopiowanie i wklejanie modyfikatorów Menu podręczne, o którym wspomniano wyżej, oferuje też możliwość wycinania (Cut), kopiowania (Copy), wklejania (Paste) oraz wklejania klonu (Paste Instance) modyfikatora. Polecenie Cut powoduje usunięcie modyfikatora z bieżącego obiektu, ale pozwala na wklejenie go na inne obiekty. Polecenie Copy natomiast zachowuje modyfikator na obiekcie i pozwala wkleić go na kolejny obiekt. Wycięty bądź skopiowany modyfikator wkleja się za pomocą polecenia Paste. Polecenie Paste Instance zachowuje łącze pomiędzy modyfikatorem oryginalnym i wklejonym klonem, co oznacza, że wszelkie modyfikacje pierwowzoru oddziałują na wszystkie jego klony. Inna metoda zastosowania modyfikatora już użytego na bieżącym obiekcie polega na przeciągnięciu go ze stosu na inny obiekt w oknie widokowym. Gdy w trakcie upuszczania modyfikatora na obiekt w oknie widoku wciśniesz klawisz Ctrl, wówczas modyfikator zostanie powielony jako klon (podobnie jak przy użyciu polecenia Paste Instance). Zastąpienie Ctrl klawiszem Shift sprawia natomiast, że modyfikator zostaje usunięty z bieżącego obiektu i zastosowany wyłącznie na obiekcie, na który został przeniesiony (tak jak po wybraniu poleceń Cut i Paste). Modyfikatory można wycinać, kopiować i wklejać również przy wykorzystaniu okna widoku schematycznego. Więcej informacji na ten temat znajdziesz w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Rozdział 11.  Korzystanie ze stosu modyfikacji

345

Stosowanie klonów modyfikatorów Gdy zastosujesz ten sam modyfikator do kilku obiektów jednocześnie, wówczas jest on wyświetlany na stosie modyfikatorów każdego z nich. Są to modyfikatory klonowane, zachowujące wzajemne powiązania. Gdy parametry jednego z nich zostaną zmienione, zmiana ta wpłynie na pozostałe klony. Funkcja jest bardzo użyteczna podczas modyfikowania większych grup obiektów. Kiedy modyfikator jest kopiowany pomiędzy różnymi obiektami, wtedy możesz wybrać, czy ma powstać zwykła kopia (copy), czy klon (instance). Aby sprawdzić, które obiekty są powiązane z określonym modyfikatorem, zaznacz obiekt w oknie widokowym, po czym wybierz polecenie Views/Show Dependencies. Wszystkie obiekty, na których zastosowane zostały klony modyfikatora, wyróżnione będą jasnoróżowym kolorem. W dowolnym momencie możesz zerwać powiązania określonego klonu z pozostałymi obiektami, korzystając z przycisku Make Unique w rolecie stosu modyfikatorów.

Identyfikowanie klonów i odnośników w stosie modyfikatorów Jeżeli przyjrzysz się wnikliwie stosowi modyfikatorów, zauważysz pewne wskazówki, które ułatwiają identyfikację klonów (instances) i odnośników (references). Nazwy normalnych kopii obiektów i modyfikatorów wyświetlane są zwykłą czcionką, natomiast klonów — pogrubioną. Ta sama zasada dotyczy zarówno obiektów, jak i modyfikatorów. Jeżeli dany modyfikator został nałożony na dwa lub więcej obiektów, wtedy jego nazwa prezentowana jest kursywą. Obiekty będące odnośnikami można identyfikować za pomocą paska Reference Object Bar, który dzieli stos modyfikatorów na dwie kategorie — jedna (nad paskiem) obejmuje modyfikatory unikalne dla danego odnośnika, zaś druga (poniżej paska) zawiera modyfikatory powiązane z innymi odnośnikami. Wszystkie omówione wyżej przypadki pokazane zostały na rysunku 11.2.

Wyłączanie i usuwanie modyfikatorów Kliknięcie ikony żarówki widocznej obok nazwy modyfikatora powoduje jego włączenie lub wyłączenie. Wywoływane kliknięciem prawego przycisku myszy menu podręczne także oferuje opcje wyłączania modyfikatora w oknie widokowym (Off in Viewport) i podczas renderowania (Off in Renderer). Aby usunąć modyfikator ze stosu, po prostu zaznacz go i kliknij przycisk Remove modifier from the stack widoczny poniżej stosu. W ten sposób usuniesz tylko zaznaczony modyfikator. Możesz też usuwać większe grupy modyfikatorów, zaznaczając je kolejno z wciśniętym klawiszem Ctrl. Jeśli zamiast Ctrl użyjesz klawisza Shift, wtedy będziesz mógł zaznaczyć ciąg modyfikatorów, klikając pierwszy i ostatni z nich.

346

Część III  Podstawy modelowania

Rysunek 11.2. Formatowanie napisów w stosie modyfikatorów umożliwia identyfikację klonów i odnośników

Zmiana kolejności modyfikatorów w stosie Modyfikatory są wyświetlane w stosie według kolejności ich przypisywania, przy czym modyfikator użyty jako pierwszy pojawia się na dole, a ten, który wybrano jako ostatni, na górze listy. Kolejność ta jest bardzo istotna i może wpłynąć na wygląd obiektu. Max uwzględnia modyfikatory, poczynając od wymienionego na samym dole stosu, a kończąc na zajmującym pierwszą pozycję. Kolejność modyfikatorów można zmienić, zaznaczając poszczególne pozycje stosu i przeciągając je w górę lub w dół. Niemożliwe jest natomiast ich przesuwanie poniżej obiektu bazowego ani powyżej sekcji modyfikatorów World-Space i powiązań z polami sił.

Ćwiczenie: Tworzenie łańcucha molekularnego Modelując strukturę DNA czy też tworząc animację prezentującą formowanie łańcucha cząsteczek, możesz zastosować modyfikatory Lattice i Twist, dzięki którym model łańcucha molekularnego powstanie znacznie szybciej. Na przykładzie tych łańcuchów łatwo można wykazać wpływ kolejności modyfikatorów w stosie na wynik końcowy. Aby utworzyć model łańcucha molekularnego przy użyciu modyfikatorów, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Plane i przeciągnij kursorem w oknie widokowym Top, tworząc obiekt płaszczyzny. Jego długość (Length) ustaw na 300, szerokość (Width) na 60, liczbę segmentów w długości (Length Segments) na 11, a w szerokości (Width Segments) na 1.

Rozdział 11.  Korzystanie ze stosu modyfikacji

347

2. Po zaznaczeniu obiektu Plane wybierz Modifiers/Parametric Deformers/Lattice, aby zastosować modyfikator Lattice. Włącz opcję nakładania na cały obiekt (Apply to Entire Object). Następnie ustaw parametry Struts Radius (promień poprzeczek) na 1.0 z 12 bokami (Segments), w sekcji Joints wybierz typ geometrii wiązań Icosa z wartościami 6.0 dla Radius i 6 dla Segments. 3. Wybierz Modifiers/Parametric Deformers/Twist i ustaw kąt skręcenia (Twist Angle) na 360 wokół osi Y. 4. Zwróć uwagę na obiekty Sphere, które zostały skręcone wzdłuż obiektu Plane. Możesz to naprawić, zmieniając kolejność modyfikatorów w stosie. W tym celu zaznacz modyfikator Lattice i przeciągnij go powyżej modyfikatora Twist. W ten sposób skorygujesz wydłużenie kul. Na rysunku 11.3 przedstawiono skorygowany łańcuch molekularny.

Rysunek 11.3. Zmiana kolejności modyfikatorów w stosie może wpływać na wynik końcowy

Zachowywanie i przywracanie sceny Zanim przejdziemy dalej, powinieneś poznać bardzo istotną funkcję Maksa, która pozwala ustanawiać punkty przywracania dla bieżącej sceny. Polecenie Edit/Hold zapisuje scenę w tymczasowym buforze, co umożliwia łatwe odtworzenie jej wcześniejszego stanu. Po zachowaniu stanu sceny przy użyciu polecenia Hold (Ctrl+H) możesz go szybko odtworzyć, korzystając z polecenia Edit/Fetch (Alt+Ctrl+F). Polecenia te dają więc możliwość

348

Część III  Podstawy modelowania

bezproblemowego cofania modyfikacji sceny, bez konieczności wielokrotnego zapisywania jej i wczytywania. Użycie ich przed zastosowaniem lub usunięciem modyfikatorów pozwala uniknąć poważnych problemów. Korzystanie z polecenia Hold przed zastosowaniem złożonego modyfikatora, oprócz częstego zapisywania pliku, to praktyka godna polecenia.

Scalanie stosu Scalenie stosu powoduje usunięcie wszystkich zawartych w nim modyfikatorów i na stałe przypisanie obiektowi efektów ich działania. Jednocześnie też następuje usunięcie historii modyfikacji. Wszystkie poszczególne modyfikatory w stosie są łączone w jedną modyfikację. Funkcja ta pozbawia użytkownika możliwości zmiany parametrów modyfikatorów, ale zarazem upraszcza obiekt. Wywoływane prawym przyciskiem myszy menu podręczne oferuje opcje Collapse To (scal do) oraz Collapse All (scal wszystko). Całość stosu można scalić za pomocą polecenia Collapse All. Możliwe jest jednak scalenie zawartości stosu jedynie do poziomu zaznaczonego modyfikatora. Wówczas należy użyć polecenia Collapse To. Scalone obiekty stają się zazwyczaj obiektami typu Editable Mesh. Inną, ogromną zaletą scalania stosu modyfikatorów jest wynikająca z przeprowadzenia tej operacji oszczędność pamięci oraz zmniejszenie rozmiarów plików wynikowych, co przekłada się na szybsze wczytywanie większych scen. Scalanie stosu przyśpiesza również renderowanie sceny, ponieważ Max nie musi już wyliczać końcowych rezultatów działania wszystkich modyfikatorów.

Kiedy zastosujesz polecenie scalania, na ekranie pojawi się okno komunikatu ostrzegawczego, pokazane na rysunku 11.4. Komunikat informuje, że wykonanie tego polecenia spowoduje utratę możliwości parametrycznego modyfikowania właściwości obiektu. Aby potwierdzić scalanie stosu, kliknij przycisk Yes. Rysunek 11.4. Ponieważ operacji scalania nie można cofnąć, pokazane tu okno dialogowe daje użytkownikowi możliwość zachowania sceny Oprócz przycisków Yes i No, w ostrzegawczym oknie dialogowym znajduje się jeszcze przycisk Hold/Yes. Kliknięcie go powoduje zapisanie bieżącego stanu obiektu w buforze, a następnie wykonanie polecenia Collapse All. Jeśli natrafisz na jakieś problemy, możesz przywrócić obiekt do stanu sprzed scalania stosu, wybierając polecenie Edit/Fetch (Alt+Ctrl+F).

Stosowanie narzędzia Collapse Stos modyfikatorów można scalić także za pomocą narzędzia Collapse, dostępnego w panelu bocznym Utility. Pozwala ono przekonwertować rezultat scalania jednego bądź kilku obiektów do najlepiej odpowiadającej mu klasy (Modifier Stack Result) lub do postaci siatki (Mesh). Scalenie przy użyciu pierwszej metody niekoniecznie musi doprowadzić do

Rozdział 11.  Korzystanie ze stosu modyfikacji

349

powstania obiektu siatkowego, ale zawsze powoduje scalenie do obiektu bazowego, który wymieniony jest na samym dole stosu. Rezultatem scalania, w zależności od zawartości stosu, może być siatka, powierzchnia sklejana, splajn lub obiekt innego typu. Możliwy jest także wybór opcji scalania do obiektu pojedynczego (Single Object) lub wielu obiektów (Multiple Objects). Jeśli włączone są opcje Mesh i Single Object, wówczas możesz też zdecydować się na przeprowadzenie operacji logicznej. Operacje logiczne można przeprowadzać wtedy, gdy scalanych jest kilka nakładających się obiektów w jeden. Opcjami do wyboru są: Union (łącząca geometrie obiektów), Intersection (łącząca tylko nakładające się fragmenty geometrii) oraz Subtraction (powodująca odjęcie jednej geometrii od innej). Logiczne operacje mogą być przeprowadzane także przy użyciu boolowskich obiektów złożonych. Więcej informacji na ich temat znajdziesz w rozdziale 27., „Obiekty złożone”.

Gdy zaznaczono wiele obiektów, wówczas opcja Intersection oddziałuje jedynie na te ich części, które przecinają się z fragmentami innych; jeśli żadne obiekty nie przecinają się, wtedy wszystko znika. Jeżeli użyjesz opcji Subtraction, wtedy będziesz mógł wskazać obiekt podstawowy, od którego odejmowane mają być pozostałe obiekty. W tym celu w pierwszej kolejności zaznacz ów obiekt, a następnie, wciskając klawisz Ctrl, klikaj kolejno te obiekty, które mają zostać odjęte od zaznaczonego. Przykłady rezultatów wszystkich trzech operacji logicznych przedstawione są na rysunku 11.5. Rysunek 11.5. Korzystając z narzędzia Collapse, można wybierać spośród operacji boolowskich (od lewej do prawej): Union, Intersection lub Subtraction

Posługiwanie się gizmami modyfikatorów Kiedy korzystałeś z modyfikatorów, prawdopodobnie zauważyłeś pomarańczową ramkę otaczającą obiekt w oknie widokowym, pojawiającą się podczas ustalania parametrów modyfikatora. Ramki takie zwane są gizmami i zapewniają wizualną kontrolę zmian geometrii, jakie wprowadza dany modyfikator. Istnieje też możliwość bezpośredniego transformowania gizm i tym samym wpływania na efekty działania modyfikatorów. Kliknięcie symbolu plus widniejącego po lewej stronie nazwy modyfikatora powoduje rozwinięcie listy podobiektów modyfikatora. Aby wyselekcjonować taki podobiekt, wystarczy kliknąć jego nazwę. Zaznaczona nazwa zostaje wyróżniona żółtym podświetleniem. Wiele modyfikatorów tworzy podobiekty gizma. Gizma mają zwykle kształt pudełka i mogą być przekształcane oraz sterowane w taki sam sposób jak inne obiekty, przy użyciu

350

Część III  Podstawy modelowania

przycisków transformacji umieszczonych na głównym pasku narzędziowym. Innym typowym podobiektem modyfikatora jest Center, definiujący punkt, względem którego gizmo jest przekształcane.

Ćwiczenie: Ściskanie plastikowej butelki Aby dobrze zrozumieć sposób oddziaływania gizma modyfikatora i jego punktu środkowego na obiekt, zastosujemy teraz modyfikator Squeeze do przekształcenia plastikowej butelki; przesuwając środek modyfikatora, możesz wpływać na sposób jego działania. Aby zmienić właściwości modyfikatora przez przesunięcie jego środka, wykonaj następujące czynności. 1. Otwórz plik Plastic bottle.max. Znajdziesz go w folderze Chap 11 na płycie dołączonej do książki. Plik zawiera model plastikowej butelki z atomizerem, wszystkie jej części zostały połączone w pojedynczy obiekt siatkowy. 2. Po zaznaczeniu obiektu butelki wybierz polecenie Modifiers/Parametric Deformers/Squeeze, by zastosować modyfikator Squeeze. Ustaw wartość ściśnięcia promieniowego (Radial Squeeze Amount) na 1. 3. Kliknij symbol plus widniejący po lewej stronie nazwy modyfikatora Squeeze na stosie, a wyświetli się lista podobiektów. Zaznacz podobiekt Center. Wyselekcjonowany podobiekt zostanie wyróżniony żółtym kolorem. 4. Kliknij przycisk Select and Move (W) na głównym pasku narzędziowym i oknie widokowym Perspective przeciągnij punkt środkowy ku górze. Zwróć uwagę na zmiany kształtu butelki. Na rysunku 11.6 zaprezentowano różne kształty butelki, uzyskane przez przemieszczanie punktu środkowego modyfikatora. Rysunek 11.6. Kształt butelki zmienił się w wyniku przesunięcia punktu środkowego modyfikatora

Modyfikowanie podobiektów Modyfikatory można nakładać nie tylko na całe obiekty, ale też na podobiekty. Podobiekt jest to pewien element struktury obiektu, np. wierzchołek, krawędź czy ścianka.

Rozdział 11.  Korzystanie ze stosu modyfikacji

351

Aby dowiedzieć się więcej na temat nakładania modyfikatorów na zaznaczone podobiekty, zajrzyj do rozdziału 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

Żeby wybrać podobiekt, kliknij symbol plus znajdujący się z lewej strony nazwy obiektu. W ten sposób wyświetlisz listę podobiektów. Również niektóre modyfikatory, takie jak Mesh Select, Spline Select i Volume Select, pozwalają zaznaczać zbiory podobiektów i przekazywać owe zaznaczenia kolejnemu modyfikatorowi w górze stosu. Możesz np. zaznaczyć kilka ścianek z przodu kuli za pomocą modyfikatora Mesh Select, a następnie wytłoczyć je, wykorzystując w tym celu modyfikator Face Extrude.

Zależności topologiczne Gdy próbujesz zmodyfikować parametry obiektu podstawowego, na który nałożony został modyfikator, czasami pojawia się ostrzegawcze okno dialogowe, informujące o tym, że dany modyfikator zależny jest od topologii siatki, a ta może ulec zmianie. Max ostrzega w ten sposób, że powierzchnia obiektu, do którego został przypisany ten modyfikator, jest zależna od zaznaczonych aktualnie podobiektów i jakakolwiek modyfikacja tych ostatnich może zmienić topologię obiektu. Przykładowo modyfikatory CrossSection i Surface konstruują powierzchnie, wykorzystując zestawy splajnów. Jeśli zmodyfikujesz oryginalny splajn, powierzchnia, do której utworzenia został użyty, może ulec zniszczeniu. Aby uniknąć takiego niebezpieczeństwa, możesz scalić stos modyfikatorów. Wyświetlanie takich ostrzeżeń możesz wyłączyć, wybierając opcję Do not show this message again w oknie dialogowym lub też otwierając okno dialogowe ustawień preferencyjnych (Preference Settings) i wyłączając opcję Display Topology-Dependence Warning. Znajdziesz ją na karcie General. Jednakże wyłączenie wyświetlania ostrzeżeń nie oznacza uniknięcia potencjalnych problemów; zapobiega jedynie pojawianiu się ostrzegawczego okna dialogowego.

Typy modyfikatorów Aby zachować porządek wśród modyfikatorów, Max dzieli je na kilka odrębnych zestawów. Zestawy te, dostępne z poziomu menu Modifiers, wymienione są w tabeli 11.2. Podobną listę zestawów ujrzysz wówczas, kiedy klikniesz przycisk Configure Modifier Sets pod stosem modyfikatorów. Wybrany zestaw oznaczony jest strzałką z lewej strony jego nazwy. Modyfikatory zawarte w wybranym zestawie wyświetlane są na samej górze listy Modifier List. Omówienie wszystkich modyfikatorów w jednym rozdziale sprawiłoby, że stałby się bardzo długi. Dlatego też większość z nich opisana zostanie w osobnych rozdziałach. Przykładowo modyfikatory Mesh Editing poznasz w rozdziale 26., „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni”; modyfikatory animacyjne będą jednym z tematów rozdziału 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”; o modyfikatorach UV Coordinates mowa będzie w rozdziale 33., „Rozwijanie współrzędnych UV i mapowanie tekstur” itd. W bieżącym rozdziale poznasz modyfikatory z grup Selection, Parametric Deformers oraz FFD.

352

Część III  Podstawy modelowania

Tabela 11.2. Zawartość menu Modifiers Menu

Elementy podmenu

Selection

FFD Select, Mesh Select, Patch Select, Poly Select, Select By Channel, Spline Select, Volume Select

Patch/Spline Editing

Cross Section, Delete Patch, Delete Spline, Edit Patch, Edit Spline, Fillet/Chamfer, Lathe, Normalize Spline, Renderable Spline Modifier, Surface, Sweep, Trim/Extend

Mesh Editing

Cap Holes, Delete Mesh, Edit Mesh, Edit Normals, Edit Poly, Extrude, Face Extrude, MultiRes, Normal Modifier, Optimize, ProOptimizer, Quadify Mesh, Smooth, STL Check, Symmetry, Tessellate, Vertex Paint, Vertex Weld

Conversion

Turn To Mesh, Turn To Patch, Turn To Poly

Animation

Attribute Holder, Flex, Linked XForm, Melt, Morpher, PatchDeform, PatchDeform (WSM), PathDeform, PathDeform (WSM), Skin, Skin Morph, Skin Wrap, Skin Wrap Patch, SplineIk Control, SurfDeform, SurfDeform (WSM)

Cloth

Cloth, Garment Maker, Welder

Hair and Fur

Hair and Fur (WSM)

UV Coordinates

Camera Map, Camera Map (WSM), MapScaler (WSM), Projection, Unwrap UVW, UVW Map, UVW Mapping Add, UVW Mapping Clear, UVW XForm

Cache Tools

Point Cache, Point Cache (WSM)

Subdivision Surfaces

HSDS Modifier, MeshSmooth, TurboSmooth

Free Form Deformers

FFD 2x2x2, FFD 3x3x3, FFD 4x4x4, FFD Box, FFD Cylinder

Parametric Deformers

Affect Region, Bend, Displace, Lattice, Mirror, Noise, Physique, Push, Preserve, Relax, Ripple, Shell, Slice, Skew, Stretch, Spherify, Squeeze, Twist, Taper, Substitute, XForm, Wave

Surface

Disp Approx, Displace Mesh (WSM), Material, Material By Element

NURBS Editing

Disp Approx, Surf Deform, Surface Select

Radiosity

Subdivide, Subdivide (WSM)

Cameras

Camera Correction

Porównanie modyfikatorów Object-Space i World-Space Gdy wyświetlisz listę modyfikatorów (Modifier List), zobaczysz, że są one podzielone na dwie kategorie — Object-Space Modifiers (modyfikatory przestrzeni obiektu) oraz WorldSpace Modifiers (modyfikatory przestrzeni globalnej). Na liście znajduje się również wybrany zestaw modyfikatorów, dla wygody wyświetlany na samym początku. Modyfikatory Object-Space tworzą liczniejszą grupę niż te z kategorii World-Space. W większości przypadków modyfikatory World-Space mają swoje odpowiedniki w kategorii Object-Space. Modyfikatory World-Space oznaczone są akronimem WSM, doklejonym do nazwy. Modyfikatory Object-Space są nakładane na poszczególne obiekty i korzystają z lokalnego układu współrzędnych danego obiektu. Modyfikator jest więc przemieszczany wraz z obiektem, na który został nałożony.

Rozdział 11.  Korzystanie ze stosu modyfikacji

353

Z kolei modyfikatory World-Space opierają się na współrzędnych globalnych sceny (World), a nie na lokalnym systemie współrzędnych obiektu. Dlatego też nałożony modyfikator World-Space pozostaje nieruchomy względem sceny, bez względu na ruchy obiektu, z którym jest powiązany. Kolejna, kluczowa różnica pomiędzy obiema kategoriami modyfikatorów polega na tym, że modyfikatory World-Space wyświetlane są na stosie nad modyfikatorami Object-Space, co oznacza, że nakładane są dopiero wówczas, gdy program uwzględni efekty działania modyfikatorów działających na obiekt lokalnie. Pola sił są nakładane przy użyciu współrzędnych World-Space i dlatego obok ich nazw również widnieje akronim WSM. Więcej informacji na temat pól sił znajdziesz w rozdziale 42., „Stosowanie pól sił”.

Modyfikatory z grupy Selection Pierwszą grupę w menu Modifiers stanowią modyfikatory selekcji, zawarte w podmenu Selection. Za pomocą tychże modyfikatorów możesz zaznaczać podobiekty różnego typu obiektów. Na tak zaznaczone podobiekty można następnie nakładać kolejne modyfikatory. Każdy modyfikator umieszczony na stosie powyżej modyfikatora z grupy Selection oddziałuje na zaznaczone podobiekty. Modyfikatory Selection, w tym Mesh Select, Poly Select, Patch Select, Spline Select, Volume Select, FFD Select i Select By Channel, możesz stosować do modeli każdego rodzaju. W grupie NURBS Editing jest jeszcze modyfikator Surface Select. Modyfikatory Mesh Select, Poly Select, Patch Select oraz Volume Select można nakładać na dowolne obiekty 3D, ale modyfikator Spline Select stosuje się wyłącznie do splajnów oraz kształtów, FFD Select — do obiektów FFD Space Warp, a NURBS Surface Select (znajdziesz go w podmenu NURBS Editing) — tylko do obiektów NURBS. Modyfikator znajdujący się na stosie wyżej niż modyfikator zaznaczania oddziałuje wyłącznie na zaznaczone podobiekty. Poszczególne modyfikatory zaznaczania są omówione w kontekście typów modelowania, w odrębnych rozdziałach. Aby np. dowiedzieć się więcej na temat modyfikatora Patch Select, zajrzyj do dodatku F, „Modelowanie przy użyciu łat”.

Po zastosowaniu modyfikatora Selection przyciski przekształceń na głównym pasku narzędziowym stają się nieaktywne. Gdy chcesz dokonać przekształcenia zaznaczonego podobiektu, powinieneś skorzystać z modyfikatora XForm.

Modyfikator Volume Select Volume Select (oznaczany też w niektórych miejscach programu jako Vol. Select) jest dość nietypowym modyfikatorem w grupie Selection. Zaznacza wszystkie podobiekty zawarte w obrębie bryły definiowanej przez jego gizmo, przy czym podobiekty te mogą należeć do jednego bądź kilku obiektów. Jedną z zalet tego modyfikatora jest to, że obejmowane przez niego podobiekty mogą się zmieniać w wyniku przesuwania obiektów w trakcie animacji. Można go przypisać kilku obiektom jednocześnie. Korzystając z rolety parametrów modyfikatora Volume Select, możesz zdecydować, czy zaznaczane mają być obiekty (Object), wierzchołki (Vertex) bądź ścianki (Face). Każde

354

Część III  Podstawy modelowania

kolejne zaznaczenie może zastąpić bieżące zaznaczenie (Replace), może zostać dołączone do niego (Add) lub odjęte (Subtract). Opcja Invert (odwróć) pozwala zaznaczać podobiekty znajdujące się na zewnątrz bryły zaznaczania. Możliwy jest także wybór metody zaznaczania, Window lub Crossing. Gizmo może mieć formę sześcianu (Box), kuli (Sphere), walca (Cylinder) bądź obiektu siatkowego (Mesh Object). Jeśli zechcesz użyć opcji Mesh Object, kliknij przycisk widoczny poniżej niej, a następnie w oknie widokowym wybierz odpowiedni obiekt, który ma stać się gizmem modyfikatora. Oprócz zaznaczenia przy użyciu bryły gizma, podobiekty można selekcjonować także w oparciu o określone charakterystyki ich powierzchni, np. numery ID materiału, grupę wygładzania lub mapy tekstur, a także kanały mapowania czy kolory wierzchołków. Pozwala to np. na szybkie wyselekcjonowanie wszystkich wierzchołków, którym za pomocą narzędzia Vertex Color przypisany został określony kolor. Opcje Alignment umożliwiają dopasowanie (Fit) lub wypośrodkowanie (Center) gizma względem aktualnie wyselekcjonowanych obiektów. Kliknięcie przycisku Reset powoduje przywrócenie pierwotnej pozycji i orientacji gizma, czyli nadanie mu zazwyczaj postaci prostopadłościanu otaczającego obiekt. Opcja Auto Fit automatycznie zmienia wymiary i orientację gizma, zgodnie z modyfikacjami obiektu. Modyfikator Volume Select wyposażony jest także w roletę miękkiej selekcji (Soft Selection). Pozwala ona zaznaczać podobiekty w pewnych granicach sąsiadujące z zaznaczonymi. Skutkuje to zwiększeniem gładkości zaznaczenia. Działanie opcji miękkiej selekcji zostało objaśnione w rozdziale 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

Ćwiczenie: Modelowanie uszkodzenia samochodu W ćwiczeniu tym zastosujesz modyfikator Volume Select, za jego pomocą zaznaczysz przedni narożnik auta. Następnie wymodelujesz uszkodzenie karoserii, stosując modyfikatory Noise oraz XForm. Aby wykorzystać modyfikatory do wymodelowania uszkodzenia samochodu, wykonaj co następuje. 1. Otwórz plik Damaged car.max, zawarty w folderze Chap 11 na płycie dołączonej do książki. W pliku znajduje się model samochodu opracowany przez Viewpoint Datalabs. 2. Po zaznaczeniu przedniej części modelu wybierz polecenie Modifiers/Selection Modifiers/Volume Select. Tym sposobem nałożysz modyfikator Volume Select na grupę. 3. Kliknij symbol plus widoczny po lewej stronie nazwy modyfikatora w stosie i zaznacz podobiekt gizmo. Przesuń gizmo w oknie widokowym Top w taki sposób, by zaznaczony był tylko jeden z przednich narożników karoserii samochodu. Włącz opcję Vertex w rolecie Parameters. 4. Wybierz polecenie Modifiers/Parametric Deformers/Noise, aby nałożyć modyfikator Noise na zaznaczony fragment. Włącz opcję Fractal w rolecie Parameters, a wartości w polach X, Y i Z Strength ustaw na 30.

Rozdział 11.  Korzystanie ze stosu modyfikacji

355

5. Zastosuj modyfikator XForm, wybierając polecenie Modifiers/Parametric Deformers/XForm. Użyj gizma w oknie widokowym Top i za jego pomocą przesuń zaznaczony fragment nieco w górę i w lewo. Spowoduje to, że fragment ten zostanie wgnieciony. Na rysunku 11.7 przedstawiono model uszkodzonego samochodu. Zwróć uwagę, że pozostałe części modelu, poza zaznaczonym fragmentem, pozostały w stanie nienaruszonym.

Rysunek 11.7. Modyfikatory Noise i XForm zostały nałożone tylko na wyselekcjonowany podobiekt Inny przykład zastosowania modyfikatorów z grupy Selection do zaznaczania podobiektów i nakładania na nie innych modyfikatorów znajdziesz w rozdziale 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

Modyfikatory z grupy Parametric Deformers Prawdopodobnie najbardziej reprezentatywną grupę modyfikatorów tworzą deformatory parametryczne (Parametric Deformers). Wpływają one na geometrię obiektów przez ich wypychanie, wgniatanie i rozciąganie. Można je nakładać na modele wszelkiego typu, w tym także na obiekty podstawowe. Wielokrotne wykorzystanie modelu młotka w kolejnych przykładach może zniecierpliwić, ale dzięki temu łatwiej Ci będzie zrozumieć różnice w działaniu poszczególnych modyfikatorów. Ponadto jest to model znacznie ciekawszy niż zwykły sześcian.

356

Część III  Podstawy modelowania

Modyfikator Affect Region Korzystając z modyfikatora Affect Region, możesz sprawić, że lokalny obszar powierzchni obiektu stanie się wypukły bądź wklęsły. Parametry tego modyfikatora to Falloff, Pinch i Bubble. Pierwszy ustala rozmiar obszaru poddawanego działaniu modyfikatora. Drugi zwiększa lub zmniejsza wypukłość bądź wklęsłość, zaś trzeci zaokrągla deformowany obszar. W rolecie parametrów dostępna jest też opcja ignorowania powierzchni tylnych (Ignore Back Facing). Na rysunku 11.8 przedstawiony jest obiekt typu Quad Patch (łata złożona z czworokątów) po nałożeniu nań modyfikatora Affect Region. Przykład po lewej powstał po ustawieniu wartości Falloff na 80, a w przykładzie po prawej wartość Bubble została zmieniona na 1.0. Wysokość i kierunek deformacji determinowany jest pozycją gizma modyfikatora, które ma postać linii łączącej dwa punkty. Rysunek 11.8. Za pomocą modyfikatora Affect Region można wznosić lub obniżać fragmenty powierzchni obiektów

Modyfikator Affect Region daje te same efekty, co funkcja Soft Selection, ale ponieważ nakładany jest właśnie jako modyfikator, znacznie łatwiej można się go pozbyć.

Modyfikator Bend Modyfikator Bend pozwala wyginać obiekt względem dowolnej osi. Parametrami wygięcia są kąt (Angle), kierunek (Direction), osie wygięcia (Axis) oraz ograniczenia (Limits). Parametr Angle definiuje wygięcie w kierunku pionowym, zaś Direction — w poziomym. Parametr Limits określa granice, poza którymi modyfikator przestaje oddziaływać. Możesz ustalić granicę górną (Upper Limit) oraz dolną (Lower Limit). Ustawienie granic jest przydatne wówczas, kiedy modyfikator ma być nałożony tylko na jedną połowę obiektu. Upper Limit i Lower Limit wyświetlane są jako zwykłe płaszczyzny gizma modyfikatora. Gdybyś np. chciał wygiąć dolną połowę długiego cylindra, wówczas wystarczyłoby ustawić Upper Limit na odpowiedniej wysokości, powyżej której cylinder miałby pozostać prosty. Niektóre modyfikatory wyposażone są w opcję nakładania ograniczeń na ich działanie w postaci np. granicy górnej i dolnej.

Młotek przedstawiony na rysunku 11.9 wygięty został na kilka różnych sposobów. Ten z lewej wygięto pod kątem 75 stopni względem osi Z. Środkowy z kolei poddano wygięciu przy ustawieniu parametru Direction na 60, a model z prawej wygięty jest z ustawieniem Upper Limit na 8.

Rozdział 11.  Korzystanie ze stosu modyfikacji

357

Rysunek 11.9. Modyfikator Bend umożliwia wyginanie obiektów wzdłuż dowolnej osi

Ćwiczenie: Wyginanie drzewa Jeśli posiadasz model drzewa, który chciałbyś wygiąć, symulując skutki silnego podmuchu wiatru, mógłbyś do tego celu użyć modyfikatora Bend. Drzewo zostałoby wygięte względem jego środka transformacji (Pivot Point). Na szczęście, wszystkie modele drzew i roślin zgromadzone w kategorii AEC Objects mają ustawiony ów środek w pobliżu podstawy, więc ich wyginanie jest bardzo proste. Aby wygiąć model drzewa przy użyciu modyfikatora Bend, wykonaj następujące czynności. 1. Użyj polecenia Create/AEC Objects/Foliage, by uzyskać dostęp do modeli drzew. Wybierz model wysokiego drzewa, np. Yucca i kliknij w oknie widokowym Top, by umieścić drzewo w scenie. 2. Po zaznaczeniu drzewa wybierz polecenie Modifiers/Parametric Deformers/Bend, by nałożyć modyfikator Bend na model. 3. W rolecie Parameters na panelu Modify ustaw oś wygięcia na Z, a kąt — na 60. Drzewo zostanie wygięte. Na rysunku 11.10 przedstawiono wygięty model drzewa Yucca. Jeśli chciałbyś animować wyginanie się drzewa w tył i w przód, ustaw klucze animacji dla zmian kąta wygięcia.

Modyfikator Displace Modyfikator Displace oferuje dwa unikalne zestawy funkcji. Może on zmieniać geometrię obiektów przez przemieszczenie elementów przy użyciu gizma albo odkształcać powierzchnię, wykorzystując bitmapę w skali szarości. Gizmo modyfikatora Displace może przyjąć jedną z czterech form: płaską (Planar), cylindryczną (Cylindrical), sferyczną (Spherical) bądź owinięcia jednobiegunowego (Shrink Wrap). Gizmo może być umieszczone na zewnątrz obiektu lub w jego wnętrzu, wypychając go od środka. Aby tworzyć właściwe efekty, modyfikator Displace wymaga gęstej siatki, a to może oznaczać znaczny wzrost liczby ścianek obiektu.

Działaniem modyfikatora Displace sterują parametry intensywności odkształcenia (Strength) oraz tłumienia (Decay). Możliwe jest także określenie wymiarów gizma. Gizmo

358

Część III  Podstawy modelowania

Rysunek 11.10. Za pomocą modyfikatora Bend można wyginać drzewa

o kształcie cylindrycznym może być zamknięte lub otwarte na końcach (opcja Cap). Parametry wyrównania (Alignment) pozwalają wyrównywać gizmo do osi X, Y lub Z. Możliwe jest także wyrównanie go do bieżącego widoku (View Align). Pozostałe parametry odnoszą się do przekształceń powierzchni przy użyciu mapy bitowej. W lewej części rysunku 11.11 przedstawiono obiekt typu Quad Patch po nałożeniu nań modyfikatora Displace, z płaskim gizmem i wartością Strength ustawioną na 25. Obiekt widoczny po prawej zmodyfikowano, wykorzystując gizmo sferyczne. Rysunek 11.11. Do zmiany wyglądu powierzchni obiektu można użyć gizma modyfikatora Displace jako narzędzia modelującego

Modyfikator Displace może zmieniać także geometrię obiektów na podstawie map bitowych w skali szarości. Ten aspekt pracy modyfikatora omówiony zostanie w rozdziale 17., „Określanie właściwości materiałów przy użyciu map”. Pod wieloma względami Displace działa jak obiekt złożony Conform. O obiekcie tym będzie mowa w rozdziale 27., „Obiekty złożone”.

Rozdział 11.  Korzystanie ze stosu modyfikacji

359

Modyfikator Lattice Modyfikator Lattice zamienia obiekt w klatkę, przekształcając wszystkie krawędzie w pręty, a wierzchołki w łączące je węzły. Parametry tego modyfikatora obejmują kilka opcji definiujących sposób tworzenia klatki. Są to opcje nakładania efektu na cały obiekt (Apply to Entire Object), tylko na węzły (Joints Only), tylko na pręty (Struts Only) lub na węzły i na pręty (Both). Gdy opcja Apply to Entire Object jest nieaktywna, wówczas efekt nakładany jest wyłącznie na zaznaczony podobiekt. W przypadku prętów możesz określić promień (Radius), liczbę segmentów (Segments) i boków (Sides) oraz identyfikator materiału (Material ID). Możliwe jest też użycie opcji ignorowania niewidocznych krawędzi (Ignore Hidden Edges), tworzenia zakończeń (End Caps) oraz wygładzania prętów (Smooth). Geometryczny kształt dla węzłów wybierać możesz spośród trzech opcji: czworościan (Tetra), ośmiościan (Octa) i dwudziestościan (Icosa). Tutaj także określisz wartości Radius, Segments oraz Material ID. Oprócz tego, znajdziesz tu również kontrolki współrzędnych mapowania (Mapping Coordinates). Choć ustawienia węzłów pozwalają na wybranie tylko jednego z trzech typów, to — używając obiektu złożonego Scatter — możesz w węzłach umieścić obiekty o dowolnym kształcie zamiast jednego z trzech domyślnych. W tym celu nałóż modyfikator Lattice, po czym włącz opcję rozproszenia przy wykorzystaniu wszystkich wierzchołków 1 (Distribute using All Vertices) w rolecie Scatter Objects .

Na rysunku 11.12 zaprezentowano efekt zastosowania modyfikatora Lattice. Młotek po lewej składa się z samych węzłów, młotek w środku tylko z prętów, natomiast ten z prawej zarówno z węzłów, jak i prętów. Rysunek 11.12. Modyfikator Lattice przekształca obiekt w zbiór węzłów, prętów lub jednych i drugich

1

W takim przypadku modyfikator Lattice powinien tworzyć tylko pręty (włączamy opcję Struts Only), bo węzłami będą obiekty rozproszone (Scatter) — przyp. tłum.

360

Część III  Podstawy modelowania

Modyfikator Mirror Za pomocą modyfikatora Mirror można utworzyć lustrzaną kopię obiektu lub podobiektu. Roleta parametrów pozwala określić oś lub płaszczyznę odbicia oraz wartość przesunięcia (Offset). Opcja Copy tworzy kopię, zachowując oryginalny obiekt bądź podobiekt. Modyfikator Mirror ma działanie niemal identyczne z poleceniem Mirror, które znajdziesz w menu Tools, ale użycie modyfikatora jest wygodniejsze, albowiem skutki zmian można cofnąć o wiele szybciej.

Modyfikator Noise Działanie modyfikatora Noise polega na losowym przesuwaniu wierzchołków obiektu w kierunku równoległym do wybranej osi (czyli na wprowadzeniu szumu bądź zaburzeń w strukturze obiektu). Parametry modyfikatora to liczba inicjująca generator liczb pseudolosowych (Seed) i skala (Scale) oraz opcja zaburzeń fraktalnych (Fractal) z ustawieniami szorstkości (Roughness) i iteracji (Iterations). Ponadto w rolecie parametrów znajdziesz też kontrolki siły działania efektu (Strength) w poszczególnych osiach X, Y i Z, a także ustawienia animacyjne (Animation). Wartość Seed decyduje o losowości zniekształceń. Jeśli porównasz dwa identyczne obiekty o tych samych ustawieniach i takiej samej wartości Seed, przekonasz się, że wyglądają one dokładnie tak samo, mimo że nałożono na nie szum losowy. Gdy zmienisz ustawienie Seed dla jednego z nich, jego wygląd zmieni się w wyraźny sposób. Wartość Scale steruje wielkością obszaru, na którym następuje przesunięcie wierzchołków, i im jest większa, tym powierzchnia obiektu staje się gładsza i mniej szorstka. Opcja Fractal wprowadza zaburzenia fraktalne, w wyniku czego powierzchnie obiektu ulegają silniejszemu poszarpaniu. Po włączeniu tej opcji uaktywniają się ustawienia Roughness i Iterations. Pierwsze determinuje wielkość odkształceń fraktalnych, a drugie — liczbę cykli obliczeniowych. Im liczba ta jest większa, tym zniekształcenia stają się silniejsze i bardziej chaotyczne. Jednak wiąże się to z wydłużeniem czasu obliczeń. Jeśli włączysz opcję Animate Noise, wówczas położenie wierzchołków będzie modulowane w wyznaczonym zakresie klatek. Parametr częstotliwości (Frequency) decyduje o szybkości zmian zachodzących na powierzchni obiektu, a ustawienie fazy (Phasing) wyznacza początek i koniec fali szumu. Na rysunku 11.13 przedstawione są trzy kule, na które nałożony został modyfikator Noise. Działanie modyfikatora jest łatwiejsze do zaobserwowania na przykładzie takich właśnie obiektów, a nie młotka. Na kulę z lewej nałożono modyfikator z wartościami Seed i Scale równymi 1.0. Taką samą wartość nadano ustawieniom Strength we wszystkich trzech osiach. Model środkowy przedstawia wygląd kuli po zwiększeniu wartości Strength na 2.0. Natomiast kula z prawej została zniekształcona na skutek włączenia opcji Fractal i ustawienia wartości Roughness na 1.0, a Iterations na 6.0. Modyfikator Physique jest jednym z oryginalnych narzędzi Character Studio. Innym takim narzędziem jest modyfikator Skin. Oba nadal istnieją, ale częściej stosowany jest drugi. Więcej informacji o nim znajdziesz w rozdziale 40., „Nakładanie skóry”.

Rozdział 11.  Korzystanie ze stosu modyfikacji

361

Rysunek 11.13. Za pomocą modyfikatora Noise można powierzchnię obiektu pofałdować łagodnie lub mocno

Modyfikator Push Modyfikator Push przesuwa wierzchołki do wewnątrz lub na zewnątrz obiektu, który wygląda, jakby wypełniony był powietrzem. Pracą tego modyfikatora steruje tylko jeden parametr — współczynnik wypchnięcia (Push Value). Definiuje on przesunięcie wierzchołków względem środka obiektu. Dodatnie wartości tego parametru powodują przesunięcie wierzchołków od środka obiektu, a ujemne w kierunku jego wnętrza. Za pomocą modyfikatora Push można powiększać obiekty lub je zmniejszać, wpychając wierzchołki do wewnątrz. Na rysunku 11.14 przedstawiono wygląd młotka przy ustawieniach parametru Push na 0.05, 0.1 oraz 0.15. Rysunek 11.14. Za pomocą modyfikatora Push można powiększyć objętość obiektu

Modyfikator Preserve Zadaniem modyfikatora Preserve jest zachowanie długości krawędzi (Edge Length), kątów nachylenia ścianek (Face Angles) czy objętości (Volume) deformowanego i edytowanego obiektu. Zanim zmodyfikujesz obiekt, utwórz jego kopię. Następnie dokonaj edycji jednej z kopii. Aby zastosować modyfikator Preserve, kliknij przycisk Pick Original, następnie obiekt niezmodyfikowany i wreszcie ten, który zamierzasz poddać modyfikacjom. Obiekt zostanie zmodyfikowany z zachowaniem długości krawędzi, kąta nachylenia ścianek i objętości, zgodnie z ustawieniami. Tym sposobem modyfikator zapobiega zbyt intensywnemu zdeformowaniu topologii modyfikowanego obiektu.

362

Część III  Podstawy modelowania Aby modyfikator Preserve mógł kontrolować obiekty i modyfikatory, musi być umieszczony nad nimi w stosie modyfikatorów.

Opcja Iterations określa liczbę cykli procesu. Możesz także wybrać opcję zastosowania modyfikatora do całej siatki (Apply to Whole Mesh), wyselekcjonowanych wierzchołków (Selected Vertices Only) lub selekcji odwróconej (Invert Selection).

Modyfikator Relax Działanie tego modyfikatora polega na wygładzaniu całości geometrii obiektów przez rozsuwanie wierzchołków, pomiędzy którymi odległości są mniejsze niż średnia odległość wierzchołków w siatce. Modyfikator udostępnia parametr Relax Value, wyznaczający procentowy współczynnik rozsunięcia wierzchołków. Wartości parametru zawierają się w zakresie od 0.0 do 1.0. Przy ustawieniu 0 modyfikator nie wprowadza żadnych odkształceń obiektu. Podczas modelowania siatek często się zdarza, że niektóre ich sekcje są zbyt ściśnięte i wykazują duże zagęszczenie wierzchołków. Za pomocą modyfikatora Relax możesz sprawić, że obszary te zostaną „rozluźnione”.

Parametr Iterations determinuje liczbę cykli obliczeniowych. Opcja Keep Boundary Points Fixed powoduje wyłączenie spod działania modyfikatora wszystkich punktów leżących w bezpośrednim sąsiedztwie otworów. Z kolei opcja Save Outer Corners pozwala zachować położenie narożnych wierzchołków obiektu.

Modyfikator Ripple Zadaniem modyfikatora Ripple jest fałdowanie powierzchni obiektu. Najlepsze rezultaty daje na pojedynczych obiektach; jeśli efekt pofałdowania trzeba nałożyć na kilka obiektów, wówczas lepiej użyć pola sił o nazwie Ripple. Pofałdowanie nakładane jest za pomocą gizma kontrolowanego przez użytkownika. Parametrami tego modyfikatora są dwie wartości amplitudy (Amplitude) oraz ustawienia długości fałd (Wave Length), przesunięcia fazowego (Phase) i tłumienia (Decay). Wartości amplitudy pozwalają regulować wysokość fałd we wzajemnie prostopadłych kierunkach. Na rysunku 11.15 przedstawiono obiekt typu Quad Patch, na który nałożono modyfikator Ripple z ustawieniami 10 dla Amplitude 1 i 50 dla Wave Legth. W przypadku obiektu z prawej dodatkowo ustawiono parametr Anplitude 2 na 20.

Modyfikator Shell Usunięty podobiekt siatkowy pozostawia po sobie otwór, przez który widoczne jest wnętrze obiektu. Ponieważ część wewnętrzna nie ma wektorów normalnych, które skierowane byłyby we właściwą stronę, to jeśli nie włączy się opcji wymuszania wyświetlania dwustronnego (Force 2-Sided) w oknie dialogowym konfiguracji okna widokowego (Viewport Configuration), obiekt wydaje się pusty. Modyfikator Shell tworzy z takiego obiektu skorupę, mającą powierzchnię zewnętrzną i wewnętrzną.

Rozdział 11.  Korzystanie ze stosu modyfikacji

363

Rysunek 11.15. Modyfikator Ripple tworzy małe fale na powierzchni obiektu

Sterując działaniem modyfikatora Shell, możesz określić wartości Inner Amount oraz Outer Amount. Wyznaczają one dystans przesunięcia powierzchni wewnętrznej i zewnętrznej względem oryginalnej powierzchni obiektu. Obie wartości łącznie determinują grubość tworzonej skorupy. Opcja Bevel Edges pozwala fazować krawędzie skorupy. Klikając przycisk Bevel Spline, można wybrać splajn definiujący kształt tego fazowania. Zarówno wewnętrznej, jak i zewnętrznej części można przypisać identyfikator materiału (Material ID). Opcja Auto Smooth Edge wygładza wszystkie krawędzie mieszczące się w progu określonym wartością Angle. Krawędzie mogą też być mapowane przy użyciu opcji zawartych w sekcji Edge Mapping. Obejmuje ona cztery opcje: Copy, None, Strip oraz Interpolate. Opcja Copy włącza takie samo mapowanie, jakie nadane zostało oryginalnej powierzchni, a opcja None przypisuje nowe współrzędne mapowania. Wybór opcji Strip sprawia, że krawędzie mapowane są jako jeden wspólny pas, a opcja Interpolate interpoluje mapowanie wewnętrzne i zewnętrzne. Ostatnia sekcja parametrów znacznie ułatwia zaznaczanie krawędzi oraz wewnętrznych i zewnętrznych ścianek. Opcja Straighten Corners przesuwa wierzchołki, dbając o to, by krawędzie pozostały proste.

Ćwiczenie: Tworzenie stworka z modelu kuli Utworzenie prostej postaci z gry, na bazie modelu kuli, będzie dobrym przykładem zastosowania modyfikatora Shell. Aby utworzyć stworka za pomocą modyfikatora Shell, wykonaj kolejno następujące czynności. 1. Otwórz plik Gobbleman shell.max, który znajdziesz w folderze Chap 11 na płycie dołączonej do książki. Plik ów zawiera obiekt kuli, z którego usunięto część ścianek. 2. Po zaznaczeniu obiektu kuli wybierz polecenie Modifiers/Parametric Deformers/Shell. Ustaw parametr Outer Amount na 5.0. W ten sposób przekształcisz wydrążoną kulę w cienką skorupę. Zauważ, że oświetlenie wnętrza kuli jest obecnie prawidłowe. Wynikową skorupę przedstawia rysunek 11.16.

364

Część III  Podstawy modelowania

Rysunek 11.16. Modyfikator Shell tworzy wnętrze wydrążonego obiektu

Modyfikator Slice Modyfikator Slice pozwala podzielić obiekt na dwie części, które stają się osobnymi obiektami. Modyfikator tworzy gizmo, które wygląda jak zwykła płaszczyzna, ale można je przekształcać i ustawiać, precyzyjnie ustalając miejsce podziału. Aby dokonać transformacji gizma, należy je zaznaczyć w hierarchii stosu. Za pomocą modyfikatora Slice można uzyskać efekt stopniowego zanikania obiektów, warstwa po warstwie.

Wśród parametrów modyfikatora Slice znaleźć można cztery typy dzielenia. Refine Mesh dodaje nowe wierzchołki i krawędzie w miejscu, w którym gizmo przecina obiekt. Opcja Split Mesh tworzy dwa osobne obiekty. Natomiast opcje Remove Top i Remove Bottom usuwają wszystkie ścianki i wierzchołki odpowiednio znad płaszczyzny przecięcia lub spod niej. Wybierając opcję Faces lub Polygons, możesz też zdecydować o tym, czy ścianki mają być traktowane jak trójkąty, czy jak wielokąty. Na rysunku 11.17 zaprezentowano górną i dolną połowę obiektu młotka. Model trzeci został przecięty pod kątem. Dla obiektów typu Editable Mesh dostępne jest narzędzie Slice, które daje podobne rezultaty. Różnica polega na tym, że modyfikator Slice można nakładać na obiekty każdego typu, nie tylko siatkowe.

Rozdział 11.  Korzystanie ze stosu modyfikacji

365

Rysunek 11.17. Modyfikator Slice pozwala przeciąć obiekt na dwie oddzielne części

Modyfikator Skew Modyfikator Skew przekrzywia obiekt, przesuwając jego górną część, przy zachowaniu położenia podstawy. Parametrami tego modyfikatora są: współczynnik (Amount), kierunek (Direction), oś przekrzywienia (Skew Axis) oraz zasięg oddziaływania (Limits). Młotek po lewej stronie rysunku 11.18 przekrzywiony został przez ustawienie wartości Skew na 2.0, dla środkowego zmieniono tę wartość na 5, natomiast dla modelu z prawej ustawiono parametr Upper Limit na 8. Rysunek 11.18. Modyfikatora Skew można użyć do przekrzywienia obiektu

Modyfikator Stretch Zadaniem modyfikatora Stretch jest rozciąganie bądź ściskanie obiektu w jednej osi, z jednoczesnym zwężaniem bądź poszerzaniem w pozostałych, na podobieństwo ściskanego z dwóch przeciwległych stron balonu. Parametry modyfikatora decydują o rozciągnięciu (Stretch) oraz zwężeniu lub poszerzeniu (Amplify) obiektu. Możesz także określić osie działania (Stretch Axis) i granice zasięgu modyfikatora (Limits). Parametr Stretch odpowiada za stopień rozciągnięcia bądź ściśnięcia obiektu, natomiast Amplify stanowi jego wielokrotność2. Wartości dodatnie wzmacniają efekt, a ujemne go osłabiają. 2

Należy dodać, że parametr Amplify odnosi się do osi pobocznych, czyli prostopadłych względem osi głównej wyznaczającej kierunek działania modyfikatora — przyp. tłum.

366

Część III  Podstawy modelowania

Na rysunku 11.19 przedstawiono efekt nałożenia modyfikatora w osi Z, z ustawieniem parametru Stretch na 0,2. Model pośrodku zdeformowano poprzez ustalenie parametru Amplify na 2.0, a w przypadku modelu z prawej wartość Upper Limit określona została na 8. Rysunek 11.19. Modyfikator Stretch rozciąga obiekt w jednej osi, a ściska w dwóch pozostałych

Modyfikator Spherify Modyfikator Spherify deformuje obiekt, zbliżając jego kształt do kształtu kuli. Jedynym parametrem tego modyfikatora jest Spherify, decydujący o intensywności efektu. Trzy modele młotka na rysunku 11.20 zostały zdeformowane poprzez ustawienie tego parametru na 10%, 20% i 30%. Rysunek 11.20. Modyfikator Spherify wypycha wierzchołki, nadając obiektowi wygląd kulisty

Modyfikator Spherify różni się od modyfikatora Push. Podczas gdy Push przesuwa wszystkie wierzchołki o równą odległość od środka obiektu, Spherify zmierza do nadania obiektowi kształtu kuli, czego efektem jest efekt wybrzuszenia w środkowej części.

Ćwiczenie: Pogrubianie krokodyla Jednym ze sposobów wykorzystania modyfikatora Spherify jest tworzenie wybrzuszeń na powierzchni obiektu. W tym ćwiczeniu użyjesz modelu pulchnego krokodyla, dodając mu tuszy przy użyciu modyfikatora Spherify. Aby pogrubić postać krokodyla za pomocą modyfikatora Spherify, wykonaj poniższe czynności.

Rozdział 11.  Korzystanie ze stosu modyfikacji

367

1. Otwórz plik Fat crocodile.max, znajdujący się w folderze Chap 11 na płycie dołączonej do książki. Plik ten zawiera model krokodyla przygotowany przez Viewpoint Datalabs. 2. Po zaznaczeniu postaci krokodyla wybierz polecenie Modifiers/Parametric Deformers/Spherify. Wokół środka transformacji modelu pojawi się wybrzuszenie. 3. W rolecie Parameters zmień wartość Percent na 15. Na rysunku 11.21 przedstawiono otyłego krokodyla.

Rysunek 11.21. Krokodyl pogrubiony przy użyciu modyfikatora Spherify Wadą modyfikatora Spherify jest to, że nie ma gizma i nie można sterować obszarem jego działania. Sposobem na ominięcie tej przeszkody może być wcześniejsze zastosowanie modyfikatora Volume Select i przekazanie w górę stosu, do modyfikatora Spherify, zaznaczenia w postaci odpowiedniego fragmentu obiektu.

Modyfikator Squeeze Modyfikator Squeeze działa w ten sposób, że punkty leżące wokół jednej osi odsuwa od środka obiektu, jednocześnie przesuwając w jego kierunku punkty pozostałe. W ten sposób tworzy efekt wybrzuszenia lub wklęsłości. Grupę parametrów modyfikatora tworzą współczynnik (Amount), krzywizna (Curve) oraz ustawienia wybrzuszenia osiowego (Axial Bulge), ściśnięcia promieniowego (Radial Squeeze), zasięgu (Limits) i równoważenia efektu (Effect Balance).

368

Część III  Podstawy modelowania

W ustawieniach Effect Balance znajdziesz parametr Bias, który ustala przejście pomiędzy wybrzuszeniem osiowym a ściśnięciem promieniowym. Z kolei parametr Volume zwiększa bądź zmniejsza objętość obiektu w gizmie modyfikatora. Deformacja młotka z lewej strony rysunku 11.22 nastąpiła na skutek włączenia opcji Axial Bulge z ustawieniem wartości Amount na 0.2, a Curve na 2.0. Dla młotka środkowego użyto opcji Radial Squeeze i ustawień 0.4 oraz 2.0, a prawemu przypisano ustawienie Upper Limit równe 8. Rysunek 11.22. Modyfikator Squeeze pozwala wybrzuszyć lub ścisnąć obiekt wzdłuż dwóch osi

Modyfikator Twist Modyfikator Twist deformuje obiekt przez skręcenie jednego końca w jednym kierunku, a przeciwległego — w drugim. Parametrami modyfikatora są: kąt skrętu (Angle), przebieg skręcenia (Bias), oś skrętu (Twist Axis) oraz granice (Limits). Wartość Angle decyduje o kącie skręcenia obiektu i wyrażana jest w stopniach. Z kolei definiując wartość Bias, możesz sprawić, że skręcenie będzie koncentrować się w okolicy środka obrotu (wartości ujemne) lub z dala od niego (wartości dodatnie). Młotek w lewej części rysunku 11.23 został skręcony w osi Z pod kątem 120 stopni. W przypadku młotka w środku wartość Bias ustawiona została na 20, a młotek z prawej skręcono, ustalając wartość Upper Limit na 8. Rysunek 11.23. Modyfikator Twist skręca obiekty wzdłuż określonej osi

Rozdział 11.  Korzystanie ze stosu modyfikacji

369

Modyfikator Taper Modyfikator Taper służy do skalowania jednego końca obiektu. Jest nim koniec leżący naprzeciwko środka obrotu. Parametry modyfikatora Taper to współczynnik (Amount) i krzywizna (Curve), oś podstawowa i oś efektu (Primary i Effect Axe) oraz granice (Limits). Wartość Amount definiuje intensywność oddziaływania modyfikatora na deformowaną końcówkę. Od ustawienia wartości Curve zależy wygięcie krawędzi bocznych do wewnątrz (wartość ujemna) lub na zewnątrz (wartość dodatnia). Gizmo modyfikatora dokładnie odwzorowuje krzywiznę. Korzystając z modyfikatora Taper i nadając jego parametrowi Curve wartość dodatnią, mógłbyś utworzyć np. prosty model wazonu lub bębna bongo. Parametr Primary Axis wskazuje oś, wzdłuż której modyfikator ma oddziaływać na obiekt. Oś Effect może być pojedynczą osią bądź płaszczyzną, wzdłuż której następuje skalowanie końcówki obiektu, a wybór opcji zależy w tym przypadku od ustawienia parametru Primary Axis. Jeżeli np. jako Primary Axis wskażesz oś Z, wybierając płaszczyznę XY Effect, spowodujesz, że obiekt zostanie przeskalowany równomiernie w osiach X i Y. Jeśli zaś zdecydujesz się wybrać Y Effect, wówczas skala końcówki obiektu zmieni się jedynie w osi Y. Modyfikator daje też możliwość użycia opcji symetrii (Symmetry). Po jej włączeniu obie końcówki obiektu ulegają symetrycznemu przeskalowaniu. Granice (Limits) działają tak samo jak w przypadku modyfikatora Bend. Młotek widoczny po lewej stronie rysunku 11.24 został zmodyfikowany ze współczynnikiem 1.0 w osi Z. W przypadku modelu środkowego ustawieniu Curve nadano wartość –2, zaś podczas modyfikacji modelu z prawej włączona została opcja Symmetry. Rysunek 11.24. Modyfikator Taper pozwala proporcjonalnie przeskalować jedno z zakończeń obiektu

Ćwiczenie: Tworzenie modelu jo-jo Korzystając z modyfikatora Taper, możesz tworzyć różnorodne, proste obiekty, np. model jo-jo. Aby utworzyć jo-jo przy użyciu modyfikatora Taper, wykonaj poniższe instrukcje. 1. Wybierz polecenie Create/Standard Primitives/Sphere i przeciągnij myszą w oknie widokowym Front, aby utworzyć obiekt kuli. 2. Zaznacz powstały obiekt i wybierz polecenie Modifiers/Parametric Deformers/Taper. Współczynnik zniekształcenia ustaw na 4.0 i jako oś podstawową wskaż Z, a XY jako płaszczyznę efektu. Włącz też opcję Symmetry.

370

Część III  Podstawy modelowania

Na rysunku 11.25 możesz zobaczyć gotowy model jo-jo; wystarczy dodać linkę.

Rysunek 11.25. Prosty model jo-jo można wykonać za pomocą modyfikatora Taper

Modyfikator Substitute Modyfikator Substitute umożliwia umieszczenie obiektu w scenie i zastąpienie go podczas renderingu obiektem o wysokiej rozdzielczości. Obiekt zastępczy może pochodzić z tej samej sceny lub z pliku XRef. Aby pozbyć się obiektu zastępczego, wystarczy usunąć modyfikator ze stosu.

Modyfikator XForm Stosując modyfikator XForm, można dokonywać przekształceń, takich jak przesuwanie (Move), obracanie (Rotate) czy skalowanie (Scale). Można w ten sposób przekształcać zarówno obiekty, jak i podobiekty. Modyfikator nakładany jest poprzez gizmo przekształcane za pomocą przycisków dostępnych na głównym pasku narzędziowym. Nie ma żadnych parametrów. Modyfikator XForm rozwiązuje pewien problem, jaki czasami pojawia się podczas modelowania. Otóż zdarza się, że obiekty skalowane, łączone w hierarchię i animowane ulegają podczas ruchu niespodziewanym zniekształceniom. Przyczyną tych zniekształceń jest fakt, że wszelkie transformacje obiektu są wykonywane po wszystkich modyfikacjach zdefiniowanych na stosie modyfikatorów. Zastosowanie modyfikatora XForm umożliwia zmianę tej kolejności — dzięki niemu można transformację umieścić w dowolnym miejscu stosu.

Rozdział 11.  Korzystanie ze stosu modyfikacji

371

XForm to skrót od słowa transform, czyli przekształcenie.

Modyfikator Wave Modyfikator Wave tworzy fale na powierzchni obiektu. Jego parametry są identyczne z parametrami modyfikatora Ripple. Różnica między tymi modyfikatorami polega na tym, że fale tworzone przez Wave są równoległe i rozchodzą się w linii prostej. Obiekt typu Quad Patch przedstawiony na rysunku 11.26 został zdeformowany za pomocą modyfikatora Wave z ustawieniem parametru Amplitude 1 na 5, a Wave Length na 50. Dla obiektu po prawej stronie wartość Amplitude 2 ustawiono na 20. Rysunek 11.26. Modyfikator Wave tworzy fale rozchodzące się równolegle na powierzchni obiektu

Ćwiczenie: Falowanie flagi Za pomocą modyfikatora Wave można pofalować obiekt, taki jak flaga. Jeśli parametr Phase podda się animacji, wówczas obiekt faluje na wietrze. Bardziej realistyczny efekt powiewającej flagi możesz uzyskać, stosując modyfikator Cloth. Więcej informacji o nim znajdziesz w rozdziale 29., „Tworzenie i układanie włosów, futer oraz tkanin”.

Aby utworzyć animację falowania flagi, korzystając z modyfikatora Wave, wykonaj następujące czynności. 1. Otwórz plik Waving US flag.max. Znajdziesz go w folderze Chap 11 na płycie dołączonej do książki. Plik ten zawiera model flagi. Maszt wykonany jest z obiektów parametrycznych. 2. Zaznacz flagę i wybierz polecenie Modifiers/Parametric Deformers/Wave, by zastosować modyfikator Wave. 3. Zwróć uwagę, że fale biegną od góry flagi ku dołowi. Kierunek ich biegu możesz zmienić, obracając gizmo. Kliknij symbol plus widoczny obok nazwy modyfikatora Wave w stosie i zaznacz podobiekt Gizmo. Za pomocą narzędzia Select and Rotate (E) obróć gizmo o 90 stopni. Następnie, korzystając z narzędzia Select and Scale (R), przeskaluj je tak, by pokrywało obiekt flagi. Ponownie kliknij Gizmo, by wyłączyć tryb podobiektu gizma. 4. Ustaw parametr Amplitude 1 na 25, Amplitude 2 na 0, a Wave Length na 50. Kliknij przycisk Auto Key (N), przeciągnij suwak czasu do klatki 100., po czym zmień wartość Phase na 4. Ponownie kliknij przycisk Auto Key, by wyłączyć tryb kluczowania.

372

Część III  Podstawy modelowania

Na rysunku 11.27 przedstawiono model powiewającej flagi.

Rysunek 11.27. Flaga pofałdowana za pomocą modyfikatora Wave

Modyfikatory Free Form Deformers Modyfikatory z kategorii deformatorów dowolnych (Free Form Deformers) powodują, że wokół obiektów pojawia się kratownica. Jest połączona z obiektem, którego powierzchnię można zmieniać przez przesuwanie węzłów kontrolnych kratownicy. Kategorię tę tworzą modyfikatory FFD (Free Form Deformation) oraz FFD (Box/Cyl).

Modyfikator FFD (Free Form Deformation) Modyfikator Free Form Deformation tworzy wokół obiektu siatkę węzłów kontrolnych. Powierzchnia obiektu ulega deformacji na skutek przesuwania owych węzłów. Deformacja następuje tylko wówczas, gdy obiekt znajduje się wewnątrz siatki FFD. Modyfikator może pracować w trzech różnych rozdzielczościach: 22, 33 lub 44. Użytkownik może wybrać wyświetlanie siatki (Lattice), bryły źródłowej (Source Volume) lub obu elementów jednocześnie. Gdy opcja Lattice jest wyłączona, wówczas widoczne pozostają jedynie węzły kontrolne. Opcja Source Volume powoduje, że wyświetlana jest klatka oryginalna, sprzed przesunięcia jakichkolwiek wierzchołków. Only In Volume (tylko wewnętrzne) oraz All Vertices (wszystkie wierzchołki) to dwie opcje deformacji. Pierwsza pozwala na przesuwanie jedynie wierzchołków wewnętrznych. Gdy włączona jest opcja All Vertices, wtedy wartość Falloff (zanik) wytycza odległość

Rozdział 11.  Korzystanie ze stosu modyfikacji

373

oddziaływania siatki FFD na wierzchołki obiektu. Dopuszczalne wartości Falloff zawierają się w zakresie od 0 do 1. Z kolei parametry Tension oraz Continuity decydują o sile naprężenia linii kratownicy podczas przesuwania. Trzy przyciski w sekcji Selection rolety FFD Parameters ułatwiają zaznaczanie węzłów kontrolnych. Kiedy po kliknięciu przycisku All X wybierzesz któryś z węzłów kontrolnych, wówczas zaznaczone zostaną także wszystkie węzły w osi X. Funkcja ta upraszcza zatem selekcjonowanie całych ciągów węzłów. Przyciski All Y i All Z działają w ten sam sposób, ale w pozostałych dwóch wymiarach. Przycisk Reset (zerowanie) umożliwia, w razie popełnienia błędu, przywrócenie bryle oryginalnego kształtu. Z kolei przycisk Conform to Shape pozwala dopasować położenie węzłów kontrolnych do kształtu obiektu przy użyciu opcji Inside Points (punkty wewnętrzne), Outside Points (punkty zewnętrzne) i Offset (przesunięcie). Aby przesunąć węzły kontrolne, należy zaznaczyć podobiekt Control Points. Dzięki temu węzły można przemieszczać pojedynczo.

Modyfikator FFD (Box/Cyl) Modyfikatory FFD (Box) i FFD (Cyl) tworzą prostopadłościenną lub cylindryczną kratownicę węzłów kontrolnych, za pomocą których można deformować obiekt. Przycisk Set Number of Points umożliwia określenie liczby węzłów tworzących siatkę FFD. Na rysunku 11.28 przedstawiono przykłady deformacji modelu młotka dokonanej na poziomie węzłów kontrolnych. Na młotek z lewej nałożono modyfikator FFD 222, na środkowy — FFD 444, a na widoczny z prawej — FFD (Cyl). Rysunek 11.28. Modyfikator FFD zmienia kształt obiektu poprzez przemieszczanie węzłów kontrolnych kratownicy, która otacza obiekt

Kratownice FFD (Box) i FFD (Cyl) są dostępne także w postaci pól sił. Aby dowiedzieć się więcej na temat tych pól, przejdź do rozdziału 42., „Stosowanie pól sił”.

Ćwiczenie: Modelowanie opony uderzającej w krawężnik Modyfikatory FFD doskonale nadają się do zmiany kształtu miękkich obiektów zderzających się z obiektami twardymi. Miękki obiekt deformuje się zgodnie z kształtem twardej przeszkody. W ćwiczeniu tym wymodelujesz deformację opony uderzającej w krawężnik.

374

Część III  Podstawy modelowania

Aby zdeformować model opony uderzającej w krawężnik, wykonaj następujące czynności. 1. Otwórz plik Tire hitting a curb.max znajdujący się w folderze Chap 11, na płycie dołączonej do książki. Zawiera on model opony i krawężnika. 2. Zaznacz model opony i wybierz opcję Modifiers/Free Form Deformers/FFD Cylinder. Wokół opony pojawi się cylindryczne gizmo kratownicy. 3. Kliknij nazwę modyfikatora FFD w stosie i z listy hierarchii wybierz podobiekt Control Points. Następnie zaznacz wszystkie środkowe węzły kontrolne w oknie widokowym Left. Za pomocą narzędzia Select and Scale (R) przeskaluj węzły nieco od środka, aby zaokrąglić oponę. 4. Zaznacz wszystkie węzły w lewym dolnym rogu okna widokowego Front, po czym przesuń je w górę i w prawo, wyrównując krawędź opony z krawężnikiem. Na rysunku 11.29 pokazano, jak opona uderza w twardy krawężnik.

Rysunek 11.29. Ten model opony został zdeformowany za pomocą modyfikatora FFD

Rozdział 11.  Korzystanie ze stosu modyfikacji

375

Podsumowanie Modyfikatory dostępne na panelu Modify dają użytkownikowi możliwość przekształcania obiektów na wiele różnych sposobów. Za ich pomocą można wpływać na każdy aspekt obiektu, w tym deformacje geometrii, materiały i ogólne cechy. W rozdziale tym omówiony został stos modyfikatorów oraz sposoby ich stosowania. Poznałeś też kilka użytecznych zestawów modyfikatorów. Oto tematy poruszone w tym rozdziale: 

nakładanie, zmiana kolejności oraz scalanie modyfikatorów przy użyciu stosu,



omówienie modyfikatorów z kategorii Selection,



sposoby użycia modyfikatorów Parametric Deformers i FFD.

Skoro poznałeś już podstawy, możesz przystąpić do zgłębiania tajników różnych metod modelowania. Pierwszą pozycję na liście obiektów wykorzystywanych w procesie modelowania zajmują splajny i kształty — im właśnie poświęcony będzie kolejny rozdział.

376

Część III  Podstawy modelowania

Rozdział 12.

Rysowanie i edycja dwuwymiarowych splajnów i kształtów W tym rozdziale: 

Praca z kształtami parametrycznymi



Edycja splajnów i kształtów



Praca z podobiektami splajnów



Korzystanie z modyfikatorów splajnów

Wiele projektów w dziedzinie modelowania powstaje od podstaw, ale nie ma nic bardziej dwuwymiarowego niż owa podstawa. Mówisz, że ta książka jest o modelowaniu trójwymiarowym? Gdzie tu miejsce dla kształtów 2D? W świecie 3D często spotyka się płaskie powierzchnie, takie jak ściana budynku, blat stołu, tablica itd. Wszystkie te obiekty mają płaskie, dwuwymiarowe powierzchnie. Zrozumienie zasad, według których obiekty są budowane z powierzchni 2D, pomoże Ci przy tworzeniu obiektów w trzech wymiarach. W rozdziale tym omówimy dwuwymiarowe elementy konstrukcyjne obiektów trójwymiarowych oraz narzędzia, które pomagają w ich edycji. W Maksie prace o charakterze dwuwymiarowym odbywają się z wykorzystaniem dwóch głównych typów obiektów, czyli splajnów i kształtów. Splajn jest specjalnym rodzajem linii, kształtowanej zgodnie z równaniami matematycznymi. W Maksie splajny wykorzystuje się do tworzenia wszelkiego rodzaju kształtów, takich jak okręgi, elipsy czy prostokąty. Splajny i kształty można budować, korzystając z poleceń zawartych w podmenu Create/ Shapes, które odpowiadają przyciskom dostępnym w kategorii Shapes na panelu Create. Podobnie jak w przypadku innych kategorii, program oferuje kilka gotowych kształtów parametrycznych, utworzonych ze splajnów. Kształty takie mogą być renderowane, ale zwykle stosujemy je do budowy bardziej złożonych, trójwymiarowych obiektów geometrycznych przez wytłaczanie lub przekształcanie w bryły obrotowe. W programie dostępna jest nawet osobna grupa modyfikatorów przeznaczonych do edycji splajnów.

378

Część III  Podstawy modelowania

Splajny można spożytkować również podczas tworzenia ścieżek animacji i obiektów typu Loft czy NURBS. Wkrótce przekonasz się, że splajny i kształty, jakkolwiek są obiektami 2D, mają w Maksie wiele zastosowań.

Rysowanie w dwóch wymiarach Kształty w Maksie różnią się od innych obiektów tym, że rysuje się je w dwóch wymiarach, w rezultacie leżą tylko na jednej płaszczyźnie (z pewnymi wyjątkami). Płaszczyznę tę definiuje okno widokowe, w którym kształt jest tworzony. Przykładowo narysowanie kształtu w oknie Top sprawia, że kształt ten leży w płaszczyźnie XY, a gdy ten sam obiekt zostanie narysowany w oknie Front, wtedy znajdzie się na płaszczyźnie ZX. Dotyczy to nawet kształtów rysowanych w oknie widoku perspektywicznego, gdzie płaszczyznę wyznacza główna siatka konstrukcyjna. Kształty dwuwymiarowe tworzy się zwykle w programach do grafiki wektorowej, takich jak Adobe Illustrator (AI) czy CorelDRAW. Max obsługuje import rysunków wektorowych w formacie AI. Proces importowania plików AI omówiony został w rozdziale 3., „Praca z plikami, importowanie i eksportowanie”.

Choć nowo tworzone czy importowane kształty są obiektami leżącymi na jednej płaszczyźnie, to jednak splajny mogą egzystować w przestrzeni trójwymiarowej. Przykładem może tu być splajn spiralny (Helix), mający określoną wysokość i średnicę. Typowym zastosowaniem takich obiektów w przestrzeni 3D są ścieżki animacji.

Praca z kształtami parametrycznymi Kształty parametryczne można tworzyć, korzystając z przycisków dostępnych na panelu Create po wybraniu kategorii Shapes lub wybierając odpowiednie polecenia z podmenu Create/Shapes bądź Create/Extended Shapes. Kategoria Shapes zawiera wiele prostych kształtów, w tym linię (Line), okrąg (Circle), łuk (Arc), wielokąt o definiowanej liczbie boków (NGon), tekst (Text), przekrój (Section), prostokąt (Rectangle), elipsę (Ellipse), pierścień (Donut), gwiazdę (Star) i spiralę (Helix). Wszystkie przedstawione są na rysunku 12.1. Kategoria Extended Shapes obejmuje z kolei kilka kształtów przydatnych architektom, takich jak profil zamknięty (WRectangle), ceownik (Channel), kątownik (Angle), teownik (Tee) czy dwuteownik (Wide Flange). Zaprezentowano je na rysunku 12.2. Kliknięcie wybranego przycisku pozwala narysować kształt przez przeciąganie myszą w wybranym oknie widokowym. Po utworzeniu kształtu otwiera się kilka nowych rolet. Powyżej grupy przycisków Shape znajdują się dwa pola opcji: AutoGrid oraz Start New Shape. Włączenie AutoGrid powoduje utworzenie tymczasowej siatki konstrukcyjnej, którą można wykorzystać, by wyrównać kształt względem powierzchni najbliższego obiektu, znajdującego się pod wskaźnikiem myszy w chwili rysowania. Funkcja ta jest więc przydatna podczas tworzenia nowego splajnu na powierzchni istniejącego obiektu. Więcej informacji na temat funkcji AutoGrid znajdziesz w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

379

Rysunek 12.1. Kształty parametryczne w całej swej dwuwymiarowej krasie: Line, Circle, Arc, NGon, Text, Section, Rectangle, Ellipse, Donut, Star oraz Helix Rysunek 12.2. Kształty z kategorii Extended: WRectangle, Channel, Angle, Tee i Wide Flange

Opcja Start New Shape sprawia, że każdy nowo narysowany kształt staje się nowym obiektem. Wyłączenie tej opcji pozwala budować kształty złożone, czyli składające się z wielu elementów tworzących jeden obiekt. Sposób kreowania takich kształtów złożonych powoduje, że nie można ich edytować przy użyciu rolety Parameters — automatycznie są one konwertowane do postaci Editable Spline. Gdybyś np. chciał utworzyć tarczę strzelniczą z koncentrycznych okręgów, nie włączaj opcji Start New Shape, a wtedy wszystkie okręgi utworzą jeden obiekt. Podobnie jak parametrycznym obiektom geometrycznym, tak i każdemu nowo tworzonemu kształtowi nadawane są nazwa i kolor. Obie te właściwości można zmienić w rolecie Name and Color. Większości kształtów parametrycznych towarzyszy zestaw typowych rolet: Rendering, Interpolation, Creation Method, Keyboard Entry oraz Parameters. Są one przedstawione na rysunku 12.3. Najpierw omówione zostaną owe rolety, a później poszczególne typy kształtów parametrycznych.

Roleta Rendering Roleta Rendering udostępnia opcje przekształcania splajnów w obiekty renderowalne. Polega to na przekonwertowaniu splajnu w obiekt 3D, widzialny podczas renderowania sceny. W takiej sytuacji przekrojowi splajnu można nadać kształt okrągły (Radial) lub prostokątny (Rectangular). Jeśli wybierzesz opcję Radial, wtedy będziesz mógł określić

380

Część III  Podstawy modelowania

Rysunek 12.3. Rolety te są wspólne dla większości kształtów parametrycznych

grubość przekroju (Thickness), liczbę jego boków (Sides) oraz kąt (Angle). W przypadku opcji Rectangular definiuje się długość (Length), szerokość (Width), kąt (Angle) oraz proporcje (Aspect). Parametr Radial Thickness decyduje o średnicy przekroju renderowalnego splajnu. Z kolei ustawienie Sides określa liczbę boków owego przekroju. Najniższą, dopuszczalną jego wartością jest 3 i wówczas przekrój ma kształt trójkąta. Wartości Length i Width decydują o długości i szerokości prostokąta będącego przekrojem splajnu. Natomiast parametr Angle determinuje ułożenie narożników przekroju. Odpowiednio definiując tę wartość, można tak ułożyć trójkątny przekrój, by jego wierzchołek był skierowany w górę lub w dół. Wartość Aspect wpływa na proporcje pomiędzy Length i Width. Kiedy przycisk z ikoną kłódki widoczny po prawej stronie wartości Aspect jest wciśnięty, wtedy proporcje te są zachowywane i zmiana jednego wymiaru pociąga za sobą proporcjonalną modyfikację drugiego. Domyślnie renderowalne splajny mają przekrój promieniowy, o 12 bokach.

Pola opcji Viewport i Renderer, widoczne powyżej sekcji parametrów Radial, pozwalają zdefiniować różne ustawienia renderingu dla okna widokowego i modułu renderującego. Każde z nich można włączać i wyłączać za pomocą opcji Enable in Viewport oraz Enable in Renderer znajdujących się w górnej części rolety Rendering. Gdy opcja Enable in Viewport jest nieaktywna, wówczas renderowalne splajny wyświetlane są w oknie widokowym jak zwykłe splajny. Z kolei opcja Use Viewport Settings daje możliwość określenia innych właściwości renderingu splajnów w oknie widokowym i podczas renderowania. Opcja Auto Smooth wraz z wartością Threshold umożliwiają wygładzanie krawędzi renderowalnych splajnów. Jeśli kąt pomiędzy dwoma sąsiednimi wielokątami jest mniejszy niż wartość Threshold, wtedy krawędź pomiędzy nimi zostaje wygładzona. W przeciwnym razie pozostaje bez zmian.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

381

Opcja Generate Mapping Coordinates włącza automatyczne generowanie współrzędnych mapowania, które są wykorzystywane podczas nakładania map materiałów. Z kolei opcja Real-World Map Size pozwala na rzeczywiste skalowanie podczas mapowania tekstur na renderowalnych splajnach. Aby dowiedzieć się więcej na temat współrzędnych mapowania oraz rzeczywistego skalowania, zajrzyj do rozdziału 17., „Określanie właściwości materiałów przy użyciu map”.

Roleta Interpolation Roleta Interpolation pozwala na określenie liczby kroków interpolacji krzywizny splajnu, a tym samym liczby segmentów tworzących kształt. Wartość Steps określa liczbę segmentów wstawianych pomiędzy wierzchołkami splajnu. Przykładowo okrąg z wartością Steps ustawioną na 0 składa się tylko z czterech segmentów i wygląda jak romb. Zwiększenie tej wartości o 1 sprawia, że liczba segmentów wzrasta do ośmiu. W przypadku kształtów składających się z prostych linii (jak Rectangle czy NGon) wartość Steps zawsze wynosi 0, ale przy kształtach o wielu bokach (takich jak Circle albo Ellipse) ma ona ogromne znaczenie. Im bowiem jest wyższa, tym krzywe tworzące kształt są łagodniejsze i gładsze. Opcja Adaptive włącza automatyczne ustawianie wartości Steps, co ma na celu zapewnienie gładkości krzywych. Kiedy jest włączona, kontrolki Steps i Optimize zostają wyłączone. Optimize to opcja, której zadaniem jest redukcja liczby kroków interpolacji, co ma na celu uproszczenie splajnu przez wyeliminowanie zbędnych segmentów. Kształty parametryczne Section oraz Helix nie mają rolety Interpolation.

Na rysunku 12.4 przedstawiono cyfrę 5, narysowaną jako kształt parametryczny Line w oknie widokowym Front. Linia została przekształcona w obiekt renderowalny i dlatego widoczny jest jej przekrój. Na rysunkach od lewej do prawej zademonstrowano skutki zmiany wartości Steps na 0, 1 i 3. Na rysunku czwartym zaprezentowano wpływ opcji Optimize. Zauważ, że proste odcinki utworzone są z pojedynczych segmentów. Piąty rysunek powstał po włączeniu opcji Adaptive. Rysunek 12.4. Korzystając z rolety Interpolation, można zmieniać liczbę segmentów tworzących linie

Rolety Creation Method oraz Keyboard Entry Większość kształtów parametrycznych dysponuje też roletami Creation Method oraz Keyboard Entry (wyjątkami są kształty Text, Section i Star). Roleta Creation Method oferuje możliwość wyboru metody tworzenia splajnu przeciągnięciem w oknie widokowym, np. od krawędzi do krawędzi (Edge) albo od środka (Center). W tabeli 12.1 wymieniono metody tworzenia poszczególnych kształtów, włącznie z kształtami należącymi do kategorii Extended Shapes.

382

Część III  Podstawy modelowania

Tabela 12.1. Metody tworzenia kształtów parametrycznych Obiekt parametryczny

Liczba kliknięć w oknie widokowym koniecznych do utworzenia obiektu

Domyślna metoda tworzenia

Inne metody tworzenia

Line

od 2 do nieskończoności

Initial: Corner; Drag: Bézier Initial: Smooth; Drag: Corner lub Smooth

Circle

1

Center

Edge

Arc

2

End-End-Middle

Center-End-End

NGon

1

Center

Edge

Text

1

brak

brak

Section

1

brak

brak

Rectangle

1

Edge

Center

Ellipse

1

Edge

Center

Donut

2

Center

Edge

Star

2

brak

brak

Helix

3

Center

Edge

WRectangle

2

Edge

Center

Channel

2

Edge

Center

Angle

2

Edge

Center

Tee

2

Edge

Center

Wide Flange

2

Edge

Center

Z niektórymi kształtami parametrycznymi, takimi jak Star, Text i Section, nie są związane żadne metody tworzenia, ponieważ Max pozwala je kreować tylko w jeden sposób. Roleta Keyboard Entry pozwala precyzyjnie określić pozycję i wymiary obiektu. Po wprowadzeniu odpowiednich wartości należy kliknąć przycisk Create. W ten sposób kształt lub splajn zostaną utworzone w aktywnym oknie widokowym. Ustawienia te są inne dla każdego kształtu. Roleta Parameters zawiera podstawowe ustawienia, takie jak promień (Radius), długość (Length) i szerokość (Width). Można je zmieniać natychmiast po utworzeniu obiektu. Jednakże po wyłączeniu zaznaczenia obiektu roleta Parameters przenosi się na panel Modify i wszelkich modyfikacji kształtu należy dokonywać z tego miejsca.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

383

Line (linia) Kształt parametryczny Line można tworzyć kilkoma metodami, dzięki czemu załamania linii mogą być ostre lub łagodne. Jako metodę tworzenia w sekcji Initial Type można wybrać Corner lub Smooth. Zależnie od wyboru opcji, pierwszy punkt linii jest wierzchołkiem ostrym lub gładkim1. Po kliknięciu w miejscu, w którym umieszczony ma być punkt (wierzchołek) początkowy, możesz dodawać kolejne punkty (wierzchołki), klikając w oknie widokowym. Przeciągnięcie myszą podczas tworzenia nowego punktu umożliwia utworzenie ostrego bądź gładkiego załamania linii albo krzywej Béziera. Zależy to od wyboru opcji Drag Type w rolecie Creation Method. Zakrzywienie utworzone po wybraniu opcji Smooth określane jest przez dystans pomiędzy sąsiednimi wierzchołkami. Natomiast wygięciem krzywej Béziera steruje się poprzez odpowiednio dalekie przeciągnięcie myszą. Wierzchołki krzywych Béziera wyposażone są w uchwyty sterujące, które umożliwiają zmianę krzywizny łuku. Wciśnięcie klawisza Shift podczas tworzenia następnych punktów powoduje, że kolejne odcinki linii rysowane są poziomo lub pionowo, co ułatwia tworzenie odcinków wzajemnie prostopadłych. Z kolei po wciśnięciu klawisza Ctrl każdy nowy segment ustawiany jest względem poprzedniego pod kątem określonym przez ustawienie opcji Angle Snap.

Po wytyczeniu wszystkich punktów możesz opuścić tryb tworzenia linii, klikając prawym przyciskiem myszy. Jeśli ostatni punkt pokrywa się z pierwszym, wówczas program wyświetla okno dialogowe z zapytaniem, czy chcesz zamknąć splajn. Jeżeli zamierzasz utworzyć splajn zamknięty, odpowiedz Yes (Tak). Jeśli natomiast chcesz kontynuować wyznaczanie kolejnych punktów, wybierz odpowiedź No (Nie). Punkty te możesz jednak dodawać nawet po zamknięciu splajnu. W rezultacie, jeżeli opcja Start New Shape nie jest włączona, powstanie obiekt złożony. Gdy punkty pierwszy i ostatni nie pokrywają się, wtedy powstaje splajn otwarty. Na rysunku 12.5 zaprezentowano kilka splajnów utworzonych przy użyciu różnych metod. Splajn po lewej powstał w oparciu wyłącznie o wierzchołki ostre (Corner), a w przypadku drugiego wszystkie wierzchołki są gładkie (Smooth). Tworząc trzeci splajn, wybrano typ Corner dla klikania (Initial Type). Widać tu, w których punktach przeciągnięcie kursorem spowodowało wygładzenie splajnu. Ostatni splajn utworzony został po włączeniu opcji Bézier. Rysunek 12.5. Line pozwala modelować różnego typu kształty o gładkich i ostrych narożnikach

Roleta Keyboard Entry pozwala dodawać nowe punkty przez określanie ich współrzędnych X, Y i Z, czemu musi towarzyszyć kliknięcie przycisku Add Point. Splajn można zamknąć w dowolnym momencie, klikając przycisk Close. Jeśli klikniesz przycisk Finish, wówczas splajn pozostanie otwarty. 1

Dokładniej rzecz ujmując, opcje z sekcji Initial Type decydują o typie wierzchołków tworzonych kliknięciem bez przeciągania i dotyczy to nie tylko pierwszego wierzchołka rysowanej linii — przyp. tłum.

384

Część III  Podstawy modelowania

Rectangle (prostokąt) Kształt Rectangle tworzy zwykłe prostokąty. W rolecie Parameters można określać ich długość i szerokość (Length i Width), a także promień zaokrąglenia narożników (Corner Radius). Wciśnięcie klawisza Ctrl podczas rysowania pozwala narysować idealny kwadrat.

Circle (okrąg) Wybór kształtu Circle umożliwia rysowanie — jak zapewne się domyślasz — okręgów. Jedynym parametrem definiowanym w rolecie Parameters jest Radius (promień). Okręgi tworzone na bazie kształtu Circle zawsze mają tylko cztery wierzchołki.

Ellipse (elipsa) Elipsy są po prostu odmianami kształtu Circle. Tworzy się je, definiując parametry Length i Width, które w tym przypadku oznaczają osie elipsy. Po wciśnięciu klawisza Ctrl rysowany kształt staje się idealnie kolisty (w takiej sytuacji można równie dobrze użyć kształtu Circle).

Arc (łuk) Kształt Arc można kreować w dwojaki sposób. Metoda End-End-Middle polega na tym, że najpierw, klikając i przeciągając, wyznacza się punkty skrajne, a następnie kolejnym przeciągnięciem kształtuje się wygięcie łuku. Z kolei metoda Center-End-End polega na wyznaczeniu środka łuku pierwszym kliknięciem, przeciągnięciu myszą do pierwszego zakończenia, a następnie do przeciwległego. W rolecie Parameters, oprócz parametru Radius, można definiować ustawienia From (od) oraz To (do). Są to wyrażone w stopniach położenia skrajnych punktów łuku. Włączenie opcji Pie Slice powoduje połączenie tych punktów z środkiem łuku. W efekcie powstaje wycinek koła, pokazany na rysunku 12.6. Opcja Reverse pozwala odwrócić kierunek łuku. Rysunek 12.6. Włączenie opcji Pie Splice powoduje połączenie końców łuku ze środkiem okręgu

Donut (pierścień) Kolejną odmianą kształtu Circle jest Donut. Składa się z dwóch koncentrycznie ułożonych okręgów; obiekt ten tworzy się dwoma przeciągnięciami myszy. Pierwsze wyznacza promień zewnętrznego, a drugie — wewnętrznego kręgu. Jedynymi parametrami Donut są dwie wartości Radius.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

385

NGon (wielokąt foremny) Wybór kształtu NGon pozwala tworzyć wielokąty foremne, o określonej liczbie boków (Sides) oraz promieniu zaokrąglenia wierzchołków (Corner Radius). Można także zdecydować, czy wielokąt ma być wpisany w okrąg (Inscribed), czy też opisany na nim (Circumscribed), co pokazano na rysunku 12.7. Wielokąt wpisany to taki, którego wszystkie wierzchołki leżą na okręgu, a wielokąt opisany ma z okręgiem wspólne środki boków. Opcja Circular zamienia wielokąt w okrąg, w który został wpisany. Rysunek 12.7. Pięciokąt wpisany w okrąg i opisany na nim

Star (gwiazda) Kształt gwiazdy definiują dwie wartości Radius — jedna określa odległość pomiędzy środkiem obiektu i wierzchołkami zewnętrznymi, a druga — wewnętrznymi. Parametr Points ustala liczbę ramion gwiazdy. Jego wartość może się zawierać w zakresie od 3 do 100. Parametr Distortion obraca wierzchołki wewnętrzne względem zewnętrznych, przez co pozwala nadać gwieździe ciekawą formę. Wartości Fillet Radius 1 i Fillet Radius 2 kształtują zaokrąglenie wierzchołków, odpowiednio wewnętrznych i zewnętrznych. Na rysunku 12.8 zademonstrowano możliwości formowania kształtu Star.

Rysunek 12.8. Parametryczną gwiazdę można przekształcać, tworząc szereg interesujących kształtów

386

Część III  Podstawy modelowania

Text (tekst) Wybierając kształt parametryczny Text, możemy umieszczać w scenie konturowe napisy. Roleta Parameters umożliwia wybór czcionki (Font) z rozwijanej listy, która znajduje się w górnej części rolety. Poniżej listy widnieje sześć ikon przedstawionych w tabeli 12.2. Pierwsza od lewej oznacza styl pochylenia tekstu, a druga — podkreślenia. Wybór którejkolwiek z nich powoduje zastosowanie stylu w całym tekście. Cztery kolejne ikony decydują o sposobie wyrównania tekstu: do lewej, do środka, do prawej i justowanie. Lista dostępnych krojów obejmuje tylko czcionki Windows TrueType oraz Type 1 PostScript zainstalowane w systemie, a także czcionki dodatkowe, umieszczone w folderze, do którego prowadzi ścieżka dostępu wymieniona na liście w oknie dialogowym konfiguracji ścieżek systemowych (Configure System Paths). Aby te ostatnie czcionki zostały rozpoznane i uwzględnione przez Maksa, należy zrestartować program. Tabela 12.2. Atrybuty tekstu Ikona

Opis Kursywa. Podkreślenie. Wyrównanie do lewej. Wyśrodkowanie. Wyrównanie do prawej. Justowanie.

Rozmiar tekstu określany jest wartością Size. Wartości Kerning (która odpowiada za odległość pomiędzy sąsiednimi znakami) oraz Leading (decydująca o wielkości interlinii) mogą być wartościami ujemnymi. Przez ustawienie dużego ujemnego kerningu można uzyskać efekt tekstu pisanego od tyłu. Na rysunku 12.9 zaprezentowano kilka przykładów ustawień kerningu i ich wpływ na wygląd tekstu w oknie Maksa. Tworzony tekst można wpisywać w polu tekstowym. Możliwe jest też wycinanie, kopiowanie i wklejanie tekstu z aplikacji zewnętrznych za pomocą menu kontekstowego otwieranego prawym przyciskiem myszy. Wpisany tekst pojawia się natychmiast po ustawieniu parametrów i kliknięciu w oknie widokowym. Jego wygląd jest uaktualniany automatycznie po wprowadzeniu zmian jakiegokolwiek parametru (także i treści). Aby wyłączyć funkcję automatycznego odświeżania, należy zaznaczyć opcję Manual Update. Odświeżanie następuje wówczas dopiero po kliknięciu przycisku Update. Jeśli otworzysz aplikację Tablica znaków, wyświetlony zostanie pełny wykaz dostępnych znaków specjalnych. Aplikację Tablica znaków, której okno przedstawione jest na rysunku 12.10, wywołuje się w systemie Windows, otwierając systemowe menu Start

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

387

Rysunek 12.9. Kształt Text pozwala sterować odległością pomiędzy znakami, czyli parametrem znanym jako kerning Rysunek 12.10. Aplikacja Tablica znaków prezentuje wszystkie dostępne znaki specjalne

i wybierając Wszystkie programy/Akcesoria/Narzędzia systemowe/Tablica znaków. Aby w polu tekstowym Maksa wprowadzać znak specjalny, należy go zaznaczyć w tablicy znaków, a następnie kliknąć przycisk Kopiuj. Znak zostanie skopiowany do systemowego schowka, skąd można go wkleić za pomocą skrótu klawiszowego Ctrl+V.

388

Część III  Podstawy modelowania

Helix (linia śrubowa) Helix, kształt mający formę linii śrubowej, jest jedynym trójwymiarowym kształtem parametrycznym. Parametrami obiektu Helix są dwa promienie, wyznaczające jego średnicę na przeciwległych końcach. Gdy są równe, wówczas obiekt ma kształt walcowej linii śrubowej, a gdy różne — stożkowej. Oprócz tego, w rolecie Parameters znajdują się kontrolki wysokości (Height) i liczby zwojów (Turns). Parametr Bias reguluje zagęszczenie zwojów u góry bądź u dołu kształtu. Z kolei przełączniki CW oraz CCW wyznaczają kierunek zwinięcia linii jako zgodny lub przeciwny do kierunku ruchu wskazówek zegara. Na rysunku 12.11 przedstawiono kilka przykładów kształtów Helix: pierwszy ma równe wartości Radius, a w drugim pierwsza jest większa od drugiej. W trzecim przykładzie drugi promień ustawiony został na 0, a w dwóch ostatnich wartość Bias ustawiono na 0.8 i –0.8. Rysunek 12.11. Kształt Helix może mieć formę sprężyny albo spirali

Section (przekrój) Kształt Section przedstawia przekrój dowolnego obiektu 3D, w miejscu ustawienia płaszczyzny przecięcia. Tworzenie kształtu polega na przeciągnięciu myszą w oknie widokowym w celu wyznaczenia płaszczyzny tnącej. Płaszczyznę tę można przesuwać, obracać i skalować, aż do uzyskania właściwego przekroju. W rolecie Section Parameters znajduje się przycisk Create Shape. Kliknięcie go powoduje otwarcie okna dialogowego, w którym nowo tworzonemu kształtowi można nadać nazwę. Za pomocą pojedynczego obiektu Section można zbudować wiele kształtów. Przekroje można tworzyć tylko poprzez przecinanie obiektów trójwymiarowych. Gdy płaszczyzna tnąca nie przecina żadnego z nich, kształt Section nie może powstać. Nie można też tworzyć przekrojów innych kształtów parametrycznych, nawet jeżeli są to renderowalne splajny.

Roleta Parameters zawiera też kontrolki ustawień uaktualniania kształtu Section. Można wybrać uaktualnianie po przesunięciu płaszczyzny tnącej (When Section Moves), po zaznaczeniu obiektu (When Section Selected) albo też ręcznie (przez kliknięcie przycisku Update Section). Zasięg oddziaływania płaszczyzny tnącej (Section Extens) można ustawić na nieskończony (Infinite), dopasować go do wielkości płaszczyzny (Section Boundary) lub całkowicie wyłączyć (Off). Po wybraniu opcji Infinite splajn przekroju tworzony jest w taki sposób, jakby płaszczyzna tnąca miała nieskończone rozmiary. Z kolei wybór opcji Section Boundary powoduje dopasowanie owego zasięgu do wielkości widzialnej płaszczyzny. Kształt przekroju oznaczany jest kolorem próbki widocznej w rolecie Parameters. Aby lepiej zrozumieć, co można osiągnąć, wykorzystując kształt Section, spójrz na rysunek 12.12. Przedstawione są na nim rezultaty utworzenia przekrojów dwóch stożków. Przekroje te mają kształt okręgu, elipsy, paraboli i hiperboli. Dla lepszej widoczności powstałe kształty zostały rozsunięte na boki.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

389

Rysunek 12.12. Oto przykład wykorzystania kształtu parametrycznego Section do utworzenia krzywych stożkowych (okrąg, elipsa, parabola, hiperbola)

Ćwiczenie: Tworzenie logo firmy Jednym z najwcześniejszych zastosowań grafiki trójwymiarowej było tworzenie animowanych znaków firmowych i choć Max radzi sobie z tym bez trudu, to jednak jego możliwości są znacznie większe niż były w owych czasach. Logo firmowe można zaprojektować przy użyciu obiektów z grupy Shapes. W ćwiczeniu tym, stosując kształty parametryczne Maksa, zaprojektujesz i utworzysz proste logo fikcyjnego przedsiębiorstwa Expeditions South. Aby wykorzystać kształty do zaprojektowania i utworzenia logo firmowego, wykonaj, co następuje. 1. Utwórz czteroramienną gwiazdę, klikając przycisk Star i przeciągając myszą w oknie widokowym Top. Zmień parametry gwiazdy w następujący sposób: Radius1 = 60, Radius2 = 20, Points = 4. 2. Zaznacz kształt gwiazdy i przesuń go na lewą stronę okna widokowego. 3. Kliknij przycisk Text, zmień krój czcionki na Impact i ustaw jej wielkość na 50. W polu Text wpisz Expeditions South, wstawiając pomiędzy oba wyrazy znak łamania wiersza oraz kilka spacji, co utworzy przesunięcie drugiego wyrazu względem pierwszego. Kliknij w oknie widokowym Top, aby umieścić w nim napis. 4. Włącz narzędzie Select and Move (W) i dopasuj ułożenie tekstu do kształtu gwiazdy.

390

Część III  Podstawy modelowania

5. Kliknij przycisk Line i narysuj kilka kresek imitujących rozbłysk na dolnym wierzchołku gwiazdy. Logo jest gotowe do wytłoczenia i animowania. Wynik ćwiczenia przedstawiono na rysunku 12.13.

Rysunek 12.13. Logo firmowe w całości utworzone w Maksie przy użyciu kształtów parametrycznych

Ćwiczenie: Podgląd wnętrza serca Jako przykład wykorzystania kształtu parametrycznego Section wykonasz teraz ćwiczenie polegające na utworzeniu przekroju serca. Model, którego tu użyjesz, opracowany został przez Viewpoint Datalabs i jest bardzo realistyczny — do tego stopnia, że właściwie mógłby służyć do prezentowania studentom medycyny mechanizmu pracy serca. Aby utworzyć splajn z przekroju modelu serca, wykonaj następujące czynności. 1. Otwórz plik Heart section.max zapisany w folderze Chap 12 na płycie dołączonej do książki. Znajdziesz w nim model serca opracowany przez Viewpoint Datalabs. 2. Wybierz polecenie Create/Shapes/Section i przeciągnięciem myszy w oknie widokowym Front wyznacz płaszczyznę, wystarczająco dużą, by objęła cały model. Płaszczyzna ta będzie płaszczyzną przekroju.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

391

3. Kliknij przycisk Select and Rotate znajdujący się w głównym pasku narzędziowym (możesz też użyć klawisza E), po czym obróć płaszczyznę przekroju tak, by ustawić ją pod odpowiednim kątem. 4. Kliknij przycisk Create Shape widniejący w rolecie Parameters na panelu Modify i nadaj nowemu kształtowi nazwę Heart Section (przekrój serca). 5. Zaznacz nazwę przekroju w oknie dialogowym Select From Scene (otworzysz je, wciskając klawisz H), oddziel przekrój od modelu i przesuń tak, by był dobrze widoczny. Na rysunku 12.14 zaprezentowano model oraz jego przekrój.

Rysunek 12.14. Korzystając z kształtu Section, można zajrzeć do wnętrza serca

Edycja splajnów Kształt parametryczny można po utworzeniu edytować, modyfikując jego parametry. Jednak wybór tychże parametrów w przypadku kształtów jest dość skromny. Przykładowo kształt Circle ma tylko jeden parametr, Radius. Wszystkie tego rodzaju kształty można przekształcać w edytowalne splajny lub poddawać działaniu modyfikatora Edit Spline. W obu przypadkach uzyskuje się dostęp do szerokiego zestawu funkcji edycyjnych. Wcześniej jednak należy dokonać rzeczonej konwersji kształtu do postaci Editable Spline (nie dotyczy to kształtu Line). Można to zrobić, klikając kształt prawym przyciskiem myszy i wybierając polecenie Convert To/Convert to Editable Spline z czteroczęściowego menu kontekstowego. Można też kliknąć prawym przyciskiem nazwę obiektu bazowego

392

Część III  Podstawy modelowania

w stosie modyfikatorów i wybrać polecenie Convert To Editable Spline z menu podręcznego. Trzecia metoda uzyskania dostępu do funkcji edycyjnych polega na zastosowaniu modyfikatora Edit Spline.

Konwersja na splajny edytowalne a stosowanie modyfikatora Edit Spline Po przekonwertowaniu kształtu do postaci Editable Spline możesz edytować pojedyncze podobiekty splajnu, w tym wierzchołki (Vertices), segmenty (Segments) i splajny składowe (Splines). Jednak efekty zastosowania modyfikatora Edit Spline różnią się nieco od efektów konwersji kształtów, bowiem po zastosowaniu modyfikatora parametry kształtu są zachowywane, co pozwala na korzystanie z funkcji edycyjnych dostępnych w rolecie Geometry. Natomiast konwersja kształtu wiąże się z utratą możliwości zmiany jego podstawowych parametrów. Kiedy tworzysz obiekt zawierający dwa splajny lub więcej (np. rysując splajny przy wyłączonej opcji Start New Shape), wszystkie one są automatycznie konwertowane do postaci Editable Spline.

Kolejną różnicą jest to, że bazowy kształt parametryczny jest wyświetlany, wraz z modyfikatorem Edit Spline, w stosie modyfikatorów. Zaznaczenie tego kształtu powoduje wyświetlenie rolet Rendering, Interpolation i Parameters. Natomiast po zaznaczeniu modyfikatora Edit Spline widoczne są rolety Selection, Soft Selection i Geometry. W przypadku kształtów przekonwertowanych jako Editable Spline w stosie modyfikatorów widoczna jest tylko nazwa obiektu bazowego, a wszystkie rolety wyświetlane są poniżej. Kluczową różnicą jest też to, że podobiekty dostępne po zastosowaniu modyfikatora Edit Spline nie mogą być animowane.

Przekształcanie splajnów w obiekty renderowalne Splajny zwykle nie pojawiają się w renderowanych obrazach, ale użycie opcji Renderable, która dostępna jest w rolecie Rendering, oraz nadanie splajnom określonej grubości sprawia, że pozostają one widoczne także w wyrenderowanym obrazie. Na rysunku 12.15 widać logo Expeditions South wyrenderowane po włączeniu renderowalności wszystkich kształtów i ustawieniu ich grubości na 3.0. Ustawienia dostępne w roletach Rendering i Interpolation są takie same jak te, których używa się podczas tworzenia nowych kształtów; omówione zostały we wcześniejszej części rozdziału.

Zaznaczanie podobiektów splajnu Aby dokonać edycji splajnu, należy wybrać jeden z trybów edycji podobiektów: Vertex (czyli wierzchołek, klawisz 1), Segment (czyli segment, klawisz 2) lub Spline (czyli splajn, klawisz 3). Podobiekty mogą być edytowane po uprzednim zaznaczeniu. Aby wybrać typ podobiektu, kliknij mały znak plus, widoczny po lewej stronie nazwy obiektu Editable Spline w stosie modyfikatorów. W ten sposób rozwiniesz listę dostępnych podobiektów.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

393

Rysunek 12.15. Logo utworzone z renderowalnych splajnów o grubości 3.0

Typ podobiektu wybiera się, klikając go w stosie. Można go też wybrać kliknięciem jednej z czerwonych ikon widocznych poniżej paska tytułowego rolety Selection. Ikony te są wskazane na rysunku 12.16. Kolejna metoda wybierania trybu podobiektu sprowadza się do użycia skrótu klawiszowego 1, 2 lub 3. Wybrany typ podobiektu w stosie modyfikatorów oraz powiązana z nim ikona oznaczane są żółtym kolorem. Żółty kolor nazwy oraz ikony wybranego typu podobiektu ma na celu przypominanie użytkownikowi, że włączony jest tryb edycji podobiektu. Pamiętaj, że zanim wyselekcjonujesz kolejny obiekt, musisz ów tryb opuścić i przejść na poziom obiektu.

Zaznaczyć można wiele podobiektów jednocześnie, przeciągając wokół nich myszą w oknie widokowym. Można je też zaznaczać pojedynczo, klikając z wciśniętym klawiszem Ctrl. Wciśnięcie klawisza Alt pozwala natomiast usuwać z zaznaczenia wybrane podobiekty. Po zaznaczeniu kilku wierzchołków możesz utworzyć zestaw selekcji, nadając mu nazwę. Wpisuje się ją na rozwijanej liście Name Selection Sets, znajdującej się na głównym pasku narzędziowym. Zestawy selekcji można kopiować i wklejać na inne kształty, korzystając z przycisków Copy i Paste w rolecie Selection. Włączona opcja Lock Handles pozwala na współbieżne przesuwanie uchwytów kontrolnych dla wszystkich zaznaczonych wierzchołków. Po jej wyłączeniu każdy uchwyt przesuwany jest niezależnie od pozostałych. Kiedy równocześnie włączone są opcje Lock Handles i All, wtedy wszystkie uchwyty przesuwają się razem. Z kolei opcja Alike sprawia, że przesuwane są uchwyty tylko po jednej stronie zaznaczonych wierzchołków2. Opcja Area Selection umożliwia zaznaczenie wszystkich wierzchołków w obszarze o określonym promieniu wokół wierzchołka właśnie zaznaczanego. Włączenie opcji Segment End 2

Aby to było możliwe, zaznaczone wierzchołki muszą być typu Bézier Corner (wtedy uchwyty kontrolne wierzchołka są od siebie niezależne) — przyp. tłum.

394

Część III  Podstawy modelowania

Rysunek 12.16. W rolecie Selection znajdują się przyciski włączające tryby edycji podobiektów

pozwala zaznaczyć wierzchołek poprzez kliknięcie segmentu. Zaznaczony zostanie ten koniec segmentu, który leży bliżej miejsca kliknięcia. Funkcja ta jest użyteczna szczególnie wówczas, gdy starasz się zaznaczyć wierzchołek leżący bardzo blisko innych. Kliknięcie przycisku Select By powoduje otwarcie okna dialogowego, w którym znajdują się dwa dalsze przyciski, Segment i Spline. Wciśnięcie jednego z nich pozwala na zaznaczenie wszystkich wierzchołków wybranego, odpowiednio, segmentu lub splajnu3. W rolecie Selection znajdziesz też opcję Show Vertex Numbers, po włączeniu której wyświetlane są numery wszystkich wierzchołków splajnu lub — jeśli dodatkowo włączysz opcję Selected Only — tylko tych, które zostały zaznaczone. Ułatwia to znacznie śledzenie ułożenia splajnu oraz odnalezienie wierzchołków o małym znaczeniu. Kolejność wierzchołków ma szczególne znaczenie podczas określania kierunku, w którym przekrój ma być wytłaczany za pomocą polecenia Loft lub Sweep. Pierwszy wierzchołek splajnu można zawsze rozpoznać, ponieważ jest oznaczany kolorem żółtym.

3

I znów, aby to było możliwe, odpowiedni segment lub splajn musi być wcześniej zaznaczony. W tym celu trzeba włączyć tryb zaznaczania segmentów lub splajnów, zaznaczyć właściwy element i po powrocie do trybu zaznaczania wierzchołków skorzystać z opisywanych przycisków — przyp. tłum.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

395

Na rysunku 12.17 przedstawiono gwiazdę, która została przekonwertowana w edytowalny splajn. Gwiazda z lewej przedstawia splajn w trybie Vertex. Wszystkie wierzchołki są oznaczone małymi plusami, zaś punkt początkowy — małym kwadracikiem. Rysunek pośrodku uwidacznia efekty włączenia opcji Show Vertex Numbers. Natomiast na rysunku z prawej, na skutek kliknięcia przycisku Reverse (w trybie podobiektu Spline), nastąpiło odwrócenie numeracji wierzchołków4. Rysunek 12.17. Kilka splajnów z włączonym wyświetlaniem numerów wierzchołków

U dołu rolety Selection znajduje się sekcja informacyjna. Podaje ona numer wyselekcjonowanego splajnu (lub segmentu) bądź wierzchołka lub liczbę zaznaczonych elementów i informację o tym, czy splajn został zamknięty. Roleta miękkiej selekcji (Soft Selection) pozwala modyfikować (w ograniczonym zakresie) niezaznaczone podobiekty, sąsiadujące z podobiektem przesuwanym, dzięki czemu przejście pomiędzy nimi staje się gładkie. Więcej informacji na temat tej rolety znajdziesz w rozdziale 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

Geometria splajnów Najwięcej możliwości edycji splajnów zapewnia roleta Geometry, przedstawiona na rysunku 12.18. Pozwala ona na tworzenie nowych splajnów, przyłączanie do nich innych obiektów, spawanie wierzchołków, wykonywanie operacji boolowskich, takich jak przycinanie (Trim) i rozszerzanie (Extend), oraz dokonywanie wielu innych przekształceń. Niektóre przyciski w tej rolecie mogą być nieaktywne, a zależy to od wybranego typu podobiektów. Pewne funkcje nie wymagają nawet włączenia trybu podobiektowego i one zostaną omówione na początek. Czteroczęściowe menu kontekstowe zapewnia szybki dostęp do głównych funkcji w każdym trybie edycji podobiektów. Gdy poznasz już poszczególne funkcje, będziesz mógł je wywoływać z poziomu owego menu, otwieranego kliknięciem prawego przycisku myszy w oknie widokowym.

Create Line (utwórz linię) Podczas edycji splajnów można dołączać do nich nowe linie, wciskając przycisk Create Line i klikając w jednym z okien widokowych. Jednorazowo można utworzyć wiele linii i wszystkie będą częściami tego samego obiektu. Tryb ich rysowania wyłącza się przez kliknięcie prawym przyciskiem myszy w oknie widokowym. Każda z nowych linii staje się odrębnym splajnem, ale można je spawać z już istniejącymi. 4

Przycisk Reverse znajduje się w rolecie Geometry — przyp. tłum.

396

Część III  Podstawy modelowania

Rysunek 12.18. Większość funkcji edycyjnych dla edytowalnych splajnów dostępna jest w rolecie Geometry

Break (przerwij) Zaznaczenie wierzchołka, a następnie kliknięcie przycisku Break powoduje rozerwanie splajnu przez utworzenie dwóch osobnych punktów końcowych. Przycisku Break można też użyć w trybie edycji segmentów. W takiej sytuacji segment dzielony jest na dwie części. Omawiany przycisk dostępny jest w trybach podobiektów Vertex i Segment.

Attach oraz Attach Multiple (przyłącz i przyłącz kilka) Kliknięcie przycisku Attach umożliwia przyłączenie dowolnego z istniejących splajnów do splajnu zaznaczonego. Kursor ustawiony nad splajnem, który można przyłączyć, zmienia wygląd. Kliknięcie niezaznaczonego obiektu czyni go częścią obiektu zaznaczonego. Opcja Reorient pozwala ujednolicić układ współrzędnych splajnu przyłączanego z systemem splajnu zaznaczonego. Przykładowo użycie przycisku Boolean wymaga, by splajny wchodziły w skład jednego obiektu. Splajny można łączyć w jeden obiekt, korzystając właśnie z przycisku Attach. Aby przyłączyć kilka splajnów jednocześnie, należy użyć przycisku Attach Multiple. Po jego kliknięciu otwiera się okno dialogowe Attach Multiple (bardzo podobne do okna Select From Scene). Daje ono możliwość wybrania obiektów, które mają zostać przyłączone do aktualnie zaznaczonego. Po dokonaniu wyboru należy kliknąć przycisk Attach. Obu przycisków, Attach i Attach Multiple, można używać w każdym z trzech trybów edycji podobiektów. Jeżeli na przyłączany splajn nałożony został materiał, wówczas pojawia się okno dialogowe udostępniające opcje obsługi materiałów: Match Material IDs to Material (dopasuj identyfikatory do materiału), Match Material to Material IDs oraz Do Not Modify Material IDs or Material. Nakładanie materiałów zostanie omówione w rozdziale 15., „Rozszerzony edytor materiałów”.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

397

Cross Section (przekrój) Działanie przycisku Cross Section jest takie samo jak modyfikatora o tej samej nazwie i polega na tworzeniu splajnów rozciągniętych między kształtami wyznaczającymi przekroje trójwymiarowej bryły. Wyobraź sobie proces tworzenia modelu kija baseballowego, polegający na utworzeniu przekroju poprzecznego w każdym miejscu zmiany średnicy i łączeniu kolejnych przekrojów. Wszystkie przekroje muszą być elementami tego samego obiektu Editable Spline, a wciśnięcie przycisku Cross Selection pozwala je połączyć poprzez klikanie. Wskaźnik myszy ustawiony nad kształtem zdatnym do wykorzystania zmienia się. Po wyselekcjonowaniu wszystkich przekrojów tryb Cross Section można wyłączyć, klikając prawym przyciskiem myszy. Typ wierzchołków wykorzystanych do utworzenia nowych splajnów pomiędzy przekrojami określany jest w sekcji New Vertex Type, znajdującej się w górnej części rolety Geometry. Choć splajny łączące przekroje przechodzą przez wierzchołki tych przekrojów, to jednak nie są z nimi połączone.

Po połączeniu przekrojów możesz użyć modyfikatora Surface i utworzyć trójwymiarową powierzchnię rozciągniętą na siatce splajnów.

Automatyczne spawanie punktów końcowych Aby możliwe było edytowanie powierzchni, zazwyczaj potrzebne są splajny zamknięte. Po włączeniu opcji automatycznego spawania (Automatic Welding) w sekcji End Point Auto-Welding i określeniu wartości Threshold wszystkie punkty krańcowe mieszczące się w zakresie tejże wartości zostają zespawane; w efekcie powstanie splajn zamknięty.

Insert (wstaw) Przycisk Insert włącza funkcję umieszczania nowych wierzchołków na wyselekcjonowanym splajnie. Aby utworzyć nowy wierzchołek, należy włączyć przycisk Insert, a następnie kliknąć splajn. Położenie nowego wierzchołka, tak jak i segmentów, które łączy, można zmieniać — kolejne kliknięcie wyznacza je ostatecznie. Pojedynczym kliknięciem tworzy się wierzchołki typu Corner, zaś kliknięcie i przeciągnięcie myszą powoduje powstanie wierzchołka typu Bézier. Po ustawieniu nowego wierzchołka możesz dodać kolejny, przesuwając myszą i ponownie klikając. Aby umieścić nowy wierzchołek na innym segmencie, należy kliknąć prawym przyciskiem, co uwolni zaznaczony segment, ale pozostawi włączony tryb Insert. Tryb Insert wyłącza się przez kolejne kliknięcie prawym przyciskiem myszy w oknie widokowym lub ponowne kliknięcie przycisku Insert.

398

Część III  Podstawy modelowania

Ćwiczenie: Tworzenie modelu gałki u drzwi przy użyciu przekrojów Z przekrojami można pracować na różne sposoby. Można użyć funkcji Cross Section dla edytowalnych splajnów i modyfikatora Cross Section albo utworzyć obiekt złożony typu Loft. Każda z tych metod ma określone zalety, ale pierwsza jest prawdopodobnie najłatwiejsza i najbardziej odporna na błędy. Aby zbudować model gałki u drzwi, korzystając z przycisku Cross Section dostępnego w rolecie Geometry, wykonaj następujące czynności. 1. Kliknij prawym przyciskiem myszy którykolwiek z przycisków Snaps Toggle na głównym pasku narzędziowym i w otwartym w ten sposób oknie dialogowym Grid and Snap Settings zaznacz opcję Grid Points. Kliknij przycisk Snap na głównym pasku narzędziowym (lub wciśnij klawisz S), by włączyć przyciąganie do punktów siatki. 2. Wybierz polecenie Create/Shapes/Circle i przeciągnij myszą od środkowego punktu siatki w oknie widokowym Top, tworząc niewielki okrąg. W ten sam sposób zbuduj jeszcze dwa okręgi, jeden o tej samej, a drugi o dużo większej średnicy. 3. Wybierz polecenie Create/Shapes/Rectangle i, wciskając klawisz Ctrl, narysuj w oknie widokowym Top kwadrat nieco mniejszy od pierwszego okręgu. Powtórz tę czynność, tworząc jeszcze jeden kwadrat o tych samych wymiarach. Wyrównywanie kwadratów będzie łatwiejsze, jeśli w rolecie Creation Method wybierzesz opcję Center. 4. Kliknij przycisk Select and Move (W) na głównym pasku narzędziowym i przeciągnij kształty w oknie widokowym Left, ustawiając je w następującej kolejności od dołu: kwadrat, kwadrat, mały okrąg, duży okrąg i znów mały okrąg. Kwadraty rozsuń na odległość odpowiadającą grubości skrzydła drzwi, a okręgi rozstaw tak, by ich ułożenie odpowiadało kształtowi gałki. 5. Zaznacz dolny kwadrat, a następnie kliknij go prawym przyciskiem myszy i z menu podręcznego wybierz polecenie Convert To/Editable Spline. 6. Kliknij przycisk Attach w rolecie Geometry i zaznacz pozostałe kształty, dołączając je do zaznaczonego obiektu Editable Spline5. 7. Obróć widok w oknie Perspective tak, by każdy kształt był dobrze widoczny i by można było go bez trudu zaznaczyć. Następnie zaznaczaj kolejne przekroje i w oknie widokowym Top obracaj je tak, aby ich wierzchołki początkowe znalazły się na jednej linii. W ten sposób unikniesz niepożądanego skręcenia powierzchni bocznych tworzonego obiektu. 8. Wybierz opcję Linear w sekcji New Vertex Type rolety Geometry, po czym kliknij przycisk Cross Section. W oknie widoku perspektywicznego zaznacz dolny kwadrat, następnie górny oraz pierwszy, licząc od dołu, okrąg. W ten sposób utworzysz splajn liniowo łączący trzy pierwsze kształty przekroju. Kliknij prawym przyciskiem myszy w oknie widokowym Perspective, by wyłączyć tryb łączenia przekrojów. 5

Przed zaznaczeniem kolejnych kształtów należy sprawdzić, czy wyłączona jest opcja Reorient. W przeciwnym razie wszystkie kształty wylądują z powrotem na jednej płaszczyźnie — przyp. tłum.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

399

9. Włącz opcję Bézier w sekcji New Vertex Type i jeszcze raz kliknij przycisk Cross Section. W oknie widoku perspektywicznego kliknij umieszczony najniżej okrąg, a w dalszej kolejności okrąg w środku i na koniec ten, który położony jest najwyżej. Utworzony zostanie splajn gładko przebiegający pomiędzy trzema ostatnimi kształtami przekroju. Wyłącz tryb Cross Section, klikając prawym przyciskiem myszy w oknie widokowym Perspective. Na wykonany ze splajnów kontur obiektu możesz za pomocą modyfikatora Surface nałożyć powierzchnię.

Na rysunku 12.19 przedstawiono splajny łączące poszczególne przekroje. Kluczową zaletą opisanej techniki jest to, że nie nastręcza trudności przy określaniu kolejności przekrojów. Ustala się to, po prostu klikając poszczególne kształty w odpowiedniej kolejności.

Rysunek 12.19. Funkcja Cross Section tworzy splajny biegnące między kolejnymi przekrojami

Edycja wierzchołków Aby możliwa była edycja wierzchołków, włączony musi być tryb Vertex. Można go włączyć z poziomu stosu modyfikatorów lub przez kliknięcie ikony wierzchołków w rolecie Selection (skrót klawiszowy to 1). Po uaktywnieniu trybu edycji wierzchołków możesz korzystać z przycisków transformacji, które są dostępne na głównym pasku narzędziowym, przesuwając, obracając i skalując wybrane wierzchołki, pojedynczo bądź w grupach. Przesunięcie wierzchołka powoduje, że połączone z nim segmenty splajnu podążają za nim.

400

Część III  Podstawy modelowania

Typ wyselekcjonowanego wierzchołka możesz zmienić, klikając go prawym przyciskiem myszy i wybierając z menu kontekstowego opcję wierzchołka ostrego (Corner), gładkiego (Smooth), bezierowskiego (Bézier) lub bezierowskiego ostrego (Bézier Corner). Wybór opcji dokonany w sekcji New Vertex Type oddziałuje wyłącznie na wierzchołki, które powstają podczas kopiowania segmentów i splajnów z wciśniętym klawiszem Shift oraz w wyniku zastosowania funkcji Cross Section. Opcji tych nie można więc użyć do zmiany istniejących wierzchołków.

Po wybraniu opcji Bézier lub Bézier Corner jako typu wierzchołków po obu stronach zaznaczonego wierzchołka pojawiają się zielone uchwyty. Przeciągając je, możesz regulować krzywiznę sąsiednich segmentów. Uchwyty wierzchołka typu Bézier leżą zawsze w jednej linii, a uchwyty wierzchołka typu Bézier Corner są od siebie niezależne, dzięki czemu pozwalają tworzyć ostre narożniki. Wciśnięcie klawisza Shift podczas klikania i przeciągania uchwytu sprawia, że może się on poruszać niezależnie od drugiego. W rezultacie wierzchołek Bézier przekształca się w Bézier Corner, co z kolei umożliwia utworzenie ostrego narożnika.

Na rysunku 12.20 zademonstrowano działanie uchwytów Bézier i Bézier Corner. Na pierwszym obrazku widać zaznaczone cztery wierzchołki okręgu, z uchwytami po obu stronach każdego z nich. Na drugim rysunku przedstawiono efekt przesunięcia jednego z tych uchwytów. Uchwyty typu Bézier poruszają się symetrycznie względem wierzchołka, a zatem uniesienie jednego powoduje jednoczesne opuszczenie przeciwległego. Na trzecim obrazku przedstawiony jest wierzchołek Bézier Corner, którego uchwyty można przeciągać niezależnie, tworząc ostre narożniki. Z kolei na czwartym obrazku widać dwa zaznaczone wierzchołki Bézier Corner, których uchwyty zostały przesunięte przy włączonych opcjach Lock Handles i Alike. Powodują one, że lewe uchwyty obu wierzchołków poruszają się razem. Na ostatnim obrazku zademonstrowano sytuację, w której na skutek włączenia opcji Lock Handles i All uchwyty wszystkich wyselekcjonowanych wierzchołków poruszają się jednocześnie. Rysunek 12.20. Przesuwanie uchwytów wierzchołków wpływa na kształt splajnów

Czteroczęściowe menu kontekstowe zawiera polecenie Reset Tangents. Jego użycie sprawia, że uchwyty zaznaczonego wierzchołka wracają do położeń, które zajmowały przed przesunięciem.

Refine (doprecyzuj) Przycisk Refine pozwala dodawać nowe wierzchołki do splajnu, bez wpływu na jego krzywiznę. Zwiększona liczba wierzchołków umożliwia bardziej dokładną edycję kształtu splajnu. Po wciśnięciu przycisku Refine wystarczy kliknąć splajn tam, gdzie ma się pojawić nowy wierzchołek i zostanie utworzony.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

401

Opcja Connect (połącz) powoduje utworzenie nowego segmentu łączącego dwa kolejne nowo utworzone wierzchołki6. Powstałe w ten sposób segmenty stają się widoczne dopiero po wyłączeniu przycisku Refine. Dzięki tej opcji możliwe jest konstruowanie kopii fragmentów istniejącego splajnu. Kiedy opcja Connect jest włączona, wówczas dostępne stają się także opcje Linear (liniowy), Closed (zamknięty), Bind First (zwiąż pierwszy) oraz Bind Last (zwiąż ostatni). Pierwsza, czyli Linear, pozwala tworzyć wierzchołki typu Corner, z przyłączonymi do nich segmentami prostoliniowymi. Opcja Closed zamyka splajn, łącząc pierwszy wierzchołek z ostatnim. Opcje Bind First oraz Bind Last przyłączają pierwszy i ostatni wierzchołek do środków segmentów wskazanych pierwszym i ostatnim kliknięciem. Funkcji Refine można użyć tylko w trybach podobiektów Vertex i Segment.

Weld oraz Fuse (spawaj i stapiaj) Po wyselekcjonowaniu dwóch końcowych wierzchołków znajdujących się w odległości mniejszej niż wartość parametru Weld Threshold (ustawiana w polu obok przycisku Weld) można je zespawać w jeden wierzchołek, korzystając z przycisku Weld. Spawać można wiele wierzchołków jednocześnie, pod warunkiem że odległości między nimi nie przekraczają wspomnianej wartości progowej Weld Threshold. Za pomocą przycisku Weld można łączyć jedynie końcowe wierzchołki splajnu7.

Przycisk stapiania (Fuse) ma działanie podobne jak Weld, z tą jednak różnicą, że jego użycie nie powoduje usunięcia jakiegokolwiek z łączonych wierzchołków. W tym przypadku wierzchołki umieszczane są jeden nad drugim, w uśrednionej pozycji. Na lewym obrazku z rysunku 12.21 przedstawiono kształt gwiazdy z zaznaczonymi wierzchołkami w dolnej części. Obrazek środkowy prezentuje tę samą gwiazdę, ale po zespawaniu wyselekcjonowanych wierzchołków. Natomiast obrazek po prawej uwidacznia efekty użycia funkcji Fuse. W tym przypadku z informacji w rolecie Selection wynika, że wciąż zaznaczonych jest pięć wierzchołków. Rysunek 12.21. Pięć wierzchołków gwiazdy zostało połączonych przy użyciu funkcji Weld i Fuse

Przycisk Fuse umożliwia umieszczenie zaznaczonych wierzchołków w jednym, dokładnie tym samym punkcie. Cała operacja polega na wyselekcjonowaniu wierzchołków i kliknięciu przycisku Fuse. Wierzchołki zostają wówczas zsunięte w jedno miejsce. Po zsunięciu, klikając przycisk Weld, można je zespawać w pojedynczy wierzchołek.

6

Aby opcja Connnect zadziałała, należy ją włączyć przed kliknięciem przycisku Refine — przyp. tłum.

7

Nie jest to do końca prawdą, bo w ten sposób można spawać także wierzchołki leżące wewnątrz splajnu, ale muszą to być wierzchołki kolejne — przyp. tłum.

402

Część III  Podstawy modelowania

Connect (połącz) Kliknięcie przycisku Connect pozwala łączyć wierzchołki końcowe za pomocą nowej linii. Funkcja ta działa tylko w odniesieniu do wierzchołków końcowych, a nie punktów łączących poszczególne segmenty splajnu. Aby z niej skorzystać, należy kliknąć przycisk Connect i przeciągnąć myszą od jednego punktu końcowego do drugiego (gdy kursor znajduje się nad właściwym miejscem, zamienia się w symbol plus) i zwolnić jej przycisk. Na pierwszym obrazku z rysunku 12.22 przedstawiono nieukończoną gwiazdę, utworzoną z parametrycznych kształtów Line. Na obrazku środkowym widać linię rysowaną pomiędzy dwoma punktami końcowymi (zwróć uwagę na kursor), a na trzecim — gotową gwiazdę. Rysunek 12.22. Funkcja Connect pozwala łączyć punkty końcowe kształtów

Make First (uczyń pierwszym) Opcja Show Vertex Numbers, dostępna w rolecie Selection, służy do wyświetlania numerów wierzchołków. Pierwszy z nich oznaczany jest kolorem żółtym. Przycisk Make First daje możliwość wskazania innego wierzchołka, który ma być pierwszy w danym splajnie. W tym celu zaznacz wybrany wierzchołek i kliknij przycisk Make First. Jeżeli zaznaczono więcej wierzchołków, wówczas Max ignoruje polecenie, podobnie jak wtedy, gdy zaznaczony jest splajn otwarty (w tym drugim przypadku wyselekcjonowany musi być punkt końcowy). Kolejność (numeracja) wierzchołków ma szczególnie duże znaczenie podczas definiowania ścieżek animacji oraz wytłaczania obiektów typu Loft.

Cycle (przejdź do następnego) Kiedy wyselekcjonowany jest pojedynczy wierzchołek, wtedy kliknięcie przycisku Cycle powoduje zaznaczenie następnego wierzchołka w kolejności numeracji. Przycisku tego można używać tak w otwartych, jak i zamkniętych splajnach. Numer bieżącego wierzchołka wyświetlany jest u dołu rolety Selection. Funkcja przydatna jest do lokalizowania poszczególnych wierzchołków w grupach, gdy znajdują się bardzo blisko jeden drugiego, np. na skutek stopienia.

CrossInsert (wstaw w punkcie przecięcia) Gdy dwa splajny będące częściami tego samego obiektu nachodzą na siebie, wówczas, korzystając z przycisku CrossInsert, można do nich dodać wierzchołki w punktach, w których się pokrywają. Aby funkcja zadziałała, oba splajny muszą znajdować się w odległości mniejszej niż określona wartością Threshold (ustawianą w polu obok przycisku). Należy jednak zwrócić uwagę, że użycie przycisku CrossInsert nie powoduje łączenia splajnów; tworzone są jedynie nowe wierzchołki. Gdy zechcemy te splajny połączyć,

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

403

musimy użyć przycisku Weld. Na rysunku 12.23 zaprezentowano sposób wykorzystania przycisku CrossInsert do utworzenia wierzchołków w miejscach przecinania się dwóch eliptycznych splajnów. Zauważ, że w rezultacie liczba wierzchołków każdej z elips uległa podwojeniu i wynosi osiem. Rysunek 12.23. Przycisk CrossInsert umożliwia tworzenie wierzchołków w miejscach przecinania się dwóch splajnów, należących do tego samego obiektu

Fillet (zaokrąglij) Przycisk Fillet pozwala na zaokrąglenie narożników splajnu, w których łączą się dwie krawędzie. Aby użyć tej funkcji, kliknij przycisk Fillet, a następnie przeciągnij myszą w oknie widokowym nad wierzchołkiem narożnym. Im dłuższe będzie owo przeciągnięcie, tym bardziej narożnik zostanie zaokrąglony. Zaokrąglenie dla wyselekcjonowanych wierzchołków możesz też określić liczbowo za pomocą spinera, który znajduje się obok opisywanego przycisku. Dopuszczalna wartość maksymalna wynika z geometrii splajnu. Na rysunku 12.24 przedstawiono rezultaty zastosowania funkcji Fillet z wartościami 10, 15 i 20. Zwróć uwagę, że każdy z wyselekcjonowanych wierzchołków podzielony został na dwa. Rysunek 12.24. Funkcja Fillet służy do zaokrąglania narożników kształtu

Należy unikać wielokrotnego stosowania funkcji Fillet w odniesieniu do tych samych narożników. Jeśli nowe wierzchołki skrzyżują się ze sobą, mogą pojawić się problemy z wyrównaniem normalnych, a to z kolei może prowadzić do zaburzeń przy stosowaniu modyfikatorów. Zaokrąglać można wiele narożników jednocześnie, zaznaczając je, klikając przycisk Fillet i przeciągając myszą w oknie widokowym.

Chamfer (zetnij) Działanie przycisku Chamfer jest podobne do opisanego wyżej przycisku Fillet, z tą jednakże różnicą, że narożniki zastępowane są prostoliniowymi segmentami, a nie gładkimi krzywymi. Dzięki temu kształt wynikowy jest mniej skomplikowany, a jego narożniki pozostają ostre. Aby użyć funkcji Chamfer, zaznacz wierzchołki, kliknij przycisk Chamfer i przeciągnij myszą nad jednym z wierzchołków. Wielkość ścięcia można też określić w rolecie, wprowadzając stosowną wartość Chamfer. Na rysunku 12.25 zaprezentowano efekty zastosowania funkcji Chamfer z ustawieniami 10, 15 i 20.

404

Część III  Podstawy modelowania

Rysunek 12.25. Funkcja Chamfer zmienia wygląd narożników splajnu

Tangent Copy oraz Tangent Paste (kopiuj uchwyt i wklej uchwyt) Jeśli poświęciłeś sporo czasu i wysiłku na precyzyjne ustawienie uchwytów wierzchołków Corner czy Bézier Corner, to odtworzenie tych dokładnych ustawień w innym miejscu może być dość trudne. Warto wówczas skorzystać z przycisków Tangent Copy oraz Tangent Paste, które pomogą Ci skopiować owe starannie dopracowane ustawienia z jednego uchwytu na inne. W tym celu wystarczy kliknąć wierzchołek „źródłowy”, następnie przycisk Copy, wyselekcjonować wierzchołek docelowy i kliknąć przycisk Paste. Włączenie opcji Paste Length pozwala skopiować nie tylko orientację uchwytów, ale także ich długość.

Hide/Unhide All (ukryj/pokaż wszystko) Przyciski Hide oraz Unhide All służą do ukrywania i wyświetlania podobiektów splajnów. Można ich używać w każdym trybie podobiektu. Aby ukryć podobiekt, należy go zaznaczyć i kliknąć przycisk Hide. Aby wyświetlić wszystkie ukryte podobiekty, wystarczy kliknąć przycisk Unhide All.

Bind/Unbind (przywiąż/odwiąż) Kliknięcie przycisku Bind powoduje przywiązanie wierzchołka końcowego do wybranego segmentu. Wierzchołek ten nie może wówczas być przesuwany niezależnie, a jedynie jako element segmentu. Przycisk Unbind pozwala zerwać powiązania i przywrócić możliwość niezależnego przemieszczania wierzchołka. Włącz przycisk Bind, a następnie przeciągnij myszą od wierzchołka do segmentu, do którego chcesz go dowiązać. Gdy chcesz opuścić tryb Bind, kliknij w oknie widokowym prawym przyciskiem myszy albo wyłącz przycisk Bind. Widoczny na rysunku 12.26 okrąg został przekonwertowany do postaci Editable Spline. Po zaznaczeniu prawego wierzchołka użyto przycisku Break, aby uzyskać dwa wierzchołki końcowe. Następnie po naciśnięciu przycisku Bind jeden z tych wierzchołków został przeciągnięty na segment po przeciwnej stronie okręgu i do niego przywiązany. Przywiązanie to utrzymuje wierzchołek na segmencie także podczas przesuwania całego splajnu. Rysunek 12.26. Po kliknięciu przycisku Bind jeden z wierzchołków okręgu został przywiązany do przeciwległego segmentu

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

405

Delete (usuń) Przycisk Delete usuwa zaznaczony podobiekt. Za jego pomocą można usuwać wierzchołki, segmenty, a także całe splajny. Taki sam efekt daje wciśnięcie klawisza Delete. Przycisk jest aktywny w każdym trybie edycji podobiektów.

Show Selected Segments (pokaż zaznaczone segmenty) Opcja Show Selected Segs powoduje, że dowolny, wyselekcjonowany segment pozostaje wyróżniony zarówno w trybie Segment, jak i Vertex. Zatem funkcja ta ułatwia śledzenie segmentów podczas edycji wierzchołków.

Ćwiczenie: Tworzenie gwiazdki ninja Jeśli zajmujesz się tworzeniem gier walki lub jesteś ich miłośnikiem, to być może, patrząc na kształt parametryczny Star, pomyślałeś: „Hm, on doskonale nadawałby się do wymodelowania gwiazdki ninja”. Jeśli nie, przynajmniej udawaj, że tak było. Aby, korzystając ze splajnów, utworzyć model gwiazdki ninja, wykonaj następujące czynności. 1. Kliknij prawym przyciskiem myszy którykolwiek z przycisków Snap na głównym pasku narzędziowym, po czym zaznacz opcję Grid Points w oknie dialogowym Grid and Snap Settings. Następnie włącz przycisk Snaps Toggle (albo wciśnij klawisz S). W ten sposób włączysz przyciąganie kursora do siatki konstrukcyjnej. 2. Wybierz polecenie Create/Shapes/Circle i przeciągnij myszą od środkowego punktu siatki w oknie widokowym Top, tworząc okrąg. 3. Wybierz polecenie Create/Shapes/Star i znów przeciągnij myszą w oknie widokowym Top, poczynając od tego samego punktu. Tym sposobem utworzysz gwiazdę centrycznie wyrównaną względem okręgu. Gwiazda powinna być około trzykrotnie większa od okręgu. Wartość Points ustaw na 10. 4. Zaznacz kształt gwiazdy, kliknij go prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Convert To/Editable Spline. Kliknij przycisk Attach znajdujący się na panelu Modify, a po nim kształt okręgu. Następnie kliknij ikonę Vertex w rolecie Selection (albo wciśnij klawisz 1), aby włączyć tryb edycji wierzchołków. 5. Wciśnij przycisk Create Line, który znajduje się w rolecie Geometry; kliknij górny wierzchołek okręgu, a następnie dolny. Zakończ kreślenie linii, klikając prawym przyciskiem myszy. Wyłącz tryb Create Line ponownym kliknięciem prawym przyciskiem myszy. 6. Zaznacz górny wierzchołek linii, którą właśnie utworzyłeś (uważaj, żeby zamiast niego nie zaznaczyć górnego wierzchołka okręgu; jeśli masz trudności z odnalezieniem właściwego punktu, użyj funkcji Cycle). Kliknij go prawym przyciskiem myszy i w podręcznym menu wybierz opcję Bézier jako typ wierzchołka. Następnie przeciągnij jego dolny uchwyt na lewy wierzchołek

406

Część III  Podstawy modelowania

okręgu. Podobne czynności wykonaj na dolnym wierzchołku linii, tym razem jednak przeciągnij górny uchwyt na prawy wierzchołek okręgu. Tym sposobem utworzysz symbol yin-yang na środku gwiazdki ninja. 7. Wciśnij klawisz Ctrl i zaznacz wszystkie wewnętrzne wierzchołki kształtu gwiazdy. Kliknij przycisk Chamfer, w polu obok ustaw taką wartość, aby gwiazda przyjęła wygląd, taki jak na rysunku 12.27, i ponownie kliknij przycisk Chamfer, aby go wyłączyć. Gotową gwiazdkę przedstawiono na rysunku 12.27.

Rysunek 12.27. Ukończona gwiazdka ninja gotowa do akcji (albo wytłaczania)

Edycja segmentów Aby dokonać edycji segmentu, należy włączyć tryb Segment, wybierając go w stosie modyfikatorów albo klikając odpowiednią ikonę w rolecie Selection. Ponowne kliknięcie jednego albo drugiego elementu wyłącza tryb. Segmenty są odcinkami bądź łukami łączącymi dwa wierzchołki. Wiele funkcji służących do edycji segmentów działa tak samo jak podczas edycji wierzchołków. Zaznaczać można wiele segmentów jednocześnie, klikając je kolejno z wciśniętym klawiszem Ctrl. Wciśnięcie klawisza Alt pozwala natomiast wykluczać pojedyncze segmenty z zaznaczenia. Ponadto klawisz Shift umożliwia kopiowanie przekształcanych segmentów. Klonowane segmenty są odłączane od źródłowych splajnów, ale pozostają częściami tego samego obiektu Editable Spline. Segmenty można zmieniać z prostoliniowych w zakrzywione, klikając je prawym przyciskiem myszy i wybierając opcję Line lub Curve z kontekstowego menu. Jednakże zakrzy-

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

407

wianie segmentów, które zostały utworzone po wybraniu typu wierzchołków Corner, nie jest możliwe. Obustronnemu przekształcaniu można natomiast poddawać linie tworzone z wierzchołkami Smooth lub Bézier. Kilka spośród przycisków w rolecie Geometry działa w więcej niż jednym trybie edycji podobiektów.

Connect Copy (połącz kopię) Kiedy tworzysz kopię segmentu, przeciągając go z wciśniętym klawiszem Shift, możesz wówczas użyć opcji Connect Copy. Jej uaktywnienie powoduje, że skopiowany segment zostaje połączony ze źródłowym nowymi segmentami. Jeżeli przykładowo opisanym sposobem skopiujesz ułożoną poziomo linię, przeciągając ją pionowo ku górze, to w efekcie działania funkcji Connect Copy powstanie prostokąt. Pamiętaj jednak, że wierzchołki połączone z segmentem źródłowym nie są do niego przyspawane.

Divide (podziel) Po zaznaczeniu segmentu dostępny staje się też przycisk Divide. Jego działanie polega na tworzeniu nowych wierzchołków segmentu, w liczbie podanej przez użytkownika. Rozmieszczenie nowych wierzchołków w obrębie segmentu jest zależne od jego krzywizny — tam, gdzie krzywizna jest większa, umieszczanych jest więcej wierzchołków. Na rysunku 12.28 przedstawiono sześciokąt po wyselekcjonowaniu wszystkich sześciu segmentów, wprowadzeniu wartości 1 jako liczby podziałów i kliknięciu przycisku Divide. Rysunek 12.28. Przycisk Divide pozwala tworzyć nowe segmenty splajnu

Detach (odłącz) Przycisk Detach służy do oddzielania wyselekcjonowanych podobiektów od reszty obiektu (działanie odwrotne w stosunku do przycisku Attach). Kliknięcie tego przycisku otwiera okno dialogowe Detach, którego możesz użyć do nadania nazwy odłączonemu podobiektowi. Przy odłączeniu segmentów możesz użyć opcji Same Shape, która sprawia, że segmenty pozostają częścią oryginalnego obiektu. Natomiast opcja Reorient dopasowuje położenie i orientację odłączonego podobiektu do aktywnej siatki konstrukcyjnej, a opcja Copy pozwala utworzyć jego kopię. Przycisku Detach można używać w trybach Spline i Segment.

408

Część III  Podstawy modelowania

Ćwiczenie: Tworzenie prostego modelu kwiatu przy użyciu funkcji Connect Copy Coonect Copy to jedna z tych funkcji, po poznaniu których zaczynasz się zastanawiać, jak dawałeś sobie radę do tej pory. W tym ćwiczeniu, wykorzystując kształt okręgu i funkcję Connect Copy, utworzysz nieskomplikowany model kwiatu. Aby zbudować model kwiatu, korzystając z funkcji Connect Copy, wykonaj, co następuje. 1. Wybierz polecenie Create/Shapes/Circle i przeciągnij myszą w oknie widokowym Top, tworząc zwykły okrąg. 2. Kliknij okrąg prawym przyciskiem myszy i z podręcznego menu wybierz polecenie Convert To/Convert to Editable Spline. 3. W stosie modyfikatorów zaznacz tryb Segment (skrót klawiszowy to 2), a następnie włącz opcję Connect w sekcji Connect Copy. 4. Zaznacz jeden z segmentów tworzących okrąg, po czym wciśnij klawisz Shift i przeciągnij segment w kierunku od środka okręgu. W ten sam sposób utwórz kopie pozostałych trzech segmentów. Na rysunku 12.29 zademonstrowano wynik ćwiczenia. Funkcja Connect Copy pozwala nie martwić się o linie łączące segmenty.

Rysunek 12.29. Funkcja Connect Copy łączy nowe kopie segmentów z ich oryginałami

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

409

Roleta Surface Properties (właściwości powierzchni) Podczas pracy z podobiektami Segment i Spline użytkownik uzyskuje dostęp do rolety Surface Properties, która umożliwia przypisywanie podobiektom identyfikatorów materiałów (Materials ID). Identyfikatory te są wykorzystywane wraz z materiałami Multi/Sub-Object dostępnymi w edytorze materiałów. Przykładowo załóżmy, że za pomocą kilku splajnów utworzyliśmy model drogi, przy czym wszystkie te splajny wchodzą w skład jednego obiektu. W takiej sytuacji jeden identyfikator materiału możemy przypisać liniom brzegowym, które będą krawężnikami, a inny identyfikator — liniom oddzielającym pasy ruchu. Później dzięki tym identyfikatorom będzie można poszczególnym częściom drogi przypisać odpowiednie materiały. Informacje na temat identyfikatorów materiałów znajdziesz w rozdziale 16, „Tworzenie i stosowanie materiałów standardowych”.

Korzystając z przycisku Select ID oraz sąsiadującego z nim pola edycyjnego, możesz odszukać i zaznaczyć wszystkie podobiekty, którym przypisany został określony identyfikator materiału. Wystarczy w polu wpisać identyfikator, którego poszukujesz, i kliknąć przycisk Select ID. Wówczas zostaną wyselekcjonowane wszystkie segmenty (lub splajny) z tym identyfikatorem. Poniżej przycisku Select ID znajduje się inna rozwijana lista, która umożliwia zaznaczanie segmentów w oparciu o nazwy materiałów. Opcja Clear Selection powoduje, że po kliknięciu przycisku Select ID są anulowane wszystkie dotychczasowe zaznaczenia. Gdy jest nieaktywna, wtedy nowe zaznaczenia są dodawane do bieżącego zestawu.

Edycja podobiektów na poziomie splajnów Aby przeprowadzić edycję całej krzywej wchodzącej w skład złożonego obiektu typu Editable Spline, należy w stosie modyfikatorów wybrać podobiekt Spline albo w rolecie Selection kliknąć odpowiadającą mu ikonę. Przekształcenia obiektów składających się z pojedynczego splajnu dokonywane w trybie Spline dają te same efekty, co transformacje całego obiektu za pomocą standardowych narzędzi. Włączenie trybu podobiektu pozwala na przesuwanie względem siebie splajnów tworzących obiekt. Kliknięcie splajnu prawym przyciskiem myszy w trybie podobiektu otwiera menu kontekstowe, w którym dostępne są opcje przekształcające splajn w linię łamaną (Line) bądź krzywą (Curve). Opcja Curve zamienia typ wszystkich wierzchołków splajnu na Bézier, a opcja Line — na Corner. Tryb Spline zapewnia dostęp do wielu omawianych już przycisków w rolecie Geometry, jak również do kilku specyficznych narzędzi.

Reverse (odwróć) Przycisk Reverse jest aktywny tylko w trybie edycji splajnów. Jego działanie polega na odwracaniu kolejności numeracji wierzchołków. Przykładowo wierzchołki okręgu są numerowane od 1 do 4, w kierunku zgodnym z ruchem wskazówek zegara. Po kliknięciu przycisku Reverse numeracja biegnie w kierunku przeciwnym. Kolejność wierzchołków ma szczególne znaczenie w przypadku splajnów wykorzystywanych podczas tworzenia ścieżek animacji lub obiektów złożonych typu Loft.

410

Część III  Podstawy modelowania

Outline (obrysuj) Przycisk Outline tworzy splajn identyczny z zaznaczonym, odsuwając go na odległość określoną dystansem przeciągnięcia albo wartością Offset. Włączenie opcji Center sprawia, że obrys tworzony jest po obu stronach splajnu, symetrycznie względem oryginału. Gdy opcja Center jest wyłączona, wtedy kopia splajnu powstaje tylko po jednej jego stronie. Aby opuścić tryb Outline, wystarczy ponownie nacisnąć przycisk albo kliknąć prawym przyciskiem myszy w oknie widokowym. Na rysunku 12.30 przedstawiono łuk, który przekształcono przy użyciu funkcji Outline. Na obrazku pierwszym od prawej widać efekt włączenia opcji Center. Rysunek 12.30. Przycisk Outline pozwala utworzyć kopię oryginalnego splajnu i odsunąć ją od niego

Boolean Operacje boolowskie można przeprowadzać po zaznaczeniu co najmniej dwóch nachodzących na siebie splajnów. Splajny te można przekształcić w trojaki sposób: połączyć je w jeden wspólny splajn (Union), odjąć obszar pokrywania się splajnów od jednego z nich (Subtraction) lub odrzucić wszystkie fragmenty splajnów poza obszarem wspólnym (Intersection). Operacjom boolowskim można poddawać też bryły 3D, o czym będzie mowa w rozdziale 27., „Obiekty złożone”.

Przycisk Boolean działa w odniesieniu do pokrywających się splajnów zamkniętych i oferuje trzy opcje — Union, Subtract i Intersection — ich ikony przedstawione są w tabeli 12.3. Splajny muszą być częściami tego samego obiektu. Opcja Union pozwala połączyć obszary obu splajnów, Subtraction daje możliwość usunięcia całego obszaru jednego ze splajnów, zaś opcja Intersection pozostawia wyłącznie obszar będący częścią wspólną obu splajnów. Tabela 12.3. Opcje działania przycisku Boolean Przycisk

Opis Union (suma) Subtraction (różnica) Intersection (część wspólna)

Aby użyć funkcji Boolean, zaznacz jeden ze splajnów i wybierz typ operacji boolowskiej. Następnie kliknij przycisk Boolean i zaznacz drugi splajn. W zależności od typu operacji, jaki wybrałeś, połączone zostaną obszary obu splajnów, drugi splajn odetnie od pierw-

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

411

szego obszar, na którym się z nim pokrywał, lub też pozostanie jedynie obszar pokrywania się obu splajnów. Gdy chcesz wyłączyć tryb Boolean, kliknij w oknie widokowym prawym przyciskiem myszy. Operacje boolowskie mogą być dokonywane wyłącznie na zamkniętych splajnach, leżących na tej samej płaszczyźnie w przestrzeni.

Na rysunku 12.31 zilustrowano rezultaty zastosowania operatorów boolowskich na splajnach okręgu i gwiazdy. Na pierwszym obrazku przedstawiono oba splajny przed zastosowaniem funkcji Boolean. Na obrazku drugim zademonstrowano efekty użycia opcji Union, na trzecim (najpierw zaznaczono okrąg) i czwartym (jako pierwsza zaznaczona została gwiazda) widać splajny po zastosowaniu opcji Subtraction, a na piątym — po zastosowaniu opcji Intersection.

Rysunek 12.31. Efekty wykonania operacji boolowskich na dwóch nakładających się splajnach

Mirror (utwórz odbicie lustrzane) Funkcja Mirror tworzy lustrzane odbicia splajnów w pionie, w poziomie lub w obu osiach jednocześnie. Aby z niej skorzystać, należy zaznaczyć splajn i odszukać przycisk Mirror. Po jego prawej stronie widnieją trzy mniejsze przyciski, z których każdy odpowiada innemu kierunkowi odbicia — poziomemu (Mirror Horizontally), pionowemu (Mirror Vertically) oraz dwuosiowemu (Mirror Both) — przedstawiono je w tabeli 12.4. Najpierw należy wybrać kierunek odbicia, a następnie kliknąć przycisk Mirror. Jeśli włączona jest opcja Copy, wówczas odbicie splajnu tworzone jest jako jego kopia. Włączenie opcji About Pivot powoduje natomiast, że odbicie tworzone jest względem środka obrotu obiektu, a nie splajnu. Tabela 12.4. Opcje przycisku Mirror Przycisk

Opis Mirror Horizontally (odbicie w poziomie) Mirror Vertically (odbicie w pionie) Mirror Both (odbicie w obu kierunkach)

Na rysunku 12.32 przedstawiono sylwetkę stworka odbitą poziomo, pionowo i w obu kierunkach. Poziome odbicie na obrazku z prawej powstało po wyłączeniu opcji About Pivot. Zauważ, że splajn oka został odbity względem własnego środka obrotu.

412

Część III  Podstawy modelowania

Rysunek 12.32. Tworzenie odbić kształtu jest bardzo proste i sprowadza się do wybrania kierunku i kliknięcia przycisku Mirror

Trim oraz Extend (przytnij i wydłuż) Przycisk Trim pozwala odcinać fragmenty pokrywających się splajnów wyznaczone punktami przecięcia. Oba splajny muszą być elementami tego samego obiektu. Aby użyć funkcji Trim, zaznacz splajn, który chcesz zachować w całości, kliknij przycisk Trim, a po nim tę część drugiego splajnu, którą chcesz usunąć. Przycisk Trim działa wyłącznie w trybie edycji splajnów. Przycinanie jest zależne od aktywnego okna widokowego. Gdy aktywny jest widok perspektywiczny lub z kamery, wówczas przycinanie odbywa się tak, jakby aktywny był widok z góry. Na rysunku 12.33 widać okrąg przecięty przez dwie elipsy. Środkowe części elips zostały usunięte za pomocą przycisku Trim. Rysunek 12.33. Przycisk Trim pozwala usunąć zbędne segmenty splajnu

Przycisk Extend ma działanie odwrotne w stosunku do przycisku Trim. Polega ono na wydłużaniu splajnu do najbliższego punktu przecięcia. (Aby funkcja zadziałała, musi istnieć inny segment, z którym przedłużony splajn mógłby się przeciąć). By użyć funkcji Extend, kliknij przycisk Extend, a następnie segment, który chcesz wydłużyć. Splajn, który klikniesz, zostanie wydłużony. W celu wyłączenia trybu Extend kliknij prawym przyciskiem myszy w oknie widokowym albo ponownie naciśnij przycisk Extend. Opcja Infinite Bounds współpracuje z dwoma przyciskami Trim i Extend. Po jej włączeniu wszystkie otwarte splajny dla celów wyszukiwania punktu przecięcia traktowane są tak, jakby ich długość była nieskończona. Działanie funkcji Trim i Extend zależy od tego, jakie okno widokowe jest aktywne.

Close (zamknij) Przycisk Close zamyka otwarty splajn, tworząc nowy segment łączący oba wierzchołki końcowe. Możesz sprawdzić, który z nich jest wierzchołkiem pierwszym, włączając opcję Show Vertex Numbers w rolecie Selection. Przycisk działa więc podobnie jak funkcja Connect (dostępna w trybie podobiektu Vertex), z tą jednak różnicą, że ta ostatnia pozwala łączyć punkty końcowe odrębnych splajnów, o ile tylko są one częściami jednego obiektu Editable Spline. Funkcja Close działa tylko w trybie podobiektu Spline i pozwala łączyć punkty końcowe pojedynczych splajnów.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

413

Explode (rozbij) Działanie funkcji Explode polega na wykonaniu polecenia Detach w odniesieniu do wszystkich zaznaczonych splajnów jednocześnie. Każdy segment staje się wówczas odrębnym splajnem. Istnieje przy tym możliwość przekształcania poszczególnych elementów w osobne splajny (opcja Splines) lub obiekty (opcja Objects). Po wybraniu drugiej opcji pojawia się okno dialogowe, w którym należy wpisać nazwę. Każdy wynikowy splajn oznaczany jest tą nazwą, uzupełnioną dwucyfrowym numerem, umożliwiającym rozróżnianie splajnów.

Ćwiczenie: Rozpinanie pajęczyny Skoro wiesz już tak dużo na temat edycji splajnów, spróbuj wcielić się w jednego z najlepszych ich twórców — w pająka. Pająk jest ekspertem w zakresie łączenia nici i tworzenia intrygujących wzorów. (Na szczęście, w przeciwieństwie do pająka, niepowodzenie w wykonaniu tego ćwiczenia nie grozi Ci głodem). Aby utworzyć model pajęczyny, składający się ze splajnów, wykonaj następujące czynności. 1. Wybierz polecenie Create/Shapes/Circle i w oknie widokowym Front narysuj okrąg o średnicy odpowiadającej średnicy pajęczyny (załóżmy, że pająk rozpina swoją sieć wewnątrz opony). Kliknij okrąg prawym przyciskiem myszy i przekonwertuj go, wybierając z menu kontekstowego polecenie Convert To/Editable Spline. 2. Wybierz podobiekt Spline w stosie modyfikatorów (albo wciśnij klawisz 3), by uaktywnić tryb edycji splajnów. 3. Włącz przycisk Create Line, znajdujący się w rolecie Geometry, po czym kliknij w środku okręgu, a następnie po jego zewnętrznej stronie, tworząc linię. Zakończ rysowanie linii, klikając prawym przyciskiem myszy. Powtórz tę czynność jeszcze 11 razy, tworząc kolejne linie, rozchodzące się promieniście od środka okręgu. 4. W głównym pasku narzędzi wybierz i kliknij prawym przyciskiem myszy przycisk 2D Snaps Toggle. W oknie dialogowym Grid and Snap Settings włącz opcje Vertex i Edge/Segment, a następnie zamknij okno. Nie opuszczając trybu Create Line, kliknij w środku okręgu i utwórz krótkie odcinki spiralnie łączące linie promieniowe, klikając w każdym punkcie przecięcia. Kiedy dotrzesz do krawędzi okręgu, kliknij prawym przyciskiem myszy, a opuścisz tryb Create Line. 5. Zaznacz kształt okręgu i kliknij przycisk Trim. Następnie kliknij kolejno wszystkie segmenty linii wystające poza okrąg. W ten sposób wyrównasz linie promieniowe do jego krawędzi. Ponownym kliknięciem przycisku Trim wyłącz tryb przycinania. 6. Zmień tryb podobiektu na Vertex, dokonując wyboru w stosie modyfikatorów (lub za pomocą klawisza 1). Wyłącz funkcję przyciągania, zaznacz wszystkie wierzchołki w środku okręgu i kliknij przycisk Fuse. Na rysunku 12.34 przedstawiono ukończoną pajęczynę. (Uszanowanie dla pająka).

414

Część III  Podstawy modelowania

Rysunek 12.34. Pajęczyna wykonana z edytowalnych splajnów

Korzystanie z modyfikatorów splajnów Menu Modifiers zawiera osobne podmenu modyfikatorów, które przeznaczone są wyłącznie do edycji splajnów. Znajdziesz je, otwierając podmenu Modifiers/Patch/Spline Editing.

Modyfikatory specyficzne dla splajnów Niektóre spośród modyfikatorów działających wyłącznie na splajnach, np. Fillet/Chamfer, powielają funkcje dostępne podczas edycji obiektów Editable Spline. Użycie tych funkcji poprzez zastosowanie modyfikatora zapewnia pełniejszą kontrolę nad efektami modyfikacji, ponieważ pozwala w dowolnym momencie je cofnąć. Następuje to po usunięciu modyfikatora ze stosu.

Modyfikator Edit Spline Modyfikator Modifiers/Patch/Spline Editing/Edit Spline (wspomniany na początku rozdziału) daje możliwość edycji kształtów parametrycznych za pomocą narzędzi charakterystycznych dla edytowalnych splajnów. Kształty z tym modyfikatorem mają wszystkie cechy obiektów typu Editable Spline. Edit Spline nie jest tak naprawdę modyfikatorem, a typem obiektu. Wyświetlany jest w stosie modyfikatorów nad obiektem bazowym. Kluczową korzyścią wynikającą z użycia modyfikatora Edit Spline jest to, że do pewnego stopnia umożliwia on edycję podobiektów bez utraty parametrycznej natury obiektu podstawowego.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

415

Modyfikator Spline Select Modyfikator ten pozwala zaznaczać podobiekty splajnów, w tym Vertex, Segment i Spline. Daje też możliwość kopiowania i wklejania oznaczonych nazwą zestawów zaznaczenia. Zaznaczenie może być przekazywane w górę stosu do kolejnego modyfikatora. Spline Select umożliwia więc ograniczanie działania modyfikatorów do zaznaczonych podobiektów. Modyfikator Modifiers/Selection/Spline Select umożliwia zaznaczanie podobiektów w dowolnym trybie dostępnym dla obiektów typu Editable Spline. Wyposażony jest też w przyciski pozwalające na zaznaczanie podobiektów w oparciu o tryb edycji innego podobiektu. Jeśli np. włączysz tryb Vertex, w rolecie Select Vertex ujrzysz przyciski Get Segment Selection oraz Get Spline Selection. Kliknięcie któregoś z nich powoduje zaznaczenie wszystkich wierzchołków należących do podobiektu innego typu. Zestawy zaznaczenia można kopiować i wklejać, korzystając z przycisków Copy i Paste.

Modyfikator Delete Spline Za pomocą modyfikatora Delete Spline można usuwać zaznaczone podobiekty splajnów. Jest to przydatne, gdy chcemy usunąć splajn z obiektu bez zmiany krzywizny pozostałych splajnów. Aby tego dokonać, w trybie edycji splajnów zaznacz te, które chcesz usunąć, a następnie zastosuj modyfikator Delete Spline. Zaznaczenie zostanie przekazane w górę stosu.

Modyfikator Normalize Spline Działanie modyfikatora Normalize Spline polega na wstawianiu nowych wierzchołków splajnu. Są one rozmieszczane w równych odległościach, w oparciu o zakładaną długość segmentu (Segment Length). Na rysunku 12.35 przedstawiono prosty kształt kwiatka po zastosowaniu modyfikatora Spline Select, co sprawiło, że uwidocznione zostały wierzchołki. Na kolejnych obrazkach zaprezentowano efekty zastosowania Normalize Spline z ustawieniami Segment Length 1, 5, 10 i 15. Zwróć uwagę, jak wraz ze zmniejszaniem liczby wierzchołków zmienia się kształt kwiatka.

Rysunek 12.35. Modyfikator Normalize Spline upraszcza kształt poprzez usuwanie wierzchołków

Modyfikator Fillet/Chamfer Za pomocą tego modyfikatora można zaokrąglać (Fillet) lub ścinać (Chamfer) narożniki kształtów. Fillet wygładza narożniki, zaś Chamfer tworzy dodatkowy segment łączący dwie krawędzie. Parametrami modyfikatora są promień zaokrąglenia (Fillet Radius) oraz dystans ścinania (Chamfer Distance). W obu przypadkach należy użyć przycisku Apply (zastosuj).

416

Część III  Podstawy modelowania

Rezultaty zastosowania tego modyfikatora są takie same jak funkcji Fillet lub Chamfer dla obiektu Editable Spline.

Modyfikator Renderable Spline Modyfikator Renderable Spline pozwala przekształcić splajn zaznaczony w renderowalny. Roleta Parameters udostępnia te same kontrolki, co w przypadku obiektów Editable Spline, w tym Thickness, Sides i Angle.

Modyfikator Sweep Modyfikator Sweep działa jak obiekt złożony typu Loft i pozwala wytłaczać przekrój trójwymiarowej bryły wzdłuż ścieżki zdefiniowanej za pomocą splajnu. Różnicą jest to, że Sweep jest modyfikatorem, w związku z czym łatwiej się go stosuje i usuwa ze splajnów oraz kształtów. Dodatkową korzyścią ze stosowania modyfikatora Sweep jest to, że oferuje kilka gotowych wzorów przekrojów (Built-In Sections) do wyboru. Znaleźć tu można szereg wzorów przydatnych w modelowaniu architektonicznym, takich jak kątownik (Angle), belka (Bar), ceownik (Channel), walec (Cylinder), półwalec (Half Round), rura (Pipe), ćwierćwałek (Quarter Round), teownik (Tee), rura o przekroju kwadratowym (Tube) oraz dwuteownik (Wide Flange). Przycisk Merge From File (dołącz z pliku) daje możliwość wyboru kształtu z innego pliku. Możliwe jest ponadto określenie liczby kroków interpolacji. Roleta Sweep Parameters daje dostęp do opcji odbicia lustrzanego (Mirror), rozsuwania (Offset), wygładzania (Smooth), wyrównywania (Alignment) i skręcania (Banking). Opcja Union Intersections powoduje, że przecinające się fragmenty ścieżki są łączone przez wykonanie operacji boolowskiej. Możesz też użyć opcji generowania współrzędnych mapowania materiałów.

Ćwiczenie: Budowanie z rur Gdybyś chciał utworzyć kształt, który będzie renderowany w scenie, mógłbyś użyć opcji Renderable Spline albo zastosować modyfikator Sweep. W poniższym ćwiczeniu użyjesz modyfikatora, nakładając go na nieskomplikowany kształt. Aby utworzyć kształt z rur, wykonaj poniższe instrukcje. 1. Otwórz plik Bathroom sink.max, który znajdziesz w folderze Chap 12 na płycie dołączonej do książki. Plik ten zawiera model umywalki z linią określającą drogę odpływu. 2. Zaznacz splajn i wybierz polecenie Modifiers/Patch/Spline Editing/Sweep, by zastosować modyfikator Sweep. 3. Z rozwijanej listy Built-In Section znajdującej się w rolecie Section Type wybierz opcję Cylinder. Parametr Radius w rolecie Parameters ustaw na 10. Wynik w postaci umywalki z kompletnym odpływem utworzonym za pomocą przekroju cylindrycznego, przedstawiony jest na rysunku 12.36.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

417

Rysunek 12.36. Syfon odprowadzający wodę z umywalki został wykonany za pomocą modyfikatora Sweep

Modyfikator Trim/Extend Modyfikator Trim/Extend pozwala przycinać fragmenty splajnów lub wydłużać je w kierunku innych splajnów. Przycisk wyboru lokalizacji (Pick Locations) włącza tryb wybierania, w którym kursor sygnalizuje odnalezienie właściwego punktu poprzez zmianę swojego wyglądu. Dostępne operacje to działanie automatyczne (Auto), tylko przycinanie (Trim Only) oraz tylko wydłużanie (Extend Only) z opcją Infinite Boundaries. Sekcja Intersection Projection (rzutowanie przecięć) oferuje też do wyboru trzy opcje określające sposób wyznaczania punktów krzyżowania się splajnów: View (rzutowanie na płaszczyznę widoku), Construction Plane (rzutowanie na płaszczyznę siatki konstrukcyjnej) i None (3D) (bez rzutowania — splajny muszą się przecinać w przestrzeni trójwymiarowej).

Korzystanie z narzędzia Shape Check Narzędzie Shape Check sprawdza, czy dany kształt nie przecina sam siebie. Kształtów, które są skonstruowane ten sposób, nie można bezproblemowo wytłaczać ani też tworzyć z nich brył obrotowych. Aby użyć rzeczonego narzędzia, należy otworzyć panel Utilities (ikona tego panelu ma postać młotka) i kliknąć przycisk More, a następnie wybrać Shape Check z listy w oknie dialogowym Utilities i kliknąć OK. Narzędzie Shape Check jest dostępne w bocznym panelu Utilities, a nie w menu Modifiers.

418

Część III  Podstawy modelowania

Roleta Shape Check zawiera tylko dwa przyciski — wyboru obiektu (Pick Object) oraz zamykania (Close). Po kliknięciu przycisku Pick Object należy kliknąć kontrolowany obiekt. Wszelkie punkty przecięcia oznaczone zostaną czerwonymi kwadratami, co pokazano na rysunku 12.37. W polu informacyjnym pojawi się komunikat Shape Self-Intersects (kształt przecina sam siebie). Jeśli kształt nie przecina sam siebie w żadnym punkcie, wówczas wyświetlany jest komunikat Shape OK. Za pomocą narzędzia Shape Check można sprawdzać zarówno zwykłe splajny, jak i krzywe NURBS.

Rysunek 12.37. Narzędzie Shape Check potrafi wskazać miejsca przecinania się splajnu z samym sobą

Przenoszenie splajnów do trzeciego wymiaru Splajny można renderować, jednak prawdziwą korzyść ze stosowania ich w Maksie odnosi się wtedy, gdy używa się splajnów do tworzenia obiektów 3D i ścieżek animacji. Splajny można spożytkować podczas modelowania obiektów trójwymiarowych, w tym typu Loft, na wiele różnych sposobów. Jednym z nich jest przekształcanie splajnów w obiekty 3D przy użyciu modyfikatorów. Tworząc splajny z zamiarem wykorzystania ich do budowy obiektów siatkowych, należy pamiętać, że liczba wierzchołków splajnu decyduje o liczbie segmentów siatki. Jeśli np. splajn mający 10 wierzchołków zostanie wytłoczony pięciokrotnie, powstanie ponad 50 wielokątów, a jeśli w ten sam sposób zostanie wytłoczony splajn mający 80 wierzchołków, powstanie co najmniej 400 wielokątów.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

419

O stosowaniu splajnów w tworzeniu ścieżek animacji będzie mowa w rozdziale 21., „Animacja i klatki kluczowe”, zaś wytłaczane obiekty typu Loft zostaną omówione w rozdziale 27., „Obiekty złożone”. Natomiast ogólne informacje na temat korzystania z modyfikatorów zawarte zostały w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Wytłaczanie splajnów Ponieważ splajny są rysowane na płaszczyźnie dwuwymiarowej, każdy z nich posiada dwa z trzech wymiarów. Nadając kształtowi określoną wysokość, tworzymy prosty obiekt 3D. Proces ten nazywa się wytłaczaniem (extruding). Aby wytłoczyć kształt, musisz zastosować modyfikator Extrude. W tym celu zaznacz splajn i wybierz polecenie Modifiers/Mesh Editing/Extrude albo wskaż pozycję Extrude na rozwijanej liście w stosie modyfikatorów. Roleta Parameters pozwala określić parametr Amount, czyli wysokość wytłoczenia, liczbę segmentów (Segments) oraz rodzaj zakończeń (zakończenia wypełniają powierzchnię na końcach wytłoczonego splajnu) — Capping. Możesz także zdecydować, czy wynikowy obiekt ma być powierzchnią sklejaną (Patch), siatką (Mesh), czy obiektem typu NURBS. Na rysunku 12.38 przedstawiono literę E wymodelowaną z różnymi typami narożników i wytłoczeniem o wysokości 10.0. Rysunek 12.38. Wytłaczanie prostych kształtów nadaje splajnom głębię

Ćwiczenie: Frezowanie półki Frezarka w zwyczajnym warsztacie stolarskim służy do frezowania grzbietów drzwi, ram okiennych i wszelkiego typu półek. W warsztacie 3D stosuje się narzędzia Boolean. Za ich pomocą wymodelujesz teraz półkę na książki. Aby wymodelować półkę na książki, stosując operacje boolowskie, wykonaj następujące czynności. 1. Otwórz plik Bookshelf.max znajdujący się w folderze Chap 12 na płycie dołączonej do książki. Plik zawiera trójkątny kształt, narysowany za pomocą kształtu parametrycznego Line i pokrywający się z trzema okręgami. Wszystkie kształty zostały przekonwertowane i połączone w jeden obiekt typu Editable Spline. 2. Zaznacz obiekt, otwórz panel Modify i włącz tryb Spline (możesz użyć klawisza 3), po czym zaznacz trójkątny kształt. 3. W rolecie Geometry wybierz boolowską operację Subtraction (środkowa ikona) i kliknij przycisk Boolean. Kliknij kolejno wszystkie okręgi. Wyłącz tryb Boolean, klikając w oknie widokowym prawym przyciskiem myszy. Następnie kliknij ikonę Spline w stosie modyfikatorów, aby wyłączyć tryb edycji splajnów.

420

Część III  Podstawy modelowania

4. Wróć do panelu Modify, wybierz modyfikator Extrude z listy Modifier List, po czym ustaw wartość Amount na 1000. Włącz opcję Select Zoom Extens All, by zmienić skalę podglądu w oknach widokowych i ujrzeć całą półkę. Na rysunku 12.39 przedstawiony jest gotowy model półki, widziany w oknie widokowym Perspective.

Rysunek 12.39. Ukończona półka na książki, utworzona z użyciem operacji boolowskich i modyfikatora Extrude

Tworzenie brył obrotowych ze splajnów Innym, użytecznym modyfikatorem dwuwymiarowych splajnów jest Lathe. Jego działanie polega na obracaniu splajnu wokół osi, w rezultacie powstaje obiekt o kołowym przekroju (np. kij baseballowy). Roleta Parameters pozwala określić kąt obrotu (Degrees) — wartość 360 daje pełny obrót — oraz sposób domknięcia (Capping) utworzonej siatki. Dodatkowymi opcjami są Weld Core, która sprawia, że wierzchołki zajmujące to samo miejsce na osi obrotu zostają zespawane, oraz Flip Normals, której zadaniem jest ujednolicenie zwrotu wektorów normalnych. Ustawienie Direction wyznacza oś, wokół której splajn jest obracany. Obrót następuje wokół osi układu współrzędnych związanego ze środkiem obrotu obiektu. Jeśli splajn został narysowany w oknie widokowym Top, a jego obrót następuje wokół osi Z, wówczas obiektem wynikowym jest całkowicie płaski dysk, o zerowej wysokości.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

421

Ćwiczenie: Model tygla Jako przykład użycia modyfikatora Lathe utworzysz teraz model tygielka. Oczywiście, mógłby to być model dowolnego obiektu o przekroju kołowym. Tygiel to grube, porcelanowe naczynie służące do mieszania chemikaliów. Model ten został wybrany ze względu na prostotę (a poza tym „tygiel” brzmi poważniej niż np. „kubek”). Aby utworzyć model tygla, wykorzystując modyfikator Lathe, wykonaj, co następuje. 1. Otwórz plik Crucible.max, który znajdziesz w folderze Chap 12 na płycie dołączonej do książki. Zawiera on splajn liniowy modelujący przekrój tygla przekonwertowany do postaci Editable Spline. 2. Zaznacz przekrój i wybierz polecenie Modifiers/Patch/Spline Editing/Lathe. Ustaw wartość Degrees w rolecie Parameters na 360. Ponieważ splajn wykona pełny obrót, nie musisz zaznaczać opcji Cap. W sekcji Direction wybierz przycisk Y (oś Y). To wszystko. Na rysunku 12.40 przedstawiono gotowy model. Bez trudu mógłbyś go przekształcić w model filiżanki na kawę, dodając uchwyt. W tym celu wystarczyłoby wytłoczyć eliptyczny przekrój wzdłuż odpowiednio ukształtowanej ścieżki.

Rysunek 12.40. Obracając prosty profil, możesz utworzyć okrągły obiekt

422

Część III  Podstawy modelowania

Modyfikatory Bevel oraz Bevel Profile Kolejny zestaw modyfikatorów, którymi można działać na splajny i kształty, obejmuje modyfikatory Bevel i Bevel Profile. Modyfikatory Bevel ani Bevel Profile nie są dostępne z poziomu menu Modifiers. Aby z nich skorzystać, musisz je wybrać z listy Modifier List znajdującej się w stosie modyfikatorów. Znajdziesz je w części zatytułowanej Object-Space Modifiers.

Stosując modyfikator Bevel, możesz jednocześnie wytłaczać i kształtować kontur powstającego obiektu przez skalowanie jego przekroju. Modyfikator Bevel pozwala określić wysokość (Height) oraz głębokość (Outline) trzech poziomów fazowania. Opcje Capping umożliwiają tworzenie powierzchni na zakończeniach fazowanego kształtu, domykając go. Jako typ zakończenia możesz wybrać Morph (morfowane) lub Grid (siatkowe). Ten pierwszy jest przeznaczony dla obiektów, które mają być morfowane. Możliwe jest również wskazanie, czy powierzchnia fazowana ma mieć boki płaskie (Linear Sides), czy też zakrzywione (Curve Sides), oraz z ilu segmentów mają się one składać. Ponadto modyfikator daje możliwość włączenia opcji automatycznego wygładzania krawędzi pomiędzy poziomami fazowania (Smooth Accross Levels). Opcja Keep Lines from Crossing zapobiega problemom, które mogą być wynikiem krzyżowania się linii. Modyfikator Bevel Profile pozwala wskazać splajn, który będzie użyty jako profil fazowania.

Ćwiczenie: Modelowanie nietypowych pierścieni Jeśli uważnie czytałeś omówienie obiektów parametrycznych, z pewnością domyślasz się, że korzystając z obiektu Tube lub Torus, możesz utworzyć prosty model pierścienia. Jeśli natomiast chciałbyś, aby pierścień ten miał odpowiednio ukształtowany profil, wówczas powinieneś użyć modyfikatorów Bevel i Bevel Profile. Aby utworzyć modele dwóch unikalnych pierścieni, wykorzystując modyfikatory Bevel oraz Bevel Profile, wykonaj opisane poniżej czynności. 1. Wybierz polecenie Create/Shapes/Donut i w oknie widokowym Top narysuj dwa obiekty, ułożone jeden obok drugiego. W obu przypadkach ustaw wartość Radius 1 na 80, a Radius 2 na 75. 2. Zaznacz pierścień widoczny w oknie widokowym Top z lewej strony, otwórz panel Modify i z listy Modifier List, która znajduje się w stosie modyfikatorów, wybierz Bevel. W rolecie Bevel Values ustaw wartość Start Outline na 0, wartości Height dla Level 1, 2 i 3 na 20, Outline dla Level 1 na 15, a dla Level 3 na -15. Następnie włącz opcję Smooth Across Levels. 3. Wybierz polecenie Create/Shapes/Line i w oknie widokowym Front narysuj krzywą profilu o tej samej wysokości, co pierwszy pierścień. 4. Zaznacz krążek po prawej, otwórz panel Modify i z listy Modifier List wybierz Bevel Profile. Kliknij przycisk Pick Profile widoczny w rolecie Parameters i kliknij krzywą profilu.

Rozdział 12.  Rysowanie i edycja dwuwymiarowych splajnów i kształtów

423

Gotowe pierścienie przedstawiono na rysunku 12.41.

Rysunek 12.41. Wytłaczanie z fazowaniem pozwoliło nadać obiektom niepowtarzalny profil

Modyfikator CrossSection CrossSection jest jednym z dwóch modyfikatorów, które łącznie nazywane są narzędziami powierzchniowymi. Narzędzia te pozwalają pokrywać ciągi połączonych przekrojów trójwymiarowymi powierzchniami. Działanie modyfikatora CrossSection polega na łączeniu przekrojów bryły dodatkowymi splajnami i przygotowaniu tak utworzonej siatki splajnów do zastosowania modyfikatora Surface. Powstające w ten sposób splajny mogą mieć zróżnicowaną liczbę wierzchołków. W rolecie Parameters można także określić ich typ: Linear, Smooth, Bézier lub Bézier Corner. Drugim z narzędzi powierzchniowych jest modyfikator Surface. Przykład jego zastosowania znajdziesz w dodatku F, „Modelowanie przy użyciu łat”. Działanie tych narzędzi pod wieloma względami przypomina tworzenie obiektów złożonych typu Loft, o których będzie mowa w rozdziale 27., „Obiekty złożone”.

Podsumowanie Przekonałeś się, czytając ten rozdział, że splajny to nie tylko punkty, linie i uchwyty sterujące. Splajny są jednymi z podstawowych elementów konstrukcyjnych w Maksie, a umiejętność ich wykorzystania ma kluczowe znaczenie dla opanowania zaawansowanych technik modelowania przy użyciu powierzchni i krzywych NURBS.

424

Część III  Podstawy modelowania

W rozdziale tym omówione zostały następujące tematy dotyczące splajnów: 

różne typy kształtów parametrycznych,



edycja splajnów,



praca z podobiektami splajnów,



stosowanie modyfikatorów działających na splajny.

W kolejnym rozdziale będziesz w dalszym ciągu poznawał techniki modelowania. Zaznajomisz się z prawdopodobnie najczęściej stosowanymi w modelowaniu typami obiektów — siatkami złożonymi z trójkątów i wielokątów.

Rozdział 13.

Modelowanie na poziomie wielokątów W tym rozdziale: 

Tworzenie obiektów Editable Poly (w skrócie Poly)



Praca w trybach podobiektów Poly



Edycja geometrii obiektów Poly



Zmiana właściwości powierzchni, takich jak NURMS

Siatki (lub, mówiąc bardziej ściśle, siatki wielokątów) są chyba najczęściej wykorzystywanymi elementami konstrukcyjnymi w większości programów 3D. Tworzy się je przez układanie wielokątnych ścianek, jedna przy drugiej, i łączenie ich krawędzi. Całość może być wygładzana podczas procesu renderowania. Wykorzystując siatki, można utworzyć niemal dowolne obiekty 3D, od bardzo prostych, takich jak sześciany, po realistyczne modele dinozaurów. Siatki mają wiele zalet. Praca z ich zastosowaniem jest bardzo intuicyjna. Są obsługiwane przez wiele programów 3D. W rozdziale tym nauczysz się, jak tworzyć i edytować obiekty siatkowe typu Editable Mesh (siatki zbudowane z trójkątów) oraz Editable Poly (siatki zbudowane z wielokątów).

Czym są obiekty Poly? Zanim przejdziemy dalej, musisz dokładnie zrozumieć, czym są obiekty Poly i czym różnią się od zwykłych obiektów siatkowych (Mesh), a także dlaczego ten typ modelowania udostępniony został w Maksie. Aby zrozumieć te zagadnienia, powinieneś przeczytać krótką lekcję historii. Początkowo Max obsługiwał jedynie obiekty siatkowe, przy czym każdy taki obiekt mógł składać się wyłącznie ze ścianek trójkątnych. Taki podział siatki dawał pewność, że wszystkie jej ścianki będą płaskie, co z kolei zapobiegało problemom z renderowaniem obiektów.

426

Część III  Podstawy modelowania

Z czasem mechanizmy renderingu zostały zmodyfikowane i wzbogacone o umiejętność obsługi wielokątów bez ich dzielenia (a przynajmniej podział nie był widoczny dla użytkownika). Pozwoliło to zwiększyć efektywność modelowania poprzez redukcję liczby krawędzi w porównaniu z siatkami złożonymi z trójkątów. Ponadto praca z obiektami wielokątnymi jest dużo łatwiejsza niż z modelami opartymi wyłącznie na trójkątach. Aby więc wykorzystanie nowych funkcji stało się możliwe także w Maksie, wprowadzono nowy typ obiektów — Editable Poly. W miarę dalszego rozwoju programu wyposażono go w kolejne funkcje i narzędzia do edycji obiektów Editable Poly. Zdolność obsługi siatek opartych na trójkątach — obiektów Editable Mesh — pozostawiono głównie z uwagi na zachowanie zgodności z poprzednimi wersjami programu. Jedyna przewaga, którą miały obiekty Editable Mesh nad obiektami Editable Poly, polegała na tym, że na te pierwsze można było nakładać modyfikator Edit Mesh. Jednak już w wersji 7. Maksa pojawił się modyfikator Edit Poly, który pozwala na łatwe dokonywanie modyfikacji siatek zbudowanych z wielokątów i ich cofanie. Mimo pojawienia się modyfikatora Edit Poly, typ obiektów Editable Mesh został zachowany i z pewnością będzie się zdarzało, że zechcesz użyć obiektów obu typów (patrz rysunek 13.1). W obiekcie Editable Mesh wszystkie wielokąty dzielone są na trójkąty, natomiast ścianki obiektów Editable Poly pozostają (zazwyczaj) czworokątne. Inna, kluczowa różnica tkwi w podobiektach. W przypadku obiektów Editable Mesh wyróżniamy podobiekty, takie jak wierzchołek (Vertex), krawędź (Edge), ścianka elementarna (Face), wielokąt (Polygon) oraz element (Element). Podobiektami Editable Poly są natomiast wierzchołek (Vertex), krawędź (Edge), brzeg (Border), wielokąt (Polygon) i element (Element). Niektóre silniki gier 3D wymagają, by wszystkie ścianki elementarne były płaskie, i jest to okoliczność przemawiająca za użyciem obiektów Editable Mesh. Inna sytuacja, w której wskazane jest zastosowanie siatek Editable Mesh, ma miejsce w przypadku specyficznych operacji dokonywanych na ściankach. Poza tym zwykłe siatki zajmują mniej miejsca w pamięci i szybciej są renderowane, co nie jest bez znaczenia, gdy w grę wchodzą duże ich ilości. Tak czy inaczej, Max daje możliwość bezproblemowego konwertowania obiektów jednego typu na drugi. Choć obiekty obu typów można edytować przy użyciu wielu tych samych funkcji, to jednak zaawansowane funkcje, jakie dostępne są dla Editable Poly, czynią je obiektami lepiej nadającymi się do modelowania siatkowego. Głównym tematem tego rozdziału są właśnie obiekty Editable Poly. I choć nie będą tu omawiane funkcje edycyjne dla obiektów Editable Mesh, w większości przypadków narzędzia, które tutaj poznasz, można wykorzystać również do nich. Niestety, nie dotyczy to narzędzi z zestawu Graphite Modelling Tools, które działają wyłącznie w przypadku obiektów złożonych z wielokątów.

Tworzenie obiektów Editable Poly Panel Create nie udostępnia żadnych funkcji do bezpośredniego kreowania obiektów siatkowych — trzeba je tworzyć poprzez konwersję obiektów innych typów lub zastosowanie modyfikatora. Konwertować w ten sposób można kształty, obiekty podstawowe,

Rozdział 13.  Modelowanie na poziomie wielokątów

427

Rysunek 13.1. Ścianki obiektów Editable Mesh są trójkątne; ścianki obiektów Editable Poly mają cztery wierzchołki lub więcej

obiekty Boolean, łaty oraz obiekty typu NURBS. Wiele importowanych modeli ma postać obiektów siatkowych. Większość formatów 3D, w tym 3DS i DXF, importowana jest w taki właśnie sposób. Możliwe jest nawet konwertowanie do postaci Editable Poly splajnów zarówno zamkniętych, jak i otwartych. Zamknięte splajny wypełniane są wielokątami, natomiast otwarte przyjmują formę pojedynczych krawędzi, w rezultacie zazwyczaj trudno je dostrzec.

Zanim będziesz mógł użyć funkcji edycyjnych, o których tu mowa, musisz przekonwertować obiekt innego typu w siatkę Editable Poly, scalić listę zastosowanych wobec niego modyfikatorów bądź wykorzystać modyfikator Edit Poly.

Konwertowanie obiektów Aby przekonwertować obiekt do postaci Editable Poly, kliknij go prawym przyciskiem myszy i z podręcznego menu wybierz polecenie Convert To/Convert to Editable Poly. Możesz też użyć odpowiedniego modyfikatora, klikając nazwę obiektu w stosie modyfikatorów prawym przyciskiem myszy i wybierając z podręcznego menu odpowiednią opcję konwersji.

428

Część III  Podstawy modelowania

Scalanie stosu modyfikatorów Obiekt po scaleniu stosu modyfikatorów traci naturę parametryczną oraz dostęp do parametrów zastosowanych modyfikatorów. Scalaniu mogą być poddane wyłącznie te obiekty, na których zastosowano modyfikatory. Obiekt staje się obiektem Editable Poly wówczas, gdy użyjesz opcji scalania (Collapse To), dostępnej w podręcznym menu wyświetlanym po kliknięciu prawym przyciskiem myszy nazwy obiektu w stosie modyfikatorów, albo posłużysz się narzędziem Collapse. Stos modyfikatorów można scalać także za pomocą narzędzia Collapse dostępnego na panelu Utilities.

Większość obiektów po operacji Collapse jest przekształcana do postaci Editable Poly, ale w niektórych przypadkach (np. dla obiektów złożonych) można wybrać typ struktury, do jakiej obiekt ma zostać scalony.

Stosowanie modyfikatora Edit Poly Inny sposób uzyskania dostępu do funkcji edycji siatek polega na zastosowaniu względem danego obiektu modyfikatora Edit Poly. Stosuje się go, zaznaczając obiekt i wybierając polecenie Modifiers/Mesh Editing/Edit Poly albo też wskazując modyfikator na rozwijanej liście Modifier List, która znajduje się w panelu Modify. Stosowanie modyfikatora Edit Poly ma, w porównaniu z konwersją do postaci Editable Poly, tę zaletę, że zachowuje parametryczną naturę obiektu. Przykładowo zmiana promienia (Radius) obiektu kuli jest niemożliwa, gdy obiekt został przekonwertowany do postaci Editable Poly. Natomiast po zastosowaniu modyfikatora Edit Poly zmiana promienia nie stanowi problemu.

Edycja obiektów Poly Po przekształceniu obiektu do postaci Editable Poly możesz zmieniać jego kształt za pomocą modyfikatorów albo przez modyfikację podobiektów siatki. Funkcje edycyjne dla tego typu obiektów dostępne są w panelu Modify, ale najwłaściwszym miejscem, gdzie należy ich szukać, jest zestaw narzędzi Graphite. W tym rozdziale prezentowane są funkcje dostępne w panelu Modify. Znajdziesz je również na wstążce Graphite Modeling Tools opisanej w rozdziale 14., „Korzystanie z narzędzi Graphite i malowanie obiektami”. Modyfikatory związane z edycją siatek będą omówione w rozdziale 26., „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni”.

Edycja podobiektów w siatkach Editable Poly Aby edytować podobiekty siatki, należy je najpierw zaznaczyć. Włączenie trybu edycji podobiektu następuje po zaznaczeniu obiektu Editable Poly w stosie modyfikatorów, rozwinięciu hierarchii podobiektów przez kliknięcie małego symbolu plus, widocznego

Rozdział 13.  Modelowanie na poziomie wielokątów

429

z lewej strony nazwy obiektu, i wybraniu typu podobiektu. Inna metoda polega na wciśnięciu przycisku odpowiadającego wybieranemu typowi podobiektu w rolecie Selection. W obu przypadkach zarówno nazwa podobiektu w stosie modyfikatorów, jak i odpowiadający jej przycisk w rolecie Selection wyróżniane są żółtym kolorem. Trzeci sposób wybierania trybu podobiektu sprowadza się do użycia skrótu klawiszowego: 1 dla podobiektów Vertex, 2 dla Edge, 3 dla Border, 4 dla Polygon lub 5 dla Element. W trybie Vertex możliwe jest zaznaczanie i przekształcanie wierzchołków obiektu. W trybie Edge dostępne stają się poszczególne krawędzie, czyli linie łączące wierzchołki. Tryb Border pozwala edytować krawędzie brzegowe obiektu (np. wokół otworów). Tryb Polygon umożliwia pracę z wielokątnymi ściankami, a tryb Element — z poszczególnymi elementami obiektu1. Aby opuścić tryb edycji podobiektu, należy ponownie kliknąć odpowiadający mu przycisk (podświetlony na żółto). Pamiętaj, że gdy chcesz zaznaczyć inny obiekt, musisz wyłączyć bieżący tryb podobiektu. Zaznaczone krawędzie (w trybach Edge lub Border) są w wyświetlane w kolorze czerwonym w celu odróżnienia ich od niezaznaczonych krawędzi wyselekcjonowanego obiektu, którego szkielet wyświetlany jest w kolorze białym.

Po włączeniu trybu podobiektu możesz zaznaczyć wybrany podobiekt (lub kilka, obrysowując je myszą) i dokonać edycji przy użyciu przycisków transformacji znajdujących się na głównym pasku narzędziowym. Podobiekty siatki przekształca się tak samo jak inne obiekty. Więcej informacji o transformowaniu obiektów znajdziesz w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

Podczas pracy w trybie edycji podobiektów można stosować skróty klawiszowe typu „wciśnij i puść”, pozwalające tymczasowo opuścić bieżący tryb edycyjny w celu wykonania czynności na innym poziomie edycyjnym. Polecenia, z których można w ten sposób skorzystać, są oznaczone pogrubioną czcionką na liście Group w oknie dialogowym Customize User Interface. Przykładowo wciśnięcie klawiszy Alt+C w trybie edycji wielokątów spowoduje tymczasowe włączenie narzędzia tnącego Cut. Po wykonaniu cięcia i zwolnieniu klawiszy powracamy do trybu edycji wielokątów. Więcej informacji o oknie dialogowym Customize User Interface znajdziesz w rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

Grupę podobiektów można zaznaczyć przez obrysowanie ich w oknie widokowym. Możliwe jest także zaznaczanie wybiórcze, a polega ono na klikaniu podobiektów z wciśniętym klawiszem Ctrl. Do usuwania zaznaczenia wybranych podobiektów, bez konieczności usuwania całego zaznaczenia, można użyć zarówno klawisza Ctrl, jak i Alt. Włączenie przycisku transformacji, wciśnięcie klawisza Shift i kliknięcie oraz przeciągnięcie podobiektu powoduje jego sklonowanie. Podczas klonowania pojawia się okno dialogowe Clone Part of Mesh, które daje możliwość wyboru opcji klonowania jako obiektu 1

W tym znaczeniu elementem obiektu jest każdy podzbiór jego wielokątów stanowiący odrębną całość — przyp. tłum.

430

Część III  Podstawy modelowania

(Clone to Object) lub jako elementu (Clone to Element). Gdy wybierzesz pierwszą opcję, wtedy tworzony jest nowy obiekt, któremu możesz nadać odrębną nazwę. Jeśli zdecydujesz się na wybór drugiej opcji, wtedy sklonowane podobiekty staną się nowym elementem istniejącego obiektu. Wciśnięcie klawisza Ctrl w chwili wybierania innego trybu edycji sprawia, że bieżące zaznaczenie pozostaje zachowane. Jeśli np. w trybie Polygon wyselekcjonujesz wszystkie wielokąty w górnej części modelu, po czym wciśniesz klawisz Ctrl i zmienisz tryb na Vertex, zaznaczone zostaną wszystkie wierzchołki w tej samej, górnej połowie modelu. Technika ta działa wyłącznie w przypadku podobiektów, które można w danym momencie zaznaczyć. Jeśli np. zaznaczenie wielokątów nie obejmuje żadnych brzegów, wciśnięcie klawisza Ctrl podczas wybierania trybu Border nie spowoduje zaznaczenia czegokolwiek. Z kolei użycie klawisza Shift w chwili zmiany trybu pozwala wyselekcjonować tylko te podobiekty, które znajdują się na brzegu bieżącego zaznaczenia. Przykładowo po zaznaczeniu wszystkich wielokątów w górnej połowie modelu w trybie podobiektu Polygon i kliknięciu przycisku Vertex z jednoczesnym wciśnięciem klawisza Shift zaznaczone zostaną wyłącznie wierzchołki pozostające na krawędzi zaznaczenia, a wierzchołki znajdujące się wewnątrz tego obszaru pozostaną niezaznaczone.

Zaznaczanie podobiektów Roleta Selection, pokazana na rysunku 13.2, zawiera różne narzędzia do zaznaczania podobiektów. Opcja By Vertex dostępna jest we wszystkich trybach, poza trybem Vertex. Jej działanie polega na tym, że aby wyselekcjonować krawędź, brzeg, wielokąt bądź element, należy kliknąć jeden z wierzchołków owego podobiektu. Kliknięcie wierzchołka powoduje zaznaczenie wszystkich łączących się z nim krawędzi bądź brzegów. Opcja Ignore Backfacing sprawia, że zaznaczane są tylko te podobiekty, których wektory normalne zwrócone są w stronę bieżącego okna widokowego. Jeżeli np. spróbujesz wyselekcjonować ścianki kuli, zaznaczone zostaną tylko ścianki po stronie bliższej oknu widokowemu. Po wyłączeniu opcji zaznaczysz również te ścianki, które znajdują się po przeciwległej stronie bryły. Funkcja ta jest przydatna, gdy podobiekty z dwóch stron modelu przysłaniają się nawzajem. Polecenia zaznaczania dostępne w menu Edit działają także w odniesieniu do podobiektów. Pracując w trybie Vertex, możesz np. wybrać polecenie Edit/Select All (Ctrl+A) i tym sposobem zaznaczyć wszystkie wierzchołki obiektu.

Opcja By Angle zaznacza sąsiadujące wielokąty, pomiędzy którymi kąt jest nie większy od zadanej wartości. Zakres ten jest definiowany jako kąt pomiędzy wektorami normalnymi tychże wielokątów. Jeśli np. opracowujesz siatkę terenu z gładkim, całkowicie płaskim lustrem jeziora pośrodku, zaznaczyć je możesz, ustawiając wartość kąta na 0 i klikając obszar jeziora. Roleta Selection zawiera także cztery przyciski: Shrink (zawężanie), Grow (rozszerzanie), Ring (pierścień) oraz Loop (pętla). Przycisk Grow pozwala rozszerzać obszar zaznaczenia, co zademonstrowano na rysunku 13.3. Działanie przycisku Shrink jest dokładnie odwrotne.

Rozdział 13.  Modelowanie na poziomie wielokątów

431

Rysunek 13.2. Roleta Selection zawiera narzędzia do zaznaczania podobiektów

Rysunek 13.3. Klikając przycisk Grow, możesz rozszerzać obszar zaznaczenia podobiektów

Przyciski Ring oraz Loop są dostępne wyłącznie w trybach Edge i Border. Pozwalają one zaznaczać wszystkie sąsiadujące krawędzie w poziomie i pionie w obrębie całego obiektu. Zaznaczanie typu Ring (pierścień) polega na wyszukiwaniu krawędzi równoległych do wskazanej, natomiast Loop (pętla) na wyszukiwaniu ciągu krawędzi wybiegających ze wskazanej i obiegających cały obiekt. Jeżeli np. zaznaczysz pojedynczą krawędź obiektu kuli, kliknięcie przycisku Ring spowoduje wyselekcjonowanie wszystkich krawędzi opasających kulę, a po naciśnięciu przycisku Loop zaznaczone zostaną krawędzie znajdujące się w jednej linii z zaznaczoną wcześniej. Obok przycisków Ring i Loop znajdują się małe przyciski oznaczone strzałkami w górę i w dół. Służą one do przesuwania bieżącego pierścienia i (lub) pętli w lewo lub w prawo (w przypadku przycisku Ring) oraz w górę lub w dół (w przypadku Loop). Wciśnięcie klawisza Ctrl pozwala dodać do bieżącego zaznaczenia sąsiedni pierścień bądź pętlę, a klawisz Alt umożliwia wyłączenie sąsiedniego pierścienia (pętli) z wyselekcjonowanego fragmentu. Sposób działania przycisków Ring i Loop zademonstrowano na rysunku 13.4. Na pierwszym obrazku widać efekty zaznaczenia dokonanego przy użyciu przycisku Ring; na obrazku drugim przedstawiono zaznaczenie po wciśnięciu klawisza Ctrl i kliknięciu przycisku oznaczonego strzałką skierowaną w górę, znajdującego się obok przycisku Loop. Fragmenty trzeciej kuli zaznaczono przez kliknięcie przycisku Loop, zaś w przypadku czwartej rozszerzono zaznaczenie, wciskając klawisz Ctrl i klikając przycisk ze strzałką skierowaną w górę, znajdujący obok przycisku Ring.

432

Część III  Podstawy modelowania

Rysunek 13.4. Przyciski Ring i Loop pozwalają zaznaczać całe rzędy i (lub) kolumny krawędzi

Przyciski Hide Selected (ukryj zaznaczone), Unhide All (pokaż wszystko), Copy (kopiuj) i Paste (wklej) dla obiektów Editable Poly znajdują się u dołu rolety Edit Geometry. Roleta Soft Selection pozwala modyfikować podobiekty niezaznaczone, sąsiadujące z zaznaczonymi podczas przesuwania tych ostatnich, dzięki czemu przejścia między podobiektami stają się gładsze. Szczegółowy opis tej rolety znajdziesz w rozdziale 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

Ćwiczenie: Modelowanie głowy klowna Skoro umiesz już zaznaczać podobiekty, możesz je przemieszczać, korzystając z narzędzi transformacyjnych. W ćwiczeniu tym dokonasz deformacji siatki kuli podczas modelowania twarzy klowna. W tym celu zaznaczysz, przesuniesz i przeprowadzisz edycję niektórych wierzchołków. Aby utworzyć model głowy klowna, przesuwając wierzchołki siatki, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Sphere i w oknie widokowym Front utwórz obiekt kuli. Następnie kliknij go prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Convert To/Editable Poly. 2. Otwórz panel Modify. Wymodelujesz teraz długi, spiczasty nos, wyciągając jeden z wierzchołków na zewnątrz kuli. Kliknij mały symbol plus, widoczny po lewej stronie nazwy obiektu Editable Poly w stosie modyfikatorów, po czym wybierz podobiekt Vertex (możesz też użyć klawisza 1). W ten sposób włączysz tryb podobiektu Vertex. Włącz opcję Ignore Backfacing w rolecie Selection i zaznacz pojedynczy wierzchołek pośrodku kuli w oknie widokowym Front. Upewnij się, że włączony został przycisk Select and Move (W), po czym przeciągnij zaznaczony wierzchołek w oknie widokowym Left wzdłuż osi Z, wyciągając go na zewnątrz kuli. 3. Następnie wymodeluj usta, zaznaczając w oknie widokowym Front i wpychając do wnętrza kuli rząd wierzchołków poniżej nosa. Wciskając klawisz Ctrl, będziesz mógł je zaznaczyć bez większego problemu. Wyselekcjonuj kilka kolejnych wierzchołków wzdłuż okręgu, modelując uśmiech. Następnie w oknie widokowym Left przesuń je wzdłuż osi Z, w kierunku środka kuli. 4. Aby utworzyć oczy, wybierz polecenie Create/Standard Primitives/Sphere i włącz opcję AutoGrid. W oknie widokowym Front narysuj dwie małe kule powyżej nosa. Przykład powyższy jest tylko skromną prezentacją możliwości, jakie daje edycja podobiektów. Rysunek 13.5 przedstawia gotową głowę klowna w cieniowanym oknie widokowym.

Rozdział 13.  Modelowanie na poziomie wielokątów

433

Rysunek 13.5. Głowa klowna utworzona z obiektu Editable Poly metodą zaznaczania i przesuwania wierzchołków

Edycja geometrii Większość najważniejszych narzędzi do edycji siatek zawarta jest w rolecie Edit Geometry i panelach wstążki (patrz rysunek 13.6). Narzędzia te pozwalają m.in. na tworzenie nowych podobiektów, przyłączanie ich do siatki, spawanie i ścinanie wierzchołków, cięcie i wyrównywanie podobiektów. Niektóre przyciski w rolecie mogą być nieaktywne, co zależy od wybranego typu podobiektu. Funkcje, które omówione zostaną w tym podrozdziale, są dostępne dla obiektów Editable Poly, zanim włączony zostanie jakikolwiek tryb edycji podobiektów. Wielu przyciskom zgromadzonym w rolecie Edit Geometry towarzyszą ikony wyświetlane z ich prawej strony. Służą one do otwierania okien dialogowych lub przyborników, które dają możliwość zmiany ustawień, a skutki tych zmian są natychmiast uwidoczniane w oknach widokowych. Kliknięcie przycisku OK (lub znaku zaznaczenia) oznacza zatwierdzenie wprowadzonych ustawień i zamknięcie okna. Przycisk Apply (znak plus) pozwala zastosować zmiany bez zamykania okna (przybornika). Otwierane w ten sposób przyborniki z parametrami towarzyszą przyciskom takim jak Extrude, Bevel Outline czy Inset. Przyciski dla wszystkich podobiektów typu Editable Poly zgromadzone zostały w rolecie Edit Geometry, natomiast te, które są specyficzne dla poszczególnych podobiektów, umieszczono w osobnej rolecie, której nazwa zgodna jest z aktualnie wybranym trybem, np. Edit Vertices czy Edit Edges.

434

Część III  Podstawy modelowania

Rysunek 13.6. Roleta Edit Geometry udostępnia szereg ogólnych funkcji edycyjnych

Repeat Last Pierwszym przyciskiem w rolecie Edit Geometry jest Repeat Last (powtórz ostatnie). Jego kliknięcie powoduje ponowne wykonanie ostatniego polecenia odnoszącego się do podobiektu. Współdziała tylko z niektórymi funkcjami, ale w pewnych przypadkach stanowi duże udogodnienie. Etykietka ekranowa, wyświetlana po najechaniu wskaźnikiem myszy na przycisk, informuje o tym, jakie polecenie zostanie wykonane ponownie po kliknięciu przycisku.

Włączanie ograniczeń Opcje z sekcji Constraints pozwalają ograniczać zasięg przesuwania podobiektów do najbliższych im podobiektów wskazanego typu. Do wyboru są następujące opcje: brak ograniczenia (None), krawędź (Edge), ścianka (Face) i normalna (Normal). Jeśli np. wybierzesz opcję Edge, po czym wyselekcjonujesz i spróbujesz przemieścić wierzchołek, wówczas będziesz mógł go przesunąć jedynie do najbliższych krawędzi.

Ćwiczenie: Modelowanie dźwigara dachowego Modelowanie dachów domów bywa trudne, ale funkcja ograniczania przesunięć znacznie je ułatwia. Aby wymodelować trójkątny dźwigar dachowy, wykonaj następujące instrukcje. 1. Wybierz polecenie Create/Standard Primitives/Box, po czym przeciągnij myszą w oknie widokowym Top, tworząc obiekt Box wyśrodkowany względem osi Y. 2. Klinij obiekt Box prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Convert To/Editable Poly.

Rozdział 13.  Modelowanie na poziomie wielokątów

435

3. Otwórz panel Modify i wybierz tryb Vertex. W sekcji Constraints rolety Edit Geometry zaznacz opcję Edge. 4. Włącz narzędzie Select and Move, po czym przeciągnij lewe górne narożniki w kierunku osi Y. Następnie uczyń to samo z górnymi narożnikami z prawej. Zauważ, że ruch przeciąganych punktów został ograniczony do górnej krawędzi. Przeciągnięcie obu zestawów punktów zaowocowało utworzeniem prostego, idealnego trójkąta. Jeszcze łatwiejsza metoda tworzenia takich trójkątów polega na użyciu obiektu Gengon, dostępnego pośród obiektów parametrycznych z grupy Extended Primitives.

Preserve UVs Współrzędne UV decydują o sposobie nałożenia tekstury na powierzchnię obiektu. Są one ściśle powiązane z położeniem podobiektów i dlatego przesunięcie podobiektu po nałożeniu tekstury powoduje również jej przemieszczenie. Może to doprowadzić do zakłócenia ciągłości mapy tekstury. Opcja Preserve UVs (zachowaj współrzędne UV) pozwala temu zapobiec. Okno dialogowe ustawień opcji Preserve UVs daje możliwość wyboru dwóch właściwości, które mają być zachowywane, czyli Vertex Color (kolor wierzchołka) oraz Texture Channel (kanał tekstury). Na rysunku 13.7 przedstawiono dwa bloki z nałożoną teksturą cegieł. Wewnętrzne wierzchołki obiektu po lewej zostały przesunięte na zewnątrz, bez włączonej opcji Preserve UVs; blok z prawej został przekształcony w ten sam sposób, ale po jej włączeniu.

Create Przycisk Create (utwórz) włącza funkcję tworzenia nowych podobiektów, a konkretnie wielokątów, przez łączenie wierzchołków odizolowanych i brzegowych. Gdy wskaźnik myszy znajduje się nad właściwym wierzchołkiem, przyjmuje formę celownika. Kliknięcie nim wierzchołka powoduje utworzenie krawędzi wielokąta biegnącej od punktu, w którym nastąpiło ostatnie kliknięcie. Gdy żadne wierzchołki nie są dostępne, można je tworzyć, klikając z wciśniętym klawiszem Shift. Należy pamiętać, że utworzony w ten sposób wierzchołek nie jest umieszczany na żadnej krawędzi, ale wciśnięcie przycisku Create w trybie podobiektu Edge umożliwia łączenie krawędzi z takimi odizolowanymi wierzchołkami. Zwrot wektorów normalnych nowo tworzonych wielokątów jest określany kierunkiem, w którym wielokąt jest rysowany, w oparciu o regułę prawej dłoni. Jeśli zegniesz palce w kierunku nowo utworzonych wierzchołków (zgodnym lub przeciwnym kierunkowi ruchu wskazówek zegara), wówczas kciuk wskaże Ci kierunek zwrotu wektora normalnego. Jeśli wektor ten jest zwrócony w głąb okna widokowego, wówczas wielokąt jest rysowany tyłem do obserwatora, w związku z czym staje się niewidoczny.

Po wciśnięciu przycisku Create możesz tworzyć wielokąty, wykorzystując istniejące oraz nowe wierzchołki. Aby utworzyć nową ściankę, kliknij przycisk Create, co spowoduje podświetlenie wszystkich wierzchołków wyselekcjonowanej siatki. Następnie kliknij wybrany wierzchołek, rozpoczynając rysowanie nowego wielokąta; zostanie on utworzony

436

Część III  Podstawy modelowania

Rysunek 13.7. Opcja Preserve UVs pozwala modyfikować podobiekty nawet po nałożeniu map tekstur

po kliknięciu co najmniej dwóch kolejnych wierzchołków. W czasie kreślenia wielokąta można także tworzyć wierzchołki. W tym celu należy kliknąć w wybranym punkcie, wciskając przy tym klawisz Shift. Wielokąty nie muszą mieć jedynie trzech wierzchołków. Możesz klikać dowolną liczbę razy, tworząc dowolne wielokąty. Aby zamknąć wielokąt, trzeba dwukrotnie kliknąć wierzchołek wybrany jako pierwszy.

Collapse Przycisk Collapse (scal) pozwala scalać zaznaczone podobiekty w jeden, umieszczony w geometrycznym środku zaznaczenia. Przycisk ten działa więc podobnie jak Weld, z tą tylko różnicą, że łączone wierzchołki nie muszą znajdować się w zasięgu określanym wartością Threshold. Przycisk Collapse działa we wszystkich trybach podobiektów.

Attach i Detach Przycisku Attach (przyłącz) można używać w każdym trybie podobiektu, a nawet wówczas, gdy taki tryb nie jest włączony. Włącza funkcję dołączania obiektów do bieżącego obiektu Editable Poly. Tym sposobem można dołączać obiekty podstawowe, splajny, powierzchnie sklejane oraz inne obiekty siatkowe. Każdy z przyłączonych obiektów jest natychmiast przekształcany w edytowalną siatkę wielokątów i przyjmuje kolor obiektu, do którego został dołączony. Po dołączeniu można je zaznaczać indywidualnie, włączając tryb Element.

Rozdział 13.  Modelowanie na poziomie wielokątów

437

Jeśli dołączany obiekt został wygładzony przy użyciu funkcji NURMS, po dołączeniu wygładzenie NURMS jest usuwane.

Aby użyć omawianej funkcji, zaznacz obiekt główny i kliknij przycisk Attach. Następnie przesuń wskaźnik myszy nad obiekt, który zamierzasz dołączyć. Kursor zmieni wówczas kształt, sygnalizując odnalezienie obiektu nadającego się do dołączenia. Kliknij ów obiekt. Tryb dołączania wyłącza się, klikając prawym przyciskiem myszy w oknie widokowym lub ponownie naciskając przycisk Attach. Jeśli na dołączany obiekt nałożony został materiał różny od tego, który nałożono na bieżący obiekt, pojawia się okno dialogowe pozwalające dokonać wyboru pomiędzy opcjami dopasowania materiałów (Match Material IDs to Material, Match Material to Material IDs lub Do Not Modify Material IDs or Material). Materiały i ich identyfikatory zostaną omówione w rozdziale 15., „Rozszerzony edytor materiałów”.

Kliknięcie ikony Attach List (dołącz listę) otwiera okno dialogowe Attach List (wyglądające jak okno Select From Scene, wywoływane skrótem klawiszowym H), w którym można wybierać nazwy obiektów do przyłączenia. Lista zawiera nazwy tylko tych obiektów, które można przyłączyć do bieżącego obiektu. Przycisk Detach staje się dostępny po włączeniu trybu edycji podobiektu.

Dołączanie różni się od grupowania tym, że dołączone obiekty zachowują się jak jeden wspólny obiekt, przyjmują ten sam kolor, nazwę i ulegają tym samym przekształceniom. Dostęp do poszczególnych dołączonych obiektów jest możliwy w trybie edycji podobiektu Element. Przycisk Detach powoduje odłączenie zaznaczonych podobiektów od obiektu. Aby go użyć, należy najpierw zaznaczyć odpowiednie podobiekty. Po kliknięciu przycisku otwiera się okno dialogowe, w którym można nadać odłączanemu obiektowi nową nazwę. Podobiekt można odłączyć jako element tego samego obiektu (Detach to Element) lub jako klon (Detach as Clone). Przycisk Detach działa we wszystkich trybach podobiektów.

Narzędzia przecinania siatki Przycisk Slice Plane (płaszczyzna tnąca) pozwala przeciąć obiekt siatkowy za pomocą płaszczyzny. Po kliknięciu przycisku Slice Plane na wyselekcjonowanym obiekcie pojawia się żółte gizmo w kształcie płaszczyzny. Gizmo można przesuwać, obracać i skalować, korzystając z przycisków transformacji. Po poprawnym ustawieniu płaszczyzny tnącej oraz wybraniu opcji jej działania należy kliknąć przycisk Slice, przecinając siatkę. Wszystkie przecięte ścianki podzielone zostają na dwie części, czemu towarzyszy utworzenie nowych wierzchołków oraz krawędzi w miejscach przecięć. Tryb Slice Plane pozostaje aktywny do chwili ponownego kliknięcia przycisku Slice Plane; funkcja ta pozwala na wielokrotne cięcie siatki w ciągu jednej sesji. Przycisk Slice Plane jest dostępny w każdym z trybów edycji podobiektu. Dla obiektów typu Editable Poly dostępny jest również przycisk Reset Plane, znajdujący się obok przycisku Slice. Jego użycie powoduje przesunięcie płaszczyzny tnącej do jej pierwotnego położenia.

438

Część III  Podstawy modelowania

Opcja Split podwaja liczbę wierzchołków tworzonych wzdłuż płaszczyzny Slice Plane, dzieląc obiekt na dwa rozłączne elementy. Przycisk QuickSlice (szybkie cięcie) daje możliwość wyznaczenia na obiekcie Editable Poly punktu, w którym ma przebiegać linia cięcia. Gdy przesuniesz wskaźnik myszy, linia QuickSlice powędruje za nim, obracając się wokół miejsca kliknięcia. Jeśli ponownie klikniesz myszą, narysowana linia wyznaczy płaszczyznę przecinającą obiekt. W punktach, w których linia przetnie krawędzie obiektu, utworzone zostaną nowe wierzchołki. Jest to bardzo wygodne narzędzie, albowiem wyznaczana linia cięcia biegnie po powierzchni obiektu, dzięki czemu dokładnie widać, w których miejscach zostanie przecięty. Narzędzia QuickSlice oraz Cut (tnij) mogą współdziałać z opcją Full Interactivity (pole tej opcji znajduje się u dołu rolety Edit Geometry). Po jej włączeniu linie cięcia są wyświetlane podczas przesuwania myszy po powierzchni obiektu. Gdy opcja Full Interactivity jest wyłączona, wtedy odcinki linii pojawiają się dopiero po kolejnych kliknięciach. Podczas edycji obiektów Editable Poly przycisk Cut działa interaktywnie. Jeśli klikniesz narożnik wielokąta, wówczas krawędź cięcia zostanie do niego przyciągnięta, a nowa krawędź połączy kursor z najbliższym narożnikiem. Podczas przesuwania myszy krawędź przesuwa się wraz z kursorem aż do chwili, kiedy kliknięciem wyznaczysz jej punkt końcowy. Jeżeli klikniesz pośrodku krawędzi bądź ścianki, wtedy nowa krawędź zostanie przedłużona do najbliższego narożnika.

Ćwiczenie: Łączenie, cięcie i oddzielanie części modelu samochodu Podczas edycji modelu zawierającego elementy wewnętrzne czasami zachodzi konieczność podzielenia i odseparowania pewnej jego części, by odsłonić wnętrze. Choć można to osiągnąć za pomocą płaszczyzny odcinającej kamery, o której będzie mowa w rozdziale 19., „Operowanie kamerami”, to jednak aby uzyskać bardziej trwałe rezultaty, należy użyć funkcji QuickSlice oraz Detach. Aby połączyć, a następnie podzielić i rozłączyć części modelu samochodu, wykonaj kolejne czynności. 1. Otwórz plik Sliced car.max, zawarty w folderze Chap 13 na płycie dołączonej do książki. 2. Zanim podzielisz model, musisz połączyć wszystkie jego części w jeden obiekt Editable Poly. Zaznacz jedną z części karoserii, kliknij ją prawym przyciskiem myszy, po czym z menu kontekstowego wybierz polecenie Convert To/Editable Poly. 3. Otwórz panel Modify i kliknij ikonę okna dialogowego Attach List, widoczną obok przycisku Attach w rolecie Edit Geometry. 4. Po otwarciu okna dialogowego Attach List kliknij przycisk Select All (lub wciśnij Ctrl+A), aby zaznaczyć wszystkie części modelu, a następnie kliknij Attach. Kiedy pojawi się okno dialogowe opcji łączenia (Attach Options), wybierz opcję

Rozdział 13.  Modelowanie na poziomie wielokątów

439

dopasowania identyfikatora materiału do materiału (Match Material IDs to Material), pozostaw włączoną opcję optymalizowania materiałów (Condense Materials and IDs) i kliknij OK. Wszystkie obiekty zostaną połączone w jeden wspólny obiekt typu Editable Poly. 5. W rolecie Edit Geometry włącz przycisk QuickSlice, a następnie kliknij w oknie widokowym Top w punkcie, w którym chcesz dokonać podziału modelu. Przeciągnięciem wyrównaj płaszczyznę tnącą, po czym kliknij, by dokonać właściwego cięcia. Ponownie naciśnij przycisk QuickSlice, wyłączając tryb QuickSlice. 6. Wybierz tryb Polygon i obrysuj myszą wszystkie wielokąty poniżej linii cięcia w oknie widokowym Top. Następnie kliknij przycisk Detach w rolecie Edit Geometry. W oknie dialogowym Detach wpisz nazwę Car Front (przód samochodu) i kliknij przycisk OK. 7. Wyłącz tryb Polygon i za pomocą narzędzia Select and Move odsuń przód samochodu od reszty modelu. Na rysunku 13.8 widać oddzieloną, przednią część modelu samochodu.

Rysunek 13.8. Za pomocą funkcji Attach, QuickSlice i Detach można odcinać poszczególne części modelu

440

Część III  Podstawy modelowania

MSmooth Obok przycisków MSmooth (wygładzanie siatki) i Tessellate (mozaikowanie) widnieją ikony otwierające przyborniki pokazane na rysunku 13.9. Parametr Smoothness narzędzia MSmooth decyduje o stopniu wygładzania krawędzi obiektu. Mozaikowania można dokonać, dzieląc krawędzie bądź ścianki, zaś parametr napięcia powierzchniowego (Tension) decyduje o zagęszczeniu sąsiadujących ścianek. Rysunek 13.9. Przyborniki z ustawieniami narzędzi MSmooth i Tessellate pozwalają interaktywnie definiować wartości Smoothness oraz Tension

Funkcja MSmooth służy do wygładzania powierzchni wyselekcjonowanych podobiektów i dokonuje tego poprzez zagęszczenie siatki — w ten sam sposób, co modyfikator MeshSmooth. Przycisku MSmooth możesz użyć wielokrotnie. O tym, które wierzchołki zostaną użyte do wygładzenia obiektu, decyduje parametr Smoothness. Im jego wartość jest wyższa, tym większa liczba wierzchołków bierze udział w wygładzaniu, w efekcie powierzchnia obiektu staje się gładsza. Możesz też wybrać opcje uwzględniania grup wygładzania (Smoothing Groups) lub materiałów (Materials). Na rysunku 13.10 przedstawiono obiekt typu Hedra w kształcie diamentu, który został poddany wygładzaniu narzędziem MSmooth, a następnie trzykrotnemu mozaikowaniu przy użyciu funkcji Tessellate. Rysunek 13.10. Użycie funkcji MSmooth powoduje wygładzenie ostrych krawędzi, zaś funkcja mozaikowania tworzy nowe ścianki

Tessellate Mozaikowanie ma na celu wyłącznie zagęszczenie ścianek lub krawędzi. Podczas modelowania zdarza się konieczność zwiększenia szczegółowości wyselekcjonowanego obszaru. To właśnie wtedy funkcja Tessellate staje się bardzo przydatna. Mozaikowaniu można poddawać zarówno całe obiekty, jak i ich podobiekty. Klikając przycisk Tessellate, możesz zwiększyć rozdzielczość siatki, dzieląc ściankę bądź wielokąt na szereg mniejszych ścianek bądź wielokątów. Do wyboru masz dwie opcje: dzielenie krawędzi (Edge) i dzielenie ścianek (Face).

Rozdział 13.  Modelowanie na poziomie wielokątów

441

Działanie metody Edge polega na podzieleniu każdej krawędzi na dwie równe części. Przykładowo ścianka trójkątna może zostać podzielona na trzy mniejsze wielokąty. Wartość parametru Tension decyduje o tym, czy mozaikowana ścianka ma być wklęsła, czy też wypukła. Opcja Face tworzy wierzchołek pośrodku ścianki i nowe krawędzie rozchodzące się do każdego z pierwotnych wierzchołków. W przypadku wieloboku czworokątnego powstają cztery nowe trójkątne ścianki. (Pamiętaj, że każdy czworokąt naprawdę składa się z dwóch ścianek w kształcie trójkąta). Na rysunku 13.11 widać ścianki sześcianu, który został poddany mozaikowaniu przy użyciu opcji Edge, a następnie jeszcze raz po włączeniu opcji Face.

Rysunek 13.11. Sześcian poddany dwukrotnemu mozaikowaniu, przy czym każda z opcji dzielenia użyta została tylko raz

Make Planar Pojedynczy wierzchołek (a nawet dwa) nie wystarczy do zdefiniowania płaszczyzny, ale trzy lub więcej to umożliwiają. Jeśli zaznaczysz co najmniej trzy wierzchołki, za pomocą przycisku Make Planar możesz uczynić je współpłaszczyznowymi (co oznacza umieszczenie ich na tej samej płaszczyźnie). Funkcja jest użyteczna, gdy trzeba utworzyć nową wielokątną ściankę. Wierzchołki takiej ścianki powinny być współpłaszczyznowe. Przycisk, o którym mowa, działa we wszystkich trybach podobiektów. Z kolei przyciski X, Y i Z pozwalają spłaszczyć bieżący obiekt bądź podobiekty względem wybranej osi.

442

Część III  Podstawy modelowania

View Align oraz Grid Align Przyciski View Align i Grid Align powodują przesunięcie i dostosowanie orientacji zaznaczonych wierzchołków do aktywnego okna widokowego lub bieżącej siatki konstrukcyjnej. Można ich używać we wszystkich trybach podobiektów. Efektem działania przycisków jest skierowanie wektorów normalnych zaznaczonej ścianki w stronę siatki konstrukcyjnej lub okna widokowego.

Relax Przycisk Relax (rozluźnij) ma działanie podobne do modyfikatora Relax, a polega ono na przesuwaniu wierzchołków o największą możliwą odległość względem wierzchołków sąsiednich, z uwzględnieniem wartości Amount (ilość) definiowanej w oknie dialogowym z ustawieniami. Oprócz niej, w tym samym oknie można zdefiniować wartość Iterations, która decyduje o liczbie iteracji wykonywanych w celu osiągnięcia rezultatu końcowego. Ponadto możliwe jest użycie opcji zapobiegających przesuwaniu punktów brzegowych (Hold Boundary Points) i zewnętrznych (Hold Outer Points).

Hide, Copy i Paste Przycisk Hide Selected (ukryj zaznaczone) ukrywa wszystkie wyselekcjonowane podobiekty. Aby je na powrót wyświetlić, należy użyć przycisku Unhide All (odkryj wszystko). Po zaznaczeniu kilku podobiektów możesz utworzyć zestaw selekcji oznaczony nazwą, wpisując ją na listę rozwijaną Name Selection Sets, znajdującą się na głównym pasku narzędziowym. Zestawy zaznaczenia mogą być kopiowane i wklejane na inne obiekty. U dołu rolety Selection wyświetlane są informacje o liczbie i typie zaznaczonych podobiektów.

Edycja wierzchołków (Vertex) Edytując obiekty Editable Poly i włączając tryb podobiektu Vertex, można zaznaczać wierzchołki i przekształcać je przy użyciu przycisków transformacji, które znajdują się na głównym pasku narzędziowym. Wszystkie narzędzia specyficzne dla podobiektów typu Vertex dostępne są w rolecie Edit Vertices pokazanej na rysunku 13.12. Rysunek 13.12. Te narzędzia są dostępne w trybie edycji wierzchołków

Rozdział 13.  Modelowanie na poziomie wielokątów

443

Remove Przycisk Remove pozwala usuwać zaznaczone wierzchołki. Podobiekty sąsiadujące z usuniętymi wierzchołkami są automatycznie przekształcane w sposób gwarantujący zachowanie integralności siatki. Podobiekty obiektów Editable Poly można usuwać również za pomocą klawisza Delete.

Na rysunku 13.13 widać sferę, w której zaznaczono kilka wierzchołków. Sfera na środkowym obrazku to obiekt typu Editable Mesh, z którego usunięto kilka wierzchołków za pomocą funkcji Delete. Na obrazku z prawej przedstawiono wygląd obiektu Editable Poly po użyciu funkcji Remove.

Rysunek 13.13. Usunięcie wierzchołków wiąże się z usunięciem łączących się z nimi krawędzi i ścianek, ale funkcja Remove pozwala zachować integralność siatki

Przycisk Remove jest dostępny także w trybie podobiektu Edge. Jeśli, klikając ten przycisk, wciśniesz klawisz Ctrl, to gdy zaznaczona jest krawędź, usunięte zostaną również wierzchołki znajdujące się na jej końcach.

Break Klikając przycisk Break (rozłącz), możesz utworzyć nowy, oddzielny wierzchołek dla każdej z łączących się ścianek. Krawędzie siatki połączone są wierzchołkami — przesunięcie jednego z nich powoduje przemieszczenie wszystkich krawędzi (a tym samym ścianek), które się w nim zbiegają. Przycisk Break umożliwia niezależne przeciąganie wierzchołków powiązanych z poszczególnymi ściankami bez zmiany położenia pozostałych ścianek. Przycisk ten jest dostępny tylko w trybie edycji wierzchołków (tryb Vertex). Na rysunku 13.14 przedstawiono obiekt typu Hedra. Za pomocą przycisku Break środkowy wierzchołek został przekształcony w trzy oddzielne wierzchołki dla każdej ze ścianek. Wierzchołkami tymi można manipulować niezależnie, co udowodniono na poniższej ilustracji.

Extrude Działanie przycisku Extrude (wytłocz) polega na tym, że wyselekcjonowany podobiekt zostaje skopiowany i przesunięty o określoną odległość w kierunku prostopadłym do powierzchni obiektu, a kopia łączy się z oryginałem za pomocą nowych ścianek. Przykładowo cztery krawędzie wytłoczonego kwadratu formują prostopadłościan bez górnej

444

Część III  Podstawy modelowania

Rysunek 13.14. Za pomocą przycisku Break możesz wyposażyć każdą ściankę w osobny wierzchołek

ścianki. Aby użyć opisywanej funkcji, należy zaznaczyć krawędź bądź krawędzie, kliknąć przycisk Extrude, a następnie przeciągnąć w oknie widokowym. Głębokość wytłoczenia jest interaktywnie odwzorowywana przez przeciągane krawędzie. Po przesunięciu ich na żądaną odległość należy zwolnić przycisk myszy. Głębokość wytłoczenia można też określić za pomocą kontrolki Extrusion Height w oknie dialogowym z ustawieniami narzędzia Extrude. Opcja Group sprawia, że wszystkie wyselekcjonowane krawędzie są wytłaczane w kierunku zgodnym z uśrednionym wektorem normalnym grupy (dla przypomnienia, wektor normalny ścianki jest do niej prostopadły), zaś po włączeniu opcji Normal Local przesunięcia zachodzą zgodnie z wektorami normalnymi poszczególnych ścianek. Tryb Extrude można wyłączyć, naciskając ponownie przycisk Extrude lub klikając prawym przyciskiem myszy w oknie widokowym. Przycisk Extrude jest dostępny w trybach podobiektów Face, Polygon i Element obiektów Editable Poly. Na rysunku 13.15 pokazano obiekt GeoSphere, którego wszystkie krawędzie zostały zaznaczone, a następnie wytłoczone. Opcja Group Normal spowodowała uśrednienie zwrotów wszystkich wektorów normalnych i wytłoczenie zostało wykonane w kierunku uśrednionym. Opcja Local Normal spowodowała, że każda krawędź została wytłoczona zgodnie z jej lokalnym wektorem normalnym. Okno dialogowe ustawień Extrude pozwala określić wysokość wytłoczenia (Extrusion Height) oraz szerokość jego podstawy (Extrusion Base Width).

Rozdział 13.  Modelowanie na poziomie wielokątów

445

Rysunek 13.15. Podobiekty mogą być wytłaczane w kierunku wynikającym z uśrednienia zwrotów wektorów lub równoległym do wektorów lokalnych

Weld i Chamfer Wierzchołki i krawędzie będące blisko siebie bądź nakładające się mogą być łączone w jeden wierzchołek lub jedną krawędź za pomocą narzędzia Weld (spawanie). Z przyciskami Weld i Chamfer (fazowanie) skojarzone są okna dialogowe, umożliwiające interaktywne dokonywanie zmian parametrów. W oknie ustawień Weld znajdziesz parametr progu spawania (Weld Threshold) oraz informację o liczbie wierzchołków przed przeprowadzeniem spawania i po nim. Informacja pozwala sprawdzić skuteczność całej operacji. Jeśli działanie przycisku Weld i parametru Threshold sprawia Ci problemy, spróbuj użyć przycisku Collapse (scal).

Przycisk Target Weld umożliwia zaznaczenie pojedynczego wierzchołka i przesunięcie wskaźnika myszy nad kolejny wierzchołek. Linia zaznaczenia zostaje rozpięta pomiędzy wierzchołkiem zaznaczonym jako pierwszy oraz wybranym w dalszej kolejności. Kursor identyfikuje wierzchołki zdatne do zaznaczenia, zmieniając swój kształt. Kliknięcie drugiego wierzchołka powoduje zespawanie obu. Gdy łączysz dwa wierzchołki narzędziem Weld, nowy wierzchołek powstaje w połowie odległości między nimi, ale gdy używasz narzędzia Target Weld, pierwszy wierzchołek jest przenoszony na drugi i tam są łączone.

Przycisk Chamfer — dostępny w trybach Vertex, Edge oraz Border — umożliwia fazowanie narożników i dodawanie nowych ścianek w miejscu ścięcia. Korzystając z okna dialogowego ustawień, możesz interaktywnie regulować głębokość fazowania (Chamfer Amount) oraz liczbę segmentów (Segments) mającą wpływ na stopień zaokrąglenia fazowania. W tym samym oknie znajdziesz też opcję Open (otwórz), której włączenie powoduje, że w miejscu ścięcia powstaje otwór, a nie nowy wielokąt. Na rysunku 13.16 przedstawiono dwa płaskie obiekty, wobec których zastosowano funkcję Chamfer z włączoną opcją Open. W przypadku obiektu po lewej zaznaczone zostały wszystkie wewnętrzne wierzchołki, zaś w obiekcie po prawej zaznaczono wszystkie wewnętrzne krawędzie.

Connect Przycisk Connect (połącz) pozwala tworzyć nowe krawędzie pomiędzy zaznaczonymi podobiektami. Wciśnięcie go w trybie Vertex powoduje połączenie wierzchołków znajdujących się na przeciwległych stronach ścianki. W trybach Edge i Border udostępniony

446

Część III  Podstawy modelowania

Rysunek 13.16. Włączenie opcji Open w oknie dialogowym Chamfer sprawia, że brzegi ścięcia tworzą w siatce otwory, które nie są wypełniane nowymi wielokątami

jest przybornik z ustawieniami, m.in. Connect Edge/Segments. Wartość tego parametru określa liczbę segmentów, jakie mają zostać dodane pomiędzy wyselekcjonowanymi krawędziami bądź brzegami. W oknie ustawień znajdują się także parametry Pinch i Slide. Wartość Pinch decyduje o dosunięciu lub rozsunięciu segmentów, zaś Slide pozwala kontrolować przesunięcie segmentów wzdłuż oryginalnej krawędzi.

Remove Isolated Vertices i Remove Unused Map Vertices Przycisk Remove Isolated Vertices służy do usuwania wszystkich odizolowanych wierzchołków. Odizolowane wierzchołki mogą być pozostałością po przeprowadzeniu niektórych operacji i powodują niepotrzebne zwiększenie ilości danych zapisywanych w pliku. Klikając opisywany tu przycisk, wierzchołki te można szybko odnaleźć i pozbyć się ich. Dobrym przykładem odizolowanego wierzchołka może być taki, który został utworzony przy użyciu przycisku Create, ale nie przyłączono go do żadnej krawędzi. Przycisk Remove Unused Map Vertices usuwa z obiektu wszelkie zbędne wierzchołki mapowania.

Weight i Crease Parametr Weight (waga) wyznacza współczynnik wypchnięcia wierzchołków po zastosowaniu podziału NURMS lub zastosowaniu modyfikatora MeshSmooth. Im jego wartość jest wyższa, tym wierzchołek staje się bardziej odporny na wygładzanie. W przypadku

Rozdział 13.  Modelowanie na poziomie wielokątów

447

edycji krawędzi lub brzegów parametrowi Weight towarzyszy parametr Crease (kant), decydujący o widzialności krawędzi po wygładzaniu siatki. Ustawienie 1.0 gwarantuje widzialność. Parametr Crease jest dostępny tylko w trybach Edge i Border.

Edycja krawędzi (Edge) Krawędzie są liniami łączącymi dwa wierzchołki. Krawędź może być zamknięta, co oznacza, że z obu stron łączy się ze ściankami, lub otwarta, gdy tylko z jednej jej strony znajduje się ścianka. Gdy w siatce istnieje otwór, wtedy wszystkie okalające go krawędzie są krawędziami otwartymi. Niektóre krawędzie siatki, np. istniejące w obrębie pojedynczego wielokąta, mogą być niewidoczne. Wówczas wyświetlane są jako przerywane linie biegnące poprzez wielokąty. Zaznaczać można dowolną liczbę krawędzi, klikając je z wciśniętym klawiszem Ctrl. Użycie klawisza Alt pozwala na wykluczanie z zaznaczenia wskazanych krawędzi. Ponadto krawędzie można kopiować, wciskając klawisz Shift podczas ich przekształcania. Klonowana krawędź zachowuje połączenie z wierzchołkami przez utworzenie nowych krawędzi. Wiele opcji trybu Edge działa w ten sam sposób jak opcje dostępne w trybie Vertex. Roleta Edit Edges jest pokazana na rysunku 13.17. Rysunek 13.17. Narzędzia specyficzne dla edycji krawędzi

Split i Insert Vertex Kliknięcie przycisku Split (rozdziel) dzieli krawędź na dwie równe części przez umieszczenie nowego wierzchołka na jej środku. Zatem przydaje się on w sytuacji, gdy trzeba „na szybko” zwiększyć rozdzielczość danego fragmentu siatki. Przycisk Insert Vertex (wstaw wierzchołek) ma działanie podobne, z tą jednak różnicą, że nowy wierzchołek może być umieszczony w dowolnym punkcie krawędzi. Aby go utworzyć, wystarczy kliknąć wybrane miejsce krawędzi. Ponadto włączenie tego przycisku w trybie Edge, Border, Polygon lub Element uwidacznia wierzchołki siatki.

448

Część III  Podstawy modelowania

Bridge Przycisk Bridge (mostkuj) pozwala utworzyć nowe wielokąty pomiędzy wyselekcjonowanymi krawędziami. Gdy w chwili naciskania przycisku Bridge zaznaczone są dwie krawędzie, wówczas zostają połączone nowym wielokątem. Jeżeli zaś nie są zaznaczone żadne krawędzie, wtedy po naciśnięciu przycisku można łączyć krawędzie, klikając je. Przyciskowi Bridge towarzyszy przybornik Bridge Edges pokazany na rysunku 13.18. Możesz tu wybrać opcję łączenia specyficznych krawędzi (Use Specific Edges) lub wyselekcjonowanych (Use Edge Selection). Pierwsza opcja uaktywnia dwa przyciski wyboru krawędzi. Po kliknięciu jednego z nich możesz wskazać krawędź w oknie widokowym. Z kolei opcja Use Edges Selection pozwala zaznaczać krawędzie metodą obrysowywania w oknie widokowym. Ponadto w przyborniku znajdują się kontrolki Segments (liczba segmentów), Smooth (wygładzanie) oraz Bridge Adjacent (mostkuj przyległe). Ostatni parametr określa kąt między przyległymi krawędziami, powyżej którego nie będą one mostkowane. Jest tu także opcja Reverse Triangulation (triangulacja odwrotna). Rysunek 13.18. W przyborniku można ustawić parametry, takie jak liczba segmentów, przewężenie oraz skręcenie mostka

Na rysunku 13.19 przedstawiono prosty przykład mostkowania krawędzi. Litery sprzed operacji widoczne są w górnej części rysunku, a po mostkowaniu — w dolnej.

Create Shape from Selection Przycisk Create Shape from Selection (utwórz kształt z zaznaczenia) pozwala z wyselekcjonowanych krawędzi utworzyć nowy splajn. Po kliknięciu przycisku pojawia się okno dialogowe zaprezentowane na rysunku 13.20. W oknie tym możesz nadać powstającemu kształtowi nazwę oraz wybrać typ gładki (Smooth) lub liniowy (Linear).

Rozdział 13.  Modelowanie na poziomie wielokątów

449

Rysunek 13.19. Po zaznaczeniu dwóch przeciwległych krawędzi i kliknięciu przycisku Bridge w trybie podobiektu Edge tworzone są nowe, łączące je wielokąty

Rysunek 13.20. W oknie Create Shape można nadawać nazwy kształtom tworzonym z wyselekcjonowanych podobiektów typu krawędź

Edit Triangulation Gdy edytujesz obiekt Editable Poly i pracujesz w trybie podobiektu Edge, Border, Polygon bądź Element, wówczas program udostępnia przycisk Edit Triangulation (edycja triangulacji). Pozwala on na modyfikowanie wewnętrznych (niewidocznych) krawędzi wielokąta, które dzielą go na trójkąty. Po kliknięciu przycisku Edit Triangulation uwidaczniają się wszystkie ukryte krawędzie. Aby edytować ukrytą krawędź (rozciągnąć ją pomiędzy innymi wierzchołkami), wystarczy kliknąć jeden z jej wierzchołków, a następnym kliknięciem wskazać drugi wierzchołek, do którego ma biec. Przy dużej liczbie czworokątów lepszym rozwiązaniem jest skorzystanie z przycisku Turn.

Turn Przycisk Turn (obróć) obraca ukrytą krawędź, dzielącą wielokąt na trójkąty (wszystkie wielokątne ścianki zawierają owe ukryte krawędzie). Jeśli np. ukryta krawędź ścianki czworokątnej biegnie pomiędzy wierzchołkami 1. i 3., naciśnięcie przycisku Turn spowoduje,

450

Część III  Podstawy modelowania

że połączy ona wierzchołki 2. i 4. Zmiana taka wpływa na sposób wygładzania powierzchni, gdy w wyniku operacji wielokąt przestaje być płaski. Przycisk Turn dostępny jest we wszystkich trybach z wyjątkiem Vertex. Na rysunku 13.21 widać górną powierzchnię obiektu Box, z ukrytą krawędzią biegnącą po przekątnej. Drugi obrazek ilustruje bieg tejże krawędzi po kliknięciu przycisku Turn. Rysunek 13.21. Funkcja Turn służy do zmiany ułożenia krawędzi

Powierzchnie mogą być deformowane tylko wzdłuż istniejących krawędzi. Dlatego podczas konstruowania modelu zwracaj uwagę na to, gdzie powstają krawędzie i jak łączą się ze sobą. Przykładowo w modelach postaci ważne jest, aby krawędzie biegły zgodnie z układem mięśni, bo wówczas deformacja powierzchni będzie bardziej naturalna.

Edycja brzegów (Border) Obiekty Editable Poly, w odróżnieniu od obiektów Editable Mesh, nie muszą zawierać podobiektów typu Face, ponieważ mogą być zbudowane ze ścianek wielokątnych. W zamian wykorzystują podobiekty Border. Podobiekty te są otworami (a dokładniej mówiąc, krawędziami wyznaczającymi brzegi otworów) w geometrii obiektu. Roleta Edit Borders jest pokazana na rysunku 13.22. Rysunek 13.22. Większość narzędzi służących do edycji brzegów jest taka sama jak narzędzia do edycji krawędzi

Cap Kliknięcie przycisku Cap (zatkaj) powoduje wypełnienie zaznaczonego brzegu pojedynczym, płaskim wielokątem. Od tego momentu podobiekt Border przestaje być brzegiem otworu.

Bridge Funkcja Bridge pozwala mostkować dwa wyselekcjonowane podobiekty Border powierzchnią złożoną z wielokątów. Oba zaznaczone brzegi muszą być częściami tego samego obiektu, ale nie muszą składać się z równej liczby segmentów. Przybornik Bridge Borders pozwala określić wartości skręcenia dla krawędzi łączących powierzchnie (Twist), liczbę segmentów (Segments) oraz parametry skalowania, odkształcania i wygładzania nowych ścianek (Taper, Bias i Smooth).

Rozdział 13.  Modelowanie na poziomie wielokątów

451

Ćwiczenie: Mostkowanie przedramienia Narzędzie Bridge doskonale nadaje się do edycji dwóch zaznaczonych brzegów i pozwala utworzyć gładką, łączącą je powierzchnię złożoną z wielokątów. W ćwiczeniu utworzysz model przedramienia, mostkując szczegółowy model dłoni z prostym walcem. Wielokąty z dłoni i walca, które w oryginale łączyły oba te elementy, zostały z modelu usunięte. Aby utworzyć model przedramienia, mostkując walec z modelem dłoni, wykonaj następujące czynności. 1. Otwórz plik Forearm bridge.max zawarty w folderze Chap 13 na płycie dołączonej do książki. 2. Po zaznaczeniu części modelu otwórz panel Modify i wybierz tryb podobiektu Border. Następnie wciśnij klawisz Ctrl i kliknij brzeg obiektu dłoni, a następnie walca. 3. Po zaznaczeniu naprzeciwległych podobiektów Border kliknij ikonę, widoczną obok przycisku Bridge w rolecie Edit Borders. 4. W przyborniku Bridge Borders wybierz opcję Use Border Selection, a wartość Segments ustaw na 6. Kliknij przycisk OK. Gotowy model przedramienia przedstawiony jest na rysunku 13.23.

Rysunek 13.23. Za pomocą funkcji Bridge można szybko łączyć części modelu, jak przy tym przedramieniu

452

Część III  Podstawy modelowania

Edycja wielokątów (Polygon) oraz elementów (Element) Obiekty Editable Poly mogą być edytowane także na poziomie podobiektów Polygon i Element. Przyciski funkcji edycyjnych dla tychże trybów znajdują się w roletach Edit Polygons i Edit Elements. Roleta z narzędziami do edycji wielokątów jest pokazana na rysunku 13.24. Rysunek 13.24. Narzędzia do edycji wielokątów znajdują się na rolecie Edit Polygons

Outline i Inset Przycisk Outline (kontur) daje możliwość przesunięcia krawędzi wyselekcjonowanych wielokątów. Powoduje ono zwiększenie powierzchni edytowanego wielokąta czy elementu. Z kolei przycisk Inset (wstawka) tworzy nowy wielokąt wewnątrz zaznaczonego wielokąta i łączy ich krawędzie. Obu przyciskom towarzyszą okna dialogowe ustawień, pozwalające określić wielkość wprowadzanych zmian.

Bevel Działanie funkcji Bevel (fazowanie) polega na wytłaczaniu zaznaczonego podobiektu Polygon, którego krawędzie można następnie fazować. Aby użyć tej funkcji, zaznacz wielokąt, kliknij przycisk Bevel, przeciągnij myszą w oknie widokowym, wyznaczając wysokość wytłoczenia, i zwolnij przycisk myszy. Ponownie przeciągnij myszą, tym razem definiując głębokość fazowania. Decyduje ona o względnej wielkości wytłoczonej ścianki. Na rysunku 13.25 przedstawiono model dwunastościanu. Każda ścianka została lokalnie wytłoczona ze współczynnikiem 20, a następnie poddana fazowaniu o wartości –10.

Flip Przycisk Flip (odwróć) pozwala odwrócić wektory normalne zaznaczonych podobiektów. Jest dostępny wyłącznie w trybach Polygon i Element.

Retriangulate Kliknięcie przycisku Retriangulate powoduje automatyczne przeliczenie ułożenia wszystkich wewnętrznych krawędzi zaznaczonych podobiektów.

Rozdział 13.  Modelowanie na poziomie wielokątów

453

Rysunek 13.25. Górne ścianki tego dwunastościanu zostały wytłoczone i sfazowane

Hinge From Edge Po kliknięciu przycisku Hinge From Edge (zawias z krawędzi) zaznaczony wielokąt zostaje odchylony, jakby jedna z jego krawędzi była zawiasem. Kąt obrotu zależy od długości przeciągnięcia myszą, ale można go też określić w przyborniku, pokazanym na rysunku 13.26. Oprócz kąta obrotu, możesz tu również zdefiniować liczbę segmentów tworzących zawiniętą część. Rysunek 13.26. Przybornik Hinge From Edge umożliwia definiowanie ustawień zawiasu

Domyślnie zawiasem, wokół którego wykonywane jest odchylenie, jest jedna z krawędzi wielokąta. Jednak przycisk Pick Hinge (wskaż zawias) w przyborniku pozwala wybrać inną krawędź (wcale nie musi być ona krawędzią odchylanego wielokąta). Na rysunku 13.27 przedstawiono obiekt kuli, z czterema ściankami odchylonymi względem krawędzi znajdującej się w środku bryły.

454

Część III  Podstawy modelowania

Rysunek 13.27. Kilka wielokątnych ścianek kuli zostało wytłoczonych wokół zawiasu

Extrude Along Spline Przycisk Extrude Along Spline pozwala wytłaczać zaznaczone wielokąty wzdłuż ścieżek utworzonych ze splajnów. Przybornik, który przedstawiono na rysunku 13.28, zawiera przycisk Pick Spline, który umożliwia wskazanie splajnu. Można tutaj też określić liczbę segmentów ścianek bocznych oraz parametrów Taper Amount (wielkość przewężenia) i Taper Curve (krzywizna przewężenia) oraz Twist (skręcenie). Znajdziesz tu również opcję Extrude Along Spline Align (wyrównaj wytłoczenie) wraz z polem parametru Rotation (obrót). Obie kontrolki pozwalają wyrównać i obrócić wytłoczenie względem wektora normalnego ścianki.

Ćwiczenie: Modelowanie ośmiornicy Jedną z rzeczy, które sprawiają, że ośmiornica to wyjątkowe zwierzę, jest to, że posiada ona osiem macek. Można je łatwo wymodelować, korzystając z funkcji Extrude Along Spline. Aby utworzyć model ośmiornicy, wykorzystując przy tym funkcję Extrude Along Spline, wykonaj opisane niżej czynności. 1. Otwórz plik Octopus.max zawarty w folderze Chap 13 na płycie dołączonej do książki. Znajdziesz w nim model tułowia ośmiornicy, utworzony ze spłaszczonej kuli, przekonwertowanej w obiekt Editable Poly. Wokół widać osiem splajnów.

Rozdział 13.  Modelowanie na poziomie wielokątów

455

Rysunek 13.28. Przybornik Extrude Along Spline

2. Zaznacz obiekt tułowia, co spowoduje automatyczne otwarcie panelu Modify. Kliknij przycisk podobiektu Polygon w rolecie Selection (albo użyj skrótu klawiszowego 4), po czym włącz opcję Ignore Backfacing. 3. Kliknij etykietę cieniowania w oknie widokowym Perspective i z podręcznego menu wybierz opcję Edged Faces (albo wciśnij klawisz F4). Dzięki temu wielokąty będą lepiej widoczne. 4. Kliknij pojedynczą ściankę u dołu kuli, a następnie otwórz przybornik funkcji Extrude Along Spline, klikając ikonę widoczną obok przycisku. 5. Naciśnij przycisk Pick Spline i wybierz splajn w pobliżu zaznaczonej ścianki. Ustaw wartość Segments na 6, a Taper Amount na –1.0. Kliknij OK. Upewnij się, że opcja Extrude Along Spline Align nie jest włączona. 6. Powtórz czynności opisane w punktach 4. i 5. dla pozostałych splajnów otaczających model ośmiornicy. 7. W rolecie Subdivisions Surface włącz opcję podziału NURMS (Use NURMS Subdivisions) i ustaw liczbę iteracji (Display Iterations) na 2, co pozwoli wygładzić cały model ośmiornicy. Gotowy model przedstawiono na rysunku 13.29.

Właściwości powierzchniowe podobiektów Polygon i Element Trybom Polygon i Element towarzyszą trzy rolety pokazane na rysunku 13.30. Parametry zgrupowane w rolecie Polygon: Material IDs wyznaczają sposób nałożenia na obiekt materiału Multi/Sub-Object, a wykorzystywane są do przypisywania różnych podmateriałów tego materiału do specyficznych ścianek bądź wielokątów obiektu. Zaznaczając wielokąty, możesz za pomocą tych ustawień przydzielić im odrębne materiały. Przycisk

456

Część III  Podstawy modelowania

Rysunek 13.29. Macki ośmiornicy zostały wymodelowane bez większego trudu dzięki użyciu funkcji Extrude Along Spline Rysunek 13.30. Rolety Polygon Material IDs, Polygon Smoothing Groups oraz Polygon Vertex Colors są wspólne dla trybów Polygon i Element

Select ID zaznacza wszystkie podobiekty, którym przypisano wskazany identyfikator materiału (Material ID), ale pozwala też selekcjonować podobiekty na podstawie nazw materiałów, wybieranych z rozwijanej listy znajdującej się niżej. Więcej informacji o materiałach typu Multi/Sub-Object znajdziesz w rozdziale 16., „Tworzenie i stosowanie materiałów standardowych”.

Roleta Polygon: Smoothing Group służy do przypisywania podobiektów do poszczególnych grup wygładzania. Aby przypisać podobiekt, należy go zaznaczyć, po czym kliknąć przycisk z numerem grupy. Przycisk Select By SG otwiera okno dialogowe, w którym możesz wpisać

Rozdział 13.  Modelowanie na poziomie wielokątów

457

numer grupy wygładzania. Spowoduje to wyselekcjonowanie wszystkich należących do niej podobiektów. Z kolei kliknięcie przycisku Clear All powoduje anulowanie wszystkich przypisań podobiektów do grup wygładzania, a przycisk Auto Smooth automatycznie przypisuje numery grup wygładzania w oparciu o kąt pomiędzy ściankami. Graniczną wartość kątową wyznacza się za pomocą kontrolki widocznej po prawej stronie przycisku Auto Smooth. Roleta Polygon: Vertex Colors umożliwia zmianę koloru (Color), barwy oświetlenia (Illumination) i przezroczystości (Alpha) wierzchołków należących do zaznaczonych wielokątów lub elementów.

Subdivision Surface Obiektom Editable Poly towarzyszy dodatkowa roleta o nazwie Subdivision Surface. Jej zadaniem jest automatyczne wygładzanie obiektów przez dodatkowe dzielenie powierzchni (tzw. podpodziały — subdivisions). Roleta Subdivision Surface, którą przedstawiono na rysunku 13.31, wykorzystuje algorytm zwany NURMS. Nazwa ta stanowi akronim wyrażenia Non-Uniform Rational MeshSmooth, czyli niejednolite, wymierne wygładzanie siatki. Zastosowanie tego algorytmu daje rezultaty podobne do osiąganych po użyciu przycisku MSmooth, ale zapewnia pełniejszą kontrolę nad intensywnością wygładzania; ustawienia dla okien widokowych i mechanizmu renderującego mogą być różne. Rysunek 13.31. Roleta Subdivision Surface zawiera kontrolki podpodziału NURMS

Aby uaktywnić podpodział NURMS, należy włączyć opcję Use NURMS Subdivision. Włączenie opcji Smooth Result powoduje przypisanie wszystkich podobiektów do jednej grupy wygładzania, a tym samym wygładzenie całej siatki obiektu. Zastosowanie NURMS z wyższymi wartościami Iterations skutkuje znacznym zagęszczeniem siatki, ale opcja Isoline Display pozwala zmniejszyć liczbę wyświetlanych krawędzi, ułatwiając edycję obiektu. Proces wygładzania wiąże się z tworzeniem wielu nowych krawędzi, a opcja Isoline Display sprawia, że wyświetlane są tylko tzw. izolinie, czyli te krawędzie, które istniały przed zastosowaniem wygładzania. Pole opcji Show Cage pozwala wyświetlać i ukrywać krawędzie pierwotnej siatki. Próbki kolorów po prawej stronie tej opcji umożliwiają wybór koloru krawędzi zaznaczonych i niezaznaczonych.

458

Część III  Podstawy modelowania

Wartość Iterations decyduje o intensywności procesu wygładzania. Im jest wyższa, tym więcej podpodziałów jest wykonywanych na ściankach siatki, w efekcie zwiększa się też stopień złożoności obiektu. Wartość parametru Smoothness określa, jak bardzo ostry musi być narożnik, by utworzone zostały dodatkowe, wygładzające go ścianki. Przy ustawieniu 0 nie następuje wygładzanie żadnych narożników, a przy 1.0 wygładzane są wszystkie wielokąty. Każda iteracja wygładzająca zwiększa liczbę ścianek czterokrotnie. Jeśli za bardzo zwiększysz liczbę iteracji, możesz szybko doprowadzić do zawieszenia systemu.

Dwie opcje w sekcji Render mogą być użyte wówczas, gdy ustawienia dla okien widokowych (Display) i mechanizmu renderującego (Render) mają się różnić. Kiedy oba pola nie są zaznaczone, wówczas w obu przypadkach stosowane są takie same ustawienia. Algorytm wygładzania można skonfigurować również tak, by ignorował wygładzanie z podziałem na grupy i uwzględnieniem materiałów (sekcja Seperate By). Gdy opcja Show Cage jest włączona, wokół obiektu NURMS pojawia się pomarańczowa siatka, która ilustruje, jak wyglądałoby rozmieszczenie wielokątnych ścianek po wyłączeniu algorytmu NURMS. Ułatwia ona zaznaczanie wielokątnych ścianek.

Ćwiczenie: Modelowanie zęba Jeśli kiedykolwiek musiałeś poddać się leczeniu kanałowemu, doskonale zdajesz sobie sprawę, jak bolesny to zabieg. Na szczęście, modelowanie zęba nie przysporzy Ci tylu cierpień. Aby utworzyć model zęba, korzystając z wygładzania siatki metodą NURMS, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Box, po czym przeciągnij w oknie widokowym Top, tworząc obiekt Box. Nadaj mu wymiary 140×180×110, a parametr Segments ustaw na 1×1×1. Kliknij utworzony prostopadłościan prawym przyciskiem myszy i z podręcznego menu wybierz polecenie Convert To/Editable Poly. 2. Kliknij ikonę Polygon w rolecie Selection panelu Modify, aby włączyć tryb edycji wielokątów. Przejdź do okna widokowego Top i wciśnij klawisz B, by zmienić je w okno widokowe Bottom. Następnie w tym samym oknie kliknij dolny wielokąt obiektu. 3. Wciśnij przycisk Select and Scale (R) i zmniejsz wielkość wielokąta o 10%. 4. Obrysuj cały obiekt, aby zaznaczyć wszystkie wielokąty, i kliknij przycisk Tessellate, by dokonać ich podziału. Wybierz polecenie Edit/Selection Region/Window (albo użyj przycisku Rectangular Selection Region na głównym pasku narzędziowym), włączając metodę zaznaczania Window. Obrysuj dolną część obiektu Box w oknie widokowym Left, by wyselekcjonować jedynie wielokąty na spodzie. Ponownie kliknij przycisk Tessellate. 5. Włącz tryb podobiektu Vertex, klikając ikonę w rolecie Selection, a następnie wciśnij klawisz Ctrl i zaznacz środkowe wierzchołki każdej ćwiartki. Przesuń je w dół na odległość równą mniej więcej wysokości całego obiektu, korzystając z okna widokowego Left.

Rozdział 13.  Modelowanie na poziomie wielokątów

459

6. Ponownie uaktywnij okno widokowe Bottom i wciśnij klawisz T, zamieniając je z powrotem w okno Top. Zaznacz pojedynczy wierzchołek pośrodku górnego wielokąta i po włączeniu opcji Ingore Backfacing w rolecie Selection przesuń go nieco w dół w oknie widokowym Left. 7. Wyłącz opcję Ignore Backfacing i w oknie widokowym Left zaznacz cały, drugi od góry rząd wierzchołków. Za pomocą narzędzia Select and Scale w oknie widokowym Top przeskaluj wielokąt, przesuwając wierzchołki do środka. 8. Włącz opcję Use NURMS Subdivision w rolecie Subdivision Surface, a wartość Iterations ustaw na 2. Gotowy model zęba przedstawiono na rysunku 13.32.

Rysunek 13.32. Organiczny wygląd modelu zęba został uzyskany dzięki zastosowaniu NURMS

Podsumowanie Siatki są prawdopodobnie obiektami najczęściej wykorzystywanymi w modelowaniu 3D. Można je tworzyć, konwertując inne obiekty do postaci Editable Mesh lub Editable Poly albo też scalając stos modyfikatorów wybranego obiektu. Max oferuje szereg funkcji do edycji obiektów Editable Poly, pozwalających na ich modyfikowanie na poziomie podobiektów, o czym była mowa w tym rozdziale. Mówiąc ściślej, w rozdziale tym omówione zostały następujące zagadnienia: 

tworzenie obiektów Editable Poly przez konwersję innych obiektów lub zastosowanie modyfikatora Edit Poly,

460

Część III  Podstawy modelowania 

funkcje edycyjne dla obiektów Editable Poly,



wybieranie i wykorzystanie poszczególnych trybów edycji podobiektów siatek,



edycja obiektów siatkowych przy użyciu funkcji dostępnych z poziomu rolety Edit Geometry,



zmiana właściwości powierzchni za pomocą funkcji, takich jak NURMS,

W tym rozdziale dowiedziałeś się, co to są siatki, wielokąty i ścieżki, a w następnym zapoznasz się z narzędziami modelarskimi, których można używać przy obrabianiu obiektów typu Editable Poly.

Rozdział 14.

Korzystanie z narzędzi Graphite i malowanie obiektami W tym rozdziale: 

Modelowanie obiektów przy użyciu narzędzi Graphite



Posługiwanie się narzędziami rzeźbiarskimi typu Freeform



Zaznaczanie specyficznych podobiektów



Malowanie obiektami

Po lekturze poprzedniego rozdziału wiesz już wszystko, co jest niezbędne, aby móc samodzielnie modelować obiekty złożone z wielokątów. Nie jest to trudne, ale wymaga częstego przechodzenia tam i z powrotem między modelem a panelem poleceń, co niektórzy nazywają efektem ping-ponga. Można wprawdzie przesunąć panel bliżej modelu lub wywoływać polecenia z menu kontekstowego, ale chyba najprościej jest korzystać ze wstążki (Ribbon). Wstążka znajduje się w dogodnym miejscu nad oknami widokowymi, a na dodatek każdy jej panel można wyciągnąć i umieścić tam, gdzie korzystanie z niego będzie najwygodniejsze. Panele wstążki są dynamiczne i dopasowują swoją zawartość do charakteru bieżącego zaznaczenia. Dzięki temu masz przed sobą zawsze te narzędzia, których potrzebujesz. Na wstążce znajdziesz wszystkie narzędzia służące do manipulowania obiektami typu Editable Poly. Są wśród nich te same narzędzia, które znajdują się w panelu poleceń, ale jest także mnóstwo zupełnie nowych. Wszystkie otrzymały tutaj wspólną nazwę Graphite Modelling Tools. Poza narzędziami modelarskimi wstążka oferuje także narzędzia do deformowania obiektów przy użyciu pędzli. Wszystkie te nowości przyczyniły się do znacznego zredukowania efektu ping-ponga. Nasze nadgarstki powinny być wdzięczne programistom z firmy Autodesk.

462

Część III  Podstawy modelowania

Posługiwanie się narzędziami Graphite Aby wyświetlić wstążkę i tym samym uzyskać dostęp do narzędzi z zestawu Graphite, należy kliknąć przycisk Graphite Modeling Tools na głównym pasku narzędziowym (patrz rysunek 14.1) albo wybrać polecenie Customize/ShowUI/Show Ribbon. Przycisk staje się wtedy żółty, a wstążka przyjmuje postać taką, jaką miała poprzednio. Klikając dwukrotnie pasek tytułowy wstążki, możesz przełączać wyświetlanie jej w postaci pełnej lub zminimalizowanej, przy czym ta ostatnia może przybrać formę samych zakładek, zakładek z nazwami paneli lub zakładek z przyciskami paneli. Jest to bardzo wygodne, gdyż potrzebne narzędzia są pod ręką, a nie zajmują dużo miejsca.

Rysunek 14.1. Wstążka zawiera kilka zakładek z narzędziami modelarskimi Więcej informacji na temat wstążki znajdziesz w rozdziale 1., „Poznawanie interfejsu Maksa”.

Gdy jest rozwinięta, zakładka Graphite Modeling Tools wyświetla panele z narzędziami. Każdy z tych paneli można oddzielić od pozostałych i umieścić w dowolnym miejscu ekranu. Można także zmieniać ich kolejność na wstążce. Jeśli w panelu nie są widoczne wszystkie jego narzędzia, obok nazwy pojawia się mała strzałka skierowana w dół i jej kliknięcie zwiększa powierzchnię panelu na tyle, że wszystkie narzędzia stają się dostępne. Zarówno panele, jak i ich zawartości zmieniają się w zależności od wybranego trybu edycji podobiektów. Wstążka udostępnia tylko te narzędzia, które w danej sytuacji mogą być użyte. Takie rozwiązanie pozwala zaoszczędzić miejsce i ułatwia odszukanie właściwego narzędzia.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

463

Jeśli nie odpowiada Ci domyślny układ paneli na wstążce, możesz go zmienić. Wskazówki, jak to zrobić, znajdziesz w dodatku N, „Dostosowywanie interfejsu Maksa do własnych potrzeb i upodobań”.

Jeśli klikniesz prawym przyciskiem myszy pasek tytułowy wstążki, uzyskasz dostęp do menu, w którym możesz określić, które zakładki i panele mają być widoczne. Jest tu także polecenie Ribbon Configuration z opcjami dostosowywania wstążki do własnych potrzeb i upodobań, ustawiania wstążki w pionie, zapisywania i wczytywania nowych konfiguracji oraz przywracania konfiguracji domyślnej.

Panel Polygon Modeling Narzędzia z zestawu Graphite są przeznaczone wyłącznie do modelowania obiektów typu Editable Poly lub takich, które mają przypisany modyfikator Edit Poly. Gdy zaznaczysz obiekt innego typu, narzędzia te staną się niedostępne — poza dwoma wyjątkami: Convert to Poly i Apply Edit Poly Mod. Oba znajdują się w panelu Polygon Modeling na zakładce Graphite Modeling Tools i umożliwiają bezpośrednie przekonwertowanie zaznaczonego obiektu do postaci Editable Poly lub przypisanie mu modyfikatora Edit Poly. Użycie któregokolwiek z tych narzędzi powoduje automatyczne otwarcie zakładki Modify w panelu bocznym. Po zaznaczeniu obiektu Editable Poly lub po przypisaniu modyfikatora Edit Poly możesz wybrać, z jakimi podobiektami chcesz pracować. Przyciski służące do wyboru właściwego trybu zaznaczania podobiektów znajdują się w górnej części panelu Polygon Modeling. Panel ten (patrz rysunek 14.2) zawiera także opcje sterujące stosem modyfikatorów — można na przykład „przypiąć” stos do zaznaczonego obiektu i przejść do kolejnej lub poprzedniej pozycji na stosie. Za pomocą przycisku Show End Result można włączyć wyświetlanie obiektu w stanie określonym przez wszystkie przypisane mu modyfikatory i opcje zastosowane we wszystkich trybach manipulowania podobiektami. Jest tu także przycisk Toggle Command Panel, za pomocą którego można włączać i wyłączać wyświetlanie panelu poleceń. Panel Polygon Modeling zawiera także przyciski służące do włączania i wyłączania podglądu zaznaczonych podobiektów oraz pomijania przy zaznaczaniu tych podobiektów, które są zwrócone do tyłu. Przycisk Use Soft Selection umożliwia stosowanie miękkiej selekcji; gdy jest włączony, wyświetla dodatkowy panel o nazwie Soft, pokazany na rysunku 14.3. W panelu Soft można włączyć tryb edycji (Edit), w którym zmiany parametrów Falloff, Pinch i Bubble są ustalane interaktywnie. Kursor wygląda wtedy jak dwa koncentryczne okręgi, co oznacza, że przeciągając myszą, będziesz zmieniał wartość parametru Falloff. Jeśli klikniesz w oknie widokowym, kursor zmieni się w ostry szpic, sygnalizując tryb modyfikowania parametru Pinch. Kolejne kliknięcie zmieni kursor w odwróconą literę U i włączy tryb zmieniania parametru Bubble. Dalsze kliknięcia będą powodowały cykliczne przełączanie trybów. Oczywiście istnieje też możliwość ustalania wartości tych parametrów w panelu Soft za pomocą odpowiednich spinerów. Miękka selekcja została opisana w rozdziale 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

464

Część III  Podstawy modelowania

Rysunek 14.2. Panel Polygon Modeling zawiera nawet opcje określające, które podobiekty mogą być zaznaczane

Rysunek 14.3. Panele Soft i PaintSS służą do sterowania miękkością zaznaczenia

Kliknięcie przycisku Paint w panelu Soft otwiera panel PaintSS, który też został pokazany na rysunku 14.3. Panel ten zawiera przyciski Blur, Revert i Options. Pierwszy z nich rozmywa selekcję, drugi ją odwraca, a trzeci otwiera okno Painter Options, gdzie możesz ustawić właściwości pędzla. Panel umożliwia także wprowadzanie takich parametrów jak Value (wartość), Size (rozmiar) i Strength (siła) używanego pędzla. Opcja Use Edge Distance (uwzględniaj odległość krawędziową) umożliwia zaznaczanie podobiektów sąsiadujących ze sobą w odległości wyrażonej liczbą krawędzi od wskazanego podobiektu, a nie wartością parametru Falloff.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

465

Generowanie topologii Przycisk Generate Topology (generuj topologię) znajduje się w rozwijanej części panelu Polygon Modeling, a jego kliknięcie otwiera okno dialogowe Topology pokazane na rysunku 14.4. W oknie możesz wybrać wzór nowej topologii zaznaczonego obiektu lub jego części. Aby zmienić topologię fragmentu obiektu, musisz ten fragment najpierw zaznaczyć, a następnie przytrzymać wciśnięty klawisz Shift i wybrać odpowiedni wzór. Rysunek 14.4. W oknie Topology można wybrać wzór nowej topologii obiektu

Parametry Size (rozmiar), Iterations (powtórzenia) i Smooth (gładkość) służą do modyfikowania wybranego wzoru. Za pomocą przycisku ScrapVerts (usuń zbędne wierzchołki) możesz się pozbyć wierzchołków łączących tylko dwie krawędzie, a kliknięciem przycisku Plane utworzysz płaszczyznę testową, na której będziesz mógł sprawdzić wybraną topologię, przy czym parametr S określa jej rozdzielczość. Na rysunku 14.5 pokazano cztery płaszczyzny z różnymi topologiami.

Narzędzia symetrii W rozwijanej części panelu Polygon Modeling znajduje się także przycisk Symmetry Tools (narzędzia symetrii), który po kliknięciu otwiera okno dialogowe o takiej samej nazwie (patrz rysunek 14.6). Kliknij przycisk w górnej części okna, a następnie wskaż wybrany przez siebie obiekt. Teraz za pomocą przycisków + To – i – To + możesz kopiować zmiany obiektu z jednej strony osi lokalnego układu odniesienia na drugą. Jeśli użyjesz przycisku Flip Symmetry, położenia podobiektów po obu stronach osi zostaną zamienione. Przycisk Copy Selected (kopiuj zaznaczone) umożliwia skopiowanie położeń wierzchołków jednego obiektu (wszystkich lub tylko wybranych), aby przypisać je wierzchołkom innego obiektu (o takiej samej liczbie wierzchołków) za pomocą przycisku Paste (wklej).

Ćwiczenie: Modelowanie kółka deskorolki Za pomocą narzędzi symetrii możesz szybko przekształcić zwykłą sferę w kółko pasujące do deskorolki. Aby wymodelować takie kółko, wykonaj następujące czynności.

466

Część III  Podstawy modelowania

Rysunek 14.5. Zmiana topologii płaszczyzny umożliwia pracę z zupełnie innym zestawem ścianek Rysunek 14.6. Okno dialogowe Symmetry Tools umożliwia modelowanie obiektów symetrycznych względem określonych osi

1. Wybierz polecenie Create/Standard Primitives/Sphere, po czym przeciągnij w oknie widokowym Front, aby utworzyć sferę. 2. Na głównym pasku narzędzi kliknij przycisk Graphite Modeling Tools, aby wyświetlić wstążkę. Następnie rozwiń panel Polygon Modeling i kliknij w nim przycisk Convert to Poly. 3. Jeszcze raz rozwiń panel Polygon Modeling i kliknij przycisk Symmetry Tools. W oknie dialogowym, które się otworzy, kliknij pierwszy od góry przycisk, a następnie wskaż utworzoną wcześniej sferę. 4. W panelu Polygon Modeling włącz tryb edycji wierzchołków, po czym w oknie widokowym Top przeciągnij myszą przez cztery górne rzędy wierzchołków sfery. Następnie włącz narzędzie Select and Move i przeciągnij zaznaczone wierzchołki w dół.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

467

5. Wróć do okna Symmetry Tools, włącz w nim oś Z (Axis: Z) i za pomocą przycisku – To + skopiuj przesunięcie wierzchołków na dolną część sfery, tak jak na rysunku 14.7.

Rysunek 14.7. Kółko deskorolki jest doskonale symetryczne

Panel Modify Selection Wstążka również zawiera narzędzia do wykonywania zaznaczeń typu pierścień (Ring) i pętla (Loop). Są one dostępne w panelu Modify Selection, pokazanym na rysunku 14.8. Są tu także przyciski do zawężania (Shrink) i poszerzania (Grow) istniejącego zaznaczenia. Narzędzia Loop Mode (tryb pętli) i Ring Mode (tryb pierścienia) służą do zaznaczania całych pętli lub pierścieni przez wskazanie pojedynczej krawędzi. Narzędzia Dot Loop i Dot Ring działają podobnie, z tym że umożliwiają zaznaczanie pętli i pierścieni z przerwami. Z narzędzi dostępnych na wstążce można korzystać także w trybach wierzchołków i ścianek. Panel Modify Selection jest dostępny tylko w trybie podobiektowym.

Panel Modify Selection zawiera jeszcze inne narzędzia. Outline (obrys) zaznacza podobiekty otaczające bieżące zaznaczenie. Similar (podobne) zaznacza podobiekty podobne do bieżącego zaznaczenia, przy czym kryteria podobieństwa mogą obejmować liczbę krawędzi (Edge Count), długości krawędzi (Edge Length), powierzchnie ścianek (Face Areas), kierunki normalnych (Normal Direction) itp. Fill (wypełnij) zaznacza wszystkie

468

Część III  Podstawy modelowania

Rysunek 14.8. Panel wstążki Modify Selection zawiera narzędzia do tworzenia zaznaczeń typu pętla i pierścień

podobiekty leżące między podobiektami zaznaczonymi lub wewnątrz zaznaczonego konturu — umożliwia na przykład zaznaczenie wszystkich wierzchołków w obrębie prostokąta określonego dwoma wierzchołkami na końcach przekątnej. Narzędzie StepLoop umożliwia zaznaczenie fragmentu pętli leżącego między dwoma zaznaczonymi podobiektami. Po włączeniu trybu etapowego (Step Mode) możesz zaznaczyć dwa podobiekty z tej samej pętli, a te, które znajdą się między nimi, również zostaną zaznaczone. W ten sposób możesz kontynuować zaznaczanie w obrębie danej pętli aż do wyłączenia trybu etapowego. Używając klawisza Shift, możesz zaznaczać pętle podobiektów jeszcze szybciej. Gdy zaznaczysz wierzchołek, krawędź lub wielokąt, a następnie przytrzymasz wciśnięty klawisz Shift i klikniesz sąsiedni podobiekt, cała pętla podobiektów zostanie zaznaczona automatycznie.

Edycja geometrii Gdy nie jest wybrany żaden tryb podobiektowy, wstążka udostępnia panele pokazane na rysunku 14.9. Zawierają one większość narzędzi z rolety Edit Geometry w panelu poleceń. Narzędzia te pozwalają m.in. na tworzenie nowych podobiektów, przyłączanie ich do siatki, spawanie i ścinanie wierzchołków, cięcie i wyrównywanie podobiektów. Panele owe są dostępne również we wszystkich trybach podobiektowych, ale niektóre narzędzia mogą być wyłączone. Przyciski wielu narzędzi, takich jak Relax, MSmooth, Tessellate, P Connect czy Quadrify All, są wyposażone w niewielkie strzałki służące do otwierania przyborników z ustawieniami. Przyborniki są wyświetlane w oknach widokowych tuż obok zaznaczonych podobiektów, a wprowadzane za ich pomocą zmiany są natychmiast uwidoczniane. Kliknięcie przycisku OK (znak zaznaczenia) oznacza zatwierdzenie wprowadzonych ustawień i zamknięcie przybornika. Przycisk Apply (znak plus) pozwala zastosować zmiany bez zamykania przybornika. Podobne przyborniki związane są także z narzędziami specyficznymi dla poszczególnych typów podobiektów, w tym Extrude, Bevel Outline oraz Inset.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

469

Rysunek 14.9. Roleta Edit Geometry i wstążka udostępniają szereg ogólnych funkcji edycyjnych

Zachowywanie współrzędnych UV Współrzędne UV decydują o sposobie nałożenia tekstury na powierzchnię obiektu. Są one ściśle powiązane z położeniem podobiektów i dlatego przesunięcie podobiektu po nałożeniu tekstury powoduje również jej przemieszczenie. Może to doprowadzić do zakłócenia ciągłości mapy tekstury. Opcja Preserve UVs (zachowaj współrzędne UV) pozwala temu zapobiec. Okno dialogowe ustawień funkcji Preserve UVs daje możliwość wyboru dwóch właściwości, które mają być zachowywane, czyli Vertex Color (kolor wierzchołka) oraz Texture Channel (kanał tekstury). Bezpośrednio pod przyciskiem Preserve UVs w panelu Edit znajduje się przycisk Tweak (dopasuj mapowanie), który umożliwia przesuwanie współrzędnych UV dla danego obiektu. Położony niżej spiner służy do ustawiania kanału mapowania, który ma być dopasowywany.

Powtarzanie ostatniej operacji Przycisk Repeat Last (powtórz ostatnie) w panelu Edit powoduje ponowne wykonanie ostatniego polecenia odnoszącego się do podobiektu. Współdziała tylko z niektórymi funkcjami, ale w pewnych przypadkach stanowi duże udogodnienie.

Włączanie ograniczeń Opcje z sekcji Constraints pozwalają ograniczać zasięg przesuwania podobiektów do najbliższych im podobiektów wskazanego typu. Do wyboru są następujące opcje: brak ograniczenia (None), krawędź (Edge), ścianka (Face) i normalna (Normal). Jeśli np. wybierzesz opcję Edge, po czym wyselekcjonujesz i spróbujesz przemieścić wierzchołek, wówczas będziesz mógł go przesunąć jedynie do najbliższych krawędzi.

Narzędzia przecinania siatki Przycisk QSlice (szybkie cięcie) daje możliwość wyznaczenia na obiekcie Editable Poly punktu, w którym ma przebiegać linia cięcia. Gdy przesuniesz wskaźnik myszy, linia QuickSlice powędruje za nim, obracając się wokół miejsca kliknięcia. Jeśli ponownie

470

Część III  Podstawy modelowania

klikniesz myszą, narysowana linia wyznaczy płaszczyznę przecinającą obiekt. W punktach, w których przetnie krawędzie obiektu, utworzone zostaną nowe wierzchołki. Jest to bardzo wygodne narzędzie, albowiem wyznaczana linia cięcia biegnie po powierzchni obiektu, dzięki czemu dokładnie widać, w których miejscach zostanie przecięty. Narzędzia QuickSlice oraz Cut (tnij) mogą współdziałać z opcją Full Interactivity (pole tej opcji znajduje się u dołu panelu Polygon Modeling). Po jej włączeniu linie cięcia są wyświetlane podczas przesuwania myszy po powierzchni obiektu. Gdy opcja Full Interactivity jest wyłączona, wtedy odcinki linii pojawiają się dopiero po kolejnych kliknięciach. Poniżej przycisku QSlice znajduje się przycisk Cut. Podczas edycji obiektów Editable Poly przycisk ten działa interaktywnie. Jeśli klikniesz narożnik wielokąta, wówczas krawędź cięcia zostanie do niego przyciągnięta, a nowa krawędź połączy kursor z najbliższym narożnikiem. Podczas przesuwania myszy krawędź przesuwa się wraz z kursorem aż do chwili, kiedy kliknięciem wyznaczysz jej punkt końcowy. Jeżeli klikniesz pośrodku krawędzi bądź ścianki, wtedy nowa krawędź zostanie przedłużona do najbliższego narożnika. Jeszcze inną metodę cięcia obiektów oferuje narzędzie SwiftLoop (błyskawiczna pętla) znajdujące się na wstążce w panelu Edit. Pozwala ono tworzyć pętle przez kliknięcie w dowolnym miejscu na powierzchni obiektu. Pętla, która ma powstać, jest widoczna jeszcze przed kliknięciem i na bieżąco dopasowuje się do aktualnego położenia wskaźnika myszy. Do wycinania otworów przydatne może być narzędzie P Connect (skrót od Paint Connect — rysuj połączenie). Za jego pomocą można wycinać otwory metodą rysowania. Jeśli włączysz to narzędzie i będziesz rysował po powierzchni obiektu, to punkty, w których przetniesz krawędzie, będą oznaczane, a następnie łączone ze sobą nowymi krawędziami. Przez wciskanie różnych kombinacji klawiszy Shift, Ctrl i Alt można modyfikować działanie narzędzia — zmuszać je do łączenia środków krawędzi (klawisz Shift), usuwać wierzchołki (klawisz Alt), krawędzie (klawisze Ctrl+Alt) lub pętle (klawisze Ctrl+Shift) oraz rysować dwie równoległe linie pomiędzy krawędziami (klawisze Shift+Alt). Stosowanie niektórych narzędzi, w tym P Connect, zostało pokazane w filmach instruktażowych, które można odtworzyć, korzystając ze wskazówek zawartych w etykietach ekranowych tych narzędzi.

NURMS Panel Edit zawiera także przycisk o nawie NURMS. Nazwa ta stanowi akronim wyrażenia Non-Uniform Rational MeshSmooth, czyli niejednolite, wymierne wygładzanie siatki. Zastosowanie tego algorytmu daje rezultaty podobne do osiąganych po użyciu przycisku MSmooth, ale zapewnia pełniejszą kontrolę nad intensywnością wygładzania; ustawienia dla okien widokowych i mechanizmu renderującego mogą być różne. Gdy funkcja NURMS jest włączona, na wstążce pojawia się dodatkowy panel Use NURMS pokazany na rysunku 14.10.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

471

Rysunek 14.10. Panel Use NURMS na wstążce zawiera kontrolki podpodziału NURMS

Aby uaktywnić podpodział NURMS, należy włączyć opcję Use NURMS Subdivision1 Włączenie opcji Smooth Result powoduje przypisanie wszystkich podobiektów do jednej grupy wygładzania, a tym samym wygładzenie całej siatki obiektu. Zastosowanie NURMS z wyższymi wartościami Iterations skutkuje znacznym zagęszczeniem siatki, ale opcja Isoline Display pozwala zmniejszyć liczbę wyświetlanych krawędzi, ułatwiając edycję obiektu. Proces wygładzania wiąże się z tworzeniem wielu nowych krawędzi, a opcja Isoline Display sprawia, że wyświetlane są tylko tzw. izolinie, czyli te krawędzie, które istniały przed zastosowaniem wygładzania. Opcja Show Cage pozwala wyświetlać i ukrywać krawędzie pierwotnej siatki. Próbki kolorów po prawej stronie tej opcji umożliwiają wybór koloru krawędzi zaznaczonych i niezaznaczonych. Wartość Iterations decyduje o intensywności procesu wygładzania. Im jest wyższa, tym więcej podpodziałów jest wykonywanych na ściankach siatki, w efekcie zwiększa się też stopień złożoności obiektu. Wartość parametru Smoothness określa, jak bardzo ostry musi być narożnik, by utworzone zostały dodatkowe, wygładzające go ścianki. Przy ustawieniu 0 nie następuje wygładzanie żadnych narożników, a przy 1.0 wygładzane są wszystkie wielokąty. Każda iteracja wygładzająca zwiększa liczbę ścianek czterokrotnie. Jeśli za bardzo zwiększysz liczbę iteracji, możesz szybko doprowadzić do zawieszenia systemu.

Dwie opcje w sekcji Render mogą być użyte wówczas, gdy ustawienia dla okien widokowych i mechanizmu renderującego mają się różnić. Kiedy pola nie są zaznaczone, wówczas w obu przypadkach stosowane są takie same ustawienia. Algorytm wygładzania można skonfigurować również tak, by ignorował wygładzanie z podziałem na grupy i uwzględnieniem materiałów (lista Seperate By).

1

Opcja ta znajduje się w panelu poleceń w rolecie Subdivision Surface (podpodział powierzchni) i jest automatycznie włączana wraz z narzędziem NURMS na wstążce — przyp. tłum.

472

Część III  Podstawy modelowania

Gdy opcja Show Cage jest włączona (znajdziesz ją w górnej części panelu Use NURMS), wokół obiektu NURMS pojawia się pomarańczowa siatka, która ilustruje, jak wyglądałoby rozmieszczenie wielokątnych ścianek po wyłączeniu algorytmu NURMS. Ułatwia ona zaznaczanie wielokątnych ścianek.

Ćwiczenie: Wygładzanie kostki lodu Funkcja NURMS wygładza obiekty, a właśnie tego potrzebujemy, aby wymodelować kostkę lodu. Aby wymodelować kostkę lodu, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Box, po czym przeciągnij w oknie widokowym, aby utworzyć obiekt o kształcie prostopadłościanu. 2. Otwórz wstążkę z narzędziami Graphite Modeling i w panelu Polygon Modeling kliknij przycisk Convert To Poly. 3. Włącz tryb podobiektu Vertex i zaznacz cztery dolne wierzchołki. Następnie włącz na pasku głównym narzędzie skalowania i za jego pomocą zmniejsz podstawę prostopadłościanu. 4. Włącz tryb podobiektu Edges, zaznacz wszystkie krawędzie kostki i trzymając wciśnięty klawisz Shift, kliknij w panelu Edges przycisk Chamfer (fazowanie), aby otworzyć przybornik z ustawieniami fazowania. W polu Chamfer Amount (wielkość fazowania krawędzi) wpisz 1. Taką samą wartość ustaw w polu Edge Segments (segmenty krawędzi), po czym kliknij przycisk OK. 5. W panelu Edit kliknij przycisk NURMS, a następnie w panelu Use NURMS ustaw parametr Itarations na 1. Wszystkie zaznaczone krawędzie zostaną wygładzone, tak jak na rysunku 14.11.

Rozluźnianie siatki (Relax) Przycisk Relax (rozluźnij) ma działanie podobne do modyfikatora Relax, a polega ono na przesuwaniu wierzchołków o największą możliwą odległość względem wierzchołków sąsiednich, z uwzględnieniem wartości Amount (ilość) definiowanej w przyborniku. W tym samym przyborniku można zdefiniować także wartość Iterations, która decyduje o liczbie iteracji wykonywanych w celu osiągnięcia rezultatu końcowego. Ponadto możliwe jest użycie opcji zapobiegających przesuwaniu punktów brzegowych (Hold Boundary Points) i zewnętrznych (Hold Outer Points).

Tworzenie nowych podobiektów (Create) Przycisk Create (utwórz) włącza funkcję tworzenia nowych podobiektów, a konkretnie wielokątów, przez łączenie wierzchołków odizolowanych i brzegowych. Gdy wskaźnik myszy znajduje się nad właściwym wierzchołkiem, przyjmuje formę celownika. Kliknięcie nim wierzchołka powoduje utworzenie krawędzi wielokąta biegnącej od punktu, w którym nastąpiło ostatnie kliknięcie. Gdy żadne wierzchołki nie są dostępne, można je tworzyć, kli-

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

473

Rysunek 14.11. Prosta kostka lodu wykonana przy użyciu funkcji NURMS

kając z wciśniętym klawiszem Shift. Należy pamiętać, że utworzony w ten sposób wierzchołek nie jest umieszczany na żadnej krawędzi, ale wciśnięcie przycisku Create w trybie podobiektu Edge umożliwia łączenie krawędzi z takimi odizolowanymi wierzchołkami. Zwrot wektorów normalnych nowo tworzonych wielokątów jest określany kierunkiem, w którym wielokąt jest rysowany, w oparciu o regułę prawej dłoni. Jeśli zegniesz palce w kierunku nowo utworzonych wierzchołków (zgodnym lub przeciwnym kierunkowi ruchu wskazówek zegara), wówczas kciuk wskaże Ci zwrot wektora normalnego. Jeśli wektor ten jest zwrócony w głąb okna widokowego, wówczas wielokąt jest rysowany tyłem do obserwatora, w związku z czym staje się niewidoczny.

Po wciśnięciu przycisku Create możesz tworzyć wielokąty, wykorzystując istniejące oraz nowe wierzchołki. Aby utworzyć nową ściankę, kliknij przycisk Create, co spowoduje podświetlenie wszystkich wierzchołków wyselekcjonowanej siatki. Następnie kliknij wybrany wierzchołek, rozpoczynając rysowanie nowego wielokąta; zostanie on utworzony po kliknięciu co najmniej dwóch kolejnych wierzchołków. W czasie kreślenia wielokąta można także tworzyć wierzchołki. W tym celu należy kliknąć w wybranym punkcie, wciskając przy tym klawisz Shift. Wielokąty nie muszą mieć jedynie trzech wierzchołków. Możesz klikać dowolną liczbę razy, tworząc dowolne wielokąty. Aby zamknąć wielokąt, trzeba dwukrotnie kliknąć wierzchołek wybrany jako pierwszy.

474

Część III  Podstawy modelowania

Przyłączanie (Attach) Przycisku Attach (przyłącz) można używać w każdym trybie podobiektu, a nawet wówczas, gdy taki tryb nie jest włączony. Włącza funkcję dołączania obiektów do bieżącego obiektu Editable Poly. Tym sposobem można dołączać obiekty podstawowe, splajny, powierzchnie sklejane oraz inne obiekty siatkowe. Każdy z przyłączonych obiektów jest natychmiast przekształcany w edytowalną siatkę wielokątów i przyjmuje kolor obiektu, do którego został dołączony. Po dołączeniu można je zaznaczać indywidualnie, włączając tryb Element. Jeśli dołączany obiekt został wygładzony przy użyciu funkcji NURMS, po dołączeniu wygładzenie NURMS jest usuwane.

Aby użyć omawianej funkcji, zaznacz obiekt główny i kliknij przycisk Attach. Następnie przesuń wskaźnik myszy nad obiekt, który zamierzasz dołączyć. Kursor zmieni wówczas kształt, sygnalizując odnalezienie obiektu nadającego się do dołączenia. Kliknij ów obiekt. Tryb dołączania wyłącza się, klikając prawym przyciskiem myszy w oknie widokowym lub ponownie naciskając przycisk Attach. Jeśli na dołączany obiekt nałożony został materiał różny od tego, który nałożono na bieżący obiekt, pojawia się okno dialogowe pozwalające dokonać wyboru pomiędzy opcjami dopasowania materiałów (Match Material IDs to Material, Match Material to Material IDs lub Do Not Modify Material IDs or Material). Materiały i ich identyfikatory zostaną omówione w rozdziale 15., „Rozszerzony edytor materiałów”.

Kliknięcie ikony Attach List (dołącz listę) otwiera okno dialogowe Attach List (wyglądające jak okno Select From Scene, wywoływane skrótem klawiszowym H), w którym można wybierać nazwy obiektów do przyłączenia. Lista zawiera nazwy tylko tych obiektów, które można przyłączyć do bieżącego obiektu. Po włączeniu trybu edycji podobiektu przycisk Attach zmienia się w Detach.

Dołączanie różni się od grupowania tym, że dołączone obiekty zachowują się jak jeden wspólny obiekt, przyjmują ten sam kolor, nazwę i ulegają tym samym przekształceniom. Dostęp do poszczególnych dołączonych obiektów jest możliwy w trybie edycji podobiektu Element.

Kwadryfikowanie (Quadrify All) Na wstążce, w rozwijanej części panelu Geometry (All) znajduje się jeszcze narzędzie Quadrify All (kwadryfikuj wszystko), które usuwa odpowiednie krawędzie aby zamienić ścianki trójkątne na czworokątne. Dostępne modyfikacje tego narzędzia to: Quadrify All (kwadryfikuj wszystko), Quadrify Selection (kwadryfikuj zaznaczenie), Select Edges from All (zaznacz krawędzie usuwane przy kwadryfikacji wszystkiego) i Select Edges from Selection (zaznacz krawędzie usuwane przy kwadryfikacji zaznaczenia). Najbardziej przydaje się ono przy pracy z pętlami i pierścieniami krawędzi. Na rysunku 14.12 po lewej pokazany jest model głowy zbudowany z trójkątnych ścianek. W wyniku zastosowania funkcji Quadrify All uzyskano bardziej przejrzysty układ ścianek czworokątnych, co widać na tym samym rysunku po prawej. Układ kolumnowo-rzędowy umożliwia stosowanie funkcji związanych z pętlami.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

475

Rysunek 14.12. Funkcja Quadrify All znacznie upraszcza model i sprawia, że dalsza praca z nim staje się łatwiejsza

Wygładzanie (MSmooth) i mozaikowanie (Tessellate) Narzędzia MSmooth (wygładzanie siatki) i Tessellate (mozaikowanie) dostępne w panelu Subdivision (podpodział) służą do wygładzania obiektu i zagęszczania jego ścianek lub krawędzi. Oba mają własne przyborniki pokazane na rysunku 14.13. Parametr Smoothness narzędzia MSmooth decyduje o stopniu wygładzania krawędzi obiektu. Mozaikowania można dokonać, dzieląc krawędzie bądź ścianki, zaś parametr napięcia powierzchniowego (Tension) decyduje o zagęszczeniu sąsiadujących ścianek. Funkcja MSmooth służy do wygładzania powierzchni wyselekcjonowanych podobiektów i dokonuje tego poprzez zagęszczenie siatki — w ten sam sposób, co modyfikator MeshSmooth. Przycisku MSmooth możesz użyć wielokrotnie. O tym, które wierzchołki zostaną użyte do wygładzenia obiektu, decyduje parametr Smoothness. Im jego wartość jest wyższa, tym większa liczba wierzchołków bierze udział w wygładzaniu, w efekcie powierzchnia obiektu staje się gładsza. Możesz też wybrać opcje uwzględniania grup wygładzania (Smoothing Groups) lub materiałów (Materials). Mozaikowanie ma na celu wyłącznie zagęszczenie ścianek lub krawędzi. Podczas modelowania zdarza się konieczność zwiększenia szczegółowości wyselekcjonowanego obszaru. To właśnie wtedy funkcja Tessellate staje się bardzo przydatna. Mozaikowaniu można poddawać zarówno całe obiekty, jak i ich podobiekty.

476

Część III  Podstawy modelowania

Rysunek 14.13. Przyborniki z ustawieniami narzędzi MSmooth i Tessellate pozwalają interaktywnie definiować wartości Smoothness oraz Tension

Klikając przycisk Tessellate, możesz zwiększyć rozdzielczość siatki, dzieląc ściankę bądź wielokąt na szereg mniejszych ścianek bądź wielokątów. Do wyboru masz dwie opcje: dzielenie krawędzi (Edge) i dzielenie ścianek (Face). Działanie metody Edge polega na podzieleniu każdej krawędzi na dwie równe części. Przykładowo ścianka trójkątna może zostać podzielona na trzy mniejsze wielokąty. Wartość parametru Tension decyduje o tym, czy mozaikowana ścianka ma być wklęsła, czy też wypukła. Opcja Face tworzy wierzchołek pośrodku ścianki i nowe krawędzie rozchodzące się do każdego z pierwotnych wierzchołków. W przypadku wieloboku czworokątnego powstają cztery nowe trójkątne ścianki. (Pamiętaj, że każdy czworokąt naprawdę składa się z dwóch ścianek w kształcie trójkąta).

Przemieszczenia (Displacement) Włączenie narzędzia Use Displacement (zastosuj przemieszczenie) otwiera panel Displacement pokazany na rysunku 14.14. W panelu tym można wybrać metodę dzielenia siatki i ustalić parametry przemieszczeń na powierzchni obiektu. Rysunek 14.14. Panel Displacement zawiera wszystkie parametry przemieszczania

Więcej informacji na temat mapowania przemieszczeń znajdziesz w rozdziale 18., „Materiały złożone i modyfikatory materiałów”.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

477

Opcje wyrównywania — panel Align Pojedynczy wierzchołek (a nawet dwa) nie wystarczy do zdefiniowania płaszczyzny, ale trzy lub więcej to umożliwiają. Jeśli zaznaczysz co najmniej trzy wierzchołki, za pomocą przycisku Make Planar możesz uczynić je współpłaszczyznowymi (co oznacza umieszczenie ich na tej samej płaszczyźnie). Funkcja jest użyteczna, gdy trzeba utworzyć nową wielokątną ściankę. Wierzchołki takiej ścianki powinny być współpłaszczyznowe. Przycisk, o którym mowa, działa we wszystkich trybach podobiektów. Z kolei przyciski X, Y i Z pozwalają spłaszczyć bieżący obiekt bądź podobiekty względem wybranej osi. Przyciski To View i To Grid powodują przesunięcie i dostosowanie orientacji zaznaczonych wierzchołków do aktywnego okna widokowego lub bieżącej siatki konstrukcyjnej. Można ich używać we wszystkich trybach podobiektów. Efektem działania przycisków jest skierowanie wektorów normalnych zaznaczonej ścianki w stronę siatki konstrukcyjnej lub okna widokowego.

Edycja wierzchołków (Vertex) Edytując obiekty Editable Poly i włączając tryb podobiektu Vertex (skrót klawiszowy 1), można zaznaczać wierzchołki i przekształcać je przy użyciu przycisków transformacji, które znajdują się na głównym pasku narzędziowym. Wszystkie narzędzia specyficzne dla podobiektów typu Vertex dostępne są w panelu Vertices pokazanym na rysunku 14.15, ale kilka nowych narzędzi, takich jak Collapse, Detach czy Cap Poly, umieszczono też w panelu Geometry (All). Rysunek 14.15. Te narzędzia są dostępne w trybie edycji wierzchołków

Scalanie (Collapse) Przycisk Collapse (scal) pozwala scalać zaznaczone podobiekty w jeden, umieszczony w geometrycznym środku zaznaczenia. Przycisk ten działa więc podobnie jak Weld, z tą tylko różnicą, że łączone wierzchołki nie muszą znajdować się w zasięgu określanym wartością Threshold. Przycisk Collapse działa we wszystkich trybach podobiektów.

Odłączanie (Detach) Przycisk Detach powoduje odłączenie zaznaczonych podobiektów od obiektu. Aby go użyć, należy najpierw zaznaczyć odpowiednie podobiekty. Po kliknięciu przycisku otwiera się okno dialogowe, w którym można nadać odłączanemu obiektowi nową nazwę. Podobiekt można odłączyć jako element tego samego obiektu (Detach to Element) lub jako klon (Detach as Clone). Przycisk Detach działa we wszystkich trybach podobiektów z wyjątkiem Edge.

478

Część III  Podstawy modelowania

Wytłaczanie (Extrude) Działanie przycisku Extrude (wytłocz) polega na tym, że wyselekcjonowany podobiekt zostaje skopiowany i przesunięty o określoną odległość w kierunku prostopadłym do powierzchni obiektu, a kopia łączy się z oryginałem za pomocą nowych ścianek. Przykładowo cztery krawędzie wytłoczonego kwadratu formują prostopadłościan bez górnej ścianki. Aby użyć opisywanej funkcji, należy zaznaczyć krawędź bądź krawędzie, kliknąć przycisk Extrude, a następnie przeciągnąć w oknie widokowym. Głębokość wytłoczenia jest interaktywnie odwzorowywana przez przeciągane krawędzie. Po przesunięciu ich na żądaną odległość należy zwolnić przycisk myszy. Głębokość wytłoczenia można też określić za pomocą kontrolki Height w przyborniku z ustawieniami narzędzia Extrude. Opcja Group sprawia, że wszystkie wyselekcjonowane krawędzie są wytłaczane w kierunku zgodnym z uśrednionym wektorem normalnym grupy (dla przypomnienia, wektor normalny ścianki jest do niej prostopadły), zaś po włączeniu opcji Normal Local przesunięcia zachodzą zgodnie z wektorami normalnymi poszczególnych ścianek. Opcja By Polygon sprawia, że każdy wielokąt jest wytłaczany oddzielnie. Tryb Extrude można wyłączyć, naciskając ponownie przycisk Extrude lub klikając prawym przyciskiem myszy w oknie widokowym. Przycisk Extrude jest dostępny w trybach podobiektów Face, Polygon i Element2 obiektów Editable Poly. Opcja Local Normal spowodowała, że każda krawędź została wytłoczona zgodnie z jej lokalnym wektorem normalnym. Przybornik narzędzia Extrude pozwala określić wysokość wytłoczenia (Height) oraz szerokość jego podstawy (Width).

Usuwanie (Remove) Przycisk Remove pozwala usuwać zaznaczone wierzchołki. Podobiekty sąsiadujące z usuniętymi wierzchołkami są automatycznie przekształcane w sposób gwarantujący zachowanie integralności siatki. Podobiekty obiektów Editable Poly można usuwać również za pomocą klawisza Delete.

Przycisk Remove jest dostępny także w trybie podobiektu Edge. Jeśli klikając ten przycisk, wciśniesz klawisz Ctrl, to wraz z zaznaczoną krawędzią usunięte zostaną również wierzchołki znajdujące się na jej końcach.

Rozłączanie (Break) Za pomocą przycisku Break (rozłącz) możesz utworzyć nowy, oddzielny wierzchołek dla każdej z łączących się ścianek. W zwykłej siatce ścianki łączą się wierzchołkami — przesunięcie jednego z nich powoduje przemieszczenie wszystkich krawędzi (a tym samym ścianek), które się w nim zbiegają. 2

Tak naprawdę są to wszystkie tryby poza Element — przyp. tłum.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

479

Przycisk Break umożliwia niezależne przeciąganie wierzchołków powiązanych z poszczególnymi ściankami bez zmiany położenia pozostałych ścianek. Przycisk ten jest dostępny tylko w trybie edycji wierzchołków (tryb Vertex).

Fazowanie (Chamfer) i spawanie (Weld) Przycisk Chamfer — dostępny w trybach Vertex, Edge oraz Border — umożliwia fazowanie narożników i dodawanie nowych ścianek w miejscu ścięcia. Korzystając z przybornika, możesz interaktywnie regulować głębokość fazowania (Chamfer Amount) oraz liczbę segmentów (Edge Segments) mającą wpływ na stopień zaokrąglenia fazowania. W przyborniku znajdziesz też opcję Open (otwórz), której włączenie powoduje, że w miejscu ścięcia powstaje otwór, a nie nowy wielokąt. Wierzchołki i krawędzie będące blisko siebie bądź nakładające się mogą być łączone w jeden wierzchołek lub jedną krawędź za pomocą narzędzia Weld (spawanie). Z przyciskami Weld i Chamfer skojarzone są przyborniki, umożliwiające interaktywne dokonywanie zmian parametrów. W przyborniku narzędzia Weld znajdziesz parametr progu spawania (Weld Threshold) oraz informację o liczbie wierzchołków przed przeprowadzeniem spawania i po nim. Informacja pozwala sprawdzić skuteczność całej operacji. Przycisk Target umożliwia zaznaczenie pojedynczego wierzchołka i przesunięcie wskaźnika myszy nad kolejny wierzchołek. Linia zaznaczenia zostaje rozpięta pomiędzy wierzchołkiem zaznaczonym jako pierwszy oraz wybranym w dalszej kolejności. Kursor identyfikuje wierzchołki zdatne do zaznaczenia, zmieniając swój kształt. Kliknięcie drugiego wierzchołka powoduje zespawanie obu. Gdy łączysz dwa wierzchołki narzędziem Weld, nowy wierzchołek powstaje w połowie odległości między nimi, ale gdy używasz narzędzia Target Weld, pierwszy wierzchołek jest przenoszony na drugi i tam są łączone.

Waga (Weight) i kant (Crease) Parametr Weight (waga) wyznacza współczynnik wypchnięcia wierzchołków po zastosowaniu podziału NURMS lub zastosowaniu modyfikatora MeshSmooth. Im jego wartość jest wyższa, tym wierzchołek staje się bardziej odporny na wygładzanie. W przypadku edycji krawędzi lub brzegów parametrowi Weight towarzyszy parametr Crease (kant), decydujący o widzialności krawędzi po wygładzaniu siatki. Ustawienie 1.0 gwarantuje widzialność.

Usuwanie zbędnych wierzchołków Przycisk Remove Isolated Vertices służy do usuwania wszystkich odizolowanych wierzchołków. Odizolowane wierzchołki mogą być pozostałością po przeprowadzeniu niektórych operacji i powodują niepotrzebne zwiększenie ilości danych zapisywanych w pliku. Klikając opisywany tu przycisk, wierzchołki te można szybko odnaleźć i pozbyć się ich. Dobrym przykładem odizolowanego wierzchołka może być taki, który został utworzony przy użyciu przycisku Create, ale nie przyłączono go do żadnej krawędzi.

480

Część III  Podstawy modelowania

Przycisk Remove Unused Map Vertices usuwa z obiektu wszelkie zbędne wierzchołki mapowania.

Edycja krawędzi (Edge) i brzegów (Border) Wszystkie narzędzia służące do edycji krawędzi znajdują się w panelach Edges i Borders pokazanych na rysunku 14.16. Większość z nich działa tak samo jak narzędzia używane do edycji wierzchołków. Rysunek 14.16. Wszystkie narzędzia do edycji krawędzi dostępne są w panelu Edges, który pojawia się po włączeniu trybu Edge. Narzędzia służące do edycji brzegów stanowią ich podzbiór

Mostkowanie krawędzi (Bridge Edges) Przycisk Bridge (mostkuj) pozwala utworzyć nowe wielokąty pomiędzy wyselekcjonowanymi krawędziami. Gdy w chwili naciskania przycisku zaznaczone są dwie krawędzie, wówczas zostają połączone nowym wielokątem. Jeżeli zaś nie są zaznaczone żadne krawędzie, wtedy po naciśnięciu przycisku można łączyć krawędzie, klikając je. Liczba połączonych w ten sposób krawędzi może być dowolna. Przyciskowi Bridge towarzyszy przybornik Bridge Edges. Możesz tu wybrać opcję łączenia specyficznych krawędzi (Bridge Specific Edges) lub wyselekcjonowanych (Use Edge Selection). Pierwsza opcja udostępnia dwa przyciski wyboru krawędzi. Po kliknięciu jednego z nich możesz wskazać krawędź w oknie widokowym. Z kolei opcja Use Edges Selection pozwala zaznaczać krawędzie metodą obrysowywania w oknie widokowym. Ponadto w przyborniku znajdują się kontrolki Segments (liczba segmentów), Smooth (wygładzanie) oraz Bridge Adjacent (mostkuj przyległe). Ostatni parametr określa kąt między przyległymi krawędziami, powyżej którego nie będą one mostkowane.

Dzielenie krawędzi (Split) i wstawianie wierzchołków (Insert Vertices) Kliknięcie przycisku Split (rozdziel) dzieli krawędź na dwie równe części przez umieszczenie nowego wierzchołka na jej środku. Zatem przydaje się on w sytuacji, gdy trzeba „na szybko” zwiększyć rozdzielczość danego fragmentu siatki. Przycisk Insert Vertices (wstaw wierzchołki) ma działanie podobne, z tą jednak różnicą, że nowy wierzchołek może być umieszczony w dowolnym punkcie krawędzi. Aby go utworzyć, wystarczy kliknąć wybrane miejsce krawędzi. Ponadto włączenie tego przycisku w trybie Edge, Border, Polygon lub Element uwidacznia wierzchołki siatki. W panelu

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

481

Edges znajduje się narzędzie Insert Vertices, które wstawia nowe wierzchołki równomiernie wzdłuż zaznaczonych krawędzi, a liczbę tych wierzchołków można ustalić za pomocą usytuowanego obok spinera.

Tworzenie kształtów Przycisk Create Shape from Selection (utwórz kształt z zaznaczenia) pozwala z wyselekcjonowanych krawędzi utworzyć nowy splajn. Powstającemu kształtowi możesz nadać nazwę oraz wybrać typ gładki (Smooth) lub liniowy (Linear).

Obracanie krawędzi Przycisk Spin (obróć) obraca ukryte krawędzie, dzielące wielokąt na trójkąty (wszystkie wielokątne ścianki zawierają owe ukryte krawędzie). Jeśli np. ukryta krawędź ścianki czworokątnej biegnie pomiędzy wierzchołkami 1. i 3., naciśnięcie przycisku Turn spowoduje, że połączy ona wierzchołki 2. i 4. Zmiana taka wpływa na sposób wygładzania powierzchni, jeśli wielokąt nie jest płaski.

Zamykanie brzegu (Cap) Kliknięcie przycisku Cap (zatkaj) znajdującego się w panelu Geometry (All) powoduje wypełnienie zaznaczonego brzegu pojedynczym, płaskim wielokątem. Od tego momentu podobiekt Border przestaje być brzegiem otworu.

Mostkowanie brzegów (Bridge) Funkcja Bridge pozwala mostkować dwa wyselekcjonowane podobiekty Border powierzchnią złożoną z wielokątów. Oba zaznaczone brzegi muszą być częściami tego samego obiektu, ale nie muszą składać się z równej liczby segmentów.

Edycja wielokątów (Polygon) oraz elementów (Element) Obiekty Editable Poly mogą być edytowane także na poziomie podobiektów Polygon i Element. Przyciski funkcji edycyjnych dla tychże trybów znajdują się w panelach Polygons i Elements pokazanych na rysunku 14.17. Rysunek 14.17. Narzędzia do edycji wielokątów i elementów znajdują się w panelach Polygons i Elements

482

Część III  Podstawy modelowania

Fazowanie (Bevel) Działanie funkcji Bevel (fazowanie) polega na wytłaczaniu zaznaczonego podobiektu Polygon, którego krawędzie można następnie fazować. Aby użyć tej funkcji, zaznacz wielokąt, kliknij przycisk Bevel, przeciągnij myszą w oknie widokowym, wyznaczając wysokość wytłoczenia, i zwolnij przycisk myszy. Ponownie przeciągnij myszą, tym razem definiując głębokość fazowania. Decyduje ona o względnej wielkości wytłoczonej ścianki.

Foremność (GeoPoly) Narzędzie o nazwie GeoPoly przesuwa wierzchołki zaznaczonego wielokąta w taki sposób, aby uczynić go wielokątem foremnym. Ostateczny kształt wielokąta zależy od liczby jego wierzchołków.

Obrys (Outline) i wstawka (Inset) Przycisk Outline (obrys) daje możliwość przesunięcia krawędzi wyselekcjonowanych wielokątów. Powoduje ono zwiększenie powierzchni edytowanego wielokąta czy elementu. Z kolei przycisk Inset (wstawka) tworzy nowy wielokąt wewnątrz zaznaczonego wielokąta i łączy ich krawędzie. Obu przyciskom towarzyszą okna dialogowe ustawień, pozwalające określić wielkość wprowadzanych zmian.

Odwracanie (Flip) Przycisk Flip (odwróć) pozwala odwrócić wektory normalne zaznaczonych podobiektów. Jest dostępny wyłącznie w trybach Polygon i Element.

Odchylanie (Hinge) Po kliknięciu przycisku Hinge (zawias) zaznaczony wielokąt zostaje odchylony, jakby jedna z jego krawędzi była zawiasem. Kąt obrotu zależy od długości przeciągnięcia myszą, ale można go też określić w przyborniku. Domyślnie zawiasem, wokół którego wykonywane jest odchylenie, jest jedna z krawędzi wielokąta. Jednak przycisk Pick Hinge (wskaż zawias) w przyborniku pozwala wybrać inną krawędź (wcale nie musi być ona krawędzią odchylanego wielokąta).

Wytłaczanie wzdłuż splajnów Narzędzie Extrude on Spline pozwala wytłaczać zaznaczone wielokąty wzdłuż ścieżek utworzonych ze splajnów. Przybornik tego narzędzia zawiera przycisk Pick Spline, który umożliwia wskazanie splajnu. Możesz tu też określić liczbę segmentów ścianek bocznych oraz parametrów Taper Amount (wielkość przewężenia) i Taper Curve (krzywizna przewężenia) oraz Twist (skręcenie). Jest tu także opcja wyrównania (Align) wraz z polem parametru Rotation (obrót). Obie kontrolki pozwalają wyrównać i obrócić wytłoczenie względem wektora normalnego ścianki.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

483

Ćwiczenie: Dodawanie uchwytu do kubka Sam kubek można bardzo łatwo wymodelować za pomocą modyfikatora Lathe, ale wyposażenie go w uchwyt to już zupełnie inna historia. Można taki uchwyt wykonać z połówki torusa i korzystając z funkcji boolowskich, przyłączyć go do kubka, lecz tym razem zrobimy to przy użyciu narzędzi modelarskich operujących na wielokątach. Aby dodać do kubka uchwyt, wykonaj opisane niżej czynności. 1. Otwórz plik Mug.max zawarty w folderze Chap 14 na płycie dołączonej do książki. Znajdziesz w nim model prostego kubka, utworzony za pomocą modyfikatora Lathe i przekonwertowany do postaci Editable Poly. Otwórz też wstążkę z narzędziami modelarskimi Graphite — kliknij na głównym pasku narzędziowym przycisk Graphite Modeling Tools. 2. W panelu Edit włącz narzędzie QSlice, a następnie kliknij kubek w oknie widokowym Top mniej więcej na wyskości jednej trzeciej od dołu. Ustaw linię cięcia poziomo i kliknij jeszcze raz. 3. Włącz narzędzie Cut i zetnij nim wszystkie cztery narożniki jednego z czworokątów pod linią utworzoną w poprzednim punkcie. Następnie przetnij czworokąt leżący nad wspomnianą linią, ale tak, by utworzona w ten sposób krawędź była pozioma i znajdowała się w połowie wysokości kubka. Kliknij w oknie widokowym prawym przyciskiem myszy, aby wyłączyć narzędzie Cut. 4. W panelu Polygon Modeling włącz tryb edycji wielokątów (Polygon), po czym kliknij wnętrze wielokąta z obciętymi narożnikami. Trzymając wciśnięty klawisz Shift, kliknij w panelu Polygons przycisk Hinge. W przyborniku Hinge From Edge kliknij przycisk Pick Hinge (wskaż zawias), a następnie kliknij krawędź, którą utworzyłeś w połowie wysokości kubka. Ustaw Segments (liczba segmentów) na 10, Angle (kąt) na 185 i kliknij przycisk OK. Gotowy model kubka z uchwytem przedstawiono na rysunku 14.18. Sam uchwyt wymaga jeszcze wygładzenia — możesz to zrobić za pomocą narzędzia NURMS.

Odbicie lustrzane elementu W panelu Elements znajdują się narzędzia, za pomocą których możesz wykonać odbicie lustrzane bieżącego zaznaczenia względem osi X, Y lub Z. W zwykłym trybie zaznaczony element jest przenoszony na drugą stronę, ale jeśli wciśniesz przycisk Clone, element zostanie sklonowany.

Właściwości powierzchniowe W panelu Properties (właściwości) znajdują się kontrolki pozwalające zmieniać szereg właściwości, takich jak kolor wierzchołków, identyfikatory materiałów i grupy wygładzania.

484

Część III  Podstawy modelowania

Rysunek 14.18. Uchwyt tego kubka został wymodelowany przy użyciu funkcji Hinge

Właściwości wierzchołków W trybie edycji wierzchołków w panelu Properties można zmienić kolor (Color), oświetlenie (Illumination) oraz współczynnik alfa (Alpha) wierzchołków obiektu. Parametry Color i Illumination dla wyselekcjonowanych wierzchołków możesz wybrać za pomocą próbek. Wartość Alpha decyduje o przezroczystości wierzchołków. Po przypisaniu barw możesz zaznaczyć wierzchołki o tym samym kolorze, ustalając ten kolor (lub barwę oświetlenia) w panelu By Color na zakładce Selection, a następnie klikając przycisk Select. Zaznaczone zostaną wówczas wierzchołki oznaczone kolorami, których wartości RGB mieszczą się w zakresie określonym wartościami Range. Więcej informacji o kolorach wierzchołków znajdziesz w rozdziale 32., „Malowanie w oknach widokowych i renderowanie map powierzchni”.

Właściwości powierzchniowe podobiektów Polygon i Element Trybom Polygon i Element towarzyszy panel pokazany na rysunku 14.19. Zawiera on między innymi przyciski Material IDs (identyfikatory materiałów) i Smoothing Grops (grupy wygładzania). Ustawienia wprowadzane za pomocą pierwszego z nich wyznaczają sposób nałożenia na obiekt materiału Multi/Sub-Object, a wykorzystywane są do przypisywania różnych podmateriałów tego materiału do specyficznych ścianek bądź wielokątów obiektu. Zaznaczając wielokąty, możesz za pomocą tych ustawień przydzielić im odrębne materiały. Przycisk Select ID zaznacza wszystkie podobiekty, którym przypisano wskazany identyfikator materiału (Material ID), ale pozwala też selekcjonować podobiekty na podstawie nazw materiałów, wybieranych z rozwijanej listy znajdującej się niżej.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

485

Rysunek 14.19. Panel Properties zawiera ustawienia związane z identyfikatorami materiałów, grupami wygładzania i kolorami wierzchołków Więcej informacji o materiałach typu Multi/Sub-Object znajdziesz w rozdziale 16., „Tworzenie i stosowanie materiałów standardowych”.

Przycisk Smoothing Group służy do przypisywania podobiektów do poszczególnych grup wygładzania. Aby przypisać podobiekt, należy go zaznaczyć, po czym kliknąć przycisk z numerem grupy. Przycisk Select By SG otwiera okno dialogowe, w którym możesz wpisać numer grupy wygładzania. Spowoduje to wyselekcjonowanie wszystkich należących do niej podobiektów. Z kolei kliknięcie przycisku Clear All powoduje anulowanie wszystkich przypisań podobiektów do grup wygładzania, a przycisk Auto Smooth automatycznie przypisuje numery grup wygładzania w oparciu o kąt pomiędzy ściankami. Graniczną wartość kątową wyznacza się za pomocą kontrolki widocznej po prawej stronie przycisku Auto Smooth. Panel Properties umożliwia także zmianę koloru (Color), barwy oświetlenia (Illumination) i przezroczystości (Alpha) wierzchołków należących do zaznaczonych wielokątów lub elementów.

Stosowanie narzędzi Freeform Środkowa zakładka wstążki zawiera narzędzia umożliwiające kształtowanie modeli w sposób przypominający rzeźbienie w glinie. Narzędzia te rozmieszczono w trzech panelach: PolyDraw, Paint Deform i Defaults (patrz rysunek 14.20).

Narzędzia z panelu PolyDraw Narzędzia z panelu PolyDraw służą do tworzenia i modyfikowania powierzchni obiektów. Sposobem działania przypominają narzędzia znane z popularnych programów graficznych.

Drag (przeciągnij) Za pomocą narzędzia Drag można przemieszczać podobiekty. Wystarczy kliknąć wybrany podobiekt, a zostanie on automatycznie zaznaczony i będzie gotów do przeciągnięcia w inne położenie. Przez wciśnięcie dodatkowo klawisza Shift lub Ctrl można wymusić przeciąganie krawędzi lub ścianek niezależnie od włączonego trybu podobiektów. Przytrzymanie wciśniętych klawiszy Shift+Ctrl pozwala na przeciąganie całych pętli krawędzi, a wciskanie klawisza Alt sprawia, że podobiekt przemieszcza się jedynie w płaszczyźnie prostopadłej do osi widoku.

486

Część III  Podstawy modelowania

Rysunek 14.20. Narzędzia Freeform umożliwiają rzeźbienie modeli

Conform (dopasuj) Pędzle dopasowujące (Conform) umożliwiają ułożenie wszystkich wierzchołków zaznaczonego obiektu na powierzchni innego obiektu. Gdy po raz pierwszy otwierasz zakładkę Freeform, możesz z rozwijanej listy widocznej na prawo od przycisku Step Build wybrać opcję Draw On: Surface (rysuj na powierzchni). Wybranie tej opcji uaktywni znajdujący się niżej przycisk Pick (wskaż), a wtedy możesz wskazać obiekt (docelowy), do którego inny ma być dopasowywany. Pędzle dopasowujące są nowością w 3ds Max 2012.

Po wskazaniu obiektu docelowego wybierz pędzel dopasowujący i ustaw jego opcje w panelu Conform Options pokazanym na rysunku 14.21. W panelu tym możesz ustawić między innymi siłę (Strength), zanikanie (Falloff) i dopasowanie (Conform). Parametr Conform określa tempo przesuwania wierzchołków w kierunku obiektu docelowego. Przy wyższych wartościach przesunięcie następuje natychmiast, a przy wartościach małych (np. 0,1) wszystko odbywa się stopniowo w kolejnych pociągnięciach pędzlem. Rysunek 14.21. W panelu Conform Options można ustawić parametry pędzli dopasowujących

Opcja Mirror (lustro) sprawia, że wierzchołki są przesuwane jednakowo po obu stronach osi lustrzanego odbicia. Z listy rozwijanej Vertex Normals/View można wybrać kierunek przesuwania wierzchołków. Jeśli wybierzesz opcję View (widok), wierzchołki będą przesuwane od ekranu w stronę obiektu docelowego. Przy opcji Vertex Normals (normalne wierzchołków) wierzchołki są przesuwane wzdłuż swoich normalnych. Poza tym są tu opcje przesuwania tylko zaznaczonych wierzchołków (Use Selected Vertices),

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

487

pomijania wierzchołków zwróconych do tyłu (Ignore Backfacing), wyboru osi lustrzanego odbicia (Mirror Axis) i zamrażania położenia wierzchołków (Freeze Axis) lub zaznaczonych krawędzi (Freeze Selected Edges) względem określonych osi. W panelu PolyDraw znajdują się cztery pędzle dopasowujące, z których każdy inaczej transformuje wierzchołki. Pędzel Move Conform (dopasowanie z przesunięciem) przesuwa wierzchołki będące w zasięgu jego działania. Za pomocą pędzli Rotate Conform (dopasowanie z obrotem) i Scale Conform (dopasowanie ze skalowaniem) można wierzchołki także obracać i skalować. Pędzel Relax Conform (dopasowanie z rozluźnieniem) wygładza przesunięte wierzchołki, przemieszczając je stopniowo w kierunku pierwotnych położeń.

Ćwiczenie: Układanie drogi w pofałdowanym terenie Ułożenie drogi na podłożu wymodelowanym z obiektu Plane (płaszczyzna) za pomocą modyfikatora Noise (szum) byłoby dość trudne i czasochłonne, gdyby trzeba było ręcznie przesuwać poszczególne wierzchołki. Sprawnie i szybko można zrobić to za pomocą pędzli dopasowujących. Aby dopasować drogę do nierówności terenu, wykonaj następujące czynności. 1. Otwórz plik Conforming road.max zapisany w folderze Chap 14 na płycie dołączonej do książki. 2. Zaznacz drogę, po czym kliknij przycisk Graphite Modeling Tools na głównym pasku narzędziowym, aby otworzyć wstążkę. Kliknij w niej zakładkę Freeform. 3. Z rozwijanej listy na prawo od przycisku Step Build wybierz opcję DrawOn: Surface, a następnie kliknij przycisk Pick i wskaż pofałdowaną powierzchnię. Kliknij jeszcze raz drogę i włącz przycisk Conform. 4. W panelu Conform Options wybierz opcję View, a w oknie widokowym ustaw widok od góry (Top). 5. Wybierz pędzel Move Conform i zakreślając nim niewielkie okręgi na drodze, poprzesuwaj jej wierzchołki tak, aby dopasowały się do pofałdowanego terenu (patrz rysunek 14.22).

Step Build (buduj etapami) Narzędzie Step Build umożliwia dodawanie nowych wierzchołków. Wierzchołki te są umieszczane na siatce aktywnego okna widokowego, na powierzchni wskazanego obiektu lub na bieżącym zaznaczeniu, a właściwą opcję wybieramy z listy rozwijanej Draw On: (rysuj na) znajdującej się na prawo od przycisku narzędzia. Jeśli wybierzesz opcję Surface (na powierzchni), dostępny stanie się przycisk Pick (wskaż) umożliwiający wskazanie obiektu, na powierzchni którego mają być umieszczane wierzchołki. Po utworzeniu wierzchołków możesz wcisnąć klawisz Shift i zakreślić je, aby rozpiąć na nich nowe, wielokątne ścianki. Klawisz Ctrl umożliwia usuwanie ścianek, a klawisz Alt — wierzchołków. Przy użyciu narzędzia Step Build można naprawdę szybko zmienić geometrię obiektu.

488

Część III  Podstawy modelowania

Rysunek 14.22. Droga została ułożona w pagórkowatym terenie za pomocą pędzla Move Conform

Extend (rozszerz) Narzędzie Extend działa na podobiektach brzegowych i umożliwia na przykład zakrywanie dziur nowymi ściankami. Jeśli przeciągniesz krawędź przy wciśniętym klawiszu Shift, krawędź przesunie się i powstanie nowa ścianka. Przy wciśniętych klawiszach Shift+Ctrl przeciągana jest cała pętla krawędzi. Kliknięcie ścianki przy wciśniętym klawiszu Ctrl usuwa tę ściankę, a wciskanie dodatkowo klawisza Alt ogranicza wszystkie ruchy do płaszczyzny widoku.

Optimize (optymalizuj) Narzędzie Optimize scala podobiekty. Jeśli klikniesz krawędź, zostanie ona usunięta, a jej końce połączą się w jeden wierzchołek. Przy wciśniętym klawiszu Shift możesz przeciągnąć wybrany wierzchołek na inny i zespawać go z nim, a klawisz Alt umożliwia usuwanie wierzchołków. Kombinacja klawiszy Shift+Ctrl pozwala usunąć jednym kliknięciem całą pętlę krawędzi.

Ćwiczenie: Otwieranie brylantu Chcesz zobaczyć, co jest w środku brylantu? Przy użyciu narzędzi z panelu PolyDraw otworzymy brylant i zajrzymy do jego wnętrza. Może są tam skarby! Aby zmodyfikować obiekt w kształcie brylantu, wykonaj następujące czynności:

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

489

1. Wybierz polecenie Create/Standard Primitives/Sphere i przeciągnij w oknie widokowym Top, aby utworzyć sferę. Liczbę segmentów ustaw na 6. Następnie kliknij obiekt prawym przyciskiem myszy i z czteroczęściowego menu wybierz Convert To/Editable Poly. 2. Otwórz wstążkę i kliknij w niej zakładkę Freeform, włącz narzędzie Step Build, wciśnij klawisz Ctrl i nie zwalniając go, kliknij środkową ściankę, aby ją usunąć. Następnie utwórz cztery nowe wierzchołki wewnątrz obiektu, po czym wciśnij klawisz Shift i zakreśl te wierzchołki, aby rozpiąć na nich nową ściankę. 3. Za pomocą narzędzia Drag ustaw nowe wierzchołki, tak aby rozpięta na nich ścianka uzyskała kształt kwadratu. 4. Włącz narzędzie Extend i przy wciśniętym klawiszu Shift przeciągnij lewą krawędź otworu ku środkowi obiektu. To samo zrób z prawą krawędzią otworu. Gotowy model w kształcie otwartego brylantu jest pokazany na rysunku 14.23.

Rysunek 14.23. Narzędzia PolyDraw umożliwiają szybkie dodawanie, usuwanie i modyfikowanie wielokątów

Draw On (rysuj na) i Pick (wskaż) Lista rozwijana Draw On oferuje do wyboru trzy opcje określające miejsce działania narzędzi PolyDraw: Grid (siatka), Surface (powierzchnia) i Selection (zaznaczenie). Wybranie opcji Surface uaktywnia przycisk Pick umożliwiający wskazanie obiektu, na którego powierzchni mają być wykonywane operacje rysowania. Parametr Offset określa odległość między rysowanym obiektem a powierzchnią, na której jest rysowany.

490

Część III  Podstawy modelowania Podczas rysowania na powierzchni obiektu warto ustawić dla parametru Offset wartość różną od zera. Zapobiega to przenikaniu tworzonych podobiektów przez powierzchnię obiektu. Do takich sytuacji może dochodzić, gdy nowa ścianka zachodzi na krawędź obiektu.

Shapes (kształty) i Solve Surface (optymalizuj powierzchnię) Narzędzie Shapes umożliwia rysowanie kształtów wielokątnych bezpośrednio na powierzchni obiektu. Trzy takie kształty utworzone na powierzchni torusa są pokazane na rysunku 14.24. Przy wciśniętym klawiszu Ctrl narzędzie to usuwa rysowane wielokąty. Narysowane wielokąty zwykle mają zbyt dużo wierzchołków, ale za pomocą narzędzia Solve Surface można je zoptymalizować, aby składały się głównie z trójkątów lub czworokątów. Rysunek 14.24. Przy użyciu narzędzia Shapes można rysować wielokąty dopasowane do powierzchni konkretnego obiektu

Splines (splajny) Za pomocą narzędzia Splines można rysować splajny dopasowane do powierzchni wybranego obiektu. Użycie dodatkowo klawisza Ctrl pozwala usuwać narysowane splajny.

Surface (powierzchnia), Topology (topologia), Strips (pasy) i Branches (odgałęzienia) Narzędzie Surface przeciągane po powierzchni obiektu pokrywa go siatką czworokątów. Użyte w połączeniu z klawiszem Ctrl usuwa kliknięte wielokąty. Za pomocą narzędzia Topology można tworzyć nowe czworokątne ścianki przez narysowanie dwóch serii linii równoległych wzajemnie prostopadłych. Opcja Auto Weld (spawaj automatycznie) łączy tworzoną siatkę z siatką obiektu. Klawisz Ctrl umożliwia usuwanie narysowanych linii, a klawisz Shift pozwala kontynuować rysowanie linii od najbliższego końca. Narzędziem Strips można tworzyć pasy złożone z czworokątów. Klawisz Shift umożliwia tworzenie nowego pasa, począwszy od najbliższej krawędzi pasa już istniejącego. Branches wytłacza ze wskazanej ścianki odnogę obiektu, której przekrój może się zwężać lub rozszerzać. Stopnień tego zwężania lub rozszerzania jest zależny od wartości parametru Branch Taper, a parametr Minimum Distance określa wysokość segmentów odnogi. Można w ten sposób szybko tworzyć rozmaite macki, czego przykład widać na rysunku 14.25.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

491

Rysunek 14.25. Narzędzie Branches doskonale nadaje się do tworzenia wszelkiego rodzaju macek

Narzędzia Paint Deform Narzędzia z panelu Paint Deform (malowanie deformacji) pokazanego na rysunku 14.26 służą do rzeźbienia powierzchni obiektu przez wpychanie i wyciąganie jego ścianek, co w efekcie pozwala nadawać mu kształt organiczny, a sam proces przypomina modelowanie gliny. Po wybraniu któregokolwiek z tych narzędzi obok pojawia się nowy panel o nazwie Paint Options (opcje malowania) z parametrami pędzla: Size (rozmiar), Strength (siła) i (dla niektórych narzędzi) Offset (stopień deformacji). Rysunek 14.26. Narzędzia Paint Deform umożliwiają rzeźbienie powierzchni obiektu przez wprowadzanie stopniowych zmian

Shift (przesunięcie), Shift Rotate (obrót) i Shift Scale (skalowanie) Narzędzie Shift przesuwa podobiekty objęte pędzlem zgodnie z jego z ruchem. Obiekty sąsiednie również są przesuwane, ale w odpowiednio mniejszym stopniu. Całkowity zasięg działania tego narzędzia określa parametr Falloff (zanikanie). Rozmiar pędzla i zaniku można regulować w panelu Shift Options, ale można to robić także w sposób interaktywny przez przeciąganie myszą w oknie widokowym przy wciśniętym klawiszu Shift (zmiana rozmiaru pędzla reprezentowanego przez wewnętrzny biały okrąg) lub Ctrl (zmiana zakresu zanikania reprezentowanego przez okrąg czarny). Pędzle Shift Rotate i Shift Scale obracają i skalują wszystkie wierzchołki będące w zasięgu ich działania.

492

Część III  Podstawy modelowania Pędzle Shift Rotate i Shift Scale są nowością w 3ds Max 2012.

Push/Pull (wpychanie/wypychanie) Narzędzie to ma również rozmiar i siłę działania, ale działa nieco inaczej niż poprzednie. Przesuwanie pędzla po powierzchni obiektu powoduje wypychanie jego wierzchołków na zewnątrz, a jeśli dodatkowo wciśniesz klawisz Ctrl, narzędzie odwraca swoje działanie i wpycha wierzchołki do wewnątrz. Klawisz Shift pozwala zmniejszyć naprężenia siatki.

Relax/Soften (rozluźnianie/wygładzanie) Narzędzie Relax/Soften służy do wygładzania powierzchni obiektu. Za jego pomocą można na przykład zaokrąglić ostre brzegi sześcianu. Klawisz Alt pozwala rozluźnić siatkę obiektu bez zmiany jego objętości, a klawisz Ctrl umożliwia przywrócenie pierwotnego kształtu siatki.

Flatten i Pinch/Spread (spłaszczanie i zsuwanie/rozsuwanie) Pędzlem Flatten można likwidować wszelkie zagięcia na powierzchni obiektu, a przy wciśniętym klawiszu Ctrl — przywracać jej poprzedni kształt. Przy wciśniętym klawiszu Shift narzędzie działa podobnie jak Relax/Soften. Narzędzie Pinch/Spread zsuwa wierzchołki, a przy wciśniętym klawiszu Alt rozsuwa je.

Smudge, Noise i Exaggerate (rozmazywanie, szum, uwydatnianie) Narzędzie Smudge przesuwa wierzchołki leżące pod pędzlem. Kolejne przeciągnięcia pędzlem po tych samych wierzchołkach powodują dalsze ich przesuwanie. Wciśnięcie dodatkowo klawisza Alt zapobiega przemieszczaniu wierzchołków wzdłuż normalnych — są przesuwane tylko po powierzchni obiektu. Noise przemieszcza wierzchołki w sposób przypadkowy3, a Exaggerate robi to w taki sposób, aby uwydatnić istniejące nierówności.

Constrain to Spline (ograniczanie do splajnu) Jeśli chcesz precyzyjnie operować narzędziami Paint Deform, możesz ograniczyć ich działanie do obszarów wyznaczonych za pomocą splajnu. Kliknij przycisk Pick, wskaż właściwy splajn, włącz opcję Constrain to Spline i zacznij malować pędzlem deformującym. Opcja Constrain to Spline jest nowością w 3ds Max 2012.

3

Narzędzie Noise tworzy na powierzchni obiektu nieregularne wybrzuszenia, a jeśli podczas przeciągania pędzlem przytrzymamy wciśnięty klawisz Alt, będą to wgłębienia — przyp. tłum.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

493

Revert (przywracanie) Za pomocą narzędzia Revert można stopniowo przywracać kształt obiektu istniejący przed zatwierdzeniem wprowadzonych zmian. Do zatwierdzania aktualnego stanu służy przycisk Commit z zielonym haczykiem. Przycisk Cancel (ten z czerwonym znakiem X) anuluje wszystkie modyfikacje wprowadzone po zatwierdzeniu wcześniejszego stanu.

Stosowanie narzędzi z zakładki Selection Następna zakładka wstążki oferuje kilka dodatkowych narzędzi do zaznaczania. Umożliwiają one zaznaczanie podobiektów według określonych kryteriów, takich jak wypukłość, kierunek normalnych czy symetria. Panele z tej zakładki są pokazane na rysunku 14.27. Rysunek 14.27. Narzędzia z zakładki Selection umożliwiają zaznaczanie podobiektów o określonych właściwościach

Zaznaczanie czubków, brzegów i ścianek innych niż czworokątne Trzy pierwsze narzędzia na zakładce Selection to Tops (czubki), Open (otwarte) i NonQuads (inne niż czworokąty). Tops zaznacza same czubki tych części modelu, które zostały wytłoczone. To pozwala na szybkie zmodyfikowanie wysokości wszystkich wytłoczeń za jednym razem. Open zaznacza wszystkie otwarte brzegi, a Non-Quads — wszystkie wielokąty, które nie są czworokątami. Przydaje się podczas pracy z pętlami krawędzi. Narzędzie Non-Quads jest dostępne tylko w trybach podobiektów Polygon i Element.

Kopiowanie i wklejanie zaznaczeń Narzędzia z panelu Stored Selections (zaznaczenia przechowywane) umożliwiają kopiowanie zaznaczeń do dwóch schowków. Skopiowane zaznaczenie można później odtworzyć przez kliknięcie przycisku Paste (wklej). Dodatkowe przyciski służą do łączenia zawartości obu schowków, odejmowania ich i tworzenia części wspólnej. Przycisk Clear opróżnia oba schowki.

494

Część III  Podstawy modelowania

Przyciski Copy i Paste z panelu Sets (zestawy) umożliwiają kopiowanie i wklejanie zestawu zaznaczenia wskazanego na głównym pasku narzędziowym.

Zaznaczanie według kryteriów Pozostałe panele umożliwiają definiowanie rozmaitych kryteriów zaznaczania.

Według powierzchni, normalnych i perspektywy W panelu By Surface (według powierzchni) można określić stopień wypukłości (opcja Convex) lub wklęsłości (opcja Concave) obszarów, w których podobiekty mają być zaznaczone. Mniejsze wartości (z ujemnymi włącznie) zawężają obszary zaznaczane. Przykład zaznaczenia obszarów wklęsłych jest pokazany na rysunku 14.28. Rysunek 14.28. Zaznaczanie według powierzchni (By Surface) pozwala szybko zlokalizować obszary wklęsłe

Zaznaczanie według normalnych (By Normal) polega na wskazaniu jednej z trzech osi (X, Y lub Z) i podaniu kąta (parametr Angle), o jaki normalna może być odchylona od danej osi, aby została objęta zaznaczeniem. Jest to doskonały sposób na sprawdzenie, które ścianki są zwrócone przeciwnie do bieżącego widoku. Przycisk Invert odwraca zwrot wybranej osi. Ustawienia w panelu By Perspective (według perspektywy) pozwalają zaznaczyć podobiekty, których normalne tworzą z kierunkiem widoku kąt nie większy niż wartość parametru Angle. Jeśli włączony jest przycisk Outline (obrys), zaznaczane są tylko te podobiekty, dla których wspomniany kąt jest najbardziej zbliżony do wartości Angle. Aby zobaczyć zaznaczenie utworzone zgodnie z tym kryterium, musisz kliknąć przycisk Select (zaznacz).

Zaznaczanie losowe, połówkowe i bazujące na odległości od środka obrotu W panelu By Random można ustalić parametry losowego zaznaczania podobiektów. Można tu określić liczbę podobiektów, które mają być zaznaczone, przy czym można to zrobić bezpośrednio lub procentowo. Przycisk Select, włączający ustalone kryterium, ma tutaj również opcję Select Within Current Selection, która pozwala zastosować aktualne kryterium w obrębie istniejącego już zaznaczenia. Przyciski Random Grow i Random Shrink powodują losowe poszerzanie lub zawężanie zaznaczenia. Przykład losowego zaznaczenia pokazany jest na rysunku 14.29.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

495

Rysunek 14.29. Za pomocą narzędzia By Random można zaznaczać podobiekty w sposób losowy

Kryterium o nazwie By Half (połówkowo) powoduje zaznaczenie połowy obiektu, przy czym podział na połowy odbywa się względem wybranej przez nas osi. Włączenie przycisku Invert Axis (odwróć oś) pozwala przenieść zaznaczenie na drugą połowę obiektu. Przez ustawienie odpowiedniej wartości procentowej w panelu By Pivot Distance możemy zaznaczyć podobiekty leżące na zewnątrz wirtualnej kuli otaczającej środek obrotu obiektu. W miarę zmniejszania promienia tej kuli zaznaczane są podobiekty leżące bliżej środka obrotu.

Według widoku, symetrii i liczby krawędzi Kryterium By View pozwala zaznaczyć wierzchołki lub wielokąty leżące najbliżej kamery. Zwiększanie parametru liczbowego powoduje rozszerzanie zaznaczenia w głąb sceny. Przykład zaznaczenia według widoku jest pokazany na rysunku 14.30. Rysunek 14.30. Kryterium By View umożliwia zaznaczanie wierzchołków lub wielokątów leżących najbliżej kamery

Dowolne zaznaczenie można zmodyfikować tak, aby było symetryczne względem wybranej osi. Do tego właśnie służą przyciski z panelu By Symmetry. Panel By Numeric — dostępny tylko w trybach edycji wierzchołków i wielokątów — pozwala szybko zaznaczyć wszystkie wierzchołki łączące określoną liczbę krawędzi lub wszystkie wielokąty o określonej liczbie boków. Przy ustalaniu tego kryterium można posłużyć się przyciskami Equal (równy), Less Than (mniejszy niż) i Greater Than (większy niż).

Według koloru Panel By Color jest dostępny tylko w trybie edycji wierzchołków. Za pomocą dostępnych tutaj kontrolek możemy zaznaczyć wierzchołki o kolorze (opcja Color) lub jasności (opcja Illumination) ustalonych za pomocą próbnika kolorów z przedziałami dopuszczalnych wartości w poszczególnych kanałach wyznaczanych za pomocą spinerów R, G i B.

496

Część III  Podstawy modelowania

Malowanie obiektami Ostatnią zakładką wstążki jest Object Paint. Zawiera ona narzędzia umożliwiające rozmieszczanie obiektów w scenie metodą malowania. Są tu również opcje służące do losowego różnicowania rozmiarów, orientacji i położenia „namalowywanych” obiektów.

Wybieranie obiektów W panelu Paint Objects, pokazanym na rysunku 14.31, dostępne są dwa tryby rozprowadzania obiektów: Paint (malowanie) i Fill (wypełnianie). Tryby te można włączać i wyłączać za pomocą przycisków widocznych po lewej stronie panelu. W każdym trybie można swobodnie przełączać obiekty i podobiekty w zależności od aktualnych potrzeb. Rysunek 14.31. Panel Paint Objects zawiera narzędzia umożliwiające rozprowadzanie obiektów metodą malowania lub wypełniania

Aby móc rozpocząć pracę w tych trybach, musisz najpierw wskazać przynajmniej jeden obiekt, używając w tym celu przycisku Pick Object (wskaż obiekt). Wskazany obiekt zostanie wyróżniony w scenie i umieszczony na liście obiektów do rozprowadzenia. Jeśli ponownie klikniesz przycisk Pick Object, będziesz mógł umieścić na tej liście kolejny obiekt. Aby wyświetlić pełną listę takich obiektów, kliknij przycisk Edit Object List (edytowalna lista obiektów). W oknie dialogowym Paint Objects, pokazanym na rysunku 14.32, oprócz samej listy znajdziesz przyciski umożliwiające: zmianę kolejności obiektów (przyciski Move Up i Move Down), dodawanie nowych obiektów przez wskazanie w scenie (przycisk Pick) lub za pośrednictwem okna Select Object (przycisk Add), umieszczanie na liście tych obiektów, które są aktualnie zaznaczone (przycisk Add Selected), oraz usuwanie wybranych pozycji z listy (przycisk Remove). Rysunek 14.32. Lista Paint Objects umożliwia zarządzanie obiektami, które mają być namalowane

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

497

Lista Paint Objects może być modyfikowana tylko przy wyłączonych trybach malowania i wypełniania.

Malowanie Po wskazaniu obiektu kliknij przycisk Paint, aby włączyć tryb malowania, a następnie przeciągnij myszą w oknie widokowym, tak jak na rysunku 14.33. Każde pociągnięcie pędzlem pozostawi nowy ślad w postaci serii kopii obiektu. Ostatnie pociągnięcie można cofnąć za pomocą polecenia Undo. Rozprowadzane w ten sposób kopie obiektu nie są jeszcze elementem sceny. Staną się nim dopiero wtedy, gdy w panelu Brush Settings (ustawienia pędzla) klikniesz przycisk Commit (zatwierdź). Za pomocą przycisku Cancel (anuluj) możesz usunąć wszystkie pociągnięcia wykonane od czasu ostatniego zatwierdzenia.

Rysunek 14.33. Po wskazaniu obiektu możesz rozprowadzać jego kopie jak farbę pędzlem Malowanie obiektami drastycznie zwiększa liczbę wielokątów w scenie, zwłaszcza gdy rozprowadzany w ten sposób obiekt sam składa się z wielu ścianek. Aby uniknąć przesadnego rozbudowania sceny, staraj się używać obiektów możliwie najprostszych.

Zanim „namalowane” kopie obiektu zostaną zatwierdzone w scenie, możesz zmienić ich orientację, wyrównanie i rozstawienie. Możesz je także obrócić, przeskalować i rozrzucić losowo wokół krzywej zakreślonej pędzlem. Potrzebne do tego narzędzia znajdziesz w panelu Brush Settings pokazanym na rysunku 14.34. Domyślnie wszystkie kopie są ustawiane zgodnie z oryginałem, ale możesz je wyrównywać względem osi X, Y lub Z. Klikając przycisk Flip Axis, spowodujesz odwrócenie namalowanych obiektów względem wybranej osi.

498

Część III  Podstawy modelowania

Rysunek 14.34. Panel Brush Settings umożliwia zmianę położenia, orientacji i rozmiarów namalowanych obiektów

Parametr Spacing (odstępy) określa, jak daleko jeden obiekt ma być od drugiego. Ustawienia rozrzutu (Scatter Settings) służą do przesuwania obiektów w kierunkach U, V i W. Ustawienia obrotu (Rotate Settings) umożliwiają obracanie wszystkich obiektów o ten sam kąt lub o kąt wybrany losowo. Aby uzyskać ten drugi efekt, należy kliknąć małą strzałkę obok nazwy osi i zaznaczyć opcję Random. W ustawieniach skalowania (Scale Settings) można włączyć opcję Lock Axis (Uniform Scale) (blokada osi — skalowanie proporcjonalne) i skalować wszystkie obiekty jednakowo albo włączyć opcję Random (losowo) i zastosować transformację z wartościami współczynnika skali pobieranymi losowo z określonego przedziału4. Opcja Ramp (gradacyjnie) powoduje skalowanie obiektów w sposób narastający w ramach każdego pociągnięcia pędzlem. Na rysunku 14.35 pokazano kilka linii z namalowanymi ostrosłupami przy różnych ustawieniach. Linia górna reprezentuje ustawienia domyślne. Druga ma zmienione odstępy, w trzeciej wyrównano obiekty względem osi Y, a w ostatniej zastosowano skalowanie gradacyjne.

Malowanie wieloma obiektami Jeśli na liście obiektów do rozprowadzania za pomocą pędzla umieścisz więcej pozycji, w panelu Paint Objects będziesz mógł wybrać następujące możliwości: malowanie obiektem zaznaczonym na liście (nazwa tego obiektu jest wyświetlana w panelu), wszystkimi obiektami w kolejności ustalonej na liście (All, In Order) lub wszystkimi w kolejności losowej (All, Randomly). Przykładowe rezultaty zastosowania tych opcji pokazano na rysunku 14.36.

4

Tak naprawdę opcja Lock Axis (Uniform Scale) powoduje wyrównanie współczynników skalowania względem poszczególnych osi, co oznacza, że skalowany obiekt zachowuje swoje proporcje. Natomiast opcja Random powoduje zróżnicowane skalowanie poszczególnych obiektów. Za jednakowe skalowanie wszystkich obiektów odpowiada opcja Even — przyp. tłum.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

499

Rysunek 14.35. Po namalowaniu obiektów można zmieniać ich odstępy, orientację i rozmiary

Rysunek 14.36. Podczas malowania wieloma obiektami można je nakładać w kolejności ustalonej bądź przypadkowej

500

Część III  Podstawy modelowania

Malowanie na obiektach Narzędzia z zakładki Object Paint umożliwiają malowanie po aktywnej siatce konstrukcyjnej, po zaznaczonych obiektach lub po całej scenie. Odpowiednie opcje są dostępne na rozwijanej liście Paint On (maluj na) w panelu Paint Objects. Na rysunku 14.37 widać zwykłą sferę z namalowanymi na niej stożkami. Stożki są ustawione zgodnie z normalnymi powierzchni sfery.

Rysunek 14.37. Obiekty mogą być rozprowadzane także na powierzchni innych obiektów w scenie

Gdy wybierzesz opcję Scene (malowanie po scenie), obiekty będą układane na domyślnej siatce konstrukcyjnej i na napotkanych obiektach sceny. Dobierając odpowiednią wartość parametru Offset (odsunięcie), możesz przesuwać nakładane obiekty nad powierzchnię obiektu scenicznego lub w jego głąb.

Tryb wypełniania W trybie wypełniania możliwe jest rozmieszczenie kopii obiektu w równych odstępach wzdłuż wybranej krawędzi. Tryb ten można włączyć dopiero po wskazaniu obiektu i zaznaczeniu krawędzi bądź całej pętli. Wtedy wystarczy kliknąć przycisk Fill (wypełnianie), a kopie obiektu zostaną automatycznie rozmieszczone wzdłuż krawędzi i można przystąpić do regulowania parametrów tego rozmieszczenia. Liczbę kopii można ustalić za pomocą parametru Fill #. Na rysunku 14.38 pokazano sferę, na której poustawiano stożki, stosując właśnie tryb wypełniania.

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami

501

Rysunek 14.38. W trybie wypełniania obiekt jest rozmieszczany wzdłuż pętli krawędzi

Malowanie obiektami animowanymi Jeśli nakładany obiekt ma przypisaną animację, można określić, jak ta animacja będzie odtwarzana przez poszczególne kopie obiektu. W rozwijanej części panelu Paint Objects znajduje się parametr o nazwie Offset Transform Motion (przesunięcie ruchu transformującego) z opcjami Consecutive (kolejno) i Random (losowo). Jeśli wybierzesz pierwszą z nich, animacja będzie uruchamiana dla kolejnych kopii z opóźnieniem czasowym ustalonym w polu by: n frames (o n klatek). Przykładowo, jeśli masz obracającą się kostkę i ustalisz dla niej by: 2 frames, pierwsza kopia zacznie się obracać w klatce 0., druga w klatce 2. itd. Wybranie opcji Random spowoduje uruchamianie animacji poszczególnych kopii w sposób przypadkowy.

Ćwiczenie: Malowanie blizny Chirurdzy wciąż szukają sposobu na skuteczne usuwanie blizn, a my właśnie zafundujemy taką naszemu bohaterowi. Aby wymodelować bliznę za pomocą narzędzi Object Paint, wykonaj następujące czynności. 1. Otwórz plik Futureman with scar.max zamieszczony w folderze Chap 14 na płycie dołączonej do książki.

502

Część III  Podstawy modelowania

2. Na głównym pasku narzędziowym kliknij przycisk Graphite Modeling Tools, aby otworzyć wstążkę, a następnie otwórz w niej zakładkę Object Paint. 3. W panelu Paint Objects kliknij przycisk Pick Object, po czym kliknij w oknie widokowym obiekt o nazwie scar (blizna). Z rozwijanej listy Paint On wybierz opcję Selected Object i zaznacz twarz wojownika (obiekt o nazwie facial). 4. Kliknij przycisk Paint i przeciągnij myszą po czole wojownika. 5. W panelu Brush Settings włącz przycisk Axis Lock (Uniform Scale), ustaw Scale X na 17 i przeciągaj spiner Spacing dotąd, aż kopie namalowanego obiektu ułożą się w klasyczny szew chirurgiczny — powinno to nastąpić przy wartości ok. 11,5. Gotowa blizna jest pokazana na rysunku 14.39.

Rysunek 14.39. Szramę na twarzy można łatwo utworzyć za pomocą narzędzi Object Paint

6. Na koniec kliknij przycisk Commit, aby zespolić bliznę z twarzą.

Podsumowanie Jeśli chodzi o modelowanie na poziomie wielokątów, to najwygodniejszymi narzędziami są bez wątpienia te z zestawu Graphite Modeling. Mając je wszystkie pod ręką, możemy modelować dużo łatwiej i szybciej. Dzięki niezwykłym możliwościom narzędzi z zakładek Freeform, Selection i Object Paint modelowanie stało się wręcz przyjemne. W rozdziale tym omówione zostały następujące zagadnienia:

Rozdział 14.  Korzystanie z narzędzi Graphite i malowanie obiektami 

posługiwanie się narzędziami z zestawu Graphite Modeling,



modelowanie w różnych trybach podobiektowych,



rzeźbienie powierzchni obiektów za pomocą narzędzi Freeform,



zaznaczanie podobiektów przy użyciu narzędzi z zakładki Selection,



malowanie obiektami i rozstawianie obiektów wzdłuż krawędzi za pomocą narzędzi Object Paint.

503

Rozdział ten zamyka część III, czyli „Podstawy modelowania”. Teraz już możesz przystąpić do nauki nakładania materiałów, ustawiania świateł i posługiwania się kamerami. Kolejny rozdział to wprowadzenie w świat materiałów.

504

Część III  Podstawy modelowania

Część IV

Materiały, kamery i oświetlenie W tej części: Rozdział 15. „Rozszerzony edytor materiałów” Rozdział 16. „Tworzenie i stosowanie materiałów standardowych” Rozdział 17. „Określanie właściwości materiałów przy użyciu map” Rozdział 18. „Materiały złożone i modyfikatory materiałów” Rozdział 19. „Operowanie kamerami” Rozdział 20. „Podstawowe techniki oświetlania sceny”

Rozdział 15.

Rozszerzony edytor materiałów W tym rozdziale: 

Omówienie właściwości materiałów



Posługiwanie się edytorem materiałów



Korzystanie z przeglądarki materiałów i map (Material/Map Browser)



Posługiwanie się bibliotekami materiałów



Posługiwanie się eksploratorem materiałów

Materiały służą do pokrywania, kolorowania i malowania powierzchni obiektów. Tak jak powierzchnie spotykane w życiu codziennym, także i materiały w Maksie można określać jako łuszczące się, miękkie, gładkie, przezroczyste albo np. niebieskie. Materiały nałożone na obiekty trójwymiarowe potrafią naśladować ich kolory, tekstury, przezroczystość, blask i inne właściwości. W rozdziale tym poznasz podstawy pracy z materiałami oraz wszystkie funkcje edytora w wersji rozszerzonej i eksploratora materiałów.

Właściwości materiału Zanim zaczniesz korzystać z edytora, powinieneś poznać właściwości materiałów, które będziesz edytował. Zrozumienie znaczenia tych własności bardzo pomoże, gdy zaczniesz tworzyć nowe materiały. Jedynym materiałem, jaki wykorzystywałeś w połączeniu z obiektami, był ich kolor domyślny, losowo przypisywany przez program. Edytor pozwala nadać obiektom o wiele bardziej realistyczny wygląd, bo wyposażono go w umiejętność symulowania różnego typu właściwości fizycznych. Często właściwości materiałów pozostają niewidoczne do czasu wyrenderowania sceny.

508

Część IV  Materiały, kamery i oświetlenie

Kolory Prawdopodobnie kolor jest najbardziej podstawową własnością materiału i najłatwiejszą do zidentyfikowania. Jednak w odróżnieniu od koloru, jaki dla danego obiektu można zdefiniować na panelu Create lub Modify, nie określa się go za pomocą jednej próbki. Wyobraź sobie kosz wypełniony czerwonymi, błyszczącymi jabłkami. Kiedy oświetlisz je jasnoniebieskim światłem, nabiorą koloru purpurowego, ponieważ barwa światła zmiesza się z barwą owoców. A zatem, mimo że jabłkom przypisany został materiał w kolorze czerwonym, jednak ostateczny, widziany na ekranie kolor powierzchni może być zupełnie inny. W oknie edytora materiałów znajdziesz kilka próbek kolorów, które decydują o różnych aspektach powierzchni obiektu. Poniżej wymieniono te próbki, które dostępne są dla rozmaitych materiałów. 

Ambient — definiuje kolor świata otaczającego, wpływającego na wszystkie obiekty w scenie, w tym także na kolory obiektów pozostających w cieniu. Kolor ten można powiązać z kolorem Diffuse, co pozwala zmieniać je razem.



Diffuse — kolor powierzchni obiektu oglądanego w normalnym, pełnym, białym świetle. Podstawowy kolor obiektów definiowany jest zazwyczaj za pomocą próbki Diffuse.



Specular — kolor odblasków w miejscach skupiania światła na powierzchni błyszczącego materiału.



Self-Illumination — kolor światła emitowanego z wnętrza obiektu. Kolor ten niweluje cienie padające na obiekt.



Filter — kolor nadawany przezroczystemu obiektowi przez przenikające przezeń światło.



Reflect — kolor światła odbijanego przez obiekt na inne obiekty w scenie (dotyczy materiału typu Raytrace, czyli uwzględniającego śledzenie promieni świetlnych).



Luminosity — powoduje, że obiekt żarzy się wskazanym kolorem. Działanie tej próbki jest podobne do Self-Illumiation, ale jest niezależna od koloru Diffuse. Dla materiałów standardowych nie istnieją próbki Reflect i Luminosity. Są one dostępne dla materiałów typu Raytrace.

Gdybyś poprosił kogoś, by określił barwę danego obiektu, kolorem, który by wskazał, byłby kolor Diffuse. Jednak wszystkie wymienione wyżej właściwości odgrywają ogromną rolę w tworzeniu realizmu materiałów. Spróbuj przypisać tym próbkom różne, jasne kolory i sprawdź rezultaty. To pozwoli Ci zrozumieć rolę każdego ze składników koloru. W przypadku materiałów realistycznych wybór kolorów w dużym stopniu zależy od oświetlenia sceny. Sztuczne oświetlenie stosowane wewnątrz pomieszczeń daje zupełnie inne rezultaty niż naturalne źródła światła, takie jak Słońce. Oświetlenie obiektów światłem słonecznym można zasymulować, przypisując im żółty kolor Specular, zaś kolor Ambient zmieniając na kolor dopełniający, ciemny, niemal czarny albo purpurowy. Dla obiektów prezentowanych w pomieszczeniu kolorem Specular powinna być biel, a kolor Ambient powinien być tym samym kolorem, co Diffuse, ale zdecydowanie ciemniejszym. Można również zmieniać barwę światła, nie zmieniając koloru Specular.

Rozdział 15.  Rozszerzony edytor materiałów

509

Krycie i przezroczystość Kryjące (nieprzezroczyste) są te obiekty, przez które nie przechodzi światło, np. skały czy pnie drzew. Obiekty przezroczyste natomiast to takie, przez które światło przenika, np. wykonane ze szkła czy plastiku. Właściwości materiałów w Maksie można regulować przy użyciu kilku kontrolek, w tym krycia (Opacity) i przezroczystości (Transparency). Krycie to stopień, w jakim obiekt zatrzymuje przenikające przezeń światło. Jest to parametr przeciwny przezroczystości i zazwyczaj wyrażany w procentach. Obiekt o kryciu równym 0 jest całkowicie przezroczysty, zaś taki, który charakteryzuje się kryciem 100%, w ogóle nie przepuszcza światła. Przezroczystość to parametr decydujący o tym, jak wiele światła może przenikać przez obiekt. Ponieważ jest odwrotnością krycia, toteż może być definiowany za pomocą ustawień tego ostatniego. Kilka opcji pozwala sterować przezroczystością, w tym Falloff, Amount oraz Type. Każda z tych opcji zostanie omówiona w dalszej części rozdziału.

Odbicie i załamanie Odbiciem (reflection) nazywamy to, co widać w lustrze. Obiekty błyszczące odbijają obraz ich otoczenia. Definiując wartości odbijania światła przez materiał, możesz decydować o tym, jak bardzo dany obiekt będzie odbijał obraz sceny. Lustro np. odbija wszystko, zaś skała nie odbija nic. Kontrolki Reflection Dimming decydują o tym, jak silnemu tłumieniu ulega odbicie obiektów otaczających. Załamanie (refraction) to zmiana kierunku rozchodzenia się światła przenikającego przez materiał przezroczysty. O stopniu tej zmiany decyduje współczynnik załamania (Index of Refraction, w skrócie IOR). Przykładowo diament załamuje światło mocniej niż woda w szklance i dlatego w jego przypadku wartość Index of Refraction jest wyższa. Domyślnie dla wszystkich obiektów, które w ogóle nie załamują światła, ustawiana jest na 1.0. Dla wody wynosi 1.3, dla szkła — 1.5, zaś dla kryształu — 2.0.

Połysk i odblaski Na powierzchni obiektów błyszczących, takich jak wypolerowany metal czy czyste okno, pojawiają się odblaski (specular highlights). Ich wygląd i intensywność regulują wartości poziomu odblasków (Specular Level), połyskliwości (Glossiness) i zmiękczenia (Soften). Parametr Specular Level decyduje o sile odblasków. Z kolei Glossiness determinuje ich rozmiar; im wartość ta jest wyższa, tym odblaski mają mniejszą powierzchnię. Natomiast parametr Soften je zmiękcza poprzez obniżenie intensywności i jednoczesne powiększenie powierzchni. Materiały szorstkie mają właściwości będące przeciwnością własności obiektów błyszczących i na ich powierzchniach odblaski niemal nie pojawiają się wcale. Parametr szorstkości (Roughness) decyduje o intensywności mieszania koloru Diffuse z kolorem Ambient. Materiały tkaninowe mają wysoką wartość Roughness, zaś plastik i metal bardzo niską.

510

Część IV  Materiały, kamery i oświetlenie Połysk jest jedną z najważniejszych cech, po której poznajemy, z jakiego rodzaju materiału jest wykonany dany obiekt. Przykładowo obiekty wykonane z metalu mają takie same kolory Specular i Diffuse. Jeśli kolory te się różnią, obiekt przybiera wygląd plastikowy.

Inne właściwości Max oferuje możliwość definiowania kilku dalszych właściwości, ułatwiających tworzenie materiałów standardowych. Pośród tych parametrów wymienić można poziom rozproszenia (Diffuse Level) oraz metaliczność (Metalness). Pierwsza właściwość steruje jasnością koloru Diffuse. Zmniejszenie jej wartości skutkuje przyciemnieniem materiału, bez wpływu na odblaski. Z kolei Metalness decyduje o metalicznym wyglądzie materiału. Niektóre właściwości są dostępne wyłącznie dla określonych typów materiałów. Zanim przejdziesz dalej, musisz zrozumieć różnicę pomiędzy materiałem i mapą. Materiał jest efektem pokrywającym lub przenikającym obiekty w trzech wymiarach, zaś większość map to obrazy dwuwymiarowe (chociaż istnieją także proceduralne mapy 3D), które można owijać na powierzchni obiektów. Materiały mogą zawierać mapy, zaś mapy można tworzyć z wielu materiałów. W edytorze materiałów materiały prezentowane są w postaci cieniowanych próbek w górnej części okna, a mapy jako obrazy dwuwymiarowe. To, czy w danym momencie pracuje się z materiałem, czy mapą, można zazwyczaj stwierdzić na podstawie nazwy domyślnej. Mapy oznaczane są na wykazie nazwą Map oraz numerem (np. Map #1), natomiast materiały liczbami i dopiskiem Default (np. 7-Default).

Praca z edytorem materiałów Edytor materiałów (Material Editor) jest interfejsem pozwalającym definiować, tworzyć oraz nakładać materiały. Dostęp do niego uzyskasz, wybierając polecenie Rendering/Material Editor/Slate Material Editor, klikając przycisk Material Editor na głównym pasku narzędziowym lub korzystając ze skrótu klawiszowego M. Edytor materiałów występuje w dwóch odmianach: kompaktowej (starej) i rozszerzonej (nowej). Wersja znana z poprzednich wydań Maksa jest nadal dostępna pod nazwą Compact Material Editor, a wersja nowa otrzymała nazwę Slate Material Editor. Każdą z nich możesz otworzyć, wybierając odpowiednią opcję w menu Rendering/Material Editor. Istnieje też możliwość przechodzenia od jednej wersji do drugiej za pomocą poleceń z menu edytora Modes (tryby). Większość narzędzi służących do tworzenia materiałów występuje w obu odmianach edytora, ale wersja rozszerzona oferuje większe możliwości i to jej poświęcimy całą uwagę. Edytor kompaktowy pozostawiono, by zachować zgodność z poprzednimi wersjami Maksa i ułatwić pracę tym użytkownikom, którzy już się do niego przyzwyczaili. Kompaktowa wersja edytora materiałów jest opisana w dodatku H, „Kompaktowy edytor materiałów”.

Rozdział 15.  Rozszerzony edytor materiałów

511

Korzystanie z narzędzi edytora materiałów Okno rozszerzonego edytora materiałów, pokazane na rysunku 15.1, składa się z czterech paneli: przeglądarki materiałów i map (Material/Map Browser), panelu z widokiem węzłów, panelu nawigacyjnego (Navigator) i edytora parametrów (Parameter Editor). Spośród tych paneli zawsze otwarty jest tylko ten z widokiem węzłów, natomiast pozostałe można zamykać i otwierać za pomocą opcji w menu Tools. Przeciągnięcie panelu poza okno edytora powoduje, że staje się on niezależnym oknem, które można umieścić w dowolnym miejscu ekranu. Z kolei przeciągnięcie takiego swobodnego panelu z powrotem na okno edytora powoduje wyświetlenie strzałek wskazujących miejsca, gdzie panel może być zadokowany. Aby przeprowadzić dokowanie, należy upuścić panel na jednej z tych strzałek. Mówiąc krótko, nowy edytor materiałów można skonfigurować tak, aby jak najlepiej odpowiadał naszym potrzebom.

Rysunek 15.1. Okno rozszerzonego edytora materiałów zawiera cztery panele Poszczególne panele edytora można włączać i wyłączać także za pomocą klawiszy. Panelowi Material/Map Browser odpowiada klawisz O, panelowi Parameter Editor — klawisz P, a panelowi Navigator — klawisz N.

U góry okna edytora materiałów znajduje się pasek menu. Polecenia dostępne z poziomu tych menu wywołują te same funkcje, co przyciski na paskach narzędziowych. Jednak znalezienie poleceń często bywa łatwiejsze niż odszukanie przycisków, z którymi użytkownik jeszcze nie jest obeznany. Poniżej paska menu znajduje się pasek z przyciskami rozmaitych narzędzi. Ich działanie opisane jest w tabeli 15.1.

512

Część IV  Materiały, kamery i oświetlenie

Tabela 15.1. Przyciski w edytorze materiałów Przycisk

Nazwa

Opis

Select Tool

Włącza narzędzie służące do zaznaczania i przesuwania węzłów materiałowych.

Pick Material From Object

Pozwala pobrać materiał z obiektu w scenie i załadować go do panelu z widokiem węzłów.

Put Material to Scene

Uaktualnia w oknie widokowym te materiały, które zostały zmodyfikowane.

Assign Material to Selection

Przypisuje bieżący materiał zaznaczonemu obiektowi.

Delete Selection

Usuwa te węzły i połączenia między nimi, które są aktualnie zaznaczone w panelu z widokiem węzłów.

Move Children

Wymusza przesuwanie węzłów podrzędnych wraz z nadrzędnymi. Gdy jest wyłączony, węzły podrzędne nie podążają za swoim węzłem nadrzędnym.

Hide Unused Nodeslots

Kompresuje węzeł materiału, ukrywając w nim te gniazda, które są nieużywane.

Show Shaded Material in Viewport, Show Realistic Material in Viewport

Pierwszy przycisk włącza i wyłącza wyświetlanie materiału w oknach widokowych, ale w postaci uproszczonej. Drugi przycisk pozwala wyświetlić materiał w oknie widokowym w sposób bardziej szczegółowy.

Show Background in Preview

Wyświetla w tle szachownicę (lub obraz wybrany przez użytkownika), co jest użyteczne w przypadku materiałów przezroczystych.

Material ID Channel

Ustanawia unikalny identyfikator dla zaznaczonego materiału.

Lay Out All — Vertical, Lay Out All — Horizontal

Pierwszy przycisk rozmieszcza wszystkie węzły w pionowych kolumnach, drugi — w poziomych wierszach.

Lay Out Children

Układa węzły podrzędne wokół węzła nadrzędnego.

Material/Map Browser

Włącza lub wyłącza wyświetlanie przeglądarki materiałów i map.

Parameter Editor

Włącza i wyłącza wyświetlanie edytora parametrów.

Select by Material

Zaznacza wszystkie obiekty, którym przypisany został bieżący materiał. Przycisk ów otwiera okno dialogowe Select Objects z listą tychże obiektów.

Tworzenie węzłów materiałowych Gdy po raz pierwszy otwierasz okno edytora materiałów, panel z widokiem węzłów jest pusty. Aby utworzyć jakiś węzeł, musisz w przeglądarce materiałów i map kliknąć dwukrotnie odpowiednią pozycję lub przeciągnąć ją z przeglądarki do panelu węzłów. W rezultacie w panelu pojawi się węzeł wybranego materiału bądź mapy.

Rozdział 15.  Rozszerzony edytor materiałów

513

Jeśli w scenie znajdują się obiekty z przypisanymi materiałami, możesz za pomocą polecenia Material/Pick from Object lub narzędzia w kształcie kroplomierza pobrać gotowy materiał wprost do panelu z węzłami. Jeśli klikniesz obiekt, któremu nie przypisano żadnego materiału, nic nie zostanie pobrane. Za pomocą polecenia Material/Get All Scene Materials możesz ze sceny pobrać wszystkie materiały naraz. Gdy liczba załadowanych materiałów okaże się zbyt duża, abyś mógł swobodnie pracować, wybierz polecenie Edit/Clear View. Panel węzłów zostanie opróżniony, ale materiały przypisane do obiektów nie zostaną usunięte.

Nawigowanie w panelu z węzłami Każdy opracowywany materiał wyświetlany jest w środkowym panelu edytora jako prostokątny blok zwany węzłem. Na pasku tytułowym węzła widoczne są nazwa i typ materiału. Nazwę można zmienić, wpisując nową w polu tekstowym znajdującym się u samej góry edytora parametrów. Można też kliknąć pasek tytułowy węzła prawym przyciskiem myszy i wybrać z menu kontekstowego polecenie Rename (zmień nazwę). Pod paskiem tytułowym znajdują się gniazda wszystkich parametrów charakteryzujących dany materiał. Każdy z tych parametrów może być modyfikowany w panelu Parameter Editor. Przeciągnięcie paska tytułowego (z nazwą materiału) spowoduje zmianę położenia węzła. Można też zredukować jego rozmiary, ukrywając wszystkie nieużywane gniazda parametrów — w tym celu trzeba zaznaczyć odpowiedni węzeł i na pasku narzędziowym kliknąć przycisk Hide Unused Nodeslots. Jeśli węzłów jest więcej, możesz je poukładać w rzędy lub kolumny, wybierając odpowiedni przycisk z grupy Lay Out. Przykładowe węzły materiałowe pokazano na rysunku 15.2. Panel nawigacyjny wyświetla w sposób uproszczony wszystkie węzły i umożliwia szybkie przemieszczenie się do innej grupy węzłów. Czerwona ramka, którą można przeciągać, symbolizuje tu obszar widoczny w panelu z węzłami. Do nawigowania wśród węzłów służą także narzędzia rozmieszczone w prawym dolnym rogu okna edytora. Jest tam rozwijana lista z predefiniowanymi wartościami powiększenia widoku oraz narzędzia do przesuwania (Pan), powiększania w sposób płynny (Zoom), powiększania wybranego obszaru (Zoom Region), pokazywania całej zawartości panelu (Zoom Extents), pokazywania wszystkich elementów zaznaczonych w możliwie największym powiększeniu (Zoom Extents Selected) i przesuwania widoku do zaznaczonego węzła (Pan to Selected). Do przesuwania widoku w panelu z węzłami można użyć również środkowego przycisku myszy, a zmianę skali powiększenia można uzyskać przez pokręcanie rolką do przewijania — tak samo jak w oknach widokowych.

Wymienione wyżej narzędzia nawigacyjne dostępne są również w menu View edytora materiałów. Menu to zawiera dodatkowo opcje wyświetlania lub ukrywania siatki pomocniczej (Show Grid) i pasków przewijania (Show Scrollbars) oraz polecenie ułożenia wszystkich węzłów (Lay Out All — skrót klawiszowy L). Kliknięcie prawym przyciskiem myszy na zakładce panelu z widokiem węzłów rozwija menu z poleceniami umożliwiającymi zmianę nazwy bieżącego widoku (Rename View), usunięcie go (Delete View) lub utworzenie nowego (Create New View). Nowy widok

514

Część IV  Materiały, kamery i oświetlenie

Rysunek 15.2. W panelu z widokiem węzłów można umieścić kilka materiałów jednocześnie

zostanie umieszczony na nowym panelu z zakładką. Każdy taki panel jest niezależny od pozostałych i może zawierać zupełnie inny zestaw węzłów. Przy większej liczbie widoków można zmieniać ich kolejność przez przeciąganie zakładek.

Zaznaczanie materiałów i przypisywanie ich obiektom Aby zaznaczyć węzeł materiału, wystarczy po prostu kliknąć jego pasek tytułowy. Zaznaczony węzeł jest otoczony białą ramką i przyjmuje ciemniejszy kolor zarówno w panelu środkowym, jak i nawigacyjnym. Aktywny materiał (którego węzeł jest zaznaczony) można przypisać obiektowi zaznaczonemu w oknie widokowym, klikając przycisk Assign Material to Selection lub wybierając polecenie o tej samej nazwie z menu Material edytora bądź z menu kontekstowego powiązanego z węzłem materiału. Można też użyć skrótu klawiszowego A lub po prostu przeciągnąć myszą gniazdo wyjściowe węzła na wybrany obiekt. W tym ostatnim przypadku nie trzeba wcześniej zaznaczać ani materiału, ani obiektu. Chociaż polecenia Undo (cofnij) i Redo (przywróć) nie zostały umieszczone w menu edytora materiałów, można z nich korzystać poprzez dobrze znane skróty klawiszowe Ctrl+Z i Ctrl+Y.

Jeśli klikniesz kilka węzłów, trzymając przy tym wciśnięty klawisz Ctrl, zostaną one zaznaczone. Aby usunąć wybrane węzły, zaznacz je, a potem wciśnij klawisz Delete.

Rozdział 15.  Rozszerzony edytor materiałów

515

Panel z widokiem węzłów jest miejscem, w którym można tymczasowo przechowywać materiały i mapy. W scenie można zastosować setki materiałów. Po załadowaniu materiału do węzła, możesz zmieniać jego parametry, przypisywać go różnym obiektom, a także zapisać do biblioteki, co umożliwi Ci użycie go w innej scenie. Podczas zapisywania pliku ze sceną Maksa zapisywane są też wszystkie materiały wyświetlone w edytorze.

Zmiana podglądu materiału Na pasku tytułowym węzła obok nazwy i typu materiału znajduje się także jego podgląd. Jeśli klikniesz to miejsce dwukrotnie, podgląd powiększy się i będziesz mógł dostrzec więcej szczegółów. Możesz nawet zmienić obiekt próbny (wyświetlany na podglądzie) — w tym celu kliknij węzeł prawym przyciskiem myszy i z menu kontekstowego wybierz jedną z trzech opcji polecenia Preview Object Type: Sphere (sfera), Cylinder (walec) lub Box (sześcian). Menu kontekstowe węzła zawiera także opcje wyświetlania podglądu z tłem (Show Background in Preview), z oświetleniem tylnym (Show Backlight) i z różnymi poziomami kafelkowania zastosowanych map (Preview UV Tiling). Polecenie Open Preview Window otwiera niezależne okno dialogowe z podglądem (patrz rysunek 15.3), które można dowolnie powiększać, uzyskując jeszcze dokładniejszy obraz opracowywanego materiału. Włączenie w tym oknie przycisku Show End Result umożliwia oglądanie materiału w wersji ostatecznej, ze wszystkimi podmateriałami i mapami. Rysunek 15.3. Podgląd materiału może być wyświetlany w odrębnym oknie

Okno z podglądem materiału można zadokować w edytorze materiałów jako kolejny panel.

Materiał po przypisaniu obiektowi w scenie staje się „gorący”. Materiał gorący jest automatycznie uaktualniany w scenie, kiedy tylko jego parametry zostaną zmodyfikowane. Materiały gorące oznaczone są białymi ścięciami narożników pól podglądu. Materiał taki można „schłodzić”, wykonując jego kopię. Aby skopiować materiał, po prostu przeciągnij jego węzeł przy wciśniętym klawiszu Shift. Nowy materiał jest odłączany od obiektu w scenie, co oznacza, że jego edycja nie będzie wpływała na wygląd obiektu. Materiał przyporządkowany obiektowi w scenie dodawany jest do specjalnej biblioteki materiałów, która zapisywana jest wraz ze sceną. Aby jednak materiał znalazł się w tej

516

Część IV  Materiały, kamery i oświetlenie

bibliotece, wcale nie trzeba go ładować do panelu z widokiem węzłów. Wszystkie materiały wykorzystane w scenie są dostępne w przeglądarce materiałów i map w rolecie Scene Materials.

Zaznaczanie obiektów według materiału Jeśli chcesz zaznaczyć w scenie wszystkie obiekty, którym przypisany został specyficzny materiał (np. lśniące złoto), zaznacz jego węzeł, a następnie kliknij przycisk Select by Material znajdujący się w pasku narzędziowym albo wybierz polecenie Utilities/Select Objects by Material. Polecenie to otworzy okno dialogowe Select Objects z listą wszystkich obiektów, którym przypisano dany materiał. Kliknięcie przycisku Select zaznacza owe obiekty w scenie.

Opcje edytora materiałów Okno dialogowe z opcjami rozszerzonego edytora materiałów, pokazane na rysunku 15.4, otwiera się po wybraniu polecenia Preverences z menu Options. W jego górnej części można ustalić, czy węzły mają być zwrócone od lewej do prawej, czy na odwrót. Można również włączyć wyświetlanie dodatkowych parametrów (Show Additional Parameters) i łączy mental ray (Show mr Connection), stosowanie czcionek wygładzanych (Use Antialiased Fonts). Dla materiałów złożonych można ustalić domyślną liczbę podmateriałów (Number of Sub-Materials), a dla siatki pomocniczej — wielkość oczek (Grid Size). W polu Bitmap Editor Path można podać ścieżkę dostępu do folderu z mapami. Domyślnie jest to folder utworzony podczas instalacji Maksa, ale nic nie stoi na przeszkodzie, by wskazać zupełnie inny folder1. Rysunek 15.4. Niektóre aspekty działania rozszerzonego edytora materiałów można ustalić w oknie Options

1

Tak naprawdę pole Bitmap Editor Path ma nieco inne przeznaczenie. Można w nim podać ścieżkę dostępu do zewnętrznego edytora obrazów bitmapowych, który ma być używany podczas edycji map materiałowych — przyp. tłum.

Rozdział 15.  Rozszerzony edytor materiałów

517

Usuwanie materiałów i map Jeśli zdarzy Ci się przypadkowo zastosować niewłaściwy materiał, możesz to naprawić, przypisując obiektowi inny materiał. Jeżeli zechcesz obejrzeć w oknie widokowym obiekt w jego własnym kolorze, otwórz boczny panel Display i w rolecie Display Color włącz opcje Wireframe/Object Color i Shaded/Object Color. Opcje Material Color sprawią, że w oknach widokowych wyświetlany będzie kolor materiału. Jeśli po nałożeniu materiału bądź mapy okaże się, że obiekt nie wygląda należycie, a dostosowywanie parametrów niczego nie zmienia, zawsze możesz przywrócić poprzedni stan obiektu, usuwając z niego materiał lub mapowanie. Narzędziem do usuwania materiałów i mapowań jest UVW Remove. Dostęp do niego uzyskasz, klikając przycisk More w panelu Utilities i wybierając z listy narzędzi UVW Remove. Narzędzie to składa się z pojedynczej rolety, w której wyświetlana jest liczba zaznaczonych obiektów. Znajdują się też w niej dwa przyciski. Przycisk UVW usuwa wszelkie współrzędne mapowania z zaznaczonych obiektów, zaś przycisk Materials czyni to samo, lecz w odniesieniu do materiałów. Kliknięcie tego przycisku powoduje przywrócenie obiektom ich pierwotnych kolorów. Możesz też użyć opcji alternatywnej, a mianowicie Set Gray, która sprawia, że obiekty, z jakich usunięto materiał, wyświetlane są w kolorze szarym.

Menu Utilities Wspominane już wcześniej menu Utilities zawiera kilka użytecznych poleceń. Render Map umożliwia wyrenderowanie mapy, której węzeł jest zaznaczony. W oknie dialogowym tego polecenia można określić nawet parametry renderowania map animowanych. Menu Utilities było wcześniej dostępne tylko w kompaktowej wersji edytora materiałów, ale w 3ds Max 2012 włączono je również do edytora rozszerzonego.

Polecenie Clean MultiMaterial czyści materiały złożone, usuwając z nich nieużywane podmateriały i mapy, a polecenie Instance Duplicate Map wyszukuje duplikaty map i zastępuje je klonami oryginału. Polecenie Clean MultiMaterial jest dokładniej opisane w rozdziale 18., „Materiały złożone i modyfikatory materiałów”, a o poleceniu Instance Duplicate Map dowiesz się więcej podczas lektury rozdziału 17., „Określanie właściwości materiałów przy użyciu map”.

Posługiwanie się narzędziem Fix Ambient Kolory Ambient i Diffuse dla standardowych typów materiałów są zawsze ze sobą sprzężone. Jeśli posiadasz starszy plik, w którym kolory te zostały zdefiniowane oddzielnie, za pomocą narzędzia Fix Ambient możesz odszukać i ujednolicić takie materiały w scenie. Aby uzyskać dostęp do omawianego narzędzia, otwórz panel Utilities, kliknij przycisk More i wybierz nazwę Fix Ambient z listy narzędzi. Kliknięcie przycisku Find All (znajdź wszystkie) otwiera okno dialogowe, w którym wymienione są wszystkie materiały użyte w scenie, z rozsynchronizowanymi kolorami Diffuse i Ambient.

518

Część IV  Materiały, kamery i oświetlenie

Ćwiczenie: Kolorowanie jajek wielkanocnych Każdy kocha wiosnę, z jej żywymi kolorami i odradzaniem się życia. Jedną z głównych atrakcji tej pory roku jest tradycyjne malowanie jajek wielkanocnych. W ćwiczeniu tym użyjesz jajek wirtualnych — żadnych barwników ani kanapek z sałatką jajeczną przez najbliższe dwa tygodnie. Aby pomalować wirtualne jajka wielkanocne, nakładając na nie różne kolory, wykonaj następujące czynności. 1. Otwórz plik Easter eggs.max zapisany w folderze Chap 15 na płycie dołączonej do książki. Plik ten zawiera kilka obiektów w kształcie jajka. 2. Otwórz rozszerzony edytor materiałów, wybierając polecenie Rendering/Material Editor/Slate Material Editor albo wciskając klawisz M. 3. W przeglądarce materiałów i map kliknij dwukrotnie materiał Standard. W panelu z widokiem węzłów kliknij dwukrotnie utworzony właśnie węzeł, po czym w edytorze parametrów kliknij próbkę koloru Diffuse. Gdy otworzy się okno selektora kolorów, wybierz z jego palety kolor, którego chciałbyś użyć, a następnie kliknij przycisk OK. 4. W dowolnym oknie widokowym zaznacz obiekt jajka i kliknij przycisk Assign Material to Selection w edytorze materiałów albo przeciągnij gniazdo wyjściowe węzła materiału na obiekt w oknie widokowym. 5. Powtórz etapy 3. i 4., klikając i modyfikując kolejne materiały, po czym nałóż je na pozostałe jajka. Na rysunku 15.5 zaprezentowano tuzin pokolorowanych jajek.

Posługiwanie się przeglądarką materiałów i map Skoro już wiesz, jak nakładać materiały na obiekty, powinieneś wiedzieć też, że najłatwiejszy sposób wybierania materiałów polega na użyciu panelu Material/Map Browser. Max wyposażony jest w kilka bibliotek materiałów, do których dostęp uzyskuje się właśnie poprzez tę przeglądarkę. Jeśli panel przeglądarki jest ukryty, wybierz w edytorze polecenie Tools/Material/Map Browser. Panel ten jest pokazany na rysunku 15.6. Panel Material/Map Browser można zadokować w oknie edytora materiałów, ale też można go używać w postaci niezależnego okna. Dokowanie można przeprowadzić w każdej chwili, klikając dwukrotnie pasek tytułowy panelu.

Material/Map Browser to magazyn, w którym przechowywane są wszystkie materiały. Program grupuje je w zestawach zwanych bibliotekami. Biblioteki zapisywane są wraz z plikiem sceny, ale mogą też być zachowywane jako osobne pliki. W panelu Material/Map Browser każda biblioteka ma odrębną roletę. W roletach tych, zwanych też grupami,

Rozdział 15.  Rozszerzony edytor materiałów

519

Rysunek 15.5. Tym jajkom przypisane zostały materiały o różnych kolorach Diffuse Rysunek 15.6. W panelu Material/Map Browser można wybierać materiały z biblioteki

umieszczone są wszystkie załadowane biblioteki materiałów, domyślne materiały i mapy, kontrolery, materiały użyte w scenie i pola próbek (sample slots) takie same jak te, które używane są w edytorze kompaktowym.

520

Część IV  Materiały, kamery i oświetlenie

Pole edycyjne (z tekstem Search by Name), widniejące tuż pod paskiem tytułowym panelu Material/Map Browser, to pole selekcji. Wpisując w nim nazwę materiału, możesz go odszukać i zaznaczyć.

Posługiwanie się bibliotekami Za każdym razem gdy zmieniasz parametry materiału bądź mapy, tworzony jest nowy materiał, czemu towarzyszy uaktualnienie wyglądu próbki. Choć nowo powstały materiał jest zapisywany wraz z plikiem sceny, jednak umieszczenie w bibliotece ułatwi Ci jego ponowne użycie. Przy dużej liczbie bibliotek wczytanych do przeglądarki poruszanie się wśród nich może ułatwić przypisanie im różnych kolorów. Aby to zrobić, kliknij pasek tytułowy rolety prawym przyciskiem myszy i wybierz polecenie Edit Group Color (edytuj kolor grupy). Otworzy się okno Color Selector, w którym możesz wybrać kolor dla danej biblioteki. Menu kontekstowe rolety zawiera także opcje wyświetlania materiałów należących do danej biblioteki. Do wyboru są następujące możliwości: małe, średnie i duże ikony oraz ikony z tekstem lub sam tekst. Menu kontekstowe przeglądarki umożliwia tworzenie nowych bibliotek, a także ich zapisywanie i wczytywanie. Max dostarczany jest z bogatym zbiorem bibliotek gotowych materiałów oraz kilkoma zbiorami materiałów architektonicznych. Wszystkie znaleźć można w folderze materiallibraries. Niektóre biblioteki są dostępne dopiero po włączeniu renderera mental ray.

Bieżący układ przeglądarki wraz ze wszystkimi materiałami możesz zapisać w pliku z rozszerzeniem .mpl, a zrobisz to za pomocą polecenia Material/Map Browser Options/Additional Options/Save Layout As. Mimo iż materiały można zapisywać w bibliotekach, prawdopodobnie najłatwiejszym sposobem udostępnienia ich w innych aplikacjach jest użycie narzędzia Material XML Export lub polecenia Material/Export As XMSL File.

Ćwiczenie: Wczytywanie własnej biblioteki materiałów Aby przećwiczyć wczytywanie bibliotek materiałów, użyjemy niestandardowej biblioteki, przygotowanej z użyciem różnych tekstur, utworzonych w programie Kai’s Power Tools. Aby załadować niestandardową bibliotekę materiałów do edytora rozszerzonego, wykonaj następujące czynności. 1. Wybierz polecenie Rendering/Material Editor/Slate Material Editor (albo wciśnij klawisz M), aby otworzyć okno edytora materiałów. Upewnij się, że przeglądarka materiałów i map jest otwarta, a jeśli jej nie widzisz, wybierz w edytorze polecenie Tools/Material/Map Browser. 2. W przeglądarce kliknij małą strzałkę obok pola z tekstem Search by Name i z rozwiniętego w ten sposób menu wybierz polecenie Open Material Library.

Rozdział 15.  Rozszerzony edytor materiałów

521

3. Wybierz i otwórz plik KPT samples.mat, który znajdziesz w folderze Chap 15 na płycie dołączonej do książki. Biblioteka zostanie załadowana do przeglądarki materiałów. 4. W polu selekcji (poniżej paska tytułowego) wpisz bug, by odnaleźć materiał oczu owada (bug eyes). Na rysunku 15.7 zaprezentowano panel Material/Map Browser po załadowaniu niestandardowej biblioteki. Rysunek 15.7 Przeglądarka Material/Map Browser umożliwia korzystanie z własnych bibliotek materiałów

Posługiwanie się eksploratorem materiałów Eksplorator sceny został dobrze przyjęty przez użytkowników poprzednich wersji Maksa. Na tyle dobrze, że twórcy programu postanowili podobne narzędzie umieścić także w innych miejscach interfejsu. Tym razem wybrali obszar związany z zarządzaniem materiałami i wprowadzili eksplorator materiałów (Material Explorer). Eksplorator materiałów gromadzi w jednym oknie (patrz rysunek 15.8) wszystkie informacje o właściwościach i hierarchicznych powiązaniach materiałów zastosowanych w scenie. Dostępne tu narzędzia pozwalają na sortowanie materiałów według rozmaitych kryteriów, a nawet umożliwiają ich modyfikowanie i to po kilka naraz. Okno eksploratora można otworzyć za pomocą polecenia Rendering/Material Explorer. Okno eksploratora materiałów jest podzielone na dwie części (zwane panelami sceny i materiału), z których górna przypomina eksploratora sceny i służy do zarządzania wszystkimi materiałami w bieżącej scenie, a dolna jest podobna raczej do nawigatora map i materiałów i umożliwia manipulowanie składnikami jednego, wybranego materiału. Okno zawiera pasek menu i dwa paski narzędziowe, z których jeden jest umieszczony poziomo tuż pod paskiem menu, a drugi pionowo przy lewej krawędzi okna. Przyciski tych pasków są opisane w tabelach 15.2 i 15.3.

522

Część IV  Materiały, kamery i oświetlenie

Rysunek 15.8. Eksplorator materiałów prezentuje materiały w układzie hierarchicznym

Tabela 15.2. Przyciski wyświetlania w eksploratorze materiałów — pasek pionowy Przycisk

Nazwa

Opis

Display Thumbnails

Wyświetla miniaturki materiałów i ich składników, tak jak w polach podglądu.

Display Materials

Wyświetla materiały.

Display Maps

Wyświetla mapy w hierarchii materiałów.

Display Objects

Wyświetla obiekty, którym materiały zostały przypisane.

Display Sub-Materials/Maps

Wyświetla wszystkie używane podmateriały i mapy.

Display Unused Map Channels

Wyświetla wszystkie nieużywane kanały map jako część hierarchii materiałów.

Sort By Object

Sortuje materiały według obiektów, do których są przypisane. Najwyższe miejsce w hierarchii zajmują obiekty.

Sort By Material

Sortuje materiały według ich nazw i przypisuje im najwyższe miejsca w hierarchii.

Jeśli chcesz dowiedzieć się więcej o eksploratorze sceny, zajrzyj do rozdziału 6., „Zaznaczanie obiektów i ustawianie ich właściwości”.

Rozdział 15.  Rozszerzony edytor materiałów

523

Tabela 15.3. Przyciski w eksploratorze materiałów — pasek poziomy Przycisk

Nazwa

Opis

Pole tekstowe Find

Umożliwia wyszukiwanie materiałów i map o określonych nazwach.

Select All Materials

Zaznacza wszystkie materiały w scenie.

Select All Maps

Zaznacza wszystkie mapy w scenie.

Select All

Zaznacza wszystkie pozycje na liście.

Select None

Usuwa zaznaczenie wszystkich pozycji na liście.

Select Invert

Odwraca bieżące zaznaczenie.

Lock cell editing

Blokuje możliwość edycji komórek tabeli.

Sync To Material Explorer

Sprawia, że materiał zaznaczony w górnym panelu jest wyświetlany także w dolnym.

Sync To Material Level

Gdy jest włączony, w dolnym panelu wyświetlana jest zawsze pełna hierarchia materiału.

Eksplorator umożliwia przypisywanie materiałów obiektom przez przeciąganie miniatury materiału na wybrany obiekt. Można również przeciągać mapy do innych materiałów lub kanałów. Eksplorator współpracuje także z przeglądarką materiałów i map (Material/Map Browser); przykładowo możesz zmienić typ wybranego materiału przez przeciągnięcie odpowiedniej pozycji z przeglądarki do kolumny Type w eksploratorze.

Podsumowanie Materiały w dużym stopniu decydują o realistycznym wyglądzie modeli. Umiejętność posługiwania się edytorem materiałów, przeglądarką materiałów i map oraz eksploratorem pozwala na swobodną pracę z materiałami. W rozdziale tym omówione zostały następujące tematy: 

właściwości materiałów,



posługiwanie się węzłami materiałowymi i przyciskami w oknie rozszerzonego edytora materiałów,



posługiwanie się panelem Material/Map Browser i bibliotekami materiałów,



zarządzanie wszystkimi materiałami w scenie za pomocą narzędzia Material Explorer.

W następnym rozdziale będziesz dalej zgłębiać tematykę materiałów, poznając materiał standardowy i jego ustawienia.

524

Część IV  Materiały, kamery i oświetlenie

Rozdział 16.

Tworzenie i stosowanie materiałów standardowych W tym rozdziale: 

Używanie materiałów standardowych



Przedstawienie różnych shaderów



Poznawanie rolet z parametrami materiałów



Przypisywanie materiałów obiektom w scenie

Poznałeś już podstawowe właściwości materiałów, zapoznałeś się z ich edytorem oraz przeglądarką, a w tym rozdziale poznasz techniki opracowywania własnych, prostych materiałów i nauczysz się nakładania ich na obiekty w scenie. Najprostsze materiały bazują na domyślnym typie Standard.

Stosowanie materiału standardowego Materiały typu Standard są ustawiane w Maksie jako domyślne. Mają pojedynczy, jednolity kolor określony przez kolor światła otaczającego (Ambient), światła rozpraszanego (Diffuse), połysku (Specular) i filtra (Filter). Standardowe materiały mogą wykorzystywać dowolny z różnych dostępnych shaderów. Shadery (algorytmy cieniowania) to funkcje używane do obliczania wyglądu materiału w oparciu o jego parametry. Materiały standardowe wyposażono w parametry, które służą do określania odblasków, przezroczystości i świecenia, oraz wiele innych parametrów rozrzuconych po wielu rozmaitych roletach. Przy takiej ilości różnych ustawień nawet standardowy materiał daje praktycznie nieskończone możliwości.

526

Część IV  Materiały, kamery i oświetlenie

Używanie różnych algorytmów cieniowania W Maksie znajdziemy kilka rodzajów shaderów. Są dostępne na rozwijanej liście w rolecie Shader Basic Parameters. Jest to pierwsza roleta w panelu edytora parametrów będącego częścią rozszerzonego edytora materiałów, którego okno otworzysz za pomocą polecenia Rendering/Material Editor/Slate Material Editor lub skrótu klawiszowego M. Każdy shader w swojej rolecie Basic Parameters ma inne opcje. Na rysunku 16.1 przedstawiono podstawowe parametry dla shadera Blinn. Inne dostępne shadery to Anisotropic, Metal, Multi-Layer, Oren-Nayar-Blinn, Phong, Strauss i Translucent. Rysunek 16.1. Podstawowe opcje shadera to (od lewej do prawej) Wire, 2-Sided, Face Map i Faceted Wszystkie typy materiałów są dostępne w przeglądarce materiałów i map. Opisy wielu z nich znajdziesz w rozdziałach 18., „Materiały złożone i modyfikatory materiałów” i 30., „Stosowanie materiałów specjalnych”.

Roleta Shader Basic Parameters zawiera opcje wyświetlania materiału, takie jak siatka (Wire), dwustronność (2-Sided), mapowanie ścianek (Face Map) i fasetowanie (Faceted), pokazane na rysunku 16.1. Tryb Wire wyświetla model jako szkielet z połączonych ze sobą krawędzi (wireframe). Opcja 2-Sided wyświetla materiał na obydwu stronach ścianki i jest zazwyczaj używana w połączeniu z trybem Wire lub z przezroczystymi materiałami. Tryb Face Map nakłada mapy na każdą ściankę obiektu z osobna, natomiast tryb Faceted pomija wygładzanie pomiędzy ściankami. Opcje Wire i 2-Sided decydują o wyglądzie obiektu po zrenderowaniu, a zatem nie należy ich utożsamiać z trybem Wireframe używanym do wyświetlania obiektów w oknach widokowych.

Shader Blinna (Blinn) Ten shader jest ustawiony jako domyślny. Tworzy proste koliste odblaski i wygładza przejścia między ściankami. Shader Blinna umożliwia dobór kolorów światła otaczającego (Ambient), światła rozpraszanego (Diffuse), połysku (Specular) oraz samoświecenia (Self-Illumination). Aby zmienić kolor, kliknij próbkę i wybierz nową barwę w oknie dialogowym Color Selector. Możesz przeciągać kolory pomiędzy poszczególnymi składowymi materiału. Pojawia się przy tym okno dialogowe Copy or Swap Colors, które pozwala na skopiowanie kolorów lub zamianę ich miejscami.

Za pomocą przycisków znajdujących się na lewo od pól z próbkami kolorów możesz zblokować kolory, by były identyczne, a zmiana jednego z nich powodowała automatyczną zmianę drugiego. Możesz blokować kolory w parach, takich jak Ambient z Diffuse i Diffuse ze Specular.

Rozdział 16.  Tworzenie i stosowanie materiałów standardowych

527

Małe kwadratowe przyciski znajdujące się na prawo od ustawień Ambient, Diffuse, Specular, Specular Level (poziom odblasków), Glossiness (połyskliwość) oraz w sekcjach Self-Illumination i Opacity (stopień krycia) to przyciski umożliwiające stosowanie map zamiast odpowiednich parametrów. Kliknięcie tych przycisków otwiera okno Material/Map Browser, w którym możesz wybrać typ mapy. Przy użyciu ikony znajdującej się na prawo od przycisków map możesz również zblokować mapy Ambient i Diffuse (takie jest też ustawienie domyślne). Kiedy mapa zostanie załadowana i jest aktywna, pojawia się w rolecie Maps, a na odpowiadającym jej przycisku widać dużą literę M. Kiedy mapa jest załadowana, ale nieaktywna, w tym miejscu pojawia się małe m. Po wybraniu mapy i kliknięciu jej przycisku następuje przejście na poziom edycji mapy, a jej parametry są wyświetlane w odpowiednich roletach. Przyciski map widzimy na rysunku 16.2. Rysunek 16.2. Roleta Blinn Basic Parameters pozwala na wybranie i ustawienie właściwości shadera Blinna

Aby dowiedzieć się więcej o różnych typach map, przeczytaj rozdział 17, „Określanie właściwości materiałów przy użyciu map”.

W sekcji Self-Illumination można zdefiniować kolor świecenia materiału, ale musi być włączona opcja Color. Jeśli jest wyłączona, pojawia się spiner umożliwiający ustawienie intensywności koloru domyślnego. Materiały z wartością Self-Illumination równą 100 lub o jasnym kolorze (np. białym) uniezależniają się od oświetlenia w scenie i wyglądają, jakby same świeciły. Dzieje się tak, ponieważ kolor świecenia zastępuje całkowicie kolor światła otaczającego (Ambient). Pozostaje jednak możliwość ustawiania odbłysków.

528

Część IV  Materiały, kamery i oświetlenie

Aby usunąć efekt samoświecenia, ustaw parametr Self-Illumination na 0 lub wybierz dla niego kolor czarny. Na rysunku 16.3 możesz zobaczyć kulę z różnymi wartościami samoświecenia (od lewej do prawej): 0, 25, 50, 75 i 100. Rysunek 16.3. Zwiększanie wartości samoświecenia osłabia cienie na obiekcie

Parametr Opacity kontroluje poziom przezroczystości obiektu. Wartość 100 sprawia, że materiał staje się całkowicie nieprzejrzysty. Z drugiej strony, wartość 0 powoduje całkowitą przezroczystość materiału. Użyj przycisku Background (znajdującego się blisko prawego górnego narożnika edytora materiałów), aby włączyć wzorzysty obraz tła, który ułatwia oglądanie efektów ustawiania parametru Opacity. Na rysunku 16.4 pokazano materiały z wartością Opacity ustawioną na 10, 25, 50, 75 oraz 90. Rysunek 16.4. Wartość Opacity kontroluje stopień przezroczystości materiału

Odblaski (specular highlights) to miejsca na powierzchni obiektu, w których światło odbijane jest z maksymalną siłą. Wartość Specular Level określa jasność odblasku. Można ją zmieniać od 0 (brak odblasku) do 100 (maksymalny odblask), a nawet więcej. Wykres znajdujący się na prawo od tego parametru ilustruje rozkład intensywności odblasku. Wartość Specular Level definiuje najwyższy punkt krzywej (intensywność centralnej części odblasku). Może być ona ustawiona na poziomie wyższym niż 100, co powoduje powstawanie większego, szerszego odblasku. Wartość Glossiness określa rozmiar odblasku. Jeśli wynosi 100, odblask jest minimalnej wielkości, natomiast wartość 0 zwiększa rozmiary obszaru jasności aż do krawędzi wykresu. Parametr Soften (miękki) nie ma wpływu na wykres, ale powoduje rozprowadzenie odblasku na całym obszarze określonym przez Glossiness. Może przybierać wartość od 0 (szeroko) do 1 (wąsko). Na rysunku 16.5 przedstawiono przykłady materiałów z odblaskami. Obraz po lewej ma wartość Specular Level równą 20, a Glossiness równą 10. Wartość Specular Level na drugim obrazie jest zwiększona do 80, a na trzecim do 150. Natomiast w dwóch ostatnich przypadkach zwiększono wartość Glossiness do 50 i 80. Rysunek 16.5. Za pomocą odpowiednich parametrów możesz kontrolować jasność i rozmiar odblasków

Rozdział 16.  Tworzenie i stosowanie materiałów standardowych

529

Shader Phonga (Phong) Shader Phonga tworzy gładkie powierzchnie, tak jak shader Blinna, ale uboższe pod względem jakości renderowania odblasków — dzięki temu obliczenia są szybsze niż w przypadku shadera Blinna. Parametry obu shaderów są identyczne. Różnice pomiędzy nimi są subtelne — shader Blinna może tworzyć odblaski dla światła padającego pod małym kątem, a dodatkowo są to odblaski delikatniejsze. Shader Blinna zwykle używany jest do symulowania materiałów miękkich, takich jak guma, a shader Phonga jest odpowiedniejszy dla materiałów twardszych, takich jak plastik.

Shader anizotropowy (Anisotropic) Shader anizotropowy charakteryzuje się niekolistymi odblaskami. Wartość Anisotropy to różnica między dwoma osiami elipsy odblasku. Przy wartości 0 obie osie są równe, ale wyższe wartości powodują zwiększenie różnicy pomiędzy nimi, dając bardziej eliptyczne odblaski. Większość parametrów dla tego shadera pokrywa się z parametrami shadera Blinna, ale niektóre są wyjątkowe dla tego algorytmu cieniowania. Wartość Diffuse Level określa jasność koloru światła rozpraszanego. Jest to zjawisko podobne do świecenia, ale nie ma wpływu na odblaski lub cienie. Diffuse Level może przybierać wartość od 0 do 400. Wykres odblasków, w porównaniu z shaderem Blinna, wygląda zdecydowanie inaczej. Jest to spowodowane wyświetlaniem dwóch komponentów odblasku, które krzyżują się pośrodku. Wartość Specular Level i w tym wypadku odpowiedzialna jest za wysokość obu krzywych, a parametr Glossiness również i tu odpowiada za ich rozpiętość, natomiast wartość Anisotropy zmienia szerokość jednej z krzywych względem drugiej, dając w rezultacie eliptyczne odblaski. Wartość Orientation reguluje obrót odblasku. Na rysunku 16.6 można porównać wykresy odblasków dla shadera Blinna i anizotropowego. Rysunek 16.6. Wykresy odblasków (Specular Highlights) dla shadera Blinna i anizotropowego Ponieważ shader anizotropowy może generować odblaski eliptyczne, jest często używany do tworzenia materiałów o wyraźnych wyżłobieniach i włóknach, np. tkanin.

Na rysunku 16.7 przedstawiono kilka materiałów z cieniowaniem anizotropowym. Pierwsze trzy obrazy mają wartości Anisotropic na poziomie 30, 60 i 90, a w dwóch ostatnich ustawiono dodatkowo wartość Orientation na 30 i 60. Rysunek 16.7. Materiały z cieniowaniem anizotropowym mają odbłyski eliptyczne

530

Część IV  Materiały, kamery i oświetlenie

Shader wielowarstwowy (Multi-Layer) Shader wielowarstwowy pozwala zdefiniować dwa anizotropowe odblaski. Każdy z nich może mieć inny kolor. Wszystkie parametry tego shadera są takie same jak opisanego powyżej shadera anizotropowego, z wyjątkiem korzystania z dwóch warstw odblasku — Specular Layers i dodatkowego parametru szorstkości, Roughness. Określa on stopień mieszania się koloru światła rozpraszanego z kolorem światła otaczającego. Jeśli jest ustawiony na 0, obiekt wygląda tak samo jak po zastosowaniu cieniowania Blinna. Przy wyższych wartościach (do 100) materiał przybiera coraz ciemniejszą barwę. Na rysunku 16.8 widocznych jest kilka materiałów z cieniowaniem wielowarstwowym. Na pierwszym obrazku wartość Orientation jest ustawiona na 60, a Anisotropy na 60. Na drugim wartość Orientation jest taka sama, a Anisotropy ma wartość 90. Trzeci obrazek ma podwyższoną do 110 wartość Specular Level i zmniejszoną do 10 wartość Glossiness. Czwarty obraz pokazuje wynik zmiany parametru Orientation jednego z odblasków na 20, a ostatni obrazuje zmniejszenie wartości Anisotropy do 10.

Rysunek 16.8. Materiały z cieniowaniem wielowarstwowym mogą mieć dwa niezależne, zachodzące na siebie obszary odblasków Shader wielowarstwowy umożliwia nadanie materiałowi określonej głębi. Dzięki niemu można uzyskać np. efekt polakierowanego drewna lub wypastowanych płytek podłogowych.

Shader Orena-Nayara-Blinna (Oren-Nayar-Blinn) Shader Orena-Nayara-Blinna jest użytecznym narzędziem tworzenia materiałów dla powierzchni matowych, takich jak tkaniny. Stosowane parametry są identyczne z parametrami shadera Blinna, z dodatkowymi wartościami Diffuse Level i Roughness.

Shader metaliczny (Metal) Shader metaliczny imituje połysk metalicznych powierzchni. Krzywa odblasku ma kształt zdecydowanie różniący się od krzywych spotykanych przy użyciu innych shaderów. Jest bardziej zaokrąglona u szczytu i nie zawiera parametru Soften. Może także przyjmować wartości Specular Level o wiele wyższe (aż do 999) niż większość shaderów. Brak również możliwości określenia koloru odblasku. Wszystkie inne parametry są takie same jak w przypadku shadera Blinna. Na rysunku 16.9 pokazano kilka różnych materiałów z zastosowanym shaderem metalicznym. Mają odmienne wartości Specular Level (od lewej do prawej): 50, 100, 200, 400 i 800. W shaderze metalicznym używa się tego samego koloru dla odblasków i dla światła rozpraszanego.

Rozdział 16.  Tworzenie i stosowanie materiałów standardowych

531

Rysunek 16.9. Materiał z shaderem metalicznym generuje własne odblaski

Shader Straussa (Strauss) Shader Straussa jest alternatywną metodą tworzenia powierzchni metalicznych. Ma jedynie cztery parametry: Color, Glossiness, Metalness i Opacity. Parametr Glossiness reguluje kształt całego odblasku. Wartość metaliczności (Metalness) upodabnia materiał do metalu, wpływając na podstawowe i drugorzędne odblaski. Oba współczynniki mogą przyjmować wartości od 0 do 100. Często shader Straussa symuluje powierzchnie metalowe lepiej niż shader metaliczny. Tworzy bowiem łagodniejsze efekty i pozwala na łączenie kolorów z metalicznością materiału.

Shader prześwitujący (Translucent Shader) Shader prześwitujący symuluje przechodzenie światła przez obiekt. Należy go używać na cienkich, płaskich przedmiotach (np. prześcieradle stosowanym do pokazywania teatrzyku cieni). Większość ustawień tego shadera jest identyczna z innymi, z wyjątkiem opcji z sekcji Translucency. Kolory ustawiane w tej sekcji (Translucent i Filter) określają barwę światła po przejściu przez obiekt, na który nałożony jest dany materiał. Shader ten zawiera także opcję wyłączania odblasków na tylnej ścianie obiektu (Backside specular).

Ćwiczenie: Prześwitujące zasłony Shader prześwitujący może zostać wykorzystany do tworzenia bardzo ciekawych efektów. Nie tylko przepuszcza światło przez obiekt, na który został nałożony, ale również wywołuje cienie. Aby zasłony stały się prześwitujące, wykonaj następujące czynności. 1. Otwórz plik Translucent curtains.max z folderu Chap 16 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prostą scenę z drzewem umieszczonym za oknem. 2. Otwórz edytor materiałów, wybierając z menu Rendering/Material Editor/Slate Material Editor, klikając przycisk Material Editor na głównym pasku narzędziowym lub naciskając klawisz M. 3. W panelu Material/Map Browser edytora materiałów kliknij dwukrotnie materiał o nazwie Standard, zaznacz jego węzeł i w polu Name wpisz Curtains (zasłony). Wybierz z listy Shader Basic Parameter pozycję Translucent Shader. Kliknij próbkę koloru Diffuse i wskaż jasny błękit. Kliknij przycisk OK, aby wyjść z okna Color Selector. 4. Kliknij próbkę Translucent Color, zmień barwę na jasnoszarą i ustaw wartość Opacity na 75.

532

Część IV  Materiały, kamery i oświetlenie

5. Przeciągnij gniazdo wyjściowe węzła materiału Curtains na obiekt zasłon w oknie widokowym Left lub zaznacz ten obiekt i na pasku narzędziowym kliknij przycisk Assign Material to Selection. Na rysunku 16.10 przedstawiono wynik całej operacji. Zauważ, że cień drzewa jest rzucony na zasłony. Rysunek 16.10. Prześwitujące zasłony okienne i cienie na nich

Inne parametry materiałów Poza roletą z podstawowymi parametrami shaderów jest jeszcze kilka innych, które także zawierają opcje mające wpływ na ostateczny wygląd materiału.

Roleta rozszerzonych parametrów (Extended Parameters) Edytor materiałów zawiera kilka dodatkowych ustawień, które są wspólne dla większości shaderów. W rolecie rozszerzonych parametrów, widocznej na rysunku 16.11, znajdziesz pola Advanced Transparency, Reflection Dimming i Wire. Za ich pomocą można zmieniać właściwości wszystkich shaderów. Rysunek 16.11. Roleta rozszerzonych parametrów zawiera ustawienia Advanced Transparency, Reflection Dimming oraz Wire

W obszarze zaawansowanych ustawień przezroczystości (Advanced Transparency) możesz wybrać zanik (Falloff) na In (do środka), Out (na zewnątrz) lub też według określonego

Rozdział 16.  Tworzenie i stosowanie materiałów standardowych

533

współczynnika (Amount). Opcja In zwiększa przezroczystość w miarę przesuwania się w głąb obiektu, a opcja Out ma przeciwne działanie. Wartość Amount pozwala ustalić przezroczystość dla wewnętrznej lub zewnętrznej krawędzi. Na rysunku 16.12 przedstawiono dwa materiały, które wykorzystują opcję Falloff na szarym i wzorzystym tle. Po lewej stronie widoczne są materiały z ustawioną opcją In, a po prawej dwa materiały z ustawioną opcją Out. W obu przykładach współczynnik Amount ma wartość 100. Rysunek 16.12. Materiały z zastosowaniem dwóch opcji zaniku: In i Out

Jeśli przyjrzysz się uważnie szklanej kuli, zauważysz, że szkło wydaje się grubsze przy brzegach niż na środku. Taki efekt można uzyskać przy użyciu opcji In w sekcji Advanced Transparency.

Istnieją trzy rodzaje przezroczystości: filtrująca (Filter), subtraktywna (Subtractive) oraz addytywna (Additive). Przezroczystość filtrująca mnoży kolor Filter z barwą dowolnej powierzchni, która pojawia się za przezroczystym obiektem. W ramach tej opcji możesz wybrać, który kolor będzie zdefiniowany jako Filter. Przezroczystości typu Subtractive i Additive odpowiednio odejmują lub dodają kolory materiału do kolorów znajdujących się za przezroczystym obiektem. Parametr Index of Refraction to współczynnik załamania (refrakcji) światła przechodzącego przez przezroczysty obiekt. Jest on różny dla odmiennych rodzajów materiałów. Dla wody wynosi 1.33, a dla szkła 1.5. Wartość domyślna, czyli 1.0, nie wywołuje żadnego efektu. Sekcja Wire pozwala wybrać grubość (Size) siatki wyświetlanej w trybie szkieletowym. Użyj jej, jeśli włączony jest tryb Wire w rolecie Shaders Basic Parameters. Parametr ten można określić w pikselach (Pixels) lub bieżących jednostkach (Units). Na rysunku 16.13 przedstawiono materiały z wartościami Size od 1 do 5 pikseli. Rysunek 16.13. Materiał z grubościami siatki równymi 1, 2, 3, 4 i 5 pikseli (od lewej do prawej)

Reflection Dimming reguluje natężenie odbicia. Możesz je włączyć przy użyciu opcji Apply. Za pomocą parametru Dim Level możesz ustawić natężenie odbicia w obrębie cieni, a wartość Refl. Level określa natężenie wszystkich odbić poza cieniami.

Roleta nadpróbkowania (SuperSampling) Piksele to małe kwadraty, z których składa się obraz wyświetlany na ekranie monitora. Ich kształt może powodować pojawianie się ostrych i poszarpanych krawędzi na brzegach obiektów, gdzie kolor materiału przechodzi w kolor tła. Artefakty tego typu mogą zepsuć

534

Część IV  Materiały, kamery i oświetlenie

nawet najlepszy obraz. Antyaliasing to proces polegający na wygładzeniu przejść pomiędzy kolorami, powodujący, że artefakty znikają. Max stosuje filtry wygładzania w ramach procesu renderingu. SuperSampling to dodatkowy proces wygładzania, który może poprawić jakość obrazu na poziomie materiałów. Metodę nadpróbkowania możesz określić w edytorze materiałów, ale możesz też wykorzystać ustawienia z rolety Default Scanline Renderer okna dialogowego Render Setup przez włączenie opcji Use Global Settings (zastosuj ustawienia globalne). Podczas renderowania sceny wygładzanie włączane opcją antyaliasingu jest przeprowadzane przed obliczeniami związanymi ze śledzeniem promieni światła, a zatem efekty wynikające z odbić i załamań światła nie podlegają temu wygładzaniu. Aby dowiedzieć się więcej o różnych filtrach antyaliasingowych, przeczytaj rozdział 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Nadpróbkowanie jest obliczane tylko i wyłącznie wtedy, gdy włączona jest opcja Antialiasing w oknie Render Setup. Materiały typu raytrace nie wymagają włączenia tej opcji, ponieważ nadpróbkowanie jest dla nich obliczane oddzielnie. Używanie nadpróbkowania może znacznie wydłużyć czas renderowania obrazu.

Nadpróbkowanie polega na próbkowaniu kolorów w różnych punktach otaczających środek piksela. Próbki te są używane do obliczenia ostatecznego koloru każdego piksela. Parametry nadpróbkowania można ustawić globalnie w oknie dialogowym Render Setup lub indywidualnie dla poszczególnych materiałów, ale po wyłączeniu każdemu z nich opcji Use Global Settings. Dostępne są cztery metody nadpróbkowania. 

Adaptive Halton — pobiera pseudolosowo próbki wzdłuż obu osi piksela (X i Y). Może pobrać od 4 do 40 próbek.



Adaptive Uniform — pobiera próbki w regularnych odległościach od środka piksela. Może pobrać od 4 do 26 próbek.



Hammersley — pobiera próbki z regularnym odstępem wzdłuż osi X i w losowy sposób wzdłuż osi Y. Może pobrać od 4 do 40 próbek.



Max 2.5 Star — pobiera cztery próbki wzdłuż każdej osi.

Pierwsze trzy metody pozwalają na ustawienie jakości wygładzania (Quality). Parametr ten określa liczbę pobieranych próbek. Im więcej, tym większa dokładność próbkowania, ale też dłuższy czas renderowania. Dwie metody adaptywne (Adaptive Halton i Adaptive Uniform) dodatkowo mają opcję Adaptive z regulowanym współczynnikiem Threshold (próg). Opcja ta włącza pobieranie mniejszej liczby próbek, jeśli kolory różnią się mniej, niż wynosi wartość współczynnika Threshold. Opcja SuperSample Maps pozwala poddać nadpróbkowaniu również mapy. Aby uzyskać dobrej jakości efekty odbić i załamań światła, włącz nadpróbkowanie w końcowym renderingu.

Rozdział 16.  Tworzenie i stosowanie materiałów standardowych

535

Roleta map (Maps) Mapa to obraz bitmapowy, który jest owinięty na obiekcie. Roleta Maps zawiera listę map, które można nałożyć na obiekt. Przy jej użyciu możesz włączyć lub wyłączyć każdą mapę, określić jej natężenie w kolumnie Amount i wczytać nowe mapy. Kliknięcie przycisku w kolumnie Map otwiera okno Material/Map Browser, gdzie wybierasz typ nowej mapy. Aby dowiedzieć się więcej o mapach, przeczytaj rozdział 17., „Określanie właściwości materiałów przy użyciu map”.

Roleta DirectX Manager Umieszczony w rolecie DirectX Manager przycisk Save as .FX File służy do zapisywania bieżącego materiału w pliku FX, czyli jako materiału typu DirectX Shader1. Jeśli jako sterownik wyświetlania został wybrany Direct3D, materiał taki można obejrzeć w oknie widokowym. Ułatwia to pracę grafikom pracującym nad grami komputerowymi, których silniki renderujące na ogół korzystają z funkcji DirectX. Roleta DirectX Manager jest dostępna tylko wtedy, gdy sterownikiem wyświetlania (display driver) jest Direct3D.

Roleta DirectX Manager zawiera również listę rozwijaną z dostępnymi shaderami DirectX. Tymi shaderami są LightMap i Metal Bump9. Można ich używać z rozmaitymi typami obiektów. Pierwszy z nich pozwala na wczytanie map tekstury i światła, a drugi dopuszcza stosowanie dwóch map tekstur dla światła rozproszonego i nierówności powierzchni oraz po jednej dla połysku i odbić.

Roleta mental ray Connection Roleta mental ray Connection pozwala ustawić opcje wykorzystywane przez silnik renderujący mental ray2. Możesz tutaj określać ustawienia takich parametrów jak shadery Surface i Shadow, Photon i Photon Volume oraz Extended Shaders (Displacement, Volume i Environment) i Advanced Shaders (Contour i Light Map). Silnik renderujący mental ray i jego właściwości opisane zostały w rozdziale 47., „Renderery mental ray i iray”.

Ćwiczenie: Kolorowanie modelu delfina W ramach szybkiego przykładu nakładania materiałów wykorzystamy model delfina opracowany przez Zygote Media i umieścimy go nad powierzchnią imitującą wodę. Następnie na obydwa obiekty nałożymy odpowiednie materiały.

1

Przycisk ten jest dostępny po włączeniu przycisku Show Hardware Map in Viewport w pasku narzędziowym edytora materiałów — przyp. tłum.

2

Roleta ta jest widoczna po włączeniu opcji Enable mental ray Extensions (włącz rozszerzenia mental ray) w panelu mental ray okna dialogowego Preference Settings — przyp. tłum.

536

Część IV  Materiały, kamery i oświetlenie

Aby nałożyć materiał na delfina, wykonaj następujące czynności. 1. Otwórz plik Dolphin.max z folderu Chap 16 znajdujący się na płycie dołączonej do książki. Plik ten zawiera prostą płaszczyznę i model delfina. 2. Otwórz edytor materiałów, wybierając z menu polecenie Rendering/Material Editor/Slate Material Editor, klikając przycisk Material Editor na głównym pasku narzędziowym lub naciskając klawisz M. 3. W panelu Material/Map Browser kliknij dwukrotnie materiał o nazwie Standard, zaznacz jego węzeł i w edytorze parametrów, w polu Name, zmień nazwę materiału na Dolphin Skin (skóra delfina). Kliknij próbkę koloru Diffuse i wybierz jasnoszary. Następnie kliknij próbkę koloru Specular i wybierz jasnożółty. Kliknij przycisk OK, aby wyjść z okna Color Selector. W sekcji Specular Highlights zwiększ ustawienie Specular Level do 45. 4. Ponownie w przeglądarce kliknij dwukrotnie materiał o nazwie Standard i nazwij go Ocean Surface (powierzchnia oceanu). Kliknij próbkę koloru Diffuse i wybierz jasnoniebieski. Ustaw wartości Specular Level i Opacity na 80. W rolecie Maps kliknij przycisk None na prawo od opcji Bump. W oknie Material/Map Browser, które się otworzy, kliknij dwukrotnie pozycję Noise w rolecie Maps. Następnie kliknij przycisk z mapą Noise, aby otworzyć roletę z parametrami tej mapy. Włącz opcję Fractal i ustaw parametr Size na 15. 5. Zaznacz delfina w oknie widokowym, a w edytorze materiałów zaznacz węzeł materiału Dolphin Skin, po czym na pasku narzędziowym edytora kliknij przycisk Assign Material to Selection. To samo zrób z powierzchnią oceanu. Model delfina zawiera oddzielne obiekty dla oczu, otworu gębowego i języka. Na te obiekty należałoby nałożyć odrębne materiały, ale są one tak małe, że w tym przypadku nie będziemy im poświęcali uwagi.

6. Wybierz polecenie Rendering/Environment (skrót klawiszowy 8), kliknij próbkę Background Color i ustaw kolor na błękit nieba. Na rysunku 16.14 przedstawiono efekt naszego działania.

Podsumowanie Czytając ten rozdział, poznałeś materiał typu Standard i dowiedziałeś się, jak w prosty sposób tworzyć własne, oryginalne materiały. W tym rozdziale: 

poznałeś różne rodzaje materiałów,



odkryłeś różne parametry materiałów i nauczyłeś się ich używać,



poznałeś postawy używania materiałów standardowych,



opanowałeś sposoby używania różnych shaderów,

Rozdział 16.  Tworzenie i stosowanie materiałów standardowych

537

Rysunek 16.14. Delfin nad powierzchnią wody



zapoznałeś się z funkcjami innych rolet materiałów,



nauczyłeś się przypisywać materiały do konkretnych obiektów.

Lektura rozdziału powinna rozbudzić Twój apetyt, ale naprawdę omówiłem tu tylko jeden aspekt materiałów. Drugim ważnym czynnikiem mającym wpływ na wygląd materiałów są mapy i właśnie im przyjrzymy się dokładniej w następnym rozdziale.

538

Część IV  Materiały, kamery i oświetlenie

Rozdział 17.

Określanie właściwości materiałów przy użyciu map W tym rozdziale: 

Mapowanie



Łączenie map z węzłami materiałów



Przegląd wszystkich rodzajów map, łącznie z mapami 2D i 3D, mapami złożonymi, modyfikatorami kolorów i innymi



Mapowanie właściwości materiałów przy użyciu rolety Maps



Narzędzie Bitmap Path Editor



Tworzenie tekstur w Photoshopie

Przypisywanie materiałów nie jest jedynym sposobem dodawania szczegółów do obiektu, innym jest stosowanie map — nie chodzi tu jednak o mapy drogowe ani mapy terenu. W Maksie mapy materiałowe są zbliżone do bitmap (które zresztą są jednym z rodzajów map) z wzorami, jakie można nałożyć na powierzchnię obiektu. Niektóre z nich owijają obiekt obrazem, ale inne (np. mapy przemieszczenia — displacement maps i mapy nierówności — bump maps) zmieniają kształt powierzchni w oparciu o swoją zawartość. Przykładowo możliwe jest użycie mapy koloru (Diffuse) w celu wyświetlenia etykiety na opakowaniu lub zastosowanie mapy nierówności (Bump) do utworzenia faktury skórki pomarańczy. Podczas kreowania tekstur przydatne są konkretne narzędzia. Należą do nich m.in. programy graficzne (np. Photoshop), aparat cyfrowy i skaner. Za ich pomocą możesz tworzyć bądź pozyskiwać obrazy bitmapowe, które potem można jako materiały nałożyć na powierzchnię obiektu.

540

Część IV  Materiały, kamery i oświetlenie

Czym jest mapa materiałowa? Aby zrozumieć ideę mapy materiałowej, rozważ następujący przykład. Oderwij etykietę z puszki po zupie, zeskanuj ją i wprowadź do komputera, po czym zapisz ją jako bitmapę. Następnie utwórz cylinder o proporcjach podobnych do rzeczywistej puszki, wczytaj zeskanowany obraz etykiety jako mapę i nałóż na wykreowany komputerowo cylinder — uzyskasz obiekt imitujący puszkę zupy istniejącą fizycznie.

Różne rodzaje map Istnieją rozmaite rodzaje map materiałowych. Niektóre nakładają obrazy na obiekty, inne określają obszary mające ulec przekształceniom przez porównanie intensywności (jasności) pikseli na mapie. Przykładem tego jest mapa nierówności (bump map). Standardowa mapa nierówności jest obrazem w skali szarości — po nałożeniu na obiekt jaśniejsze fragmenty są uwypuklane, z najwyższymi punktami odpowiadającymi maksymalnej wartości mapy (czystej bieli), a w ciemniejszych obszarach wypukłości są mniejsze lub nie ma ich wcale. Pozwala to na łatwe tworzenie rozmaitych tekstur (np. główki nitów na obudowie urządzenia) bez potrzeby modelowania drobnych nierówności. Mapy są również używane jako obrazy tła — chodzi tu o mapy środowiskowe (environment) i projekcyjne (projection), które są stosowane przy światłach. Aby dowiedzieć się więcej o mapach środowiskowych, przeczytaj rozdział 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”. W rozdziale 20., „Podstawowe techniki oświetlania sceny”, znajdziesz informacje na temat map projekcji.

Mapy używane do tworzenia materiałów są nakładane na obiekty przy użyciu edytora materiałów — Material Editor. Wszystkie dostępne mapy są wyświetlane w panelu Material/Map Browser. Mapy te mają wiele wspólnych cech.

Wyświetlanie map w oknach widokowych Jeśli chcesz, aby efekty stosowania map były wyświetlane w oknach widokowych, włącz przycisk Show Shaded Material in Viewport w edytorze materiałów lub wybierz polecenie Views/Show Materials in Viewport As/Shaded Materials with Maps. Dla dokładniejszych map definiujących odbłyski możesz włączyć opcję Views/Show Materials in Viewport As/Realistic Materials with Maps, która wykorzystuje sprzętowe możliwości karty graficznej. Opcja jest szczególnie przydatna, gdy w scenie występują materiały architektoniczne (Arch & Design). Sprzętowe renderowanie w oknach widokowych jest możliwe, pod warunkiem że taką funkcję obsługuje karta graficzna komputera.

Używanie map o rozmiarach rzeczywistych (Real-World) Do ustalania położenia i rozmiarów map nakładanych na obiekty używane są współrzędne UV. Każda bitmapa może być skalowana wzdłuż dowolnej osi, co pozwala rozciągnąć ją na całą powierzchnię. Innym sposobem na pokrycie mapą całego obiektu jest

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

541

zmiana rozmiarów samego obiektu. To domyślny sposób zachowywania się map, ale możliwe też jest inne rozwiązanie. Kiedy powstaje obiekt geometryczny, możesz użyć opcji Real-World Map Size, znajdującej się zwykle obok opcji Generate Mapping Coords. Jest ona dostępna również przy stosowaniu modyfikatora UVW Mapping. Po włączeniu umożliwia określenie rozmiarów nakładanej tekstury przy użyciu jednostek stosowanych w scenie. Dzięki temu mapy tekstur zmieniają rozmiary wraz ze zmianami rozmiarów obiektów geometrycznych. Wymiary nałożonych map tekstur możesz ustawić w rolecie Coordinates. Można włączyć domyślne ustawienie opcji mapowania rzeczywistego dla wszystkich tworzonych obiektów przez wybranie Use Real-World Texture Coordinates w panelu General okna dialogowego Preference Settings.

Praca z mapami Mapy zwykle stosowane są w połączeniu z materiałami. Większość map materiałowych jest dostępna za pośrednictwem przeglądarki materiałów i map (Material Map/Browser), którą w edytorze poszerzonym można otworzyć przez wybranie polecenia Tools/Material/ Map Browser lub wciśnięcie klawisza O. Przeglądarka otworzy się również wtedy, gdy klikniesz jeden z przycisków mapowania, jakich mnóstwo znajdziesz w panelu edytora parametrów (najwięcej jest ich oczywiście w rolecie Maps). Panel przeglądarki z wszystkimi dostępnymi mapami pokazano na rysunku 17.1. W przeglądarce wszystkie mapy są domyślnie wyświetlane w rolecie Maps/Standard, ale po włączeniu renderera mental ray lub Quicksilver Hardvare pojawią się również rolety mental ray i MetaSL. Mapy obsługiwane wyłącznie przez wspomniane renderery można wyświetlić również bez włączania tych rendererów, wybierając z menu kontekstowego przeglądarki (kliknij prawym przyciskiem myszy poniżej rolet) polecenie Show Incompatybile (pokaż niekompatybilne). Aby utworzyć węzeł mapy, należy ją przeciągnąć z przeglądarki do panelu z widokiem węzłów albo po prostu dwukrotnie kliknąć jej nazwę w przeglądarce. Węzły map można łatwo odróżnić od węzłów materiałowych, ponieważ mają zielone paski tytułowe.

Przyłączanie map do materiałów Mapa — nawet w postaci węzła — nie może być bezpośrednio przypisana do obiektu w scenie. Aby mogła być wykorzystana, trzeba ją najpierw połączyć z jakąś właściwością materiału. W tym celu należy przeciągnąć gniazdo wyjściowe jej węzła na gniazdo wejściowe węzła materiału odpowiadające wybranej właściwości. Na rysunku 17.2 pokazano takie połączenie między węzłem mapy Checker a właściwością Diffuse Color materiału typu Standard. Gdy tylko połączenie zostanie ustanowione, podgląd materiału zostanie zaktualizowany, a połączone gniazda obu węzłów zmienią kolor na zielony. Jeśli przeciągniesz gniazdo wyjściowe mapy na pusty obszar panelu węzłów, otworzy się menu kontekstowe z poleceniami utworzenia węzła materiału, mapy lub kontrolera.

542

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.1. Wszystkie mapy, które można powiązać z materiałami, są dostępne w panelu Material/Map Browser

W chwili połączenia mapy z węzłem materiału tworzony jest również węzeł kontrolera, który umożliwia animowanie właściwości materiału. Więcej informacji o animowaniu materiałów znajduje się w rozdziale 21., „Animacja i klatki kluczowe”.

Dwukrotne kliknięcie paska tytułowego węzła mapy udostępnia właściwości tej mapy w oknie edytora parametrów. Mapy można łączyć z materiałami i innymi mapami także za pomocą edytora parametrów — wystarczy tutaj kliknąć przycisk mapowania określonego parametru, a następnie wybrać odpowiednią mapę w oknie Material/Map Browser, które wówczas się otworzy. Jedną mapę można połączyć z kilkoma różnymi właściwościami tego samego lub różnych materiałów. Mapy mogą być łączone również między sobą. Przykład takich połączeń widać na rysunku 17.3, gdzie mapy Splat i Marble zostały połączone z mapą Checker, a ta — z materiałem typu Standard. Żeby odłączyć mapę od materiału, po prostu zaznacz linię łączącą oba węzły i wciśnij klawisz Delete. Połączenie zostanie przerwane, ale węzły pozostaną na swoich miejscach.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map Rysunek 17.2. Mapa wpływa na wygląd materiału, jeśli jest przypisana do jego właściwości

Rysunek 17.3. Mapy można łączyć również z innymi mapami

543

544

Część IV  Materiały, kamery i oświetlenie

Rodzaje map materiałowych Przeglądarka materiałów i map zawiera mapy rozmaitych typów. Poznanie ich wszystkich pozwoli Ci na tworzenie wielu zróżnicowanych materiałów. W poprzednich wersjach Maksa mapy były podzielone na następujące grupy: 2D Maps, 3D Maps, Compositors, Color Mods i Other, ale obecnie zrezygnowano z tego podziału.

Mapy dwuwymiarowe (2D) Mapa dwuwymiarowa może zostać nałożona na powierzchnię obiektu lub też użyta jako tło sceny (tzw. mapa środowiskowa). Z powodu braku głębi mapy dwuwymiarowe pojawiają się jedynie na powierzchni. Mapa typu Bitmap jest prawdopodobnie najpopularniejszą mapą dwuwymiarową. Umożliwia załadowanie z dysku dowolnego obrazu, który można nakładać na powierzchnię obiektu na kilka różnych sposobów. Wiele map ma wspólne rolety, m.in. Coordinates, Noise i Time. Oprócz nich, każda mapa ma własną roletę Parameters.

Roleta Coordinates (współrzędne) Każda mapa nałożona na obiekt musi posiadać współrzędne mapowania, które określają sposób jej ułożenia na obiekcie. W przypadku etykiety na puszce z zupą, o której wspomnieliśmy już wcześniej, najprawdopodobniej będziesz chciał dopasować górną krawędź etykiety do górnej krawędzi puszki, ale możliwe jest też umieszczenie górnej krawędzi etykiety pośrodku puszki. Współrzędne mapowania mówią o tym, gdzie na danym obiekcie znajdują się narożniki mapy. Wszystkie współrzędne mapowania są oparte na układzie współrzędnych UVW, który w zasadzie jest identyczny z powszechnie stosowanym układem XYZ, poza wyjątkową nazwą pozwalającą uniknąć pomylenia go ze współrzędnymi transformacji. W układzie UVW U reprezentuje współrzędną poziomą, V — pionową, a W — prostopadłą do powierzchni (zgodnie z wektorem normalnym). Należy też pamiętać, że współrzędne UVW są współrzędnymi powierzchniowymi, a współrzędne XYZ — przestrzennymi. Współrzędne te są konieczne dla każdego obiektu, na który nakładana jest mapa. Zwykle możesz je wygenerować automatycznie przy tworzeniu obiektu (w panelu Create lub Modify), wybierając opcję Generate Mapping Coordinates z rolety Parameters danego obiektu. Edytowalne siatki nie mają domyślnych współrzędnych mapowania, ale można je wygenerować za pomocą modyfikatora UVW Map.

W rolecie Coordinates dla map 2D, pokazanej na rysunku 17.4, możesz określić, czy mapa będzie mapą tekstury, czy też mapą środowiskową. Opcja Texture nakłada na powierzchnię obiektu mapę jako teksturę. Taka mapa porusza się wraz z obiektem. Opcja Environ tworzy mapę środowiskową. Mapy środowiskowe są przypisane do otoczenia sceny, a nie do obiektu. Przesuwanie obiektu z nałożoną mapą środowiskową powoduje przesuwanie mapy względem powierzchni obiektu.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

545

Rysunek 17.4. Roleta współrzędnych pozwala na przesuwanie i kafelkowanie mapy

Różne rodzaje mapowania są dostępne zarówno dla opcji Texture, jak i Environ. Dla pierwszej z nich dostępne są: Explicit Map Channel (jawny kanał mapy), Vertex Color Channel (kanał koloru wierzchołka), Planar from Object XYZ (płaskie z obiektowych współrzędnych XYZ) oraz Planar from World XYZ (płaskie z globalnych współrzędnych XYZ). Domyślnym ustawieniem jest opcja Explicit Map Channel. Nakłada ona mapę za pomocą wybranego kanału mapy. Opcja Vertex Color Channel wykorzystuje określone kolory wierzchołków jako kanał mapowania. Dwa rodzaje mapowania płaskiego (Planar) umieszczają mapę na płaszczyźnie opartej o lokalny (Object) lub globalny (World) układ współrzędnych. Opcja Environ oferuje następujące rodzaje mapowania: Spherical Environment (otoczenie sferyczne), Cylindrical Environment (otoczenie cylindryczne), Shrink-Wrap Environment (otoczenie przyległe) oraz Screen (ekran). Typ Spherical Environment umieszcza całą scenę w wielkiej kuli. Podobnie ma się sprawa z opcją Cylindrical Environment, przy czym tutaj scena znajduje się w cylindrze. Shrink-Wrap Environment nakrywa scenę mapą jak narzutą. Mapowanie typu Screen nakłada mapę płasko na tło sceny. Opcja Show Map on Back (pokaż mapę z tyłu) powoduje rzutowanie map płaskich na wskroś przez obiekt i renderowanie ich na tylnej ścianie obiektu. Współrzędne U i V określają pozycję X i Y mapy. Dla każdej współrzędnej można ustalić wartość Offset, czyli odległość od początku układu. Wartość Tiling (kafelkowanie) ustawia ilość powtórzeń obrazu i ma zastosowanie tylko wtedy, jeśli wybrana zostanie opcja Tile. Przy włączonej opcji Use Real-World Scale (zastosuj skalę rzeczywistą) pola Offset zmieniają się na Width (szerokość) i Height (wysokość), a pola Tiling — na Size (rozmiar). Opcja Mirror umożliwia lustrzane odwrócenie mapy. Opcje UV, VW i WU nakładają mapę na różne płaszczyzny układu współrzędnych. Kafelkowanie (tiling) polega na umieszczeniu kopii nałożonej mapy obok jej aktualnego położenia i powtarzaniu tego procesu aż do zapełnienia całej powierzchni. Często używa się obrazów kafelkowanych bez szwów lub też takich, które się powtarzają od krawędzi do krawędzi. Kafelkowanie można włączyć w samym materiale lub za pomocą modyfikatora UVW Map.

Na rysunku 17.5 pokazano mapę kafelkowaną bez szwów. Poziome i pionowe krawędzie kolejnych powtórzeń obrazka są do siebie dopasowane. Na rysunku widoczne są trzy kolejne powtórzenia tego samego obrazka, jedno obok drugiego, ale dzięki temu, że przeciwległe krawędzie obrazu są wzajemnie dopasowane, połączenia kafelków są praktycznie niewidoczne.

546

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.5. Bezszwowe kafelkowanie umożliwia pokrycie dużej powierzchni niewielką mapą

W edytorze materiałów znajduje się przycisk pozwalający na sprawdzenie (wyświetlenie w polu próbki) ustawień Tiling i Mirror. Rozwijany przycisk Sample UV Tiling pozwala sprawdzić kafelkowanie 2×2, 3×3 lub 4×4. Można również obracać mapę wokół każdej z osi — U, V i W — poprzez wprowadzenie wartości w odpowiednie pola lub też naciśnięcie przycisku Rotate, który otwiera okno dialogowe Rotate Mapping Coordinates widoczne na rysunku 17.6. W tym oknie możesz za pomocą myszy obracać mapę. Przeciąganie kursora wewnątrz okręgu umożliwia obrót względem wszystkich osi, a przeciąganie poza okręgiem obraca mapę tylko wokół osi W. Rysunek 17.6. Okno dialogowe Rotate Mapping Coordinates pojawia się po wciśnięciu przycisku Rotate w rolecie Coordinates

Wartości Blur i Blur Offset mają wpływ na rozmycie mapy. Blur rozmywa obraz zależnie od jego oddalenia od obserwatora, podczas gdy Blur Offset rozmywa obraz niezależnie od jego oddalenia. Aby zamaskować szwy kafelków, skorzystaj z rozmycia.

Roleta Noise (szum) Rolety Noise możesz użyć, aby wprowadzić do mapy określony poziom szumu. Szum przypomina zakłócenia w odbiorze programu telewizyjnego dodane do bitmapy. Opcja ta ułatwia zwiększenie ziarnistości tekstur, co jest przydatne przy niektórych materiałach. Parametr Amount (ilość) określa natężenie szumu i może przybrać wartości od 0 (brak szumu) do 100 (maksymalny szum). W każdej chwili możesz szum włączyć lub wyłączyć za pomocą opcji On. Wartość Levels (poziomy) ustala, ile razy funkcja szumu ma być stosowana. Wartość Size (rozmiar) określa rozległość funkcji szumu w oparciu o geometrię. Możliwe jest również animowanie szumu — opcja Animate. Wartość Phase (stopniowanie) nadzoruje prędkość zmian szumu.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

547

Roleta Time (czas) Mapy, które mogą składać się z wielu klatek animacji, zawierają również roletę Time pozwalającą na sterowanie plikami animacji. W tej rolecie możesz wybrać klatkę początkową (Start Frame) i prędkość odtwarzania (Playback Rate). Domyślna prędkość odtwarzania to 1.0; wyższe wartości przyspieszają animację, a niższe ją zwalniają. Możesz także ustawić zapętlenie animacji (Loop), odtwarzanie tam i z powrotem (Ping Pong) i zatrzymanie na ostatniej klatce (Hold).

Roleta Output (wyjście) Roleta Output zawiera opcje pozwalające na kontrolowanie ostatecznego wyglądu mapy. Opcja Invert (odwróć) tworzy negatyw obrazu. Opcja Clamp (ogranicz) zapobiega przekroczeniu wartości 1.0 przez jakikolwiek kolor i samoistnemu świeceniu map w wypadku zwiększenia jasności. Opcja Alpha From RGB Intensity tworzy kanał alfa w oparciu o poziomy tonalne mapy. Czarne obszary stają się przezroczyste, a białe nieprzezroczyste. Dla materiałów, które nie mają rolety Output, możesz wykorzystać specjalną mapę o nazwie Output, która pozwoli na użycie stosownego podmateriału.

Wartość Output Amount (ilość na wyjściu) reguluje stopień, w jakim mapa będzie mieszana, jeśli jest fragmentem materiału kompozytowego. Wartości RGB Offset (przesunięcie RGB) możesz użyć do zwiększenia lub zmniejszenia wartości tonalnych mapy. Aby zmniejszyć lub zwiększyć poziom nasycenia mapy, użyj opcji RGB Level (poziom RGB). Wartość Bump Amount (wielkość nierówności) jest używana tylko i wyłącznie wtedy, gdy mapa jest mapą nierówności — określa wysokość wprowadzanych odkształceń. Opcja Enable Color Map (włącz mapę koloru) uaktywnia wykres tonalny mapy na dole rolety. Ilustruje on zakres tonalny mapy. Zmiana tego wykresu wpływa na obszary jasne, półtony i cienie mapy. Na rysunku 17.7 widoczny jest jeden z możliwych wykresów tonalnych mapy. Rysunek 17.7. Wykres tonalny mapy umożliwia dostosowanie jej świateł, półcieni i cieni

Lewy koniec wykresu odpowiada cieniom (obszarom ciemnym), a prawy — światłom (obszarom jasnym). Opcje RGB i Mono pozwalają wyświetlać niezależne wykresy dla

548

Część IV  Materiały, kamery i oświetlenie

składowych koloru — czerwonej, zielonej i niebieskiej — lub pojedynczą jednobarwną krzywą będącą wypadkową wszystkich składowych. Opcja Copy CurvePoints kopiuje istniejące punkty z trybu Mono do trybu RGB i na odwrót. Przyciski u góry wykresu służą do zarządzania jego punktami kontrolnymi. Przyciski nad wykresem to: Move (z rozwijanymi przyciskami dla opcji Move Horizontally i Move Vertically), Scale Point, Add Point z rozwijanym przyciskiem dla dodawania punktu z uchwytami, Delete Point i Reset Curves. U dołu wykresu znajdują się przyciski kontrolujące oglądanie wykresu. Dwa pola po lewej zawierają poziome i pionowe współrzędne aktualnie wybranego punktu. Inne przyciski służą do przesuwania (Pan) i skalowania (Zoom) wykresu.

Mapa bitmapowa Wybranie mapy bitmapowej z przeglądarki materiałów i map otwiera okno dialogowe Select Bitmap Image File (wybierz plik obrazu bitmapowego), które jest widoczne na rysunku 17.8. Okno pozwala znaleźć plik graficzny. Max obsługuje różne formaty obrazów i animacji. Oto one: AVI, MPEG, BMP, CIN, CWS, DDF, EXR, GIF, HDRI, IFL, IPP, FLC, JPEG, MOV, PNG, PSD, RGB, RLA, RPF, TGA, TIF oraz YUV. Rysunek 17.8. Okno dialogowe Select Bitmap Image File umożliwia podgląd obrazu przed jego otwarciem

Sekwencje wideo zapisane w formatach AVI, MPEG lub MOV mogą być wczytywane jako mapy.

Nazwa używanego pliku bitmapowego jest wyświetlona na przycisku Bitmap rolety Bitmap Parameters, pokazanej na rysunku 17.9. Jeśli chcesz zmienić bitmapę, kliknij ten przycisk i załaduj nowy plik z dysku. Jeśli dokonałeś modyfikacji bitmapy za pomocą jakiegoś zewnętrznego programu, użyj przycisku Reload, aby ją zaktualizować.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

549

Rysunek 17.9. Roleta Bitmap Parameters udostępnia parametry i opcje bitmapy

Roleta Bitmap Parameters zawiera trzy opcje filtrowania: Pyramidal (piramidalne), Summed Area (sumujące obszar) oraz None (żadne). Wszystkie te metody polegają na przeprowadzeniu działania uśredniającego piksele w celu antyaliasingu (wygładzenia krawędzi) obrazu. Opcja Summed Area zużywa więcej zasobów komputera, ale daje lepsze wyniki. Możesz również określić efekt wyjściowy dla kanału mono lub RGB. Dla map, które korzystają tylko z monochromatycznej informacji o obrazie (np. mapa przezroczystości), jako kanał wyjściowy można wybrać wypadkową luminancję składowych RGB (RGB Intensity) lub luminancję kanału alfa (Alpha). Dla map, które wykorzystują informacje o kolorze (np. mapa koloru Diffuse), kanał wyjściowy może mieć postać RGB (pełny kolor) lub Alpha as Gray (kanał alfa w skali szarości). Opcje z grupy Cropping/Placement pozwalają na przycięcie lub umiejscowienie obrazu. Przycinanie (Cropping) polega na wykadrowaniu obrazu, a umiejscowienie (Placement) to ustalenie jego rozmiarów i położenia. Przycisk View Image otwiera obraz w oknie dialogowym Cropping/Placement, które jest widoczne na rysunku 17.10. Jeśli wybrany jest tryb przycinania, wewnątrz obrazu dostępny jest prostokąt zaznaczania. Możesz przesuwać boki tego prostokąta, aby określić obszar przycinania. Po wybraniu opcji Crop w prawym górnym rogu okna Cropping/Placement pojawia się przycisk UV. Kliknięcie go zamienia współrzędne U i V na wyrażone w pikselach współrzędne X i Y.

Możesz również ustawić parametry U i V, określające położenie lewego górnego rogu ramki przycinania, a także parametry W i H, które określają jej szerokość i wysokość. Opcja Jitter Placement (umiejscowienie losowe) działa razem z opcją Place, losowo umieszczając i skalując obraz w obrębie mapy. Wartości U i V to znormalizowane współrzędne procentowe, np. wartość U równa 0.25 umieszcza lewą krawędź obrazu w miejscu, które jest położone w 1/4 (25%) całkowitej szerokości od lewej krawędzi oryginalnego obrazu.

Jeśli bitmapa ma określać przezroczystość, możesz ustalić, czy taka informacja będzie pobierana z kanału alfa bitmapy (opcja Image Alpha), czy z intensywności kolorów RGB (RGB Intensity). Możesz też zdecydować o braku przezroczystości (None). Możesz także włączyć przemnażanie wartości kanału alfa (Premultiplied Alpha). W tym przypadku wartości z kanału alfa są przemnażane przez składowe RGB. Dzięki temu możesz uniknąć konieczności mnożenia kolorów podczas kompozycji obrazu.

550

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.10. Podgląd obrazu w oknie dialogowym Cropping/Placement pozwala na precyzyjne ustawienie ramki przycinania

Mapa szachownicy (Checker) Mapa Checker tworzy obraz dwukolorowej szachownicy. Roleta Checker Parameters zawiera dwa pola definicji kolorów, które służą do ustawienia barw szachownicy. Zamiast kolorów możesz również zastosować dowolne mapy. Użyj przycisku Swap, aby zamienić kolory miejscami. Wartość Soften pozwala rozmazać krawędzie pomiędzy kolorami. Na rysunku 17.11 pokazano trzy mapy szachownicy z parametrem kafelkowania (Tiling) o wartości 2 dla kierunków U i V i wartością zmiękczania (Soften) 0, 0.2 i 0.5 (kolejno od lewej do prawej). Rysunek 17.11. Mapa szachownicy może zostać zmiękczona przy użyciu parametru Soften — przykładowo 0, 0.2 i 0.5

Mapa Combustion Ta mapa działa razem z pakietem Combustion firmy Autodesk, który jest stosowany do postprodukcyjnego komponowania obrazów (edycji i łączenia materiału wideo pochodzącego z różnych źródeł). Mapa Combustion pozwala na używanie efektów utworzonych w tym pakiecie jako map materiału.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

551

Przycisk Project pozwala na załadowanie pliku, który zostanie poddany obróbce. Wybór pliku jest ograniczony do typów obsługiwanych przez Combustion. Aby przywołać interfejs Combustion, użyj przycisku Edit. W sekcji Live Edit (edycja w czasie rzeczywistym) przycisk Unwrap (rozwiń) umieszcza na bitmapie znaczniki wskazujące położenie współrzędnych mapowania. Przycisk UV pozwala na zmianę pomiędzy układami współrzędnych UV, VW i UW. Przycisk Track Time umożliwia zmianę aktualnej klatki, dzięki czemu możesz malować materiały, które zmieniają się wraz z upływem czasu. Przycisk Paint zamienia kursor, pozwalając na interaktywne malowanie bezpośrednio w oknie widokowym. Przycisk Operator pozwala wybrać operator kompozycji z pakietu Combustion. Mapa Combustion zawiera również informacje o aktualnych ustawieniach projektu dotyczących niestandardowej rozdzielczości. Możesz również ustawić początek (Start) i czas trwania (Duration) sekwencji animacyjnej. Opcję filtrowania (Filtering) możesz ustawić jako Pyramidal, Summed Area i None. Warunki zakończenia (End Conditions) mogą przybrać wartość Loop (zapętlenie), Ping Pong (ruch tam i z powrotem pomiędzy początkiem i końcem animacji) lub Hold (zatrzymanie na ostatniej klatce). Aby używać tego rodzaju mapy, musisz mieć zainstalowany program Combustion. W przeciwnym przypadku na górze rolety Combustion Parameters pojawi się tekst „Error: Combustion Engine DLL Not Found” (błąd: nie znaleziono bibliotek DLL Combustion Engine).

Mapa gradientu (Gradient) Mapa gradientu tworzy przejście tonalne oparte na trzech kolorach. Roleta Gradient Parameters (parametry gradientu) zawiera próbki kolorów i przyciski map dla każdego koloru. Możesz umieścić centralny kolor w dowolnym miejscu pomiędzy dwoma końcami gradientu, używając parametru Color 2 Position (pozycja koloru 2.). Może ona przybrać wartości od 0 do 1. Roleta pozwala na wybór między gradientem liniowym (Linear) i radialnym (Radial). Parametr Noise Amount (współczynnik szumu) dodaje do gradientu szum, jeśli jego wartość jest wyższa niż zero. Wartość Size (rozmiar) reguluje rozmiar szumu, a Phase (faza) — prędkość zmian szumu. Trzy rodzaje szumu, spośród których możesz wybierać, to Regular, Fractal i Turbulence. Wartość Levels (poziomy) określa, ile razy zostanie zastosowana funkcja szumu. Wartości High Threshold (próg górny) i Low Threshold (próg dolny) razem z wartością Smooth (wygładzenie) wyznaczają granice funkcji szumu w celu uniknięcia nieciągłości. Na rysunku 17.12 pokazano oba rodzaje map gradientów.

Mapa rampy gradientowej (Gradient Ramp) Ta zaawansowana wersja mapy gradientu może używać wielu różnych kolorów. Roleta Gradient Ramp Parameters, pokazana na rysunku 17.13, zawiera kolorowy pasek z kilkoma znacznikami (flags) u dołu. Znaczniki możesz dodawać, klikając po prostu u dołu paska. Możesz również zmieniać ich położenie, a nawet usuwać. W tym ostatnim przypadku musisz przeciągnąć wskaźnik poza koniec paska, aż stanie się czerwony.

552

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.12. Mapa gradientu może być liniowa (po lewej) lub radialna (po prawej)

Rysunek 17.13. Okno dialogowe Flag Properties pozwala na określenie koloru i położenia znacznika na skali gradientowej

Aby określić kolor dla danego znacznika, kliknij go prawym przyciskiem myszy i z podręcznego menu wybierz Edit Properties. Wyświetli się okno dialogowe Flag Properties, w którym będziesz mógł wybrać kolor (rysunek 17.13). Rozwijana lista Gradient Type w rolecie Gradient Ramp Parameters pozwala wybrać różne rodzaje gradientów: 4 Corner (w czterech kątach), Box (prostokątny), Diagonal (ukośny), Lighting (zgodny z oświetleniem), Linear (liniowy), Mapped (mapowany), Normal (normalny), Pong (odbijający się), Radial (radialny), Spiral (spiralny), Sweep (omiatający) i Tartan (kraciasty). Możesz również wybrać typ interpolacji: Custom (niestandardowa), Ease In (rozluźnianie do wewnątrz), Ease In Out (rozluźnianie do wewnątrz i na zewnątrz), Ease Out (rozluźnianie na zewnątrz), Linear (liniowa) oraz Solid (twarda). Na rysunku 17.14 przedstawiono kilka rodzajów gradientów dostępnych dla mapy rampy gradientowej.

Mapa zawirowania (Swirl) Mapa zawirowania tworzy wir złożony z dwóch kolorów, Base i Swirl. Roleta Swirl Parameters zawiera dwie próbki kolorów i przyciski map określających dwie wymienione powyżej barwy. Przycisk Swap zamienia je miejscami. Inne opcje to: Color Contrast, służąca do ustawienia kontrastu pomiędzy kolorami; Swirl Intensity, która określa intensywność koloru wiru; Swirl Amount, określająca, jak bardzo kolor Swirl miesza się z kolorem Base.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

553

Rysunek 17.14. Mapa Gradient Ramp udostępnia kilka różnych rodzajów gradientów, m.in. (od góry po lewej do dołu po prawej) Box, Diagonal, Normal, Pong, Spiral i Tartan

Wszystkie mapy, które wykorzystują dwa kolory, mają przycisk Swap służący do zamieniania ich miejscami.

Wartość Twist ustala liczbę zawirowań. Wartości ujemne powodują zmianę kierunku zawirowania. Wartość Constant Detail określa stopień szczegółowości wiru. Za pomocą wartości Swirl Location X i Y możesz przesunąć środek wiru. Wraz z przemieszczaniem środka wiru dalej od środka materiału pierścienie wiru stają się ciaśniejsze. Przycisk Lock powoduje równą zmianę obu wartości. Jeśli jest wyłączony, możesz zmieniać wartości niezależnie od siebie. Opcja Random Seed wpływa na losowy charakter wiru. Na rysunku 17.15 przedstawiono mapę zawirowania z trzema różnymi wartościami parametru Twist, od lewej do prawej: 1, 5 i 10. Rysunek 17.15. Mapa zawirowania łączy dwa kolory w barwnym wirze

Mapa kafelków (Tiles) Mapa kafelków tworzy wzory cegiełkowe. Roleta Standard Controls zawiera rozwijaną listę Preset Type z wykazem wzorów kafelków. Wzory te są dość znane: Running Bond (wątek ciągły), Common Flemish Bond (wątek holenderski), English Bond (wątek angielski),

554

Część IV  Materiały, kamery i oświetlenie

½ Running Bond (wątek półciągły), Stack Bond (wątek stosowy), Fine Running Bond (drobny wątek ciągły) i Fine Stack Bond (drobny wątek stosowy). W rolecie Advanced Controls w sekcjach Tile Setup (ustawienia kafelków) i Grout Setup (ustawienia fug) możesz użyć własnych map tekstury i barw. Możesz określić wartości poziomej i pionowej liczby kafelków (odpowiednio Horizontal i Vertical Count), a także poziome i pionowe przerwy między kafelkami (Horizontal i Vertical Gaps), jak również wartości Color i Fade Variance (zróżnicowanie koloru i blaknięcia). Możesz zablokować ustawienia poziomych i pionowych przerw tak, aby ich szerokości zawsze były jednakowe. Tam też określisz wartość procentowej ilości otworów (% Holes). Otwory to miejsca, w których brakuje kafelków. Wartość Rough ustawia nierówność fug między kafelkami. Losowość wzorów reguluje wartość Random Seed, a przycisk Swap Texture Entries powoduje zamianę miejscami tekstury kafelków z teksturą fugi. W sekcji Stacking Layout wartości Line Shift i Random Shift służą do przesunięcia każdego rzędu kafelków o określoną lub losową odległość. Sekcja Row and Column Editing oferuje opcje, które pozwalają na zmianę ilości kafelków w rzędzie (Per Row) lub kolumnie (Per Column), a także wartość zmiany (Change) w każdym rzędzie lub kolumnie1. Na rysunku 17.16 widoczne są trzy różne rodzaje mapy kafelków. Rysunek 17.16. W rolecie Standard Controls możesz wybrać kilka różnych predefiniowanych ułożeń kafelków, m.in. wątek ciągły, wątek angielski i drobny wątek ciągły

Mapy trójwymiarowe (3D) Mapy 3D są tworzone proceduralnie, co oznacza, iż są czymś więcej niż tylko zgrupowaniem pikseli; powstają bowiem przy użyciu algorytmu matematycznego. Opisuje on mapę w trzech wymiarach, przez co ponownie układa się ona wzdłuż każdej krawędzi po odcięciu części obiektu, na który jest nałożona. Roleta Coordinates dla map 3D jest podobna do swojego odpowiednika dla map 2D, różnice znajdziesz w opcjach Coordinate Source of Object XYZ, Coordinate Source of 1

Sekcja Row and Column Editing uaktywnia się dopiero po wybraniu z listy Preset Type opcji Custom Tiles. Parametry Change służą do zmieniania szerokości bądź wysokości kafelków, a parametry Per Row i Per Column pozwalają określić, które wiersze i kolumny mają być zmieniane. Wartość 0 w tych polach wyłącza wszelkie zmiany, wartość 1 oznacza zmiany w każdym rzędzie lub kolumnie, wartość większa od 1 dopuszcza zmiany w co n-tym rzędzie lub kolumnie — przyp. tłum.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

555

World XYZ, Explicit Map Channel i Vertex Color Channel. Dodatkowo mapa trójwymiarowa ma też ustawienia Offset, Tiling, i Angle dla osi X, Y i Z, jak również opcje Blur i Blur Offset.

Mapa komórkowa (Cellular) Trójwymiarowa mapa komórkowa tworzy wzory małych obiektów, zwane komórkami. W sekcji Cell Color rolety Cellular Parameters możesz określić kolor pojedynczych komórek lub nałożyć na nie mapę. Ustawienie wartości Variation powoduje zróżnicowanie koloru poszczególnych komórek. W sekcji Division Colors (kolory działowe) dostępne są dwie próbki kolorów, dzięki którym możesz określić barwy, jakie pojawią się między komórkami. Ta przestrzeń jest gradientem pomiędzy dwoma wybranymi kolorami. W sekcji Cell Characteristics możesz przez wybranie opcji Circular (koliste) lub Chips (odłamkowe) ustawić kształt komórek, ich rozmiar (Size), a także rozkład (Spread). Wartość Bump Smoothing wygładza nierówności komórek. Opcja Fractal powoduje generowanie komórek za pomocą algorytmu fraktalnego. Wartość Iterations określa liczbę zastosowań algorytmu. Opcja Adaptive określa liczbę iteracji w zależności od odległości obiektu od kamery. Wartość Roughness określa poziom szorstkości powierzchni komórek. Wartość Size wpływa na ogólną skalę mapy, podczas gdy wartości zmiennych Threshold określają względne rozmiary obszarów zajmowanych przez oba kolory działowe. Możliwe do wyboru ustawienia to Low, Mid i High. Na rysunku 17.17 widoczne są trzy mapy komórkowe: pierwsza z kolistymi komórkami i wartością Size równą 20, druga z komórkami odłamkowymi, a ostatnia z włączoną opcją Fractal. Rysunek 17.17. Mapa komórkowa tworzy małe, regularnie ukształtowane komórki

Mapa wgnieceń (Dent) Trójwymiarowa mapa wgnieceń działa jako mapa nierówności, tworząc wgniecenia na powierzchni obiektu. Wartość Size w rolecie Dent Parameters ustala ogólny rozmiar wgnieceń. Wartość Strength określa ich głębokość, a Iterations — liczbę iteracji algorytmu generującego mapę. Możesz również wybrać kolory mapy wgnieceń. Domyślne ustawienia to czerń i biel. Kolor czarny wyznacza miejsca wgnieceń.

556

Część IV  Materiały, kamery i oświetlenie

Na rysunku 17.18 przedstawiono trzy kule z mapą wgnieceń zastosowaną w kanale Bump materiału. Wartość Size jest ustawiona odpowiednio od lewej do prawej na 500, 1000 i 2000. Rysunek 17.18. Mapa wgnieceń (po jej umieszczeniu w kanale mapowania nierówności) wywołuje wgniecenia na powierzchni obiektu

Mapa zaniku (Falloff) Trójwymiarowa mapa zaniku tworzy obraz w skali szarości w oparciu o kierunek normalnych danej powierzchni. Obszary z normalnymi, równoległymi do widoku, są czarne, a obszary z normalnymi prostopadłymi względem widoku są białe. Mapa ta jest stosowana zazwyczaj jako mapa krycia, bo umożliwia większą kontrolę nad przezroczystością obiektu. Mapa Falloff przydaje się do tworzenia efektu Fresnela na powierzchniach o silnym połysku.

Roleta Falloff Parameters zawiera dwie próbki kolorów, przy czym każda z nich ma przypisaną wartość siły (Strength) oraz opcjonalną mapę. Znajdziesz tam również rozwijane listy ustawień Falloff Type (rodzaj zaniku) i Falloff Direction (kierunek zaniku). Możliwe rodzaje zaniku to Perpendicular/Parallel (prostopadle/równolegle), Towards/Away (do/od), Fresnel, Shadow/Light (cień/światło) i Distance Blend (mieszanie dystansowe). Opcja Falloff Direction pozwala wybrać kierunek zaniku: Viewing Direction (Camera Z Axis); Camera X Axis; Camera Y Axis; Object; Local X, Y, Z Axis; World X, Y, Z Axis. W sekcji Mode Specific Parameters znajdują się ustawienia zależne od rodzaju i kierunku zaniku. Jeśli jako kierunek zaniku wybrany jest Object, aktywny staje się przycisk pozwalający na wybranie obiektu. Zanik typu Fresnel jest oparty na wartości współczynnika załamania światła i udostępnia opcję zastąpienia domyślnego współczynnika załamania dla materiału (Override Material IOR). Zanik typu Distance Blend pozwala ustawić wartości zaniku dla odległości bliskich (Near) i dalekich (Far). Mapa zaniku zawiera również roletę Mix Curve z wykresem, który pozwala dokładnie kontrolować gradient zaniku. Wykresem można sterować przy użyciu przycisków pozwalających na dodawanie na krzywej nowych punktów, przesuwanie, skalowanie i usuwanie ich, a także resetowanie krzywej. Punkty na szczycie wykresu mają wartość 1 i odzwierciedlają białe obszary zaniku. Punkty na dole wykresu mają wartość 0 i odpowiadają obszarom czarnym.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

557

Mapa marmuru (Marble) Trójwymiarowa mapa Marble tworzy materiał marmurowy z losowo zabarwionymi żyłkami. Roleta Marble Parameters zawiera dwie próbki kolorów: Color #1 to kolor żyłek, a Color #2 to kolor podstawowy. Barwy możesz także zastąpić mapami. Przycisk Swap zamienia miejscami oba kolory. Wartość Size określa odległość pomiędzy żyłkami, a Vein Width ustala ich grubość. Na rysunku 17.19 przedstawiono trzy mapy marmuru z wartością Vein Width, odpowiednio 0.01, 0.025 i 0.05 (od lewej do prawej). Rysunek 17.19. Mapa Marble tworzy powierzchnię o fakturze marmuru

Mapa szumu (Noise) Trójwymiarowa mapa szumu losowo zmienia powierzchnię obiektu przy użyciu dwóch kolorów. Roleta Noise Parameters oferuje trzy rodzaje szumu: Regular, Fractal i Turbulence. Każdy z nich to inny algorytm do obliczania szumu. Dwie kolorowe próbki pozwalają na zmianę kolorów wykorzystanych do wytworzenia szumu. Możesz również wykorzystać mapy zamiast kolorów. Przycisk Swap zamienia miejscami obydwa kolory, a wartość Size pozwala skalować efekt szumu. Aby uniknąć nieciągłości, możesz użyć opcji Noise Threshold: High i Low. Na rysunku 17.20 widoczne są mapy trzech rodzajów szumu (od lewej do prawej: zwykły, fraktalny i turbulentny). Rysunek 17.20. Mapa szumu tworzy na powierzchni obiektu losowy wzór szumu

Mapa wieku cząstek (Particle Age) Mapa wieku cząstek jest używana w systemach cząstek do zmiany koloru w miarę upływu ich życia. Roleta Particle Age Parameters zawiera trzy różne próbki kolorów i wartości wieku.

558

Część IV  Materiały, kamery i oświetlenie

Mapa rozmycia cząstek w ruchu (Particle MBlur) Mapa używana jest również z systemami cząstek. Przy jej zastosowaniu cząstki ulegają rozmyciu w miarę zwiększania swojej prędkości. Roleta Particle Motion Blur Parameters zawiera dwa kolory. Pierwszy z nich używany jest dla wolniejszych cząstek, a drugi dla szybszych. Kiedy nałożysz tę mapę jako mapę krycia, cząstki ulegają rozmyciu. Wartość Sharpness określa stopień rozmycia. Aby dowiedzieć się więcej na temat map wieku i rozmycia cząstek w ruchu przeczytaj rozdział 41., „Cząsteczki i system Particle Flow”.

Mapa marmuru Perlino (Perlin Marble) Mapa tworzy teksturę marmuru przy użyciu innego algorytmu. Marmur Perlino jest bardziej chaotyczny i losowy od zwykłego marmuru. Roleta Perlin Marble Parameters zawiera parametr Size, który pozwala ustalić rozmiar wzoru marmuru, a także parametr Levels, określający, ile razy zostanie użyty algorytm. Dwie próbki kolorów określają kolor podstawowy i kolor żyłek — możesz również w ich miejsce wybrać mapę. Ponadto możesz ustawić wartość nasycenia (Saturation) barw, a przycisk Swap zamienia kolory miejscami. Na rysunku 17.21 przedstawiono różne wartości rozmiaru dla mapy marmuru Perlino: 50, 100 i 200 (od lewej do prawej). Rysunek 17.21. Mapa marmuru Perlino tworzy marmurowy wzór z losowymi żyłkami

Mapa dymu (Smoke) Mapa dymu pozwala na tworzenie w oparciu o fraktale losowych wzorów podobnych do tych, jakie widzimy, patrząc na dym. W rolecie Smoke Parameters możesz ustawić parametr rozmiaru (Size) zadymionych obszarów i ilość powtórzeń (Iterations) algorytmu. Wartość Phase (faza) pozwala przesuwać dym, a wartość Exponent (propagacja) daje w rezultacie rozrzedzone smużki dymu. Roleta zawiera także dwa kolory określające cząstki dymu i przestrzeń pomiędzy nimi — też możesz zastąpić je mapami. Na rysunku 17.22 przedstawiono mapę dymu z wartościami Size 40, 80 i 200 (od lewej do prawej).

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

559

Rysunek 17.22. Mapa Smoke symuluje wygląd dymu, gdy używamy jej do mapowania przezroczystości

Mapa cętek (Speckle) Mapa Speckle tworzy małe, losowo rozmieszczone cętki. Roleta Speckle Parameters pozwala kontrolować wielkość i kolory cętek. Dwie próbki kolorów służą do ustawienia koloru podstawowego i koloru cętek. Na rysunku 17.23 pokazano mapę cętek z wartościami Size 100, 200 i 400 (od lewej do prawej). Rysunek 17.23. Mapa Speckle tworzy na powierzchni obiektu małe, losowe cętki

Mapa rozbryzgów (Splat) Mapa Splat tworzy obraz przypominający pokrycie obiektu rozbryzgami farby. Roleta Splat Parameters pozwala na ustawienie wielkości rozbryzgów i liczby powtórzeń algorytmu fraktalnego. Dla każdego dodatkowego powtórzenia pojawia się więcej małych rozbryzgów. Wartość Threshold określa stopień zmieszania kolorów. Roleta zawiera również dwa kolory określające barwę chlapnięć, które możesz zastąpić mapami. Na rysunku 17.24 przedstawiono mapę rozbryzgów z wartością Size 60, sześcioma powtórzeniami i wartościami Threshold 0.2, 0.3 i 0.4 (od lewej do prawej). Rysunek 17.24. Mapa Splat rozrzuca farbę losowo po powierzchni obiektu

560

Część IV  Materiały, kamery i oświetlenie

Mapa stiuku (Stucco) Mapa stiuku generuje losowe plamy gradientów, które w przypadku mapowania kanału Bump dają efekt powierzchni stiuku (lub zwyczajnego tynku). W rolecie Stucco Parameters wartość Size określa rozmiar tych obszarów. Wartość Thickness (gęstość) ustala stopień zamazania plam, co ma wpływ na ostrość nierówności. Wartość Threshold podaje, ile danego koloru weźmie udział w mieszaniu. Roleta pozwala określić także dwa kolory plam, które możesz zastąpić mapami. Na rysunku 17.25 możesz zobaczyć mapę stiuku z wartością Threshold równą 0.5, Thickness równą 0.02 i rozmiarem 10, 20 i 40 (od lewej do prawej). Rysunek 17.25. Mapa Stucco zastosowana jako mapa nierówności tworzy łagodne zagłębienia

Pominięta tutaj mapa Substance służy do tworzenia tekstur proceduralnych i jest dokładniej opisana w rozdziale 31., „Proceduralne tekstury substancyjne”.

Mapa fal (Waves) Ta mapa tworzy faliste wzory, podobne do falującej cieczy i może być używana zarówno jako mapa koloru Diffuse, jak i jako mapa nierówności (Bump) w celu stworzenia powierzchni imitującej powierzchnię wody. Możesz użyć kilku różnych wartości, aby ustawić właściwości fali w rolecie Waves Parameters, włączając w to ilość zestawów fal (Num Wave Sets), ich promień (Wave Radius), minimalną i maksymalną długość (Wave Length), amplitudę (Amplitude) i fazę (Phase). Możesz również ustawić rozkład fal (Distribute) w dwóch i trzech wymiarach, a także określić wartość losowego rozmieszczenia fal (Random Seed). Na rysunku 17.26 pokazano mapę fal z wartością Num Wave Sets 1, 3 i 9 (od lewej do prawej). Rysunek 17.26. Mapy Waves możesz używać do tworzenia powierzchni imitujących lustro wody

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

561

Mapa drewna (Wood) Mapa Wood tworzy dwukolorowe słoje drewna. Roleta Wood Parameters zawiera opcje: Grain Thickness (grubość słojów), a także szum radialny i osiowy (Radial i Axial Noise). Możesz wybrać dwa kolory, które zostaną użyte do utworzenia słojów drewna. Na rysunku 17.27 pokazano mapę drewna z wartością Grain Thickness ustawioną na 8, 16 i 30 (od lewej do prawej). Rysunek 17.27. Mapa Wood tworzy powierzchnię z widocznymi słojami

Mapy złożone (Compositor maps) Mapy złożone powstają poprzez połączenie kilku różnych map w jedną. Do grupy map złożonych należą mapy Composite, Mask, Mix i RGB Multiply.

Mapa kompozytowa (Composite) Mapy kompozytowe łączą określoną liczbę map w jedną przy użyciu kanału alfa. Poszczególne mapy umieszczane są na oddzielnych warstwach układanych od góry do dołu. Roleta Composite Layers wyświetla liczbę warstw, ma też przyciski do tworzenia nowych warstw, co widać na rysunku 17.28. Każda warstwa zawiera próbki podglądu umożliwiające określenie tekstury i maski. Obok próbek znajdują się przyciski służące do ukrywania warstwy lub maski oraz do kolorystycznej korekcji maski i tekstury. Są tu także przyciski do usuwania, powielania i nazywania warstw. Parametr Opacity (krycie) określa przezroczystość warstwy, a opcje z rozwijanej listy w dolnej części rolety wyznaczają sposób mieszania tekstury z danej warstwy z tymi, które leżą niżej. Dostępnymi trybami mieszania są: Normal (zwykły), Average (uśrednienie), Addition (dodawanie), Subtract (odejmowanie), Darken (ciemniejsze), Multiply (mnożenie), Lighten (jaśniejsze), Screen (mnożenie odwrotności), Color Dodge (rozjaśnianie koloru), Linear Burn (rozjaśnianie liniowe), Spotlight (reflektor), Spotlight Blend (blenda reflektora), Overlay (nakładka), Soft Light (łagodne światło), Hard Light (ostre światło), Pinlight (światło punktowe), Hard Mix (mieszanie twarde), Difference (różnica), Exclusion (wykluczenie), Hue (barwa), Saturation (nasycenie), Color (kolor) i Value (wartość). Mapy kompozytowe i tryby mieszania w 3ds Max 2010 działają podobnie jak warstwy w Photoshopie.

562

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.28. W rolecie Composite Layers każda mapa wchodząca w skład mapy kompozytowej zajmuje oddzielną warstwę

Na rysunku 17.29 przedstawiono trzy różne przykłady wykorzystania mapy kompozytowej. Obraz po lewej stanowi połączenie mapy szachownicy z mapą gradientu. Kolejne dwa obrazy to połączenie mapy wiru z mapą szachownicy i mapą komórkową. Rysunek 17.29. Mapa kompozytowa może wykorzystywać kilka różnych map

Mapa maskowana (Mask) W rolecie Mask Parameters możesz wybrać mapę, której użyjesz jako maski, oraz drugą, nazwaną po prostu Map, która będzie wyświetlana przez otwory w masce. Możesz także odwrócić maskę — Invert the Mask. Czarne obszary mapy maskującej to te, które będą zakrywały leżącą poniżej mapę. Białe obszary stanowią miejsca prześwitu dla mapy pod spodem. Efekt działania mapy maski jest widoczny dopiero po zrenderowaniu.

Mapa mieszana (Mix) Mapy mieszanej możesz użyć do połączenia dwóch map lub kolorów. Działa ona na zasadzie podobnej do mapy kompozytowej, z wyjątkiem stosowania wartości Mix Amount, która nadzoruje mieszanie kolorów lub map zamiast stosowania kanału alfa. W rolecie Mix Parameters wartość czynnika mieszania równa 0 oznacza wykorzystanie jedynie

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

563

pierwszego ze zdefiniowanych kolorów — Color #1, a wartość 100 oznacza wykorzystanie jedynie drugiego ze zdefiniowanych kolorów — Color #2. Do zdefiniowania sposobu mieszania możesz także użyć krzywej Mixing Curve. Kształt krzywej można kontrolować przez zmienianie wartości Upper i Lower. Na rysunku 17.30 przedstawiono mapy marmuru Perlino i szachownicy nałożone i zmieszane przy wartościach Mix Amount równych 25, 50 oraz 75 (od lewej do prawej). Rysunek 17.30. Mapa mieszana pozwala na połączenie dwóch map zgodnie ze współczynnikiem mieszania

Mapa mnożenia RGB (RGB Multiply) Mapa RGB Multiply mnoży wartości składowych RGB dwóch osobnych map i nakłada te mapy na siebie, co w rezultacie daje jedną mapę wynikową. Czy zauważyłeś na poprzednim rysunku, że mapa mieszana powoduje zanikanie kolorów na obu łączonych mapach? Mapa mnożenia RGB nie zmienia nasycenia pierwotnych map, bo podczas łączenia używa kanału alfa każdej z nich. Roleta RGB Multiply Parameters zawiera opcje stosowania kanału alfa z mapy zdefiniowanej jako pierwsza (Map #1), z mapy zdefiniowanej jako druga (Map #2) lub też wyniku mnożenia obu kanałów alfa (Multiply the Alphas). Na rysunku 17.31 przedstawiono trzy próbki mapy mnożenia RGB. Każdy z tych obrazów łączy mapę drewna z mapą szachownicy, gradientu i stiuku (od lewej do prawej). Zauważ, że ten rodzaj mapy nie prowadzi do zaniku kolorów. Rysunek 17.31. Mapa iloczynu RGB łączy mapy przy pełnym nasyceniu kolorów, wykorzystując kanały alfa

Mapy modyfikatorów koloru (Color Mods) Tej grupy map możesz używać do zmiany koloru różnych materiałów. Do map z tej grupy należą Color Correction, Output, RGB Tint oraz Vertex Color.

564

Część IV  Materiały, kamery i oświetlenie

Mapa korekcji koloru (Color Correction) Mapa korekcji koloru umożliwia modyfikowanie kolorów tekstury. Korekcje są przeprowadzane w oparciu o ideę stosu. Dostępne są cztery rolety, Basic Parameters, Channels, Color i Lightness, pokazane na rysunku 17.32, a zawarte w nich ustawienia są stosowane w kolejności zgodnej z kolejnością rolet — od góry do dołu. Rysunek 17.32. Mapa Color Correction pozwala opracowywać tekstury, tak jak zdjęcia w laboratorium fotograficznym

Roleta Basic Parameters zawiera próbkę koloru i przycisk mapy, które umożliwiają określenie koloru wpływającego na mapę. W rolecie Channels możesz wybrać operację wykonywaną na kanałach kolorów mapy: Normal (zwykłe), Monochrome (monochromatyczne), Invert (odwrócone) lub Custom (dowolne). Po zaznaczeniu tej ostatniej opcji można dla każdego kanału (R, G, B i alfa) wybrać jedną z następujących opcji: Red (czerwony), Green (zielony), Blue (niebieski), Alpha, ich odwrotności (Inverse), Monochrome (monochromatyczny) One (jeden) i Zero. W rolecie Color można określić przesunięcie barwy (Hue Shift), nasycenie (Saturation), zabarwienie (Hue Tint) i siłę tego zabarwienia (Strength). Ostatnia roleta, Lightness, może być w wersji standardowej (Standard) lub zaawansowanej (Advanced). W wersji standardowej można zmienić tylko jasność (Brightness) i kontrast (Contrast), ale wersja zaawansowana pozwala na sterowanie przyrostem (Gain), stopniem przysłony (F-Stops) i światłami drukarki (Printer Lights) w każdym kanale niezależnie.

Mapa efektu wyjściowego (Output) Mapa efektu wyjściowego umożliwia dodanie funkcji znajdujących się w rolecie Output do map, które takiej rolety nie mają. Szczegółowe informacje dotyczące tego rodzaju mapy znajdziesz wcześniej, przy okazji opisu rolety Output.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

565

Mapa zabarwienia RGB (RGB Tint) Mapa zabarwienia RGB zawiera próbki do określenia wartości kanałów czerwonego, zielonego i niebieskiego. Modyfikacje tych kolorów zmieniają zabarwienie mapy. Przykładowo ustawienie w rolecie RGB Tint Parameters czerwonej barwy na poziomie bieli, a zielonej i niebieskiej na poziomie czerni tworzy głębokie czerwone zabarwienie. Te kolory również możesz zastąpić mapami.

Mapa koloru wierzchołków (Vertex Color) Mapa koloru wierzchołków sprawia, że po zrenderowaniu widzialne stają się kolory wierzchołków przypisane do obiektów klasy Editable Mesh, Editable Poly i Editable Patch. Kiedy taki obiekt jest w trybie edycji wierzchołków, możesz przypisać wybranym wierzchołkom kolor (Color), iluminację (Illumination) i przezroczystość (Alpha). Te ustawienia znajdziesz w rolecie Surface Properties. Kolory wierzchołkom możesz również przypisać przy użyciu narzędzia Assign Vertex Colors. Dzięki niemu określisz kolory wierzchołków wybranego obiektu w oparciu o m.in. barwy materiałów lub świateł. Trzecim sposobem na przypisanie kolorów wierzchołkom jest modyfikator Vertex Paint, który znajdziesz w menu Modifiers/Mesh Editing/Vertex Paint. Pozwala on na kolorowanie wierzchołków przez bezpośrednie malowanie na obiekcie. Aby dowiedzieć się więcej o modyfikatorze Vertex Paint, przeczytaj rozdział 18, „Materiały złożone i modyfikatory materiałów”.

Po przypisaniu kolorów wierzchołków musisz umieścić mapę Vertex Color w kanale Diffuse edytora materiałów i dopiero wtedy program będzie renderował te kolory. Mapa nie ma żadnych dodatkowych ustawień.

Mapy inne (Other) Mapy zgrupowane pod nazwą inne dotyczą głównie efektów odbicia i załamania światła. Należą do nich Camera Map Per Pixel, Flat Mirror, Normal Bump, Raytrace, Reflect/ Refract oraz Thin Wall Refraction.

Mapowanie z kamery (Camera Map Per Pixel) Mapowanie z kamery polega na rzutowaniu mapy z miejsca, w którym ustawiona jest kamera. Mapy te stosujemy przez wyrenderowanie pierwotnej sceny, edycję zrenderowanego obrazu w programie do obróbki grafiki rastrowej i zrzutowanie tak przetworzonego materiału ponownie na scenę. Roleta Camera Map Parameters zawiera przyciski, które umożliwiają wybór kamery (Camera), tekstury (Texture), maski bufora głębi (ZBuffer Mask) i maski (Mask).

Mapa płaskiego lustra (Flat Mirror) Mapa płaskiego lustra odbija otoczenie przy użyciu współpłaszczyznowej grupy ścianek. W rolecie Flat Mirror Parameters możesz wybrać stopień rozmycia (Blur) i określić sposób renderowania — czy ma ono dotyczyć jedynie pierwszej klatki (First Frame Only), czy

566

Część IV  Materiały, kamery i oświetlenie

też klatek według określonego interwału (Every Nth Frame). Możesz także użyć mapy środowiskowej (Use the Environment Map) lub nałożyć ją na ścianki z wybranym identyfikatorem materiału (Apply to Faces with ID). Mapy płaskiego lustra należy nakładać tylko na ścianki współpłaszczyznowe z odpowiednim identyfikatorem materiału.

Opcje zniekształceń to: None, Use Bump Map i Use Built-In Noise. Jeśli wybrana jest opcja Use Bump Map, możesz określić współczynnik zniekształcenia (parametr Distortion Amount). Jeśli wybrana jest opcja Use Built-In Noise, możesz wybierać pomiędzy szumem typu Regular, Fractal lub Turbulence, określając dodatkowo parametry Phase, Size i Levels.

Ćwiczenie: Tworzenie lustrzanej powierzchni Lustereczko, powiedz przecie, kto modeluje najlepiej na świecie? Używając mapy płaskiego lustra, możesz tworzyć… lustra (zaskakujące, prawda?). Aby utworzyć i skonfigurować mapę płaskiego lustra, wykonaj następujące czynności. 1. Otwórz plik Reflection in mirror.max z folderu Chap 17 na płycie dołączonej do książki. 2. Plik ten zawiera model mężczyzny stojącego przed lustrem. Podobiektom (ściankom) lustra przypisano numer Material ID równy 1. 3. Wybierz polecenie Rendering/Material Editor/Slate Material Editor (lub wciśnij klawisz M), aby otworzyć edytor materiałów. 4. W panelu Material/Map Browser odszukaj i kliknij dwukrotnie mapę Flat Mirror, aby utworzyć jej węzeł. Przeciągnij gniazdo wyjściowe tego węzła w pusty obszar panelu z widokiem węzłów i z menu, które się otworzy, wybierz opcję Materials/ Standard, a następnie z menu parametrów wybierz Reflection. Powstanie nowy węzeł materiału standardowego, którego gniazdo Reflection będzie połączone z mapą Flat Mirror. Jeśli mapa Flat Mirror nie jest dostępna, włącz opcję Maps w menu przeglądarki.

5. Kliknij dwukrotnie węzeł mapy, aby wyświetlić jej właściwości w edytorze parametrów. W rolecie Flat Mirror Parameters wyłącz opcje Apply Blur i User Environment Map, po czym wybierz opcję Apply to Faces with ID. Następnie w polu obok tej opcji ustaw wartość 1. 6. Przeciągnij gniazdo wyjściowe węzła materiału na obiekt lustra w oknie widokowym, aby przypisać mu ten materiał. Na rysunku 17.33 przedstawiono model odbijający się od prostego obiektu łaty z nałożoną mapą płaskiego lustra. Odbicie jest widoczne jedynie na wyrenderowanym obrazie.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

567

Rysunek 17.33. Mapa płaskiego lustra powoduje odbijanie obrazu otoczenia przez obiekt

Mapa normalnych symulująca nierówności (Normal Bump) Mapa tego typu pozwala zmieniać wygląd szczegółów danej powierzchni przy użyciu mapy normalnych. Mapę normalnych można utworzyć za pomocą okna dialogowego Render to Texture. Roleta Parameters dla mapy Normal Bump umożliwia wybranie mapy normalnych (przycisk Normal) oraz dodatkowej mapy nierówności (przycisk Additional Bump). Można tu również określić intensywność efektu wprowadzanego przez każdą z tych map. Dodatkowe opcje pozwalają odwracać (Flip) i zamieniać ze sobą (Swap) kanały kierunkowe: czerwony (Red) i zielony (Green), które wyznaczają kierunki mapowania X i Y. Okno dialogowe Render to Texture oraz mapy normalnych są opisane bardziej szczegółowo w rozdziale 34., „Tworzenie wypiekanych tekstur i map normalnych”.

Mapa śledzenia promieni (Raytrace) Mapa śledzenia promieni jest alternatywą dla materiału Raytrace i jako mapa może być użyta w sytuacjach, w których nie można zastosować wspomnianego materiału. Aby dowiedzieć się więcej o mapach i materiałach typu raytrace, przeczytaj rozdział 47., „Renderery mental ray i iray”.

Mapa odbić i załamań światła (Reflect/Refract) Mapy Reflect/Refract są jeszcze jednym sposobem na tworzenie odbić i załamań światła na obiektach. Mapy te działają na zasadzie sześciokrotnego renderowania widoku sceny wzdłuż osi przecinających obiekt — po jednym razie dla każdej płaszczyzny sześcianu otaczającego obiekt. Te wyrenderowane obrazy, nazywane mapami sześciennymi (cubic maps), są następnie rzutowane na obiekt.

568

Część IV  Materiały, kamery i oświetlenie

Mapy sześcienne mogą być tworzone automatycznie lub ładowane z prerenderowanych obrazów przy użyciu rolety Reflect/Refract Parameters. Stosowanie automatycznych map sześciennych jest prostsze, ale rendering trwa wtedy o wiele dłużej. Jeśli wskażesz opcję Automatic, możesz wybrać renderowanie jedynie pierwszej klatki (Render the First Frame Only) lub też klatek według określonego interwału (Every Nth Frame). Jeśli wybierzesz opcję załadowania z pliku (From File), możesz wykorzystać sześć przycisków do załadowania map sześciennych dla każdego kierunku rzutowania. W rolecie Reflect/Refract Parameters możesz również określić ustawienia rozmycia (Blur) i zasięg efektów atmosferycznych (Atmospheric Ranges).

Mapa załamania w cienkiej płytce (Thin Wall Refraction) Mapa Thin Wall Refraction symuluje efekt przesunięcia obrazu przy przejściu światła przez kawałek szkła. Ten sam wynik można osiągnąć, stosując mapę Reflect/Refract, ale mapa Wall Refraction robi to o wiele szybciej. Roleta Thin Wall Refraction Parameters zawiera opcje ustawienia rozmycia (Blur), wskazania klatek do renderowania i określenia wartości załamania (Refraction). Parametr Thickness Offset ustala rozmiar przesunięcia i może przyjąć wartość od 0 do 10. Wartość Bump Map Effect uzależnia załamanie od mapy nierówności obecnej w materiale nadrzędnym.

Ćwiczenie: Tworzenie efektu szkła powiększającego Istotną cechą szkła, poza odbijaniem promieni światła, jest ich załamywanie. Może ono prowadzić do powiększenia przedmiotów przy grubym szkle (np. kiedy patrzysz na drugi koniec pokoju przez szklankę wody). Za pomocą mapy Thin Wall Refraction możesz symulować efekt szkła powiększającego. Aby uzyskać efekt szkła powiększającego, wykonaj następujące czynności. 1. Otwórz plik Magnifying glass.max z folderu Chap 17 na płycie dołączonej do książki. Plik ten zawiera prostą kulę z nałożoną mapą marmuru Perlino i szkłem powiększającym wymodelowanym z obiektów parametrycznych. 2. Wybierz polecenie Rendering/Material Editor/Slate Material Editor (lub naciśnij klawisz M), aby otworzyć edytor materiałów. 3. W panelu Material/Map Browser znajdź i kliknij dwukrotnie mapę Thin Wall Refraction, aby utworzyć jej węzeł. Przeciągnij gniazdo wyjściowe tego węzła w pusty obszar panelu z widokiem węzłów i z menu, które się otworzy, wybierz opcję Materials/Standard, a następnie z menu parametrów wybierz Refraction. Powstanie nowy węzeł materiału standardowego, którego gniazdo Refraction będzie połączone z mapą Thin Wall Refraction. 4. Kliknij dwukrotnie węzeł mapy, aby wyświetlić jej właściwości w edytorze parametrów. W rolecie Thin Wall Refraction Parameters zwiększ wartość parametru Thickness Offset do 10, aby uzyskać silniejszy efekt powiększenia.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

569

5. Przeciągnij gniazdo wyjściowe węzła materiału na obiekt szkła powiększającego w oknie widokowym, aby nałożyć go na tenże obiekt. Na rysunku 17.34 przedstawiono wynik zrenderowania sceny. Zauważ, iż tekstura w obrębie lupy sprawia wrażenie powiększonej2. Rysunek 17.34. Mapa Thin Wall Refraction nałożona na szkło powiększające

Używanie rolety Maps Skoro poznałeś już różne rodzaje map, ponownie zajrzymy do rolety Maps (przedstawionej już częściowo w rozdziale 16.), widocznej na rysunku 17.35, i dokładniej przyjrzymy się jej możliwościom. Przy użyciu rolety Maps przypisujesz mapy do rozmaitych kanałów mapowania materiału. Aby zdefiniować mapy dla danego kanału, kliknij odpowiedni przycisk w kolumnie Map; otworzy się przeglądarka materiałów i map, gdzie możesz wybrać mapę, której chcesz użyć. Za pomocą spinera Amount możesz ustawić intensywność mapy, dostępna jest również opcja włączania i wyłączania mapy. Przykładowo biały materiał z czerwoną mapą koloru Diffuse ustawioną na 50% intensywności będzie różowy. Liczba i rodzaj map dostępnych w rolecie Maps zależy od typu materiału i używanego shadera. Materiały typu raytrace mają o wiele więcej dostępnych map niż materiały standardowe. Najważniejsze z typowych kanałów mapowania, które znajdziesz w rolecie Maps, są omówione w tabeli 17.1. 2

Tak naprawdę uzyskany efekt jest tylko rezultatem przesunięcia promieni światła przechodzących przez płytkę równoległościenną i wcale nie następuje tutaj powiększenie obrazu — przyp. tłum.

570

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.35. Na rolecie Maps można wyłączać lub włączać mapy

Tabela 17.1. Mapowane właściwości materiałów Właściwość materiału

Opis

Kolor światła otaczającego Zastępuje kolor Ambient materiału bazowego. Możesz użyć tej opcji, by obszar (Ambient Color) cienia był zdefiniowany za pomocą mapy. Mapowanie koloru światła rozproszonego (omówione poniżej) może również mieć wpływ na mapowanie koloru otoczenia. Przycisk blokujący, znajdujący się w rolecie Maps, pozwala sprzęgnąć te dwa kanały mapowania. Kolor światła rozpraszanego (Diffuse Color)

Zastępuje kolor Diffuse materiału bazowego. Jest to najistotniejszy składnik koloru obiektu. Po wybraniu mapy, takiej jak drewno, obiekt wydaje się być zrobiony z drewna. Jak zostało to już powiedziane wyżej, mapowanie kanału Diffuse może mieć wpływ na mapowanie koloru Ambient (gdy włączony jest przycisk sprzęgający).

Poziom rozpraszania światła (Diffuse Level)

Zmienia poziom światła rozpraszanego od zera (tam, gdzie mapa jest czarna) do wartości maksymalnej (biel na mapie). Mapowanie to jest dostępne tylko dla shaderów Anisotropic, Oren-Nayar-Blinn i Multi-Level.

Szorstkość rozpraszająca (Diffuse Roughness)

Ustala wartość szorstkości materiału od zera (tam, gdzie mapa jest czarna) do wartości maksymalnej (biel na mapie). Mapowanie to jest dostępne tylko dla shaderów Oren-Nayar-Blinn i Multi-Layer.

Kolor odblasku (Specular Color)

Zastępuje kolor odblasku materiału bazowego. Opcja ta pozwala na włączenie innego koloru lub obrazu w miejsce standardowego koloru odblasku. Różni się ona od mapowania poziomu odblasków (Specular Level) i mapowania połyskliwości (Glossiness), które również wpływają na wygląd odblasków.

Poziom odblasku (Specular Level)

Reguluje natężenie odblasku od wartości 0 (czerń na mapie) do wartości 1 (biel na mapie). Dla najlepszych rezultatów stosuj to mapowanie razem z mapowaniem połyskliwości.

Połyskliwość (Glossiness)

Określa miejsca pojawiania się odblasków. Możesz użyć tej opcji do postarzania obiektów poprzez przyciemnianie niektórych obszarów mapy. Czarne obszary na mapie pokazują miejsca matowe, a białe — miejsca z maksymalną wartością połysku.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

571

Tabela 17.1. Mapowane właściwości materiałów — ciąg dalszy Właściwość materiału

Opis

Samoświecenie (Self-Illumination)

Daje efekt żarzenia się niektórych obszarów obiektu, dzięki temu nie są one podatne na efekty świetlne (np. odbłyski lub cienie). Czarne obszary przedstawiają miejsca, które nie świecą; białe — miejsca pełnego świecenia obiektu.

Krycie (Opacity)

Określa, które obszary obiektu są widoczne, a które są przezroczyste. Czarne obszary mapy to miejsca przezroczyste, białe — nieprzezroczyste. Mapowanie to działa w połączeniu z wartością Opacity dostępną w rolecie Basic Parameters. Obszary przezroczyste, jeśli nawet są doskonale przejrzyste, mogą mieć przypisywane odblaski.

Kolor filtra (Filter Color) Nadaje barwę obszarom przezroczystym, aby tworzyć materiały, takie jak różnobarwne szkło. Białe światło przechodzące przez obiekt korzystający z tego rodzaju mapowania przybiera barwę filtra. Anizotropia (Anisotropy) Pozwala kontrolować kształt odblasków anizotropowych. Opcja ta dostępna jest jedynie dla shaderów anizotropowego (Anisotropic) i wielowarstwowego (Multi-Layer). Orientacja (Orientation)

Pomaga ustawić pozycję odblasków anizotropowych. Są one eliptyczne, a to mapowanie może ustawić je pod odpowiednim kątem. Mapowanie orientacji jest dostępne jedynie dla shaderów anizotropowego (Anisotropic) i wielowarstwowego (Multi-Layer).

Metaliczność (Metalness) Kontroluje metaliczność danego obszaru. Określa wartość metaliczności od zera (czerń na mapie) do wartości maksymalnej (biel na mapie). Mapowanie to jest dostępne jedynie dla shadera Strauss. Nierówność (Bump)

Wykorzystuje tonalność bitmapy do uwypuklenia lub wgniecenia powierzchni obiektu. Jasne obszary mapy są uwypuklane, a ciemniejsze — wklęsłe. Chociaż wydaje się, że mapowanie nierówności zmienia geometrię obiektu, nie ma ono żadnego wpływu na geometryczną strukturę powierzchni modelu.

Odbicie (Reflection)

Odbija obrazy od powierzchni obiektu na podobieństwo lustra. Trzy rodzaje odbić to Basic (podstawowe), Automatic (automatyczne) i Flat Mirror (płaskie lustro). Podstawowe mapowanie odbicia symuluje odbicie otoczenia obiektu. Odbicie automatyczne rzutuje mapę na zewnątrz ze środka obiektu. Płaskie lustro odbija lustrzany obraz sceny od grupy współpłaszczyznowych ścianek. Mapowanie odbicia nie wymaga stosowania współrzędnych mapowania, ponieważ są one oparte na współrzędnych globalnych, a nie obiektu. Dlatego też mapa ta zmienia się wraz z przesunięciem obiektu na wzór zmieniających się odbić lustrzanych w świecie rzeczywistym.

Załamanie (Refraction)

Imituje załamanie światła i wyświetla obrazy poprzez przezroczysty obiekt w podobny sposób, w jaki widzisz pokój przez szklankę wody. Nasilenie tego efektu jest regulowane przez wartość współczynnika załamania światła (Index of Refraction). Wartość ta jest określana w rolecie Extended Parameters materiału macierzystego.

Przemieszczenie (Displacement)

Zmienia geometrię obiektu inaczej. Białe obszary mapy są wypychane na zewnątrz, a czarne są wpychane do środka. Wielkość przemieszczenia oparta jest o procentową część przekątnej sześcianu ograniczającego obiekt. Mapowanie odkształceń nie jest widoczne w oknach widokowych, chyba że zastosowane zostały modyfikatory odkształceń Displace NURBS (dla obiektów NURBS) lub Displace Mesh (dla obiektów Editable Mesh).

572

Część IV  Materiały, kamery i oświetlenie

Ćwiczenie: Realistyczne postarzanie obiektów Nie wiem, czy Twoja skrzynka narzędziowa nosi tyle śladów używania, co moja — to chyba wina wrogiego środowiska, w którym zawsze się znajduje (albo rzeczy, które zrzucam do niej i na nią). Wyrenderowanie skrzynki narzędziowej z ładnymi odblaskami po prostu nie przystoi. To ćwiczenie pokazuje, jak realistycznie zmienić wygląd obiektu, tak aby wydawał się stary i zniszczony. Aby dodać mapy postarzające obiekt, wykonaj następujące czynności. 1. Otwórz plik Toolbox.max z folderu Chap 17 na płycie dołączonej do książki. Plik ten zawiera prosty model skrzynki narzędziowej utworzony przy użyciu wytłoczonych splajnów. 2. Wciśnij klawisz M, aby otworzyć rozszerzony edytor materiałów, i w panelu Material/Map Browser kliknij dwukrotnie materiał Standard. Z rozwijanej listy w rolecie Shader Basic Parameters wybierz shader Metal. W rolecie Metal Basic Parameters ustaw kolor Diffuse jako ładną, lśniącą czerwień i zwiększ wartość parametru Specular Level do 97, a Glossiness do 59. Nadaj materiałowi nazwę Toolbox (skrzynka narzędziowa). 3. W rolecie Maps przeglądarki materiałów i map kliknij dwukrotnie pozycję Splat, a następnie połącz jej węzeł z gniazdem parametru Glossiness. W rolecie Splat Parameters ustaw wartość Size na 100 i zmień Color #1 na rdzawy, a Color #2 na biały. 4. W przeglądarce materiałów i map dwukrotnie kliknij mapę Dent i połącz jej węzeł z gniazdem parametru Bump. Kliknij dwukrotnie węzeł mapy Dent i w rolecie Dent Parameters ustaw wartość Size na 200, Color #1 jako czarny, a Color #2 jako biały. 5. Utwórz jeszcze jeden węzeł materiału standardowego i nazwij go Hinge (zawias). Wybierz dla tego materiału shader Metal z rolety Shader Basic Parameters i zwiększ poziom Specular Level w rolecie Metal Basic Parameters do wartości 26, a opcję Glossiness do wartości 71. Zmień również kolor Diffuse na jasnoszary. Kliknij przycisk mapy obok wartości Glossiness, po czym kliknij dwukrotnie mapę Noise w przeglądarce materiałów i map. W rolecie Noise Parameters ustaw mapę szumu jako Fractal o wartości Size równej 10. 6. Przeciągnij materiał Toolbox na obiekt skrzynki narzędziowej, a materiał Hinge na zawias i rączkę. Mapowania nierówności i połysku są widoczne dopiero po wyrenderowaniu sceny. Aby zobaczyć rezultaty ustawień materiałów, wybierz polecenie Rendering/Render i kliknij przycisk Render.

Na rysunku 17.36 widoczna jest dość przyniszczona skrzynka narzędziowa.

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

573

Rysunek 17.36. Ta skrzynka narzędziowa ma swoje lata dzięki mapowaniu połysku i nierówności

Używanie edytora ścieżek dostępu do map Po umieszczeniu wszystkich map w różnych kanałach materiału pogubienie się w lokalizacji poszczególnych plików może naprawdę utrudnić życie. Na szczęście, Max ma narzędzie, które pomaga odszukać brakujące mapy i pozwala na szybką edycję ścieżek dostępu do plików tak, by szybko i łatwo można było uzyskać dostęp do potrzebnych zasobów. Mowa tu o oknie Bitmap/Photometric Path Editor, dostępnym z poziomu panelu Utilities. Aby je otworzyć, kliknij w tym panelu przycisk More i wybierz nazwę tego okna z listy. To narzędzie jest stosowane zarówno dla bitmap, jak i dla świateł fotometrycznych. O tych ostatnich dowiesz się więcej, czytając rozdział 20., „Podstawowe techniki oświetlania sceny”.

W rolecie Path Editor znajdziesz przycisk Edit Resources, który daje dostęp do okna edytora ścieżek dostępu, widocznego na rysunku 17.37. Roleta zawiera także dwie opcje służące do wyświetlania ścieżek dostępu do bitmap zastosowanych w obrębie edytora materiałów (Include Material Editor) i w bieżącej bibliotece materiałów (Include Material Library). Przycisk Close zamyka roletę. Przycisk Info w oknie edytora ścieżek wyświetla informacje o wszystkich obiektach wykorzystujących wybraną mapę. Przycisk Copy Files otwiera okno dialogowe — możesz w nim wybrać miejsce, do którego zostanie skopiowana wybrana mapa. Opcja Select Missing Files wybiera z listy wszystkie mapy, których w danej chwili nie można zlokalizować na dysku. Przycisk Find Files wyświetla liczbę map, które można zlokalizować, i liczbę map brakujących. Opcje Strip Selected Paths i Strip All Paths usuwają informację o ścieżce, pozostawiając jedynie nazwę mapy. Pole New Path pozwala na wprowadzenie informacji o ścieżce, jaka zostanie przypisana zaznaczonym mapom. Przycisk

574

Część IV  Materiały, kamery i oświetlenie

Rysunek 17.37. Okno edytora ścieżek pozwala na zmianę ścieżek dostępu do map

z wielokropkiem po prawej stronie pola New Path umożliwia określenie ścieżki dostępu na dysku, a przycisk Set Path przypisuje wybraną w polu New Path ścieżkę zaznaczonym mapom.

Używanie klonów map Używanie tej samej bitmapy dla wielu różnych kanałów mapy jest częstym rozwiązaniem. Możesz np. używać tej samej bitmapy dla kanałów mapowania koloru i nierówności. Jeśli scena wykorzystuje powtarzające się bitmapy, objętość zasobów może wzrosnąć, a zastąpienie danej bitmapy w trakcie wprowadzania globalnych zmian może stać się niewygodne. Temu potencjalnemu problemowi można łatwo zaradzić, tworząc klon (Instance) mapy zamiast kopii (Copy). Jeśli chcesz zmienić wcześniej utworzony plik Maksa, możesz użyć narzędzia Instance Duplicate Maps, aby znaleźć wszystkie podobne mapy i automatycznie zamienić je w klony. Narzędzie to znajdziesz w menu Utilities edytora materiałów lub też w panelu Utilities. Oba polecenia otwierają to samo okno dialogowe, widoczne na rysunku 17.38. Za jego pomocą możesz wybrać mapy, które mają stać się klonami, lub też kliknąć Instance All, aby masowo zamienić wszystkie znalezione mapy w klony. Rysunek 17.38. Okno dialogowe Instance Duplicate Maps pozwala skonsolidować mapy w klony jednego pliku

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

575

Używanie narzędzi zewnętrznych Do tworzenia tekstur przydatne są narzędzia, których nie znajdziesz w Maksie. Należą do nich m.in. pakiet graficzny Photoshop, aparat lub kamera cyfrowa i skaner. Przy ich użyciu możesz tworzyć lub rejestrować obrazy, które potem będziesz mógł zastosować w materiałach jako mapy, korzystając z kanałów mapowania. Po utworzeniu bądź zarejestrowaniu obrazu możesz go zastosować w materiale, klikając przycisk skrótu mapy lub wybierając mapę w rolecie Maps. Powoduje to otwarcie Material/Map Browser, w którym należy wskazać typ mapy Bitmap i załadować plik obrazu, wybrany w oknie dialogowym, jakie zostanie wyświetlone.

Tworzenie tekstur materiałów przy użyciu programu Photoshop Jeśli zdecydujesz się na samodzielne tworzenie tekstur, Photoshop jest najlepszym wyborem. Przy użyciu filtrów znajdujących się w tym programie możesz bardzo szybko utworzyć olbrzymi zbiór tekstur, które dodadzą życia Twoim scenom i spowodują, że staną się bardziej realne. Tabela 17.2 to zestaw gotowych przepisów na otrzymanie popularnych tekstur przy użyciu programu Photoshop. Znajdziesz w niej jedynie kilka prostych przykładów. Photoshop oferuje o wiele więcej możliwości i opcji. Tabela 17.2. Przepisy na tekstury w programie Photoshop Tekstura

Technika

Tworzenie w programie Photoshop

Zastosowanie w 3ds Max

Zanikający kolor

Zmniejsz wartość nasycenia obrazu (Image/Adjustments/Hue/Saturation) o 20 – 30%.

Mapy typu Diffuse

Zadrapania powierzchni

Zastosuj filtr Chalk & Charcoal (Filter/Sketch/Chalk & Charcoal) z ustawieniem Stroke Pressure równym 2 na pustym, białym tle, następnie filtr Film Grain (Filter/ Artistic/Film Grain) z maksymalnymi ustawieniami Grain i Intensity.

Mapy typu Bump

Zabrudzenie tkaniny

Użyj narzędzi Dodge i Burn, aby dodać zabrudzenia na bitmapie tkaniny.

Mapy typu Diffuse

Tekstura reliefu na płaszczyźnie

Zastosuj filtr Dark Strokes (Filter/Brush Strokes/Dark Strokes) na bitmapie tekstury i zapisz obraz.

Pierwotna mapa koloru Diffuse potraktowana Dark Strokes może posłużyć jako mapa nierówności (Bump)

576

Część IV  Materiały, kamery i oświetlenie

Tabela 17.2. Przepisy na tekstury w programie Photoshop — ciąg dalszy Tekstura

Technika

Tworzenie w programie Photoshop

Zastosowanie w 3ds Max

Włosy na płaszczyźnie

Zastosuj filtr Fibers (Filter/Render/Fibers).

Mapy typu Diffuse, Bump i Specular

Chmury lub mgła jako tło

Zastosuj filtr Clouds (Filter/Render/Clouds)

Mapy typu Diffuse

Mgławica lub chmura Zastosuj filtr Difference Clouds plazmowa (Filter/Render/Difference Clouds). Następnie zamień miejscami kolory (czarny z białym) i zastosuj filtr po raz drugi.

Mapy typu Diffuse

Kamienna ściana

Zastosuj filtr Clouds (Filter/ Render/Clouds), a potem filtr Bas Relief (Filter/Sketch/Bas Relief).

Mapy typu Diffuse i Bump

Juta

Zastosuj filtr Add Noise (Filter/Noise/ Add Noise), następnie filtr Texturizer (Filter/Texture/Texturizer) z ustawieniem Burlap.

Mapy typu Diffuse i Bump

Kafelki

Zastosuj filtr Add Noise (Filter/ Noise/Add Noise), następnie filtr Stained Glass (Filter/Texture/ Stained Glass).

Mapy typu Diffuse

Szczotkowany metal

Zastosuj filtr Add Noise (Filter/ Noise/Add Noise), następnie filtr Angled Strokes (Filter/Brush Strokes/ Angled Strokes).

Mapy typu Diffuse

Zamrożone szkło

Zastosuj filtr Clouds (Filter/Render/ Mapy typu Diffuse Clouds), następnie filtr Glass (Filter/ Distort/Glass) i wybierz opcję Frosted.

Pumeks

Zastosuj filtr Add Noise (Filter/Noise/ Add Noise), następnie filtr Chalk & Charcoal (Filter/Sketch/Chalk & Charcoal).

Mapy typu Diffuse i Bump

Wyspy na planecie

Zastosuj filtr Difference Clouds (Filter/Render/Difference Clouds), następnie filtr Note Paper (Filter/Sketch/Note Paper).

Mapy typu Diffuse i Shininess

Siatka

Zastosuj filtr Mosaic Tiles (Filter/ Texture Mosaic Tiles), następnie filtr Stamp (Filter/Sketch/Stamp).

Mapy typu Diffuse i Opacity

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

577

Tabela 17.2. Przepisy na tekstury w programie Photoshop — ciąg dalszy Tekstura

Technika

Tworzenie w programie Photoshop

Zastosowanie w 3ds Max

Skóra geparda

Zastosuj filtr Grain (Filter/Texture/ Grain) z opcją Clumped, następnie dwukrotnie filtr Poster Edges (Filter/ Artistic/Poster Edges).

Mapy typu Diffuse i Opacity

Rejestrowanie obrazów cyfrowych Aparaty i kamery cyfrowe są na tyle tanie, że stały się bardzo przydatnymi narzędziami przy tworzeniu tekstur materiałów. Chociaż program Photoshop może zostać wykorzystany do utworzenia wielu wyjątkowych i interesujących tekstur, cyfrowe zdjęcie kamieni na dnie rzeki jest o wiele bardziej realistyczne niż cokolwiek, co będziemy w stanie wygenerować w tym programie. Świat jest pełen ciekawych tekstur, które możesz wykorzystać przy tworzeniu trójwymiarowych obrazów.

Unikanie odblasków Nic nie psuje dobrej tekstury uchwyconej za pomocą cyfrowego aparatu tak łatwo jak błysk flesza. Fotografowanie powierzchni o dużym stopniu odbijania światła (np. gładkiej powierzchni stołu) może spowodować odbicie flesza na zdjęciu, co psuje teksturę. Możesz temu zapobiec na kilka sposobów. Najprościej zablokować lampę błyskową i upewnić się, że masz wystarczająco mocne oświetlenie z otoczenia fotografowanego obiektu, by odpowiednio uchwycić teksturę. Zdjęcia robione w plenerze zazwyczaj nie wymagają lampy błyskowej, więc możesz wykorzystać ten fakt przy wykonywaniu ich na potrzeby tekstur. Kolejną techniką jest robienie zdjęć pod kątem, ale może to spowodować zniekształcenie tekstury. Możesz również zrobić zdjęcie i ręcznie wyciąć niepożądane odblaski. Zdjęcia plenerowe, które mają służyć jako tekstury, najlepiej robić w dzień pochmurny. W takich warunkach nie występują trudne do wyeliminowania ostre cienie. Oświetlenie jest wtedy równomierne, dzięki czemu układanie mozaiki z takiego zdjęcia staje się łatwiejsze.

Ustawianie jasności Zdjęcia cyfrowe robione za pomocą aparatu cyfrowego zazwyczaj zawierają pewną informację o świetle — tym, które oświetlało daną powierzchnię w trakcie jej fotografowania. Kiedy są dodawane do sceny zawierającej światła, światło na teksturach sumuje się ze światłem ze sceny i zazwyczaj powoduje to, że obraz wynikowy staje się wyblakły. Możesz temu zapobiec, zmniejszając jasność obrazu przed załadowaniem go do sceny. Dla zdjęć zrobionych we wnętrzu przy normalnym oświetleniu będziesz musiał zmniejszyć jasność o 10 do 20%. Zdjęcia zrobione w plenerze, przy pełnym świetle słonecznym, zazwyczaj wymagają jeszcze większej redukcji jasności.

578

Część IV  Materiały, kamery i oświetlenie

W programie Photoshop ustawienia jasności obrazu możesz modyfikować narzędziem Image/Adjustments/Brightness/Contrast.

Skanowanie obrazów Nie musisz ograniczać się do robienia zdjęć aparatem cyfrowym — możesz również skanować obrazy z innych źródeł. Przykładowo liść klonu, modelowany przy użyciu łat w rozdziale 13., „Modelowanie na poziomie wielokątów”, jest skanem prawdziwego liścia, znalezionego w moim ogródku. Podczas skanowania obrazów włączaj w skanerze opcję odrastrowania (descreen), aby usunąć efekty ditheringu z drukowanego obrazu. Jeśli umieścisz obraz na czarnym, matowym kartonie, światło lampy skanera uzyskuje bardziej równomierny rozkład. Większość obrazów w prasie i książkach jest chroniona prawami autorskimi i nie może być skanowana oraz wykorzystywana bez pozwolenia.

Ćwiczenie: Tworzenie siatki na ryby W niektórych przypadkach modelowanie jest prostsze, jeśli zastosujemy odpowiedni materiał, zamiast zmieniać geometrię. Dobrym przykładem jest siatka na ryby. Wykorzystanie geometrii do tworzenia otworów w sieci byłoby dość skomplikowane, ale prosta mapa krycia (Opacity) znacznie ułatwia zadanie. Aby utworzyć siatkę na ryby, wykonaj następujące czynności. 1. Przed rozpoczęciem pracy w Maksie utwórz teksturę w Photoshopie. Wybierz File/New, wpisz rozmiary 512512 pikseli w oknie dialogowym New i kliknij OK, aby powstał nowy plik obrazu. 2. Wybierz z menu Filter/Texture/Mosaic Tiles, aby zastosować filtr Mosaic Tiles. Ustaw wartość Tile Size na 30, a Grout Width na 3, po czym kliknij przycisk OK. Następnie wybierz polecenie Filter/Sketch/Stamp, aby skorzystać z filtra Stamp z ustawieniem Light/Dark Balance równym 49 oraz Smooth równym 50. 3. Wybierz z menu File/Save As i zapisz obraz jako Netting.tif (siatka). Kopię tego pliku znajdziesz w folderze Chap 17 na płycie dołączonej do książki. 4. Otwórz plik Fish net.max z folderu Chap 17 na płycie dołączonej do książki. Plik ten zawiera model siatki na ryby utworzonej przez rozciągnięcie połowy sfery z nałożonym modyfikatorem Shell. 5. Wybierz z menu Rendering/Material Editor/Slate Material Editor (lub wciśnij klawisz M), aby wywołać okno Material Editor, i w panelu przeglądarki materiałów i map kliknij dwukrotnie materiał Standard. Nadaj materiałowi nazwę net (sieć). 6. W przeglądarce materiałów i map kliknij dwukrotnie mapę Bitmap. Spowoduje to wyświetlenie okna dialogowego, w którym możesz wybrać teksturę do nałożenia na sieć — odszukaj i wybierz plik Netting.tif. Po załadowaniu obrazka przeciągnij

Rozdział 17.  Określanie właściwości materiałów przy użyciu map

579

gniazdo wyjściowe mapy Bitmap na gniazdo wejściowe parametru Opacity w węźle materiału. Następnie przeciągnij gniazdo wyjściowe materiału na siatkę w oknie widokowym. 7. Jeśli przeprowadziłbyś rendering okna widokowego, siatka wyglądałaby dość dziwnie, ponieważ przezroczyste byłyby czarne linie, a nie białe pola. Aby to naprawić, kliknij dwukrotnie węzeł Bitmap, otwórz roletę Output i włącz opcję Invert. To spowoduje odwrócenie obrazu tekstury. Mimo włączenia przycisku Show Map in Viewport w edytorze materiałów, obszary przezroczyste ujawnią się dopiero po zrenderowaniu sceny.

Na rysunku 17.39 pokazano wyrenderowaną siatkę. Rysunek 17.39. Siatka na ryby zrobiona w bardzo prosty sposób przy użyciu tekstury siatki zastosowanej jako mapa parametru Opacity

Podsumowanie W tym rozdziale otrzymałeś mnóstwo nowych informacji, ponieważ Max zawiera bardzo wiele różnych map. Gdy nauczysz się ich używać, zmieni się sposób, w jaki pracujesz nad realizmem materiałów. W rozdziale tym miałeś okazję poznać: 

sposób łączenia węzłów map z węzłami materiałów;



wszystkie rodzaje map w kilku różnych kategoriach, wliczając w to mapy 2D, 3D, mapy złożone, modyfikatory kolorów i mapy odbicia (załamania);



różnorakie kanały mapowania dostępne w rolecie Maps;

580

Część IV  Materiały, kamery i oświetlenie 

edytor ścieżek, który służy do zmieniania ścieżek dostępu do map;



narzędzia zamiany duplikatów map w klony;



techniki tworzenia materiałów przy użyciu narzędzi, takich jak Photoshop i aparat cyfrowy.

Liczba materiałów, jakie można utworzyć przez łączenie w rozmaitych kombinacjach parametrów materiałów z mapami, jest nieograniczona, ale Max nie poprzestaje na tym i oferuje nam dodatkowe możliwości. W następnym rozdziale dowiesz się o materiałach złożonych i modyfikatorach materiałów.

Rozdział 18.

Materiały złożone i modyfikatory materiałów W tym rozdziale: 

Tworzenie i stosowanie materiałów złożonych



Wykorzystanie identyfikatorów do nakładania wielu materiałów



Stosowanie modyfikatorów materiałów



Deformowanie powierzchni za pomocą bitmapy

Skoro nauczyłeś się już tworzyć materiały w oparciu o typ Standard, czas poznać różnorodność materiałów, jakie można kreować w programie 3ds Max. Dostęp do nich uzyskasz w przeglądarce materiałów i map. Otworzy się ona automatycznie po wybraniu polecenia Rendering/Material/Map Browser. Chociaż wiele tych materiałów określono jako złożone, naprawdę są to zestawy materiałów funkcjonujące jako jeden. Tak samo jak obiekt siatkowy może składać się z wielu podobiektów, materiały również mogą mieć wiele podmateriałów. Posługując się identyfikatorami materiałów, można przypisywać różne materiały poszczególnym elementom struktury danego obiektu. Pod koniec rozdziału poznasz kilka modyfikatorów, którymi można działać na materiały.

Używanie materiałów złożonych (Compound Materials) Materiały złożone łączą kilka różnych materiałów w jeden. Wyboru takiego materiału dokonujemy w zwykły sposób, klikając dwukrotnie jego nazwę w panelu Material/Map Browser. Większość pozycji widocznych w tym panelu to materiały złożone.

582

Część IV  Materiały, kamery i oświetlenie

Materiały złożone zazwyczaj mają kilka poziomów. Przykładowo materiał typu Top/Bottom zawiera osobne materiały dla góry i dołu obiektu. Każdy z tych podmateriałów może zawierać w sobie inny materiał typu Top/Bottom itd. Połączenia między wszystkimi składnikami takiego materiału są dobrze widoczne w panelu z widokiem węzłów. Każdy materiał złożony zawiera własną roletę w edytorze parametrów, w której można określić podmateriały będące jego składowymi. Niektóre rodzaje materiałów ściśle współpracują z określonymi obiektami i rozmaitymi funkcjami Maksa. Są one opisane dokładniej w odpowiednich rozdziałach. Przykładowo materiały typu Advanced Lighting Override i Lightscape prezentowane są w rozdziale 45., „Zaawansowane oświetlanie, śledzenie światła i metoda energetyczna”, materiały typu raytracing i mental ray — w rozdziale 47., „Renderery mental ray i iray”, a materiały typu XRef — w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Materiał mieszany (Blend) Materiał mieszany łączy na jednej powierzchni dwa różne materiały. Roleta Blend Basic Parameters, widoczna na rysunku 18.1, zawiera przyciski pozwalające wczytać dwa podmateriały. Pola wyboru znajdujące się na prawo od tych przycisków pozwalają na włączanie i wyłączanie tych podmateriałów. Opcja Interactive umożliwia wybranie jednego z tych materiałów do podglądu w oknach widokowych. Rysunek 18.1. Materiał mieszany może zawierać maskę określającą obszary, w których podmateriały mają być mieszane

Przycisk Mask (widoczny poniżej przycisków ładowania podmateriałów) pozwala wczytać mapę, która określi sposób mieszania podmateriałów. Szare obszary mapy spowodują zmieszanie obu materiałów, czarne pokażą materiał oznaczony jako Material 1, a białe —

Rozdział 18.  Materiały złożone i modyfikatory materiałów

583

Material 2. Alternatywnym rozwiązaniem wobec maskowania jest wartość Mix Amount, która określa, ile zobaczymy każdego z podmateriałów. Wartość równa 0 pokazuje jedynie materiał zdefiniowany jako Material 1, a wartość 100 — jedynie materiał zdefiniowany jako Material 2. Parametr ten może być animowany, co umożliwia płynną zmianę materiału na obiekcie. Gdy mieszanie materiałów jest sterowane mapą, krzywa mieszania (Mixing Curve) określa przejście pomiędzy krawędziami tych materiałów. Wartości Upper i Lower pozwalają na jej precyzyjne ustawienie.

Materiał kompozytowy (Composite) Materiał kompozytowy umożliwia mieszanie do dziesięciu różnych materiałów poprzez dodawanie, odejmowanie lub mieszanie nieprzezroczystości. Roleta Composite Basic Parameters, pokazana na rysunku 18.2, zawiera przyciski umożliwiające określenie materiału podstawowego i dziewięciu dodatkowych materiałów, które zostaną na niego nałożone. Materiały są nakładane w kolejności zgodnej z ich numeracją. Rysunek 18.2. Materiały kompozytowe są nakładane w kolejności ich numeracji, przyczym ostatnia warstwa umieszczana jest na samej górze

Możesz włączyć lub wyłączyć każdy z materiałów, używając pola wyboru po lewej. Przyciski oznaczone literami A, S i M określają typ kompozycji: Additive, Subtractive lub Mix. Opcja Additive rozjaśnia materiał przez dodanie kolorów tła do aktualnego materiału. Opcja Subtractive działa w przeciwny sposób, odejmując kolory tła od aktualnego materiału. Opcja Mix miesza materiały w oparciu o wartości współczynnika Amount. Na prawo od przycisków A, S i M znajdziesz pole współczynnika mieszania. Może on przybierać wartości od 0 do 200. Przy wartości 0 żaden z materiałów znajdujących się

584

Część IV  Materiały, kamery i oświetlenie

poniżej nie będzie widoczny. Przy wartości 100 następuje pełne mieszanie. Wartości większe od 100 powodują zwiększanie krycia obszarów przezroczystych1. Więcej o komponowaniu za pomocą narzędzia Video Post znajdziesz w rozdziale 49., „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”.

Materiał dwustronny (Double Sided) Materiał dwustronny pozwala wybrać dwa różne materiały dla przodu i tyłu ścianek obiektu. Możesz również sprawić, że materiał stanie się półprzezroczysty. Tego typu materiał przydaje się przy obiektach z otworami. Zazwyczaj takie obiekty nie są wyświetlane poprawnie, ponieważ widoczne są tylko płaszczyzny z normalnymi skierowanymi na zewnątrz. Nałożenie dwustronnego materiału rozwiązuje problem, bo widoczne stają się zarówno powierzchnie wewnętrzne, jak zewnętrzne. Roleta Double Sided Basic Parameters zawiera dwa przyciski, jeden dla określenia materiału pokazywanego z przodu (Facing), a drugi dla określenia materiału pokazywanego z tyłu (Back). Wartość prześwitywania (Translucency) pozwala ustalić, ile jednego materiału widzimy przez drugi.

Materiał wieloraki (Multi/Sub-Object) Materiału Multi/Sub-Object możesz użyć, aby przypisać kilka różnych materiałów do jednego obiektu za pomocą identyfikatorów materiału (material ID). Wybranie obszarów podobiektów, którym zostaną przypisane różne materiały, umożliwią Ci modyfikatory Mesh Select i Poly Select. U góry rolety Multi/Sub-Object Basic Parameters, pokazanej na rysunku 18.3, znajduje się przycisk Set Number, który pozwala ustalić liczbę materiałów wykorzystywaną dla podobiektów. Wartość ta jest wyświetlana w polu tekstowym znajdującym się na lewo od przycisku. Każdy podmateriał wyświetlony jest jako osobny obszar na przykładowym obiekcie w polu próbki. Przy użyciu przycisków Add i Delete możesz wybiórczo dodawać lub usuwać podmateriały z listy. Domyślną liczbę podmateriałów składających się na materiał wieloraki możesz ustalić w oknie z opcjami edytora rozszerzonego (okno otworzysz za pomocą polecenia Options/Preferences). Dostępna tam opcja Empty Sub-Materials Slots (puste gniazda podmateriałów) umożliwia włączenie lub wyłączenie funkcji automatycznego tworzenia węzłów dla wszystkich podmateriałów wraz z głównym węzłem materiału typu Multi Sub-Object.

Każdy podmateriał ma pole z podglądem, numer identyfikacyjny, pole Name, w którym możesz wpisać nazwę podmateriału, przycisk umożliwiający wybranie konkretnego materiału, próbkę koloru pozwalającą określić kolor Diffuse i pole wyboru, które umożliwia wyłączanie i włączanie podmateriału. Możesz porządkować materiały, klikając ich przyciski ID, Name lub Sub-Material u góry każdej kolumny.

1

Wartości większe od 100 są dostępne tylko dla kompozycji addytywnych i subtraktywnych — przyp. tłum.

Rozdział 18.  Materiały złożone i modyfikatory materiałów

585

Rysunek 18.3. Materiał Multi/ Sub-Object przypisuje podmateriały zgodnie z ich identyfikatorami

Po nałożeniu materiału na obiekt przekonwertuj obiekt do postaci Editable Mesh lub Editable Poly albo użyj modyfikatorów Mesh Select lub Poly Select, by zaznaczyć podobiekt. W rolecie Surface properties przypisz zaznaczonemu podobiektowi identyfikator właściwego podmateriału (Material ID) lub wybierz ten podmateriał z rozwijanej listy z nazwami2.

Ćwiczenie: Tworzenie łaciatej narzuty Kiedy myślę o łatach, mam przed oczyma typ obiektów w 3 D Maksie, ale dla wielu ludzi „łaty” (patches) to małe kawałki materiału, które zszyte razem tworzą np. narzutę. Ponieważ jedno pojęcie opisuje dwie rzeczy, możemy spróbować użyć łat Maksa do utworzenia narzuty. Potem możemy wykorzystać materiał złożony, aby nadać łatom różne barwy. Więcej o modelowaniu przy użyciu łat przeczytasz w dodatku F, „Modelowanie przy użyciu łat”.

Aby przy użyciu łat utworzyć narzutę, wykonaj następujące czynności. 1. Otwórz plik Patch quilt.max z folderu Chap 17 znajdującego się na płycie dołączonej do książki. Plik zawiera narzutę utworzoną z obiektów typu łata, które zostały połączone.

2

Autor miał chyba na myśli modyfikatory Edit Mesh i Edit Poly. Jeśli do zaznaczenia podobiektów użyjemy modyfikatorów selekcji (Mesh Select lub Poly Select), to w celu przypisania tym podobiektom stosownego identyfikatora materiału musimy jeszcze zastosować modyfikator Material — przyp. tłum.

586

Część IV  Materiały, kamery i oświetlenie

2. Otwórz okno edytora materiałów, wybierając polecenie Rendering/Material Editor/Slate Material Editor (lub wciskając klawisz M), a następnie kliknij dwukrotnie materiał Multi/Sub-Object w przeglądarce materiałów i map. W panelu z widokiem węzłów pojawi się węzeł materiału Multi/Sub-Object. Kliknij go dwukrotnie, aby w panelu edytora parametrów wyświetlić roletę Multi/Sub-Object Basic Parameters. Kliknij w niej przycisk Set Number i ustaw liczbę podmateriałów na 10. 3. Dla każdego podmateriału utwórz oddzielny węzeł z materiałem typu Standard. Następnie przeciągnij gniazdo wyjściowe każdego z tych podmateriałów (Standard) na odpowiednie gniazdo wejściowe materiału nadrzędnego (Multi/Sub-Object). 4. W rolecie Multi/Sub-Object Basic Parameters klikaj kolejne próbki kolorów znajdujące się na prawo od przycisków Material i z okna Color Selector wybierz różne kolory dla każdego z dziesięciu podmateriałów. 5. Przeciągnij węzeł wyjściowy materiału Multi/Sub-Object na narzutę w oknie widokowym. Zamknij edytor materiałów. 6. W panelu Modify wybierz tryb zaznaczania łat (Patch) i przewiń panel do dołu, tak by zobaczyć roletę Surface Properties. 7. Przypisz każdej łacie osobny identyfikator materiału, klikając po kolei każdą z nich i zmieniając numer ID w odpowiednim polu rolety. Na rysunku 18.4 pokazano gotową narzutę. Ponieważ jest to łata, możesz ją z łatwością układać na innych obiektach.

Rysunek 18.4. Narzuta złożona z łat i pokolorowana przy użyciu materiału typu Multi/Sub-Object

Rozdział 18.  Materiały złożone i modyfikatory materiałów

587

Materiał typu Morpher Materiał typu Morpher działa razem z modyfikatorem Morpher, zmieniając materiał wraz z przemianami obiektu. Przykładowo możesz połączyć efekt rumieńca z jasną czerwienią na policzkach postaci, by pokazać zawstydzenie. Tego materiału możesz użyć jedynie na obiekcie, który ma modyfikator Morpher w swoim stosie modyfikatorów. Modyfikator ten w rolecie Global Parameters zawiera przycisk o nazwie Assign New Material, który służy do umieszczania materiału typu Morpher w edytorze materiałów. Na temat modyfikatora Morpher więcej informacji znajdziesz w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Przycisk Choose Morph Object w rolecie Morpher Basic Parameters pozwala dla materiału typu Morpher wybrać obiekt w oknach widokowych i otworzyć okno dialogowe, w którym możesz przypisać materiał typu Morpher do obiektu z zastosowanym modyfikatorem Morpher. Przycisk Refresh aktualizuje wszystkie kanały. Materiał podstawowy ma pierwszeństwo w zastosowaniu przed wszystkimi efektami kanałów. Materiał typu Morpher ma 100 kanałów, które odpowiadają kanałom zawartym w modyfikatorze Morpher. Każdy możesz włączyć lub wyłączyć. Na dole rolety parametrów znajdują się trzy opcje Mixing Calculation, których możesz użyć, by określić częstotliwość obliczania mieszania. Ustawienie ciągłego obliczania (Always) pochłania bardzo dużo pamięci i może znacznie zwolnić pracę systemu. Inne dostępne opcje to When Rendering (w trakcie renderowania) i Never Calculate (nigdy).

Materiał skorupowy (Shell) Materiał skorupowy składa się z dwóch materiałów: oryginalnego (Original) i wypiekanego (Baked). Dla każdego możesz określić, który jest widoczny w oknie widokowym i który jest renderowany. Więcej na temat materiałów wypiekanych znajdziesz w rozdziale 34., „Tworzenie wypiekanych tekstur i map normalnych”.

Materiał szelakowy (Shellac) Materiał szelakowy jest nakładany na materiał bazowy (Base Material). Roleta Shellac Basic Parameters zawiera tylko dwa przyciski, po jednym dla każdego z tych materiałów, oraz parametr mieszania koloru (Shellac Color Blend) — jego wartość nie ma górnego ograniczenia.

Materiał góra/dół (Top/Bottom) Materiał typu góra/dół przypisuje różne materiały górze i dołowi obiektu. Rejony górny i dolny są określane na podstawie skierowania normalnych ścianki. Mogą one być interpretowane względem lokalnego (Local) lub globalnego (World) układu współrzędnych. Możesz także zmieszać oba materiały (parametr Blend).

588

Część IV  Materiały, kamery i oświetlenie

Roleta Top/Bottom Basic Parameters zawiera dwa przycisku służące do wczytywania materiałów góry i dołu. Jeśli używasz globalnego układu współrzędnych, możesz obracać obiekt bez zmiany pozycji materiału. Współrzędne lokalne przywiązują materiał do obiektu. Parametr Blend może przyjmować wartości od 0 do 100, przy czym 0 oznacza twardą krawędź, a 100 — gładkie przejście. Parametr Position ustala miejsce spotkania materiałów. Wartość 0 oznacza dół obiektu i wyświetla jedynie materiał górny. Wartość 100 oznacza górę obiektu i wyświetla jedynie materiał dolny.

Ćwiczenie: Surfowanie na falach Nie ma nic lepszego, niż rzucenie się na falę z samego rana, chyba że mamy do wyboru rzucenie się na wirtualną falę z samego rana. Jako przykład zastosowania materiału złożonego nałożymy materiał typu góra/dół na deskę surfingową. Aby nałożyć materiał złożony typu góra/dół na deskę surfingową, wykonaj następujące czynności. 1. Otwórz plik Surfboard.max z folderu Chap 18 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model deski surfingowej i nieskończoną płaszczyznę reprezentującą ocean. 2. Gotowy już materiał Ocean Surface nałóż na ocean, przeciągając jego gniazdo wyjściowe na płaszczyznę w oknie widokowym. 3. W przeglądarce materiałów i map kliknij dwukrotnie materiał typu Top/Bottom, aby utworzyć węzeł nowego materiału. 4. Kliknij dwukrotnie węzeł nowego materiału i w edytorze parametrów wpisz nazwę Surfboard (deska surfingowa). Następnie kliknij dwukrotnie węzeł materiału górnego, nazwij go Surfboard Top (góra deski) i zmień kolor Diffuse na biały. Kliknij dwukrotnie węzeł materiału dolnego, nazwij go Surfboard Bottom (dół deski) i zmień kolor Diffuse na czarny. 5. Następnie przeciągnij gniazdo wyjściowe materiału Top/Bottom na obiekt deski surfingowej. Na rysunku 18.5 przedstawiono końcowy rezultat naszego działania.

Nakładanie wielu materiałów Większość skomplikowanych modeli składa się z wielu części, a każda z nich jest wyróżniona przez typ materiału do niej przypisany. Przykładowo model samochodu można podzielić na szyby, opony oraz karoserię i każdej części przypisać odpowiedni materiał.

Rozdział 18.  Materiały złożone i modyfikatory materiałów

589

Rysunek 18.5. Wyrenderowany obraz deski surfingowej z nałożonym materiałem typu Top/Bottom

Identyfikatory materiałów (material ID) Czasami trzeba przypisać kilka materiałów jednemu elementowi. Zaznaczanie obszarów podobiektu i stosowanie identyfikatorów materiału może w tym pomóc. Wiele standardowych brył podstawowych ma automatycznie przypisywane ID: kule mają jeden identyfikator, sześciany — sześć (po jednym na każdą ścianę), a walce — trzy (jeden dla powierzchni bocznej i dwa dla podstaw). Możesz także przypisywać identyfikatory obiektom typu Editable Mesh i obiektom lub podobiektom, korzystając z modyfikatora Material. Odpowiadają one różnym materiałom określonym w materiale Multi/Sub-Object. Nie pomyl identyfikatorów materiałów z identyfikatorami efektów materiałowych, które są wybierane z rozwijanej grupy przycisków Material ID Channel, znajdującej się na pasku narzędziowym edytora. Identyfikatory materiałów są stosowane jedynie w połączeniu z materiałami typu Multi/Sub-Object, podczas gdy identyfikatory efektów są używane razem z oknami dialogowymi Render Effects i Video Post w celu wzbogacenia materiału rozmaitymi efektami (np. świeceniem).

Ćwiczenie: Mapowanie ścianek kości do gry Dobrym przykładem przypisywania wielu materiałów do jednego obiektu jest kość do gry. Rozdzielenie sześcianu na kilka różnych części nie miałoby sensu, użyjemy więc materiału złożonego. Aby utworzyć model kości do gry, wykonaj następujące czynności. 1. Otwórz plik Pair of dice.max z folderu Chap 18 znajdującego się na płycie dołączonej do książki. Plik ten zawiera dwa standardowe sześciany reprezentujące parę kości do gry. Użyłem również programu Adobe Photoshop i utworzyłem sześć obrazów z odpowiednimi układami kropek. Wszystkie obrazy są tej samej wielkości.

590

Część IV  Materiały, kamery i oświetlenie

2. Otwórz edytor materiałów i w panelu Material/Map Browser kliknij dwukrotnie materiał Multi/Sub-Object. Następnie kliknij dwukrotnie węzeł tego materiału i nadaj mu nazwę Die faces (ściany kości). 3. W rolecie Multi/Sub-Object Basic Parameters kliknij przycisk Set Number i wpisz wartość 6. 4. Nazwij pierwszy materiał face 1 (ścianka 1) i kliknij położony na prawo przycisk z napisem None (żaden), aby otworzyć okno przeglądarki materiałów i map. W oknie tym zaznacz materiał Standard i kliknij przycisk OK. Następnie kliknij przycisk pierwszego materiału jeszcze raz, żeby otworzyć rolety z jego parametrami. Kliknij przycisk mapy znajdujący się na prawo od próbki koloru Diffuse i w oknie Material/Map Browser kliknij dwukrotnie pozycję Bitmap. W oknie dialogowym Select Bitmap Image File wybierz plik obrazu dieface1.tif z folderu Chap 18 znajdującego się na płycie dołączonej do książki i kliknij Open (Otwórz). 5. W edytorze materiałów wróć do rolety Multi/Sub-Object Basic Parameters i powtórz krok 4. dla pozostałych ścianek. 6. Po zdefiniowaniu materiału złożonego zaznacz sześcian i kliknij przycisk Assign Material to Selection. Ponieważ sześcian użyty w powyższym przykładzie jest prostą standardową bryłą podstawową, nie było potrzeby przypisywania identyfikatorów materiałów do różnych elementów na poziomie podobiektu. Zostały one przypisane automatycznie do każdej ze ścian sześcianu. Kiedy przypisanie identyfikatorów materiałów jest konieczne, możesz tego dokonać w rolecie Surface Properties.

Na rysunku 18.6 przedstawiono wyrenderowany obraz dwóch toczących się kości. Rysunek 18.6. Kości mają różne bitmapy przypisane do każdej ze ścianek

Jeśli w menu Views włączysz opcję Show Materials in Viewports As/Shaded Materials with Maps, materiały przypisane podobiektom będą widoczne w oknach widokowych.

Rozdział 18.  Materiały złożone i modyfikatory materiałów

591

Stosowanie narzędzia Clean MultiMaterial (czyszczenie materiału złożonego) Wszystkie materiały złożone mają podmateriały, które jeśli nie są używane, niepotrzebnie zajmują pamięć i miejsce na dysku. Przykładowo, gdy utworzysz materiał Multi/Sub-Object z 10 podmateriałami, a w scenie wykorzystasz spośród nich tylko 3, wówczas 7 materiałów będzie niepotrzebnych i można je usunąć. Nieużywane podmateriały możesz znaleźć w scenie i usunąć za pomocą narzędzia Clean MultiMaterial. Jest ono dostępne w bocznym panelu Utilities po kliknięciu przycisku More oraz w menu Utilities edytora materiałów. Kliknij przycisk Find All3 pozwalający znaleźć wszystkie niewykorzystane podmateriały i wyświetlić je na liście, z niej możesz wybrać te, które chcesz usunąć.

Modyfikatory materiałów Większość dostępnych modyfikatorów zmienia geometrię obiektu, ale niektóre działają jedynie na materiały i mapy, jak ma to miejsce w przypadku modyfikatorów Material, MaterialByElement, Disp Approx i Diplace Mesh (WSM) w kategorii Surface, a także Vertex Paint w kategorii Mesh Editing. W tym podrozdziale poznasz kilka takich modyfikatorów.

Modyfikator Material Modyfikator Material pozwala na zmianę identyfikatora materiału danego obiektu. Jedynym jego parametrem jest Material ID. Kiedy utworzysz zaznaczenie na poziomie podobiektów i zastosujesz ten modyfikator, identyfikator materiału zostanie przypisany jedynie do tego zaznaczenia. Modyfikator ten jest używany w połączeniu z materiałami typu Multi/Sub-Object, gdy jednemu obiektowi trzeba przypisać kilka różnych materiałów.

Modyfikator MaterialByElement Modyfikator MaterialByElement pozwala na losową zmianę identyfikatorów materiałów. Możesz go zastosować wobec obiektu z różnymi elementami, np. grupy kul przyczepionych do pojedynczego kształtu. Obiekt musi mieć nałożony materiał typu Multi/Sub-Object. Parametry tego modyfikatora można tak ustawić, aby przypisywał identyfikatory losowe przy użyciu opcji Random Distribution lub też zgodnie z określoną częstotliwością (Frequency). Wartość ID Count określa minimalną ilość użytych identyfikatorów materiałów. Możesz także procentowo określić wykorzystanie każdego identyfikatora w polach położonych poniżej opcji List Frequency. Parametr Seed zmienia losowość materiałów. 3

Przycisk ten jest dostępny, gdy narzędzie Clean MultiMaterial jest wywoływane z panelu Utilities. Jeśli jest uruchamiane poleceniem z menu edytora materiałów, rozpoczyna swoje działanie w sposób automatyczny — przyp. tłum.

592

Część IV  Materiały, kamery i oświetlenie

Ćwiczenie: Tworzenie losowych świateł migającej reklamy przy użyciu modyfikatora MaterialByElement Modyfikator MaterialByElement pozwala na losowe zmiany identyfikatorów materiałów. W tym ćwiczeniu pokażę, jak odtworzyć efekt migającej reklamy za pomocą materiału złożonego i modyfikatora MaterialByElement. Aby powstała losowo oświetlana reklama, wykonaj następujące czynności. 1. Otwórz plik Marquee Lights.max z folderu Chap 18 znajdującego się na płycie dołączonej do książki. Plik ten zawiera tekst umieszczony na prostokątnym obiekcie, otoczonym kulami, które pełnią rolę żarówek. 2. Otwórz edytor materiałów i w panelu Material/Map Browser kliknij dwukrotnie materiał Multi/Sub-Object. Nazwij go Random Lights (światła losowe). 3. W rolecie Multi/Sub-Object Basic Parameters kliknij przycisk Set Number i ustaw liczbę podmateriałów na 2. Następnie kliknij przycisk pierwszego podmateriału, wybierz materiał Standard i wpisz nazwę Light On (światło włączone). Ponownie kliknij przycisk tego podmateriału i ustaw kolor Diffuse na żółty, tak samo jak kolor Self-Illumination. Następnie kliknij dwukrotnie nadrzędny węzeł materiału. 4. Nazwij drugi materiał Light Off (światło wyłączone). Następnie kliknij jego przycisk, wybierz materiał Standard i ponownie kliknij ten sam przycisk, aby otworzyć rolety z parametrami. Wybierz szary jako kolor Diffuse. Następnie kliknij dwukrotnie nadrzędny węzeł materiału. 5. Zaznacz wszystkie kule i kliknij przycisk Assign Material to Selection, aby przypisać im materiał. 6. Gdy masz zaznaczone wszystkie kule, otwórz panel Modify i wybierz modyfikator MaterialByElement z rozwijanej listy Modifier List. W rolecie Parameters wskaż opcję Random Distribution i ustaw wartość ID Count na 2. Na rysunku 18.7 przedstawiono reklamę z losowo mrugającymi światłami (zawsze chciałem zobaczyć moje imię w świetle neonów!). Jeśli chcesz, aby światła migały w sposób losowy, opracuj animację, w której wartość parametru Seed (zarodek) będzie ciągle zmieniana.

Modyfikatory Disp Approx i Displace Mesh Mapy można wykorzystywać także do zmieniania geometrii obiektów. Jednym ze sposobów realizacji takiego zadania jest użycie modyfikatora Displace (znajdziesz go w menu Modifiers/Parametric Deformers). Pozwala określić obraz czyli mapę, na podstawie której ma być zmieniana geometria obiektu. Czarne obszary obrazu nie wpływają na obiekt, szare wytłaczają jego powierzchnię, a białe robią to w jeszcze większym stopniu. Dostępne są też opcje pozwalające określić sposób rzutowania obrazu na obiekt, a także wyrównywanie gizma modyfikatora względem obiektu. W tym ostatnim przypadku do wyboru są przyciski: Fit (dopasowanie), Center (wyśrodkowanie), Bitmap Fit (dopasowanie do

Rozdział 18.  Materiały złożone i modyfikatory materiałów

593

Rysunek 18.7. Ta reklama jest losowo oświetlana dzięki użyciu modyfikatora MaterialByElement

obrazu), Normal Align (wyrównanie do normalnej), View Align (wyrównanie do widoku), Region Fit (dopasowanie do obszaru), Reset (przywracanie domyślnych ustawień gizma) i Acquire (pobieranie ustawień gizma z innego obiektu). Max obsługuje również wektorowe mapy przemieszczenia (Displacement). Można je znaleźć w rolecie Maps w przeglądarce materiałów i map. Mapy wektorowe wymagają zastosowania renderera mental ray i umożliwiają przemieszczanie fragmentów powierzchni w dowolnych kierunkach, a nie tylko wzdłuż normalnych, jak to ma miejsce w innych metodach przemieszczania. Bardzo łatwo można tworzyć tego typu mapy w programie Mudbox, który zapisuje je w plikach EXR.

Innym sposobem deformowania obiektów za pomocą obrazów jest zastosowanie map przemieszczenia (displacement maps). Takie mapy mogą być stosowane bezpośrednio w odniesieniu do obiektów typu Editable Poly, Editable Mesh, NURBS i Patch. W przypadku innych obiektów, takich jak bryły podstawowe, najpierw trzeba zastosować modyfikator Disp Approx (z menu Modifiers/Surface). Jego nazwa to skrót od Displacement Approximation (aproksymacja przemieszczenia). Dzięki predefiniowanym ustawieniom, takim jak Low (niskie), Medium (średnie) i High (wysokie), stosowanie tego modyfikatora jest bardzo proste. Więcej szczegółów na temat pracy z mapami znajdziesz w rozdziale 17., „Określanie właściwości materiałów przy użyciu map”.

Jedną z niedogodności związanych ze stosowaniem map przemieszczenia jest to, że rezultaty ich działania nie są widoczne w oknach widokowych. Jeśli jednak zastosujesz modyfikator Modifiers/Surface/Displace Mesh (WSM), działanie map będzie widoczne, jedynie uaktualnianie widoku po zmianie ustawień wymagać będzie kliknięcia przycisku Update Mesh w rolecie Displacement Approx. Aby efekty działania modyfikatora były wyraźnie widoczne, potrzebna jest siatka o dużej gęstości. Modyfikator Disp Approx zagęszcza siatkę do odpowiedniego poziomu w trakcie renderowania.

594

Część IV  Materiały, kamery i oświetlenie

Ćwiczenie: Przemieszczanie geometrii za pomocą obrazu Gdy stajesz przed problemem wymodelowania obiektu za pomocą obrazu, Max, jak zwykle, podsuwa kilka sposobów wykonania tego zadania. Przy wyborze właściwej metody należy jednak uwzględnić przyjęty tok pracy. Można bowiem zachować efekt przemieszczenia w stosie modyfikatorów lub na poziomie materiału. W tym ćwiczeniu porównamy oba warianty. Aby porównać działanie modyfikatora Displace z działaniem mapy przemieszczenia, wykonaj następujące czynności. 1. W oknie widokowym Top utwórz dwa kwadratowe, płaskie obiekty. Użyj do tego celu polecenia Create/Standard Primitives/Plane. Dla jednego z nich ustaw parametry Length Segments i Width Segments na 150, a dla drugiego — na 20. Przed przystąpieniem do modyfikowania geometrii obiektu za pomocą map przemieszczenia upewnij się, czy jego powierzchnia ma rozdzielczość właściwą dla prawidłowego odwzorowania obrazu.

2. Zaznacz pierwszy obiekt i zastosuj modyfikator Displace, wybierając w tym celu polecenie Modifiers/Parametric Deformers/Displace. W rolecie Parameters ustaw siłę modyfikatora (Strength) na 2 i kliknij przycisk Bitmap. W oknie dialogowym Select Displacement Image wybierz plik Tulip logo.tif zamieszczony w folderze Chap 18 na płycie dołączonej do książki. 3. Zaznacz drugi obiekt i otwórz edytor materiałów, wciskając klawisz M. W edytorze utwórz węzeł materiału Standard i kliknij go dwukrotnie, aby otworzyć rolety z parametrami. Rozwiń roletę Maps, ustaw dla mapy Displacement parametr Amount na 10 i kliknij odpowiadający tej mapie przycisk. W oknie Material/Map Browser kliknij dwukrotnie pozycję Bitmap i ponownie wczytaj plik Tulip logo.tif z folderu Chap 18 umieszczonego na płycie. Następnie kliknij przycisk Assign Material to Selection, aby przypisać materiał do zaznaczonego obiektu. Zamknij edytor materiałów. 4. Zachowując zaznaczenie drugiego obiektu, wybierz polecenie Modifiers/Surface/ Displace Mesh (WSM). W rolecie Displacement Approx włącz opcję Custom Settings i wybierz predefiniowane ustawienie podziału siatki High. Efekt przemieszczenia uzyskany obiema metodami został pokazany na rysunku 18.8.

Podsumowanie W rozdziale wprowadzono wielką różnorodność materiałów możliwych do utworzenia w Maksie. Poznałeś różne rodzaje materiałów i modyfikatorów operujących na materiałach lub w oparciu o nie. W tym rozdziale zostały opisane następujące tematy: 

różne rodzaje materiałów,



nakładanie wielu materiałów na obiekt przy użyciu identyfikatorów materiałów,

Rozdział 18.  Materiały złożone i modyfikatory materiałów

595

Rysunek 18.8. Modyfikowanie powierzchni obiektu zgodnie z zawartością obrazu można zrealizować za pomocą modyfikatora Displace lub mapy przemieszczenia 

użycie kilku modyfikatorów materiałów, m.in. Material i MaterialByElement,



porównanie różnych technik modelowania obiektów metodą przemieszczania.



W następnym rozdziale będziesz mógł zdobyć więcej doświadczenia w posługiwaniu się kamerami oraz poznasz sposoby uzyskiwania niepowtarzalnych widoków sceny.

596

Część IV  Materiały, kamery i oświetlenie

Rozdział 19.

Operowanie kamerami W tym rozdziale: 

Podstawy pracy z kamerą



Tworzenie obiektu typu kamera



Podgląd kamery w oknie widokowym



Sterowanie kamerami za pomocą narzędzi okna widokowego



Kierowanie kamery na obiekty



Zmienianie parametrów kamery



Używanie modyfikatora Camera Correction



Tworzenie efektów typowych dla rzeczywistej kamery

Czy pamiętasz swój pierwszy aparat, który dostałeś w dzieciństwie? Po zrobieniu zdjęć psa i płotu sąsiada szybko nauczyłeś się czerpać przyjemność z ustawiania aparatu w różnych ciekawych miejscach, tworząc arcydzieła, takie jak zdjęcie masztu flagowego zrobione z jego szczytu czy też niezapomniana mina mamy po tym, jak znalazła Cię w pralce. Kamery w Maksie również oferują przeróżne zabawne sposoby pokazywania wykreowanej przez Ciebie sceny. Główną zaletą kamer jest to, że możesz je umieścić w dowolnym miejscu sceny, tworząc własny punkt obserwacji. Możesz wyświetlić obraz z kamery w oknie widokowym i używać kamer do renderowania obrazów i sekwencji animowanych. Kamery w Maksie mogą być również animowane (bez uszkadzania ich nawet wtedy, kiedy Twój złośliwy starszy brat włączy pralkę). W rolecie Camera Parameters znajduje się sekcja umożliwiająca włączenie wielofazowych efektów kamery (Multi-Pass Camera Effects). Zaliczają się do nich rozmycie w ruchu (Motion Blur) i głębia ostrości (Depth of Field). Efekty te osiąga się dzięki wykorzystaniu kilku wyrenderowanych obrazów z danej sceny i połączeniu ich z różnymi rodzajami obróbki.

598

Część IV  Materiały, kamery i oświetlenie

Podstawy pracy z kamerą Jeśli jesteś fotografem amatorem lub też lubisz kręcić swoje własne filmy wideo, zobaczysz, że znasz sporo pojęć z tego rozdziału. Kamery używane w Maksie w wielu przypadkach zachowują się jak prawdziwe kamery filmowe. Zarówno w Maksie, jak i w rzeczywistości mają one różne ustawienia ogniskowej, które są wyrażane w milimetrach. Masz do wyboru cały zestaw predefiniowanych obiektywów — m.in. 35 mm, 80 mm, a nawet 200 mm. Kamery w Maksie oferują również pełną kontrolę nad długością ogniskowej, polem widzenia obiektywu i perspektywą dla ujęć szerokokątnych lub robionych teleobiektywem. Największą różnicą jest to, że nigdy nie będziesz musiał się martwić o ustawianie lampy błyskowej, wymianę baterii czy filmu. Światło przechwytywane przez kamerę jest zakrzywiane przez soczewkę i skupiane na filmie, na którym rejestrowane są obrazy. Odległość między filmem a soczewką obiektywu znana jest jako długość ogniskowej. Jest ona mierzona w milimetrach i możesz ją zmieniać, wymieniając obiektyw. W kamerze, która rejestruje obrazy na filmie 35 mm, obiektyw z ogniskową 50 mm daje efekt podobny do tego, jaki rejestrują ludzkie oczy. Obiektyw z ogniskową mniejszą niż 50 mm nazywany jest szerokokątnym, ponieważ pokazuje szersze ujęcie sceny. Obiektyw z ogniskową dłuższą niż 50 mm to teleobiektyw, ponieważ może pokazywać zbliżenia obiektów dla uzyskania większej szczegółowości, tak jak robi to luneta. Pole widzenia (parametr FOV — Field Of View) jest bezpośrednio związane z długością ogniskowej i decyduje o tym, jaka część sceny jest widoczna. Mierzone jest w stopniach kątowych. Im krótsza ogniskowa, tym szersze pole widzenia. Kiedy patrzymy na scenę, obiekty im są bliżej, tym większe się wydają. Efekt ten nazywa się perspektywą i pomaga interpretować odległości. Jak już mówiliśmy, ogniskowa 50 mm oferuje perspektywę podobną do tej, jaką obserwujemy własnymi oczami. Zdjęcia zrobione z szerszym polem widzenia wydają się zniekształcone, ponieważ mocniejszy jest efekt perspektywy.

Tworzenie obiektu kamery Aby utworzyć obiekt kamery, możesz użyć menu Create/Cameras, możesz również otworzyć znajomy panel Create i kliknąć przycisk kategorii Cameras. Dwa dostępne typy kamer to swobodna (Free) i wycelowana (Target). Obiekty kamer są widoczne w oknach widokowych, ale nie są renderowane. Obiekt kamery wygląda jak skrzynka z mniejszą skrzynką z przodu, co symbolizuje obiektyw, czyli przód kamery. Oba typy kamer mogą wyświetlać stożek ilustrujący pole widzenia i kierunek kamery.

Rozdział 19.  Operowanie kamerami

599

Kamera swobodna (Free) Kamera swobodna rejestruje obraz obszaru, który znajduje się bezpośrednio przed nią. Jest to zazwyczaj lepsza opcja, jeśli kamera ma być animowana. Kiedy utworzysz kamerę swobodną, jest ona początkowo skierowana w stronę ujemnych wartości osi Z aktywnego okna widokowego.

Kamera wycelowana (Target) Kamera wycelowana zawsze zwrócona jest w stronę punktu docelowy usytuowanego w pewnej odległości od niej. Ten typ kamery pozwala łatwo obserwować konkretny obszar sceny i nadaje się doskonale do sytuacji, w których kamera ma być nieruchoma. Gdy chcesz utworzyć kamerę wycelowaną, kliknij okno widokowe, aby ją umieścić w scenie, i przeciągnij myszą do punktu, na który ma być nakierowana. Może on być nazwany razem z kamerą. Po zdefiniowaniu punktu docelowego Max automatycznie nadaje mu nazwę, dodając do nazwy kamery przyrostek .target (cel). Możesz zmienić tę domyślną nazwę, wpisując własną w polu Name.

Tworzenie widoku z kamery Dowolne okno widokowe możesz przełączyć na podgląd widoku z kamery. Aby to zrobić, kliknij prawym przyciskiem myszy nazwę okna widokowego i z menu podręcznego wybierz pozycję View, a potem nazwę kamery. Jakiekolwiek przesunięcie kamery zostanie w czasie rzeczywistym odwzorowane w oknie widokowym. Innym sposobem na włączenie widoku z kamery jest wciśnięcie klawisza C. Ten skrót klawiszowy włącza podgląd z kamery w aktywnym oknie widokowym. Jeśli w scenie rozmieszono kilka kamer, pojawia się okno dialogowe Select Camera, w którym możesz wybrać żądaną kamerę. Na rysunku 19.1 przedstawiono dwie kamery wycelowane w samochód. Dwa okna widokowe po prawej przedstawiają podglądy z tych kamer. Wyświetlanie ikon kamer w oknach widokowych możesz wyłączyć przy użyciu panelu Display. Włącz w nim opcję Cameras, znajdującą się w rolecie Hide by Category. Od tej chwili ikony kamer nie będą widoczne w oknach widokowych. Kamery są zazwyczaj umieszczane w pewnym oddaleniu od reszty sceny. Użycie przycisku Zoom Extents może spowodować, iż obiekty będą się wydawały bardzo małe. Jeśli wyłączysz wyświetlanie ikon kamer, polecenie Zoom Extents nie uwzględnia ich przy zbliżaniu sceny. Możesz także włączyć opcję Ignore Extents w oknie dialogowym Object Properties udostępniającym właściwości danej kamery.

Ćwiczenie: Ustawianie punktu widzenia przeciwnika Nie istnieją ograniczenia dotyczące liczby kamer, które można umieścić w scenie. Umieszczenie dwóch kamer w scenie obrazującej partię warcabów pozwala obejrzeć ją oczami każdego z zawodników. Aby utworzyć nowy widok z perspektywy przeciwnika, wykonaj następujące czynności.

600

Część IV  Materiały, kamery i oświetlenie

Rysunek 19.1. Samochód widziany przez dwie różne kamery

1. Otwórz plik Checkers game.max z folderu Chap 19 znajdującego się na płycie dołączonej do książki. 2. Wybierz polecenie Create/Cameras/Target Camera i przeciągnij myszą w oknie widokowym Top, aby utworzyć kamerę. Następnie nazwij ją Opponents Camera (kamera przeciwnika). 3. Umieść nową kamerę za pionkami przeciwnika, mniej więcej symetrycznie do drugiej kamery, przeciągając myszą w górę w oknie widokowym Front. 4. Zaznacz nową kamerę i przeciągnij punkt docelowy gdzieś poniżej środka planszy. Aby włączyć podgląd z nowej kamery, kliknij prawym przyciskiem myszy nazwę okna widokowego Perspective i wybierz View/Opponents Camera (lub też zaznacz kamerę, potem uaktywnij okno widokowe Perspective i wciśnij klawisz C). Na rysunku 19.2 widoczny jest podgląd z tej kamery. Rozmiary okien widokowych można zmieniać, a zatem nie zawsze to, co jest w nich widoczne, zostanie wyrenderowane. Włączając odpowiednie opcje w panelu Safe Frames okna dialogowego Viewport Configuration, można sprawić, że renderowalna zawartość okna widokowego będzie otoczona stosowną ramką.

Sterowanie kamerą Kiedy odwiedzałem Disneyland, współpasażer na pokładzie jednej z kolejek postanowił ewidentnie zignorować ostrzeżenia mówiące o zakazie fotografowania. Kiedy przechylił się przez barierkę, żeby zrobić kolejne zdjęcie, usłyszałem odgłos upuszczania czegoś,

Rozdział 19.  Operowanie kamerami

601

Rysunek 19.2. Ustawienie dodatkowej kamery po przeciwnej stronie planszy umożliwia śledzenie gry z punktu widzenia przeciwnika

ciche „o, nie” i odległy dźwięk wydany przez jego aparat wpadający w otchłań mechanizmu machiny. (Było to o wiele przyjemniejsze niż sama przejażdżka. Należało mu się). Jak widać, obchodzenie się z kamerami może być trudne. W tym rozdziale znajdziesz wiele porad i sztuczek dotyczących kamer w Maksie, ale nie musisz martwić się o to, że którąkolwiek z nich upuścisz. Przy użyciu przycisków sterujących kamerą, które znajdują się w prawym dolnym rogu ekranu, możesz dowolnie manipulować widokiem w oknie sprzężonym z daną kamerą. Za każdym razem kiedy uaktywnisz takie okno, zastąpią one przyciski nawigacyjne okien widokowych. Opis przycisków sterujących kamerą znajdziesz w tabeli 19.1. Wiele opcji sterowania widokiem z kamery pokrywa się z opcjami sterowania światłami.

Możesz ograniczyć ruchy kamery do jednej osi, przytrzymując klawisz Shift. Klawisz Ctrl zwiększa stopień przesunięcia kamery podczas jej przemieszczania. Przykładowo przytrzymanie klawisza Ctrl podczas przeciągania narzędzia Perspective zwiększa stopień perspektywy zastosowanej w oknie widokowym. Zmiany w zwykłych oknach widokowych możesz cofnąć, używając polecenia Views/Undo (Shift+Z), ale zmiany w oknie widokowym typu Camera cofniesz za pomocą standardowego polecenia Edit/Undo, bo wynikają one z ruchu obiektu kamery.

602

Część IV  Materiały, kamery i oświetlenie

Tabela 19.1. Przyciski sterujące kamerą Przycisk

Nazwa

Opis

Dolly Camera, Dolly Target, Dolly Camera + Target

Przesuwa kamerę, jej punkt docelowy lub też kamerę razem z jej punktem docelowym bliżej lub dalej od sceny w kierunku widzenia kamery.

Perspective

Zwiększa lub zmniejsza perspektywę okna widokowego przez przesunięcie kamery i zmianę jej pola widzenia.

Roll Camera

Obraca kamerę wokół jej osi Z.

Zoom Extents All, Zoom Extents All Selected

Powoduje zbliżenie na wszystkie obiekty lub tylko te zaznaczone do momentu wypełnienia przez nie całego okna widokowego.

Field of View

Zmienia pole widzenia kamery. Działa analogicznie do zmiany obiektywu lub zbliżenia bez przemieszczania kamery.

Truck Camera, Walk Through

Przycisk Truck Camera przesuwa kamerę prostopadle do linii widzenia. Przycisk Walk Through włącza tryb sterowania kamerą za pomocą myszy i klawiszy strzałek.

Orbit, Pan Camera

Przycisk Orbit obraca kamerę dookoła celu. Przycisk Pan obraca cel dookoła kamery.

Maximize Viewport Toggle

Powiększa aktualne okno widokowe do rozmiaru całego ekranu. Ponowne kliknięcie przywraca pierwotny widok z kilku okien widokowych.

Jeśli zaznaczona jest kamera swobodna, niedostępne są przyciski Dolly Target i Dolly Camera + Target.

Kierowanie kamery na obiekty Do przemieszczania kamery, niezależnie od opisanych wyżej przycisków sterujących, możesz użyć narzędzi transformacji znajdujących się na głównym pasku narzędziowym. Aby przemieścić kamerę, kliknij przycisk Select and Move (W), zaznacz kamerę, a następnie przeciągnij ją w oknie widokowym. Przy użyciu przycisku Select and Rotate (E) możesz zmienić kierunek, w którym patrzy kamera. Warto pamiętać, że jedynie kamery swobodne obracają się w dowolnym kierunku. Kamera wycelowana może obracać się jedynie wokół osi łączącej ją z punktem docelowym. Orientację takiej kamery zmieniasz, przemieszczając jej punkt docelowy. Nie próbuj obracać wycelowanej kamery tak, by patrzyła prosto w górę lub w dół, ponieważ wywinie kozła.

Aby zaznaczyć cel kamery, zaznacz obiekt kamery, a następnie, klikając prawym przyciskiem myszy, otwórz menu kontekstowe i wybierz z niego opcję Select Camera Target1. 1

Oczywiście, można to również zrobić przez kliknięcie celu widocznego w postaci kwadracika na końcu linii łączącej go z kamerą — przyp. tłum.

Rozdział 19.  Operowanie kamerami

603

Ćwiczenie: Obserwacja rakiety Kamery mogą być przekształcane jak wszystkie obiekty geometryczne, mogą być także ustawione tak, aby rejestrować ruch dowolnego obiektu geometrycznego. W tym ćwiczeniu wycelujemy kamerę w odległą rakietę, by obserwować jej przelot obok nas prosto w przestworza. Model rakiety powstał w Zygote Media. Aby wycelować kamerę w kierunku rakiety zmierzającej w przestworza, wykonaj następujące czynności. 1. Otwórz plik Following a rocket.max z folderu Chap 19 znajdującego się na płycie dołączonej do książki. 2. Plik ten zawiera model rakiety. 3. Wybierz z menu polecenie Create/Cameras/Target Camera i przeciągnij w oknie widokowym Front z góry na dół, aby utworzyć kamerę. Ustaw wartość parametru FOV na 2.0 stopnie. Wartość parametru Lens (długość ogniskowej) odpowiadająca temu ustawieniu to około 1031 mm. 4. Zaznacz punkt docelowy kamery, na głównym pasku narzędziowym kliknij przycisk Select and Link i przeciągnij od celu do obiektu rakiety. 5. Aby obejrzeć scenę przez obiektyw kamery, kliknij nazwę okna widokowego Perspective i wybierz polecenie Cameras/Camera01 (lub wciśnij klawisz C). Następnie kliknij przycisk Play Animation, aby przekonać się, że kamera ciągle śledzi ruch rakiety. Na rysunku 19.3 przedstawiono kilka klatek tej animacji.

Wyrównywanie kamer Alternatywnym sposobem ustawiania zaznaczonej kamery jest użycie polecenia Tools/ Align/Align Camera lub kliknięcie przycisku Align Camera na głównym pasku narzędziowym (znajduje się on pod przyciskiem Align). Po wybraniu tego polecenia kliknij ściankę obiektu i przytrzymaj przycisk myszy. Normalna na ściance obiektu znajdującej się pod kursorem będzie wyświetlona jako niebieska strzałka. Kiedy znajdziesz punkt docelowy dla kamery, puść przycisk. Kamera zostanie ustawiona tak, aby patrzeć bezpośrednio na wybrany punkt wskazanej ścianki wzdłuż normalnej tej ścianki. Nie zapomnij przed wybraniem polecenia Align Camera zaznaczyć właściwej kamery. Polecenie Align Camera działa na tej samej zasadzie, co Place Highlight w przypadku świateł. Omówienie polecenia Place Highlight znajdziesz w rozdziale 20., „Podstawowe techniki oświetlania sceny”.

Kamera może być automatycznie ustawiona tak, aby rejestrowała taki obraz, jaki jest wyświetlany w oknie widokowym. Aby skorzystać z tej możliwości, wybierz polecenie Views/Create Camera from View (Ctrl+C)2. Utworzona zostanie kamera swobodna (jeśli 2

Polecenie to jest dostępne tylko wtedy, gdy aktywnym oknem widokowym jest okno Perspective — przyp. tłum.

604

Część IV  Materiały, kamery i oświetlenie

Rysunek 19.3. Ustawienie celu kamery na rakiecie pozwala na śledzenie jej startu

takowa nie istnieje) rejestrująca obraz zgodny z tym, co widać w aktywnym oknie widokowym, a okno to zostanie przełączone w tryb wyświetlania widoku z tejże kamery. W ten sposób możesz za pomocą przycisków nawigacyjnych ustalić kadr w oknie widokowym i automatycznie utworzyć kamerę, która będzie go rejestrować. Jeśli kamera już istnieje i jest zaznaczona, polecenie nie utworzy nowej, lecz odpowiednio ustawi tę, którą zaznaczyłeś.

Ćwiczenie: Dobra strona dinozaura Przy użyciu narzędzia Align Camera możesz umieścić kamerę tak, by była skierowana prosto na przedmiot lub ściankę obiektu, np. na dobrą stronę dinozaura (jeśli o dinozaurze możemy powiedzieć, że ją ma). Aby dopasować kamerę do określonego punktu, wykonaj następujące czynności. 1. Otwórz plik Dinosaur.max z folderu Chap 19 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model dinozaura opracowany przez Viewpoint Datalabs. 2. Wybierz polecenie Create/Cameras/Free Camera i kliknij w oknie widokowym Top, aby w scenie umieścić nową kamerę swobodną. 3. Zaznacz kamerę, wybierz polecenie Tools/Align/Align Camera lub włącz przycisk Align Camera na głównym pasku narzędziowym. Kursor zmieni się w małą ikonę kamery.

Rozdział 19.  Operowanie kamerami

605

4. W oknie widokowym Perspective kliknij głowę dinozaura tuż obok jego oka. Ten punkt wskaże kierunek, w który będzie skierowana kamera. 5. Aby ujrzeć widok z nowej kamery, kliknij prawym przyciskiem myszy nazwę okna widokowego i wybierz polecenie Cameras/Camera01 (lub wciśnij klawisz C). Chociaż kamera jest skierowana na wybrany punkt, być może będziesz musiał zmienić pole widzenia, aby dopasować kadr do obiektu. Na rysunku 19.4 przedstawiono widok naszego dinozaura z nowo ustawionej kamery.

Rysunek 19.4. Nowy widok z kamery pokazuje dinozaura z jak najlepszej strony

Polecenie Align Camera kieruje kamerę na obiekt jedynie w bieżącej klatce. Nie powoduje podążania kamery za obiektem, jeśli ten przemieszcza się podczas animacji. Aby kamera podążała za przesuwającym się obiektem, musisz zastosować kontroler animacji Look At, który omówiony jest w rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Ustawianie parametrów kamery Gdy tworzysz kamerę, możesz zmieniać jej parametry bezpośrednio w panelu Create tak długo, jak długo kamera pozostaje zaznaczona. W późniejszych etapach pracy możesz zmieniać jej parametry w rolecie Parameters panelu Modify.

606

Część IV  Materiały, kamery i oświetlenie

Ogniskowa i pole widzenia Pierwszy parametr w rolecie Parameters, o nazwie Lens (obiektyw), reguluje długość ogniskowej obiektywu (w milimetrach). Drugi parametr, FOV, służy do określenia pola widzenia, czyli szerokości obszaru pokazywanego przez kamerę. Wartość ta jest podana w stopniach kątowych i może być ustawiona tak, aby definiować poziomy, pionowy lub ukośny kąt widzenia. Wyboru dokonujemy przy użyciu rozwijanej grupy przycisków po lewej stronie pola edycyjnego. Przyciski te można zobaczyć w tabeli 19.2. Tabela 19.2. Przyciski pola widzenia Przycisk

Opis Poziomy kąt widzenia. Pionowy kąt widzenia. Ukośny kąt widzenia.

Opcja Orthographic Projection (rzut ortogonalny) wyświetla widok z kamery w sposób podobny do tego, w jaki działają ortogonalne okna widokowe, takie jak Top, Left lub Front. Pozwala to uniknąć jakichkolwiek zaburzeń perspektywy obiektów znajdujących się w głębi sceny i tym samym w oknach ortogonalnych wyświetlane są prawdziwe wymiary wszystkich krawędzi w scenie. Ten typ widoku jest powszechnie stosowany przez architektów. Zawodowi fotografowie i filmowcy używają obiektywów o ustandaryzowanych długościach ogniskowych. W Maksie można symulować działanie takich obiektywów za pomocą przycisków w polu Stock Lenses. Predefiniowane obiektywy posiadają ogniskowe o długościach 15, 20, 24, 28, 35, 50, 85, 135 i 200 mm. Po wybraniu jednego z tych obiektywów automatycznie aktualizowane są pola Lens i FOV. W kamerach z filmem 35-milimetrowym standardowy obiektyw ma ogniskową 50 mm.

Rodzaje kamer i opcje wyświetlania Opcja Type (typ) pozwala na zmianę kamery swobodnej w wycelowaną lub na odwrót. Opcja Show Cone (pokaż stożek) wyświetla stożek kamery, który ilustruje jej kąt widzenia, kiedy nie jest zaznaczona. (Kiedy kamera jest zaznaczona, stożek jest zawsze widoczny). Opcja Show Horizon (pokaż horyzont) wyświetla w widoku kamery ciemnoszarą linię symbolizującą horyzont.

Rozdział 19.  Operowanie kamerami

607

Zakresy środowiska i płaszczyzny tnące Parametry zakresu bliskiego (Near Range) i dalekiego (Far Range) określają przestrzeń, w której zawarte będą efekty atmosferyczne, takie jak mgła i światła wolumetryczne. Opcja Show wyświetla te ograniczenia jako żółte prostokąty w stożku kamery. Płaszczyzny tnące (Clipping Planes) służą do określenia położonych najbliżej i najdalej obiektów, jakie kamera może zobaczyć. Wyświetlane są w stożku kamery jako czerwone prostokąty z krzyżującymi się przekątnymi. Wyłączenie opcji Clip Manually (przycinanie ręczne) powoduje automatyczne ustawienie bliższej płaszczyzny tnącej (Near Clip) w odległości trzech jednostek od kamery. Na rysunku 19.5 przedstawiono kamerę ze zdefiniowanymi płaszczyznami tnącymi. Bliższa płaszczyzna przechodzi przez samochód i odcina jego przód. Tylna płaszczyzna znajduje się daleko za samochodem.

Rysunek 19.5. Stożek kamery i płaszczyzny tnące Płaszczyzny tnące mogą przydać się przy tworzeniu obrazków przedstawiających przekroje modelu.

Modyfikator korekcji kamery (Camera Correction) Aby zrozumieć działanie modyfikatora Camera Correction, musisz poznać pojęcie perspektywy skośnej, zwanej też dwuzbieżną (z dwoma punktami zbiegu). W Maksie kamery domyślnie korzystają z perspektywy z trzema punktami zbiegu (trójzbieżnej). W perspektywie skośnej wszystkie linie pionowe pozostają pionowe.

608

Część IV  Materiały, kamery i oświetlenie

Zastosowanie tego modyfikatora daje efekt pochylania wyjątkowo wysokich obiektów w kierunku kamery. Jeśli np. masz kamerę skierowaną na wieżowiec, korekcja za pomocą modyfikatora Camera Correction powoduje wizualne zbliżenie szczytu budynku zamiast jego oddalania. Modyfikator Camera Correction ma współczynnik Amount (ilość), który pozwala określić stopień korekcji, i parametr Direction (kierunek), określający kąt pionowych linii w scenie. Możesz również skorzystać z przycisku Guess (odgadnij), który automatycznie określi wartości korekty w oparciu o pionową oś Z. Modyfikator Camera Correction nie pojawia się na liście Modifier List w stosie modyfikatorów, ale możesz go znaleźć w menu Modifiers/Cameras.

Tworzenie efektów trybu wieloprzebiegowego (Multi-Pass Camera Effects) Wszystkie kamery mogą być ustawione tak, by pracowały w trybie wieloprzebiegowym (multi-pass)3. Ustawienia te po wybraniu kamery znajdziesz w rolecie Parameters. Tryb wieloprzebiegowy jest włączany opcją Enable, a odpowiedni efekt wybiera się z rozwijanej listy. Aktualnie dostępne efekty to: głębia ostrości [Depth of Field (mental ray) i Depth of Field] oraz efekt rozmycia ruchu (Motion Blur). Dla każdego z nich otwiera się odpowiednia roleta z parametrami. Podgląd efektów trybu wieloprzebiegowego w oknach widokowych nie działa przy włączonym sterowniku Nitrous. Efekt głębi ostrości jest stosowany z rendererem Scanline, ale można go również włączyć dla rendererów mental ray oraz iray.

Sekcja Multi-Pass Effect rolety Parameters zawiera również przycisk Preview (podgląd), który pozwala podglądać efekty w oknie widokowym. Dzięki tej opcji możesz zaoszczędzić mnóstwo czasu, który normalnie poświęciłbyś na testowe renderowanie sceny. Przycisk Preview jest narzędziem naprawdę przydatnym. Przy jego użyciu możesz obejrzeć efekt bez potrzeby renderowania całej sekwencji. Przycisk Preview działa tylko wtedy, gdy aktywnym oknem widokowym jest widok z kamery.

Opcja Render Effect Per Pass (renderuj efekt w każdym przebiegu) powoduje, iż wszystkie wykorzystane efekty są renderowane w każdym przebiegu. Jeśli jest wyłączona, efekty są nakładane po ukończeniu wszystkich przebiegów. Możesz także nałożyć efekty multi-pass jako efekty renderowania. Aby dowiedzieć się więcej na ten temat, przeczytaj rozdział 46., „Stosowanie efektów renderowanych i atmosferycznych”. 3

Tryb wieloprzebiegowy polega na wielokrotnym renderowaniu tego samego ujęcia z niewielkimi przesunięciami kamery między kolejnymi etapami tego procesu. Umożliwia to uzyskanie rozmaitych efektów polegających na rozmyciu rejestrowanego obrazu — przyp. tłum.

Rozdział 19.  Operowanie kamerami

609

Efekt głębi ostrości (Depth of Field) Roleta Depth of Field Parameters, pokazana na rysunku 19.6, pojawia się po wybraniu opcji Depth of Field w sekcji Multi-Pass Effect rolety Parameters. Zawiera ustawienia pozwalające na sterowanie wieloprzebiegowym efektem głębi ostrości. Rysunek 19.6. Roleta Depth of Field Parameters pozwala na ustawienie liczby przebiegów

Do określenia głębi ostrości możesz wykorzystać odległość od kamery do jej punktu docelowego (opcja Use Target Distance), ale możesz też zrobić to niezależnie od tej odległości, ustawiając odpowiednią wartość w polu Focal Depth. Parametr Focal Depth wyznacza odległość, przy której obiektyw ma najlepszą ostrość. Wszystkie obiekty znajdujące się bliżej lub dalej są rozmyte w stopniu zależnym od oddalenia od miejsca wyznaczonego przez ten parametr. Nawet swobodne kamery mają określoną odległość do celu. Odległość ta jest wyświetlana na dole rolety Parameters.

W rolecie Depth of Field Parameters możesz również za pomocą opcji Display Passes włączyć wyświetlanie każdego przebiegu z osobna, a także, korzystając z opcji Use Original Location, użyć pierwotnej pozycji kamery w pierwszym przebiegu renderowania. Opcja Total Passes (liczba przebiegów) określa, ile razy scena ma być renderowana w celu osiągnięciu efektu. Wartość Sample Radius (promień próbki) to odległość, o którą może się przesunąć kamera między kolejnymi przebiegami. Dzięki przesunięciu kamery o wartość promienia i ponownemu renderowaniu obiekt staje się bardziej rozmyty, poza odległością skupienia. Jeśli scena jest zapełniona obiektami, domyślna wartość Sample Radius nie będzie miała zbyt dużego wpływu na efekt końcowy. Spróbuj zwiększyć tę wartość i wykonać ponowny rendering. Na rysunku 19.7 przedstawiono scenę z wartościami Sample Radius 1 i 5. Efekt głębi ostrości jest nakładany jedynie na renderowane obiekty sceny. Nie jest nakładany na obrazy tła.

610

Część IV  Materiały, kamery i oświetlenie

Rysunek 19.7. Zmiana wartości Sample Radius powoduje zmianę stopnia rozmycia obiektów

Wartość Sample Bias (odchylenie próbki) przesuwa rozmycie bliżej (przy wyższych wartościach) lub dalej (przy niższych wartościach) względem punktu skupienia. Jeśli chcesz podkreślić punkt skupienia i wyraźnie rozmyć inne obiekty w scenie, ustaw wartość Sample Bias na poziomie 1.0. Wartość 0 powoduje bardziej równomierne rozmycie. Opcja Normalize Weights (normalizuj wagi) pozwala na kontrolowanie mieszania różnych przebiegów. Jeśli jest włączona, możesz uniknąć smużenia wzdłuż krawędzi obiektów. Wartość Dither Strength reguluje stopień ditheringu. Wyższe wartości Dither Strength powodują większą ziarnistość obrazu. Wartość Tile Size (rozmiar kafelków) również ma wpływ na dithering, bo określa rozmiar jego wzoru. Przy ustawieniu dużej liczby przebiegów czas renderowania może być dość duży. Aby go skrócić, możesz wyłączyć obliczenia antyaliasingu i filtrowania. Rendering będzie wtedy szybszy, jednak kosztem jakości obrazu.

Ćwiczenie: Zastosowanie głębi ostrości na rzędzie wiatraków Na suchych równinach południowo-zachodniej Ameryki wieje silny wiatr. Rzędy wiatraków poustawiane są tak, aby usidlić jego energię. Na potrzeby tego przykładu użyjemy wiatraków, aby pokazać efekt głębi ostrości. Aby zastosować efekt głębi ostrości na rzędzie wiatraków, wykonaj następujące czynności. 1. Otwórz plik Depth of field windmills.max z folderu Chap 19 znajdującego się na płycie dołączonej do książki. Plik ten zawiera wielokrotnie powielony model wiatraka (utworzony przez Viewpoint Datalabs). Powielone modele ustawiono w rzędzie. 2. Wybierz z menu polecenie Create/Cameras/Target Camera i przeciągnij w oknie widokowym Top z dolnego lewego rogu do środka wiatraków. W oknie widokowym Left zaznacz kamerę i przesuń ją w górę, następnie zaznacz punkt Camera Target i również przesuń go w górę tak, aby widoczny był cały rząd wiatraków. Jeśli nie wypełniają one całego widoku z kamery, zmień ustawienie parametru FOV. Możesz zaznaczyć kamerę i jej punkt docelowy, klikając linię, która je łączy.

Rozdział 19.  Operowanie kamerami

611

3. Uaktywnij okno widokowe Perspective, kliknij nazwę tego okna i wybierz polecenie Cameras/Camera01 (lub wciśnij klawisz C), aby ustawić to okno widokowe jako podgląd z kamery. 4. Zaznacz kamerę, otwórz panel Modify, w sekcji Multi-Pass Effect włącz opcję Enable, a potem z rozwijanej listy wybierz efekt Depth of Field. 5. W rolecie Depth of Field Parameters włącz opcję Use Target Distance i ustaw wartość Total Passes na 15, wartość Sample Radius na 3.0, a wartość Sample Bias na 1.0. 6. Wybierz okno widokowe z obrazem z kamery i w rolecie Parameters kliknij przycisk Preview. 7. W oknie widokowym zobaczysz nałożony efekt głębi ostrości. Na rysunku 19.8, w oknie widokowym przedstawiono wynik nałożenia efektu głębi ostrości na rząd wiatraków.

Rysunek 19.8. Wieloprzebiegowe efekty kamery można oglądać w oknie widokowym dzięki przyciskowi Preview

Efekt rozmycia ruchu (Motion Blur) Motion Blur to efekt podkreślający ruch przez rozmywanie obiektów, które się przemieszczają. Jeśli statyczny obiekt jest otoczony przez poruszające się obiekty, nałożenie tego efektu spowoduje rozmycie obiektów przemieszczających się, a pozostawi ostry statyczny

612

Część IV  Materiały, kamery i oświetlenie

obiekt, niezależnie od jego ułożenia w scenie. Im szybciej obiekt się przemieszcza, tym bardziej jest rozmyty. Efekt rozmycia może być osiągany na kilka sposobów, ale kamera w trybie wieloprzebiegowym realizuje to przez renderowanie kolejnych klatek animacji i składanie ich w jeden obraz. Roleta Motion Blur Parameters, pokazana na rysunku 19.9, pojawia się, kiedy w sekcji Multi-Pass Effect rolety Parameters zostanie wybrana opcja Motion Blur. Wiele jej parametrów działa tak samo jak w przypadku głębi ostrości. Rysunek 19.9. Możesz określić liczbę klatek biorących udział w tworzeniu efektu rozmycia w ruchu

Opcja Display Passes wyświetla rezultaty kolejnych przebiegów podczas renderowania każdej klatki, a Total Passes określa liczbę klatek używanych do uśredniania. Możesz także ustawić parametr Duration (czas trwania efektu), czyli liczbę klatek, w których efekt będzie generowany. Opcja Bias powoduje przesunięcie efektu względem aktualnego położenia obiektu. Wyższe wartości Bias nadają większą wagę w uśrednieniu klatkom późniejszym (przesuwając rozmycie za obiekt), a niższe — klatkom wcześniejszym (efekt rozmycia przesuwa się przed obiekt). Pozostałe ustawienia działają w ten sam sposób, jak ich odpowiedniki dla efektu głębi ostrości.

Ćwiczenie: Efekt rozmycia ruchu Efekt rozmycia ruchu działa tylko na ruchome obiekty. Nałożenie tego efektu na statyczny model nie daje żadnych widocznych zmian w jego wyglądzie. W tym ćwiczeniu włączymy efekt dla pędzącego chevroleta rocznik 1975, utworzonego przez Viewpoint Datalabs. Aby zastosować wieloprzebiegowy efekt Motion Blur dla kamery skierowanej na model samochodu, wykonaj następujące czynności. 1. Otwórz plik Car at stop sign.max z folderu Chap 19 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model samochodu, kamerę i prosty znak stop utworzony z obiektów podstawowych. Samochód jest animowany.

Rozdział 19.  Operowanie kamerami

613

2. Kliknij na głównym pasku narzędziowym przycisk Select by Name, by otworzyć okno dialogowe Select From Scene (lub też wciśnij klawisz H). Kliknij dwukrotnie obiekt Camera01, aby go zaznaczyć. 3. Otwórz panel Modify. W sekcji Multi-Pass Effect rolety Parameters zaznacz opcję Enable i z rozwijanej listy wybierz efekt Motion Blur. 4. W rolecie Motion Blur Parameters ustaw wartość Total Passes na 10, wartość Duration na 1.0, a wartość Bias na 0.9. 5. Przeciągnij suwak klatek do klatki 57. To miejsce, w którym samochód mija znak stop. 6. Przy zaznaczonej kamerze w aktywnym oknie widokowym kliknij zakładkę panelu Modify, a następnie w sekcji Multi-Pass Effect rolety Parameters kliknij przycisk Preview. Na rysunku 19.10 przedstawiono rezultat nałożenia efektu rozmycia ruchu. W tym przypadku efekt został wzmocniony, by był dobrze widoczny. Zauważ, że znak nie jest rozmyty. Jedynym problemem związanym z tym przykładem jest to, że nie można odczytać tablic rejestracyjnych, a tym samym nie można wysłać mandatu kierowcy pędzącego pojazdu.

Rysunek 19.10. Przy użyciu wieloprzebiegowego efektu Motion Blur dla kamery możesz rozmywać obiekty przemieszczające się w scenie

614

Część IV  Materiały, kamery i oświetlenie

Podsumowanie Kamery pozwalają obserwować scenę w wyjątkowy sposób. Możesz ustawiać i przesuwać je w dowolne miejsce. W tym rozdziale dowiedziałeś się, na jakiej zasadzie kamery działają, jak nimi sterować i kierować je na obiekty. Za pomocą efektów kamery wieloprzebiegowej możesz dodać efekt głębi ostrości lub rozmycia w ruchu. W tym rozdziale omówiliśmy następujące tematy: 

podstawy wiedzy o kamerach,



tworzenie obiektu kamery i jej widoku,



sterowanie kamerą,



wymierzanie kamery w obiekty,



zmianę parametrów kamery,



poprawę perspektywy kamery przy użyciu modyfikatora Camera Correction,



stosowanie kamery wieloprzebiegowej do tworzenia efektu głębi ostrości — Depth of Field,



wykorzystanie kamery wieloprzebiegowej do tworzenia efektu rozmycia w ruchu — Motion Blur.

Chociaż zazwyczaj reżyser mówi: „Światła, kamera, akcja!”, zamieniliśmy miejscami kamery i światła (akcja, czyli animacja, zostanie opisana w dalszej części książki). Skoro omówiliśmy już kamery, czas przejść do świateł.

Rozdział 20.

Podstawowe techniki oświetlania sceny W tym rozdziale: 

Podstawy oświetlenia



Rodzaje świateł w Maksie



Tworzenie i ustawianie źródeł światła



Oglądanie sceny z pozycji źródła światła



Zmienianie parametrów światła



Używanie systemów światła słonecznego (Sunlight) i dziennego (Daylight)



Wykorzystanie efektu światła wolumetrycznego



Zastosowanie map rzutowanych i cieni generowanych metodą śledzenia promieni, czyli raytracingu

W procesie tworzenia i postrzegania obrazów bardzo ważne jest światło. Czy kiedykolwiek ktoś pokazał Ci białą stronę i powiedział, że to zdjęcie niedźwiedzia polarnego w burzy śnieżnej, albo czarną, która miała być obrazem czarnego pająka schodzącego w dół komina pełnego sadzy? Wszystko oparte jest na świetle — jeśli jest go zbyt mało lub za dużo, nie zobaczymy niczego. Światło w świecie grafiki 3D jest brane pod uwagę przy każdym renderingu, a graficy często mają te same problemy z doborem odpowiedniej ilości światła. Ten rozdział poświęcony jest tworzeniu i ustawianiu świateł w scenach Maksa.

Podstawy oświetlenia Oświetlenie odgrywa kluczową rolę w każdej scenie tworzonej w Maksie. Zrozumienie jego podstaw i umiejętne stosowanie może diametralnie zmienić atmosferę i styl renderowanych obrazów. Większość scen w Maksie korzysta z jednego lub dwóch typów światła. Światło naturalne używane jest w scenach plenerowych, oświetlanych przez

616

Część IV  Materiały, kamery i oświetlenie

Słońce i Księżyc. Światło sztuczne jest zazwyczaj wykorzystywane w scenach dziejących się we wnętrzach, gdzie głównymi źródłami światła są np. żarówki. Jednak podczas pracy ze światłami i we wnętrzach będziesz czasami używał światła naturalnego, takiego jak światło słoneczne prześwitujące przez okno, lub też światła sztucznego w plenerze — np. ulicznych latarni.

Światło naturalne i sztuczne Światło naturalne najlepiej tworzy się za pomocą źródeł, które emitują równoległe promienie biegnące w jednym kierunku — możesz opracować ten rodzaj oświetlenia przy użyciu źródła światła kierunkowego (Direct Light). Natężenie światła naturalnego zależy również od czasu, daty i położenia Słońca — możesz dokładnie kontrolować te właściwości przy użyciu systemów światła słonecznego (Sunlight) i dziennego (Daylight), dostępnych w Maksie. Pogoda również może mieć wpływ na kolor światła. Przy dobrej pogodzie światło słoneczne jest jasnożółte; kiedy na niebie są chmury, nabiera niebieskiego odcienia. Przy ciemnym, burzowym niebie światło słoneczne jest ciemnoszare. Kolory światła przy wschodach i zachodach Słońca są bardziej nasycone pomarańczą i czerwienią. Światło Księżyca jest zazwyczaj białe. Sztuczne światło powstaje zazwyczaj dzięki zastosowaniu dużej liczby źródeł światła o niskim natężeniu. Światło punktowe (Omni) jest dobrym wyborem podczas tworzenia oświetlenia w pomieszczeniach, ponieważ emituje promienie we wszystkich kierunkach z jednego źródła. Typowe białe światło fluorescencyjne może mieć zabarwienie jasnozielone lub jasnoniebieskie.

Standardowa metoda oświetlania Przy oświetlaniu sceny najlepszym wyjściem jest nieograniczanie się do jednego światła. Dobre oświetlenie polega na zastosowaniu jednego światła kluczowego i kilku świateł drugorzędnych (wypełniających). W roli źródła światła kluczowego dobrze spisuje się reflektor (Spotlight). Powinien być usytuowany z przodu i odrobinę ponad obiektem oświetlanym. Powinien być też skonfigurowany tak, by wytwarzać cienie, ponieważ będzie głównym źródłem powstawania cieni w scenie. Światła drugorzędne (wypełniające) uzupełniają światło kluczowe. Możesz je umieścić na poziomie podłoża po obu stronach oświetlanego obiektu, z natężeniem o wiele mniejszym niż światło kluczowe, i wyłączyć im rzucanie cieni. Możesz umieścić jedno dodatkowe światło za sceną, aby oświetlało obiekty z tyłu (tzw. światło kontrowe lub światło tylne). Powinno być bardzo przytłumione i również nie może rzucać cieni. Z punktu widzenia twórcy obrazu wszystkie obiekty w scenie będą oświetlone, ale przeciętny użytkownik będzie uważał światło kluczowe za jedyne źródło oświetlenia, ponieważ to ono będzie rzucało cienie.

Rozdział 20.  Podstawowe techniki oświetlania sceny

617

Na rysunku 20.1 przedstawiono rozmieszczenie świateł, które są wykorzystywane w standardowym modelu oświetlenia, czyli światło kluczowe, dwa światła drugorzędne i światło tylne. Model ten nadaje się do większości typowych scen, ale jeśli chcesz dokładniej oświetlić konkretny obiekt, wymagane są dodatkowe światła.

Rysunek 20.1. Standardowy model oświetlenia obejmuje światło kluczowe, światła drugorzędne i światło tylne

Na rysunku 20.2 możesz zobaczyć obraz łosia, który został wyrenderowany przy różnych konfiguracjach standardowego modelu oświetlenia. Obraz u góry po lewej korzysta z domyślnego oświetlenia sceny, bez świateł zdefiniowanych przez użytkownika. Obraz u góry po prawej wykorzystuje jedynie światło kluczowe. Dzięki temu widoczny jest cień, ale szczegóły głowy są słabo widoczne. Obraz u dołu po lewej dodatkowo korzysta ze świateł drugorzędnych, przez co szczegóły głowy są lepiej widoczne i dodatkowo podświetlone jest poroże. Na obrazie u dołu po prawej dodano światło tylne, które podświetla tył modelu i tworzy aureolę na krawędziach przy patrzeniu od przodu. Ostatnim rodzajem światła, o którym należy pamiętać, jest światło otaczające. Nie ma ono bezpośredniego źródła, ale powstaje w wyniku odbijania światła przez ściany i obiekty. Zapewnia ogólne oświetlenie całości sceny i zapobiega powstawaniu całkowicie czarnych cieni. Globalne oświetlenie (Global Lighting), w tym światło otaczające (Ambient), jest ustawiane w panelu Environment1.

1

Chodzi o panel okna dialogowego Environment and Effects otwieranego poleceniem Rendering/Environment — przyp. tłum.

618

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.2. Model łosia wyrenderowany przy użyciu oświetlenia domyślnego — pojedynczego światła kluczowego, dwóch świateł drugorzędnych i światła tylnego

Cienie Cienie to obszary za obiektami, gdzie światło jest osłabione. Max obsługuje kilka różnych rodzajów cieni: powierzchniowe (Area Shadows), mapy cienia (Shadow Maps) i cienie generowane metodą śledzenia promieni (Ray Traced Shadows). Cienie powierzchniowe są tworzone przez rozległe źródła światła. Nie wymagają zbyt wiele pamięci i są miękkie — mają rozmyte krawędzie. Mapy cienia to bitmapy, które renderer tworzy i łączy z ukończoną sceną. Mogą mieć różną rozdzielczość, ale im będzie większa, tym więcej pamięci będzie wymagane. Mapy cienia zazwyczaj dają dość realistyczne, delikatniejsze cienie, ale nie obsługują przezroczystości. Cienie typu Ray Traced Max wylicza, śledząc ścieżkę każdego promienia światła padającego na scenę. Proces ten trwa dość długo, ale w rezultacie daje bardzo dokładne i wyraziste cienie. Raytracing (śledzenie promieni) pozwala na tworzenie cieni dla obiektów, z którymi nie radzą sobie mapy cienia, np. dla przezroczystego szkła. Rozwijana lista Shadows zawiera również opcję Advanced Ray Traced Shadows, która wykorzystuje pamięć efektywniej niż standardowa opcja Ray Traced Shadows. Dodatkową możliwością jest opcja mental ray Shadow Map, udostępniająca specyficzny typ map cieni generowany dla modułu mental ray. O śledzeniu promieni i module mental ray dowiesz się więcej w rozdziale 47., „Renderery mental ray i iray”.

Na rysunku 20.3 pokazano kilka obrazów wyrenderowanych z różnymi typami cieni. Obraz u góry po lewej nie zawiera cieni. W obrazie u góry po prawej użyto cieni powierzchniowych. Obraz u dołu po lewej powstał z wykorzystaniem mapy cienia, a u dołu po prawej — cieni typu Advanced Ray Traced Shadows. Wygenerowanie ostatnich dwóch obrazów zajęło dość dużo czasu. Model łosia wykreowała firma Viewpoint Datalabs.

Rozdział 20.  Podstawowe techniki oświetlania sceny

619

Rysunek 20.3. Obrazy wyrenderowane z różnymi rodzajami cieni: bez cienia (u góry po lewej), cienie powierzchniowe (u góry po prawej), mapa cienia (u dołu po lewej) i cienie uzyskane metodą śledzenia promieni (u dołu po prawej)

Rodzaje światła Max oferuje kilka różnych rodzajów źródeł światła. Różnią się głównie sposobem rzucania promieni świetlnych na scenę. Światło może pochodzić z domyślnych źródeł, które są używane, jeśli użytkownik nie utworzył własnych. Może ono również pochodzić z otoczenia, kiedy to światło odbija się od innych obiektów. Max oferuje również światła typu Omni, Direct, Spot i Skylight — każde działające na swój sposób. Zrozumienie różnic między nimi i zasad ich działania pomoże Ci opanować sterowanie oświetleniem.

Oświetlenie domyślne Zainstalowałeś Maksa i ochoczo uruchamiasz program, umieszczasz obiekty w scenie, renderujesz ją i... będziesz raczej rozczarowany wynikiem, ponieważ zapomniałeś ustawić światła. Tak? Nie! Max jest na tyle mądry, by domyślnie rozstawić niewidoczne światła w scenie, która nie zawiera innych źródeł oświetlenia. Oświetlenie domyślne przestaje mieć wpływ na scenę, gdy znajdzie się w niej jakiekolwiek źródło światła dodane przez użytkownika (nawet jeśli jest ono wyłączone). Kiedy wszystkie światła w scenie zostaną usunięte, domyślne oświetlenie pojawia się znowu w magiczny sposób. Możesz być zawsze pewien, iż Twoje obiekty są renderowane przy jakimś rodzaju oświetlenia. Oświetlenie domyślne składa się z dwóch świateł: pierwsze, zwane głównym lub kluczowym (key light), jest umieszczone u góry po lewej, drugie, wypełniające (fill light) — u dołu po prawej. Panel Visual Style & Appearance okna dialogowego Viewport Configuration zawiera opcję włączenia i wyłączenia domyślnego oświetlenia (Default Lights) dla dowolnego okna widokowego oraz włączenia tylko kluczowego źródła światła (1 Light) jako oświetlenia

620

Część IV  Materiały, kamery i oświetlenie

domyślnego. Możesz otworzyć to okno dialogowe, wybierając polecenie Views/Viewport Configuration lub też klikając znak plus przed nazwą okna widokowego i wybierając pozycję Configure Viewports z menu podręcznego. Jeśli chcesz mieć dostęp do ustawień domyślnych świateł sceny, możesz użyć polecenia Create/Lights/Standard Lights/Add Default Lights to Scene, aby w oparciu o domyślne oświetlenie utworzyć fizycznie źródła światła, którymi możesz sterować. Polecenie to otwiera proste okno dialogowe, w którym można wybrać źródło światła (Key, Fill lub oba) i określić skalowanie jego odległości od środka układu współrzędnych (Distance Scaling). Dzięki temu można rozpocząć od oświetlenia domyślnego, a potem je odpowiednio zmodyfikować. Polecenie Create/Lights/Standard Lights/Add Default Lights to Scene jest dostępne tylko wtedy, gdy w oknie Viewport Configuration wraz z opcją Default Lights została włączona opcja 2 Lights.

Światło otaczające (Ambient) Światło otaczające jednolicie rozświetla całą scenę. W świecie rzeczywistym są to promienie światła odbijające się od wszystkich obiektów. Przy użyciu okna dialogowego Environment and Effects możesz ustawić kolor światła otaczającego (Ambient). Domyślny kolor tego światła określa się w panelu Rendering okna dialogowego Preference Settings. Jest to w danej scenie najciemniejszy kolor widoczny głównie w obszarach cieni. Dodatkowo, oprócz globalnych ustawień światła otaczającego, każdy materiał może mieć dla tego rodzaju światła określony własny kolor, który definiujesz w edytorze materiałów. W kwestii wypełniania nieoświetlonych miejsc w scenie nie polegaj tylko i wyłącznie na świetle otaczającym. Jeśli zamiast świateł dodatkowych zastosujesz duże natężenie światła otaczającego, obiekty na scenie staną się płaskie i nie będzie możliwe uzyskanie kontrastów koniecznych do podkreślenia wyrazistości obiektów.

Światła standardowe W panelu Create wszystkie dostępne źródła światła zostały podzielone na dwie kategorie: standardowe (Standard) i fotometryczne (Photometric). Każda z tych kategorii ma swój własny zestaw parametrów. Do standardowych źródeł światła należą: punktowe (Omni), reflektorowe (Spot), kierunkowe (Direct), rozproszone w atmosferze światło słoneczne (Skylight) oraz dwa powierzchniowe (typu Spot i Omni) współpracujące z rendererem mental ray.

Punktowe źródło światła (Omni) Punktowe źródło jest jak żarówka — wysyła promienie światła we wszystkich kierunkach. Światła domyślne to właśnie światła tego rodzaju.

Rozdział 20.  Podstawowe techniki oświetlania sceny

621

Reflektor (Spotlight) Reflektory mają określony kierunek wiązki promieni świetlnych, a zatem możesz je kierować na konkretny fragment sceny i skalować. W Maksie znajdziesz dwa rodzaje reflektorów: wycelowany — Target Spot i swobodny — Free Spot. Pierwszy składa się z obiektu będącego źródłem światła i markera wyznaczającego kierunek padania promieni świetlnych ze źródła. Reflektor swobodny nie ma celu, dzięki czemu może być obracany w dowolnym kierunku przy użyciu przycisku Select and Rotate (wybierz i obróć). W oknach widokowych reflektory zawsze są wyświetlane jako stożek ze źródłem światła umieszczonym w wierzchołku. Oba rodzaje reflektorów są bardzo podobne do kamer, o których więcej możesz przeczytać w rozdziale 19., „Operowanie kamerami”.

Kierunkowe źródło światła (Direct) Kierunkowe źródło światła emituje w jednym kierunku promienie równoległe. Podobnie do reflektorów, dostępne są dwa rodzaje kierunkowych źródeł światła: z celem (Target Direct) i swobodne (Free Direct). Źródło światła typu Target zawsze zwraca się w kierunku celu, który możesz przemieszczać w obrębie sceny przy użyciu przycisku Select and Move. Źródło typu Free może być obracane w dowolny sposób. W oknach widokowych światła kierunkowe wyświetlane są zawsze jako cylindry.

Źródło rozproszone typu Skylight Źródło Skylight jest jak sterowalne światło typu Ambient. Możesz przemieszczać je w obrębie sceny, tak jak inne źródła. Możesz także zastosować ustawienia środowiska sceny (Scene Environment) lub wybrać kolor nieba (Sky Color).

Powierzchniowe źródła światła (Area Omni i Area Spot) Powierzchniowe źródła emitują światło z określonej powierzchni, a nie z pojedynczego punktu. Występuje więc efekt sumowania światła docierającego do danego punktu z różnych rejonów źródła. Takie źródła światła współpracują jedynie z rendererem mental ray. Jeśli użyjesz renderera Scanline, będą się zachowywały jak zwykłe źródła punktowe. Źródło typu Area Omni pozwala na ustawienie swojego kształtu. Do wyboru w rolecie Area Light Parameters są: sfera (Sphere) lub walec (Cylinder). Reflektory typu Area Spot mogą mieć kształt prostokąta (Rectangular) lub dysku (Disc-shaped). Pamiętaj o tym, że rendering świateł powierzchniowych może trwać o wiele dłużej niż świateł punktowych. O module renderowania mental ray dowiesz się więcej, czytając rozdział 47., „Renderery mental ray i iray”.

Światła fotometryczne W Maksie światła standardowe są regulowane takimi parametrami jak Multiplier (mnożnik), Decay (osłabianie) i Attenuation (wygaszanie), ale ostatnia moja wizyta w sklepie AGD i poszukiwania żarówki z mnożnikiem 2,5 skończyła się fiaskiem. Światła w świecie

622

Część IV  Materiały, kamery i oświetlenie

rzeczywistym mają własne miary określające rodzaj wytwarzanego przez nie światła. Światła fotometryczne są oparte właśnie na tych rzeczywistych wartościach, takich jak strumień świetlny mierzony w lumenach czy temperatura barwowa wyrażana w kelwinach. Jeśli wybierzesz podmenu Create/Lights lub też kategorię Lights w panelu Create, zobaczysz pozycję o nazwie Photometric. Źródła światła z tej grupy opisywane są przez wielkości fotometryczne, które określają ich energię świetlną. Są to źródła Target Light i Free Light. Kategoria świateł fotometrycznych zawiera także opcję mr Sky Portal, która umożliwia skupianie światła pochodzącego z innego źródła. Więcej informacji na temat tej funkcji zawarto w rozdziale 47., „Renderery mental ray i iray”.

Aby ułatwić wybór właściwego światła, Max dla świateł wolumetrycznych oferuje roletę Templates (szablony) z szeregiem gotowych ustawień imitujących rzeczywiste źródła światła, takie jak żarówki o mocy 40, 60, 75 i 100 watów, reflektory halogenowe, świetlówki, a nawet lampy uliczne i stadionowe. Za każdym razem gdy tworzone jest źródło światła fotometrycznego, wyświetlane jest okno dialogowe zalecające włączenie logarytmicznej kontroli ekspozycji (Logarithmic Exposure Control). Informuje ono również o możliwości zmiany ustawień tej funkcji. Więcej informacji na temat sterowania ekspozycją znajdziesz w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Tworzenie i ustawianie świateł w scenie Max w ustawieniu domyślnym może utworzyć wiele różnych rodzajów światła. Każde z nich ma inne funkcje i właściwości. Aby wykreować światło, rozwiń podmenu Create/Lights, a następnie wybierz rodzaj światła, lub wybierz kategorię Lights w panelu Create i kliknij przycisk odpowiedni dla rodzaju światła, jaki chcesz utworzyć. Następnie przeciągnij myszą w oknie widokowym. Większość źródeł światła można utworzyć jednym kliknięciem, ale by powstało źródło wycelowane (Target), musisz kliknąć pozycję źródła i przeciągnąć do punktu docelowego.

Transformacje świateł Źródła światła mogą być przekształcane, tak jak inne obiekty geometryczne. Aby przekształcić źródło, kliknij jeden z przycisków transformacji na głównym pasku narzędziowym, a następnie zaznacz i przeciągnij wybrane źródło w oknie widokowym. W przypadku świateł wycelowanych możesz przekształcać źródło i punkt docelowy niezależnie; możesz także wybrać oba elementy, klikając linię, która je łączy. Światła tego typu mogą być obracane wokół osi X i Y tylko wtedy, gdy punkt docelowy i źródło są jednocześnie zaznaczone. Obrót wokół lokalnej osi Z jest możliwy nawet wtedy, gdy punkt docelowy nie jest zaznaczony. Skalowanie światła wycelowanego zwiększa jego stożek lub walec. Skalowanie światła typu Target Direct przy zaznaczonym jedynie źródle zwiększa średnicę wiązki światła, ale jeśli wybierzesz źródło i punkt docelowy, skalowaniu podlegają średnica i zasięg.

Rozdział 20.  Podstawowe techniki oświetlania sceny

623

Prostym sposobem na zaznaczanie i anulowanie zaznaczenia punktu docelowego jest kliknięcie źródła światła prawym przyciskiem myszy i wybranie z podręcznego menu opcji Select Light Target. Na światłach swobodnych są możliwe do przeprowadzenia wszystkie rodzaje transformacji.

Podgląd świateł i cieni w oknach widokowych Jeśli korzystasz ze sterownika Nitrous lub Direct3D, możesz w oknach widokowych wyświetlić zarówno światła, jak i cienie. Aby sprawdzić, czy karta graficzna obsługuje interaktywne światła i cienie, wybierz polecenie Help/Diagnose Video Hardware. Polecenie to uruchamia skrypt testujący i wyświetla jego rezultaty w oknie MAXScript Listener. Jeśli karta graficzna obsługuje wyświetlanie cieni, możesz je włączyć, wybierając opcję Shadows w podmenu Lighting and Shadows dostępnym po kliknięciu etykiety cieniowania w oknie widokowym. Opcja ta jest dostępna również w panelu Visual Style & Appearance okna dialogowego Viewport Configuration. Jeśli używasz sterownika Nitrous, we wspomnianym wyżej menu etykiety cieniowania znajdziesz opcję włączania efektu Ambient Occlusion (zasłanianie światła otaczającego). Dostępne zarówno w czteroczęściowym menu kontekstowym, jak i w menu Views polecenie Viewport Lighting and Shadows zawiera opcje blokowania i odblokowywania zaznaczonych źródeł światła (Lock i Unlock Selected Lights) oraz automatycznego włączania źródeł zaznaczonych (Auto Display Selected Lights). Na rysunku 20.4 pokazano bałwana w oknie widokowym z włączoną opcją wyświetlania cieni.

Lista świateł Polecenie Tools/Light Lister otwiera okno dialogowe Light Lister widoczne na rysunku 20.5, w którym możesz szybko sprawdzić wszystkie szczegóły dotyczące wszystkich świateł w scenie. Okno to pozwala również na zmianę ustawień poszczególnych świateł. Zawiera dwie rolety, jedna z nich to Configuration, która pozwala wybrać wyświetlanie listy wszystkich świateł (All Lights), tylko zaznaczonych (Selected Lights) lub ogólnych opcji dotyczących wszystkich świateł (General Settings); druga roleta to Lights, która zawiera szczegółowe informacje o każdym świetle z osobna, a jej zawartość jest zależna od opcji wybranej w rolecie konfiguracyjnej. Jeśli wybrana jest opcja General Settings, roleta Lights zmienia się w roletę General Settings zawierającą wszystkie standardowe ustawienia, takie jak mnożnik (Multiplier), barwa (Color), cienie (Shadows), rozmiar mapy cieni (Map Size) i im podobne. Ustawianie tych parametrów powoduje zmiany świateł zaznaczonych (Selected Lights) lub wszystkich (All Lights). Okno Light Lister w łatwy sposób umożliwia zmianę parametrów wielu świateł za jednym razem. Jeśli w pierwszej rolecie zaznaczona jest opcja All Lights lub Selected Lights, parametry będą widoczne w rolecie Lights. Przy użyciu tej rolety możesz zmienić ustawienia poszczególnych świateł. Przycisk Refresh aktualizuje okno dialogowe Light Lister, jeśli do sceny zostało dodane nowe światło lub też zmieniono jakiekolwiek parametry świateł w panelu Modify.

624

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.4. Po włączeniu w oknie widokowym opcji wyświetlania cieni można nimi sterować w czasie rzeczywistym Rysunek 20.5. Okno dialogowe Light Lister zawiera kompletną listę ustawień wszystkich źródeł światła

Jeśli jakieś źródło światła zostało sklonowane, w oknie Light Lister będzie wyświetlany tylko jeden klon, ale pozostałe będą dostępne na liście, którą można rozwinąć przez kliknięcie strzałki obok nazwy źródła.

Umieszczanie odbłysków Funkcja Place Highlight (Ctrl+H) pozwala na kontrolowanie lokalizacji i orientacji światła w celu osiągnięcia efektu odbłysku w precyzyjnie określonym miejscu. Aby użyć tej funkcji, musisz w scenie zaznaczyć źródło światła, a następnie wybrać polecenie Tools/Align/Place Highlight lub też kliknąć przycisk Place Highlight na głównym pasku narzędziowym. Kursor zmieni się w ikonę Place Highlight. Kliknij na obiekcie punkt, w którym chcesz uzyskać efekt odbłysku, a wybrane światło przemieści się samodzielnie

Rozdział 20.  Podstawowe techniki oświetlania sceny

625

w taki sposób, by we wskazanym miejscu powstał odbłysk. Pozycja światła jest określana na podstawie współczynnika Angle of Incidence, określającego kąt pomiędzy normalną w punkcie odbłysku i kierunkiem padania światła. Gdy przeciągamy wskaźnik myszy po powierzchni obiektu, wraz z nim przemieszcza się mały niebieski wektor wystający z tejże powierzchni. Gdy zwolnisz przycisk myszy, światło zostanie ustawione na linii wyznaczonej przez niebieski wektor. Jest to bardzo pomocne przy dokładnym ustawianiu świateł.

Ćwiczenie: Oświetlanie twarzy bałwana Aby ustawić światło na naszego bałwana, możesz użyć funkcji Place Highlight. Żeby na obiekcie umieścić odbłysk, wykonaj następujące czynności. 1. Otwórz plik Snowman.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prostego bałwana utworzonego przy użyciu brył parametrycznych. 2. Wybierz polecenie Create/Lights/Standard Lights/Target Spotlight i umieść reflektor poniżej i z lewej strony modelu bałwana. 3. Aby wybrać miejsce odbłysku tak, żeby rozświetlał twarz bałwana, zaznacz źródło światła, a następnie wybierz polecenie Tools/Align/Place Highlight. Teraz kliknij twarz bałwana w miejscu, w którym powinien znaleźć się efekt odbłysku, tuż nad jego prawym okiem. Na rysunku 20.6 przedstawiono wynik naszego działania.

Oglądanie sceny z pozycji źródła światła Okna widokowe można ustawić tak, by pokazywały widok z dowolnego źródła światła, z wyjątkiem źródeł punktowych. W tym celu wystarczy kliknąć etykietę widoku okna widokowego i rozwinąć podmenu Lights, a następnie wybrać nazwę światła. Skrót klawiszowy do zmieniania aktywnego okna widokowego w widok ze źródła światła to $ (znak dolara widoczny nad cyfrą 4). Jeśli istnieje więcej niż jedno źródło światła, pojawi się okno Select Light, które pozwala na wybranie konkretnego źródła. Opcja ta jest dostępna jedynie dla reflektorów i źródeł światła kierunkowego.

Sterowanie widokiem ze źródła światła Kiedy okno widokowe przedstawia widok z pozycji źródła światła, przyciski Viewport Navigation w prawym dolnym rogu ekranu zamieniają się w przyciski Light Navigation. W tabeli 20.1 zawarto opis tych przycisków. Wiele tych funkcji znamy z okien widokowych pokazujących podgląd z kamery.

626

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.6. Bałwan po automatycznym przestawieniu światła za pomocą polecenia Place Highlights Tabela 20.1. Przyciski nawigacyjne źródła światła Przycisk Nazwa nawigacyjny

Opis

Dolly Light, Dolly Target, Dolly Spotlight+Target

Przemieszcza źródło światła, jego punkt docelowy lub oba te elementy bliżej lub dalej względem sceny, z zachowaniem kierunku padania promieni.

Light Hotspot

Pozwala zmienić rozwartość stożka maksymalnej jasności, który wyświetlany jest w kolorze niebieskim.

Roll Light

Obraca źródło światła względem jego lokalnej osi Z.

Zoom Extents All, Zoom Extents Selected

Powoduje zbliżenie widoku na wszystkie obiekty lub tylko wybrane, do momentu wypełnienia przez nie całego okna widokowego.

Light Falloff

Zmienia kąt rozwarcia stożka zaniku światła.

Truck Light

Przemieszcza źródło światła prostopadle do linii wzroku.

Orbit Light, Pan Light

Przycisk Orbit obraca źródło światła dookoła celu. Przycisk Pan obraca cel dookoła źródła.

Maximize Viewport Toggle Powiększa aktualne okno widokowe do rozmiaru całego ekranu. Ponowne kliknięcie przywraca pierwotny widok z kilku okien.

Rozdział 20.  Podstawowe techniki oświetlania sceny

627

Jeśli podczas używania przycisków Light Hotspot lub Falloff przytrzymasz klawisz Ctrl, Max utrzyma odległość pomiędzy stożkami jasności i zaniku. Przytrzymanie klawisza Alt spowoduje zmianę rozmiaru stożka w wolniejszy sposób. Stożek maksymalnej jasności nie może być większy od stożka zaniku, ale jeśli przytrzymasz klawisz Shift, każda próba uczynienia stożka jasności większym od stożka zaniku spowoduje zwiększenie rozmiarów obu. W ten sam sposób możesz również zmniejszać obydwa stożki. Możesz ograniczyć ruchy świateł do jednej osi, przytrzymując klawisz Shift. Klawisz Ctrl powoduje gwałtowne przyspieszenie ruchu. Dla świateł swobodnych niewidzialny punkt docelowy wyznaczany jest w oparciu o parametry światła. Możesz użyć klawisza Shift, aby ograniczyć obroty do osi pionowej lub poziomej. W standardowych oknach widokowych możesz cofnąć zmiany za pomocą polecenia Views/Undo, ale zmiany w oknie widoku ze źródła światła cofniesz przy użyciu zwykłego polecenia Edit/Undo.

Ćwiczenie: Włączanie lampy Aby poćwiczyć używanie świateł, spróbujmy zmusić model lampy do funkcjonowania jak na lampę przystało. Aby dodać światło do modelu lampy, wykonaj następujące czynności. 1. Otwórz plik Lamp.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model lampy otoczony przez płaszczyzny, które symbolizują ściany i podłogę. Model lampy powstał w Zygote Media. Wyglądem przypomina przeciętną lampę stojącą, którą można kupić w pierwszym lepszym sklepie. 2. Wybierz z menu polecenie Create/Lights/Standard Lights/Omni, następnie kliknij dowolne okno widokowe. 3. Użyj przycisku Select and Move (W), aby umieścić źródło światła w środku żarówki. Na rysunku 20.7 widoczny jest efekt końcowy. Zauważ, że natężenie światła jest większe w miejscach bliższych źródłu światła.

Zmiana parametrów światła Światła wpływają na każdy obiekt znajdujący się w scenie, przez co mogą w dużym stopniu zepsuć lub upiększyć renderowany obraz. Nie dziw się więc, że każde światło posiada wiele różnych parametrów i opcji. Kilka rolet z tymi ustawieniami pozwala dopasować efekt końcowy do naszych oczekiwań. Jeśli potrzebujesz przełącznika do włączania świateł, znajdziesz go w panelu Modify (opcja On). Kiedy źródło światła jest zaznaczone, pojawia się tam kilka różnych rolet. Opcje zawarte w roletach pozwalają na włączanie i wyłączanie świateł, wybranie koloru i natężenia światła oraz określenie wpływu światła na powierzchnie obiektów.

628

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.7. Wyrenderowany obraz zapalonej lampy

Parametry ogólne Rozwijana lista Light Type w rolecie General Parameters umożliwia natychmiastową zmianę rodzaju źródła światła, tak więc bez większych problemów możesz zamienić źródło punktowe na reflektor lub odwrotnie. Za pomocą opcji Targeted możesz również wybierać między źródłem wycelowanym a swobodnym. Na prawo od opcji Targeted znajdziesz odległość pomiędzy źródłem światła a punktem docelowym, podaną w jednostkach stosowanych w scenie. Wszystko to ułatwia sprawdzenie wyników zastosowania różnych rodzajów światła. Trzeba jednak pamiętać, że po zmianie na inny typ światła tracimy ustawienia poprzedniego światła. Roleta General Parameters zawiera również ustawienia cieni (Shadows). Można je łatwo włączyć i wyłączyć za pomocą opcji On. Możesz odwołać się do globalnych ustawień, włączając opcję Use Global Settings. Pozwala ona na utrzymanie jednolitych ustawień cieni dla wielu różnych świateł. Wprowadza takie same ustawienia dla wszystkich świateł, tak więc zmiana jednej wartości dla jednego z nich powoduje identyczną zmianę u wszystkich innych, które mają włączoną tę opcję. Możesz również z rozwijanej listy wybrać sposób tworzenia cieni — czy powstają przy użyciu cieni powierzchniowych (Area Shadows), mapy cieni (Shadow Map), cieni generowanych metodą raytracingu (Ray Traced Shadows i Adv. Ray Traced), czy też mapy cieni modułu mental ray (mental ray Shadow Map). W zależności od wybranego typu cieni wyświetlana jest odpowiednia roleta z ich ustawieniami. Przycisk Exclude otwiera okno dialogowe Exclude/Include (włącz/wyłącz), w którym możesz wybierać obiekty wyłączone z efektów oświetlenia (opcja Illumination) i (lub) cieni (Shadow Cassting). Okienko po lewej zawiera nazwy wszystkich obiektów znajdujących się w scenie. Aby wykluczyć obiekty z oświetlenia, należy wybrać opcję Exclude, następnie zaznaczyć obiekty, które mają być wykluczone w okienku po lewej, i kliknąć przycisk z podwójną strzałką skierowaną w prawo, żeby przemieścić obiekty do okienka po prawej.

Rozdział 20.  Podstawowe techniki oświetlania sceny

629

Na rysunku 20.8 przedstawiono okno dialogowe Exclude/Include. Znajdziesz w nim także wszelkie zestawy wyborów, jakie uprzednio zdefiniowałeś. Możesz je wybrać z rozwijanej listy Selection Sets. Rysunek 20.8. Okno dialogowe Exclude/Include pozwala wybrać obiekty wykluczone z obliczania oświetlenia w scenie

W ramach przykładu zastosowania opcji Exclude/Include na rysunku 20.9 przedstawiono model łosia z porożem (po lewej) i korpusem (po prawej) wyłączonymi z generowania cieni. Rysunek 20.9. Przy użyciu okna dialogowego Exclude/Include możesz włączyć i wyłączyć obiekty z procesu oświetlania i rzucania cieni

Roleta Intensity/Color/Attenuation W rolecie Intensity/Color/Attenuation dostępny jest mnożnik (Multiplier), który reguluje natężenie światła. Światło z wartością mnożnika równą 2 jest dwa razy jaśniejsze od światła z tym współczynnikiem na poziomie 1. Wyższe wartości mnożnika powodują, że światło staje się bielsze, niezależnie od wybranej dla niego barwy. Mnożnik może też być mniejszy od zera. Z wartości ujemnej korzystamy, by zmniejszyć ilość światła w scenie, ale należy jej używać z rozwagą. Dodanie i ustawienie kolejnego światła jest zasadniczo wyjściem lepszym od zwiększenia mnożnika.

Na prawo od mnożnika znajduje się próbka z kolorem światła. Kliknięcie jej powoduje otwarcie okna wyboru koloru, gdzie możesz określić nową barwę światła. Wygaszanie (Attenuation) określa sposób, w jaki światło zanika wraz ze zwiększaniem się odległości od źródła. Przykładem tego zjawiska jest świeczka ustawiona w pokoju. Im dalej od świeczki, tym mniej światła dociera.

630

Część IV  Materiały, kamery i oświetlenie

Aby symulować realistyczny zanik światła, stosuje się kombinację trzech ustawień. Near Attenuation pozwala określić zakres odległości, w którym światło osiąga natężenie maksymalne, a Far Attenuation określa zakres odległości, w którym wartość światła spada do zera. Oba te parametry są zdefiniowane przez początek (Start) i koniec (End) zakresu. Kolejnym ważnym parametrem zaniku światła jest ustawienie Decay, które określa przebieg wygaszania przy użyciu odpowiedniej formuły matematycznej. Wybranie opcji Use włącza ustawianie zakresów Near Attenuation i Far Attenuation. Obie opcje pozwalają ustalić wartość początkową i końcową zakresu. Opcja Show włącza wizualizację zakresów wygaszania w oknach widokowych2. Trzy opcje zaniku, spomiędzy których możesz wybierać w polu Decay, to brak zaniku (None), natężenie światła odwrotnie proporcjonalne do odległości (Inverse) i odwrotnie proporcjonalne do kwadratu odległości (Inverse Square). Wygaszanie Inverse Square jest najbliższe warunkom naturalnym, ale efektem jego zastosowania jest często zbyt ciemny obraz, jak na potrzeby grafiki komputerowej. Możesz zrównoważyć ten efekt, zwiększając wartość Multiplier.

Parametry reflektorów i świateł kierunkowych Roleta Spotlight Parameters zawiera wartości pozwalające ustawić różnicę rozwartości stożków jasności (Hot Spot) i wygaszania (Falloff). Opcja Show Cone wyświetla stożki jasności i wygaszania w oknie widokowym, kiedy źródło światła nie jest zaznaczone. Opcja Overshoot powoduje rozchodzenie się światła we wszystkie strony, tak jak w przypadku źródła punktowego, ale mapy projekcji i cienie pojawiają się jedynie w obrębie stożka wygaszania. Możesz także ustawić kształt reflektora na kolisty (Circle) lub prostokątny (Rectangle). Gdy wybierzesz reflektor prostokątny, możesz ustawić jego proporcje. Dzięki przyciskowi Bitmap Fit dopasujesz proporcje reflektora tak, aby pasowały do określonej bitmapy. Roleta Directional Light Parameters, która pojawia się dla świateł kierunkowych, jest taka sama jak roleta Spotlight Parameters i także zawiera ustawienia dla stożków Hot Spot i Falloff.

Efekty zaawansowane (Advanced Effects) Opcje w sekcji Affect Surface rolety Advanced Effects służą do ustawienia interakcji światła z powierzchnią obiektu. Wartość Contrast zmienia kontrast pomiędzy obszarami powierzchni, na których zachodzi rozpraszanie światła i mieszanie koloru światła rozproszonego ze światłem otaczającym. Opcja Soften Diffuse Edge rozmywa krawędzie pomiędzy tymi dwoma obszarami. Opcje Diffuse i Specular pozwalają wyłączyć odpowiednio rozpraszanie i odblaski na powierzchni obiektu. Przy włączonej opcji Ambient Only światło wpływa jedynie na właściwości koloru Ambient w materiale obiektu. Więcej o składowych światła i kolorach Diffuse, Specular i Ambient dowiesz się, czytając rozdział 15., „Rozszerzony edytor materiałów”. 2

Włączenie tej opcji powoduje wyświetlanie zakresów zanikania wtedy, gdy źródło światła nie jest zaznaczone — przyp. tłum.

Rozdział 20.  Podstawowe techniki oświetlania sceny

631

Każde źródło światła możesz wykorzystać jako projektor do rzutowania mapy na powierzchnie obiektów. Opcja ta znajduje się w rolecie Advanced Effects. Opcja Map pozwala na wykorzystanie światła jako rzutnika. Mapę, która będzie rzutowana, wybieramy, klikając przycisk po prawej stronie opcji Map. Możesz także przeciągnąć mapę materiału na ten przycisk bezpośrednio z okna Material/Map Browser.

Parametry cienia (Shadow Parameters) Wszystkie rodzaje światła mają roletę Shadow Parameters, której możesz użyć do wybrania koloru cienia poprzez kliknięcie próbki koloru. Domyślnym kolorem cieni jest czerń. Wartość Dens kontroluje gęstość cienia. Niższe wartości dają w rezultacie jasne cienie, wyższe — cienie ciemniejsze. Wartość ta może być również ujemna. Opcja Map, tak jak Projection Map, może być używana do rzutowania mapy razem z kolorem cienia. Opcja Light Affects Shadow Color po włączeniu zmienia kolor cienia przez zmieszanie go z kolorem światła. W sekcji Atmosphere Shadows opcja On pozwala określić, czy efekty atmosferyczne, takie jak mgła, rzucają cienie. Możesz także regulować wartość krycia (Opacity) i stopień zmieszania kolorów atmosferycznych z kolorem cienia (Color Amount). Kiedy zaznaczysz źródło światła i otworzysz panel Modify, pojawia się jedna dodatkowa roleta — Atmospheres and Effects. Jest ona skrótem do okna dialogowego Environment, w którym możesz określić właściwości efektów atmosferycznych, takich jak mgła i światła wolumetryczne. Jedynymi efektami, jakie można zastosować w odniesieniu do świateł, są Volume Light (światło wolumetryczne) i Lens Effects (efekty obiektywu).

W rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”, szczegółowo opisano efekty pogodowe.

Jeśli w rolecie General Parameters wybrane są cienie powierzchniowe (Area Shadows), dostępna staje się roleta Area Shadows, zawierająca ustawienia tego rodzaju cieni. Z rozwijanej listy u góry rolety możesz wybrać kilka opcji podstawowych: prosty cień (Simple), światło prostokątne (Rectangle Light), dyskoidalne (Disc Light), sześcienne (Box Light) i sferyczne (Sphere Light). Możesz określić wymiary, zależnie od wybranej opcji, a także ustawić wartości parametrów decydujących m.in. o zwartości, jakości i rozpraszaniu cieni (Integrity, Quality, Spread, Bias i Jitter). Gdy wybierzesz mapy cieni (Shadow Map), w rolecie Shadow Map Params znajdziesz wartości odchylenia (Bias), rozmiaru (Size) oraz zakresu próbkowania (Sample Range). Ostatnia wartość wygładza krawędzie cieni. Możesz także zdecydować się na zastosowanie absolutnego odchylenia mapy — Absolute Map Bias i dwustronnych cieni — 2 Sided Shadows. Jeśli w rolecie General Parameters wybrałeś opcję cieni generowanych metodą raytracingu (Ray Traced Shadows), poniżej pojawi się roleta Ray Traced Shadows Parameters. Ta prosta roleta zawiera jedynie dwie wartości: Bias i Max Quadtree Depth. Odchylenie

632

Część IV  Materiały, kamery i oświetlenie

(Bias) powoduje przybliżenie lub oddalenie cienia od obiektu, który go rzuca. Parametr Max Quadtree Depth wpływa na dokładność cieni poprzez zdefiniowanie zasięgu śledzenia ścieżek promieni. Tutaj również znajduje się opcja cieni dwustronnych (2 Sided Shadows), która umożliwia rzucanie cieni przez obie strony ścianki. Przy wybraniu cieni typu Adv. Ray Traced (zaawansowane cienie typu Ray Traced) w rolecie pojawia się wiele więcej możliwości, łącznie z opcjami antyaliasingu: Simple, 1-Pass lub 2-Pass. Zawiera ona również te same wartości ustawiania jakości, które pojawiają się w rolecie Area Shadows. Renderowanie cieni może trwać dość długo i jest zależne od ilości obiektów w scenie. Włączenie cieni typu Ray Traced przy złożonej scenie może drastycznie zwiększyć czas renderowania.

Optymalizowanie świateł Jeśli wybrałeś cienie powierzchniowe lub zaawansowane cienie typu Ray Traced, pojawia się osobna roleta Optimizations. Zawiera ona opcje pozwalające przyspieszyć proces renderowania cieni. Przy jej użyciu możesz włączyć rzucanie cieni przez obiekty półprzezroczyste (opcja On w sekcji Transparent Shadows) i również określić kolor, który będzie zastosowany jako próg antyaliasingu (Anti-aliasing Threshold). Ponadto możesz wyłączyć antyaliasing dla materiałów z włączonym nadpróbkowaniem (Supersampled Material) lub odbiciem/załamaniem (Reflection/Refraction). W końcu możesz zmusić renderer do pomijania cieni rzucanych wzajemnie na siebie przez sąsiadujące ze sobą ścianki (Skip Coplanar Faces). Parametr Threshold (próg) określa kąt między ściankami.

Sterowanie stożkami jasności (Hotspot) i wygaszania (Falloff) Kiedy na głównym pasku narzędziowym włączony jest tryb Select and Manipulate, podstawy stożków jasności i wygaszania dla zaznaczonego reflektora stają się zielone. Gdy nad tymi liniami przesuniesz kursor, ich kolor zmieni się na czerwony, a Ty będziesz mógł przeciągać je, aby zmienić rozwartość odpowiedniego stożka. Jest to interaktywny sposób zmieniania parametrów reflektora.

Parametry świateł fotometrycznych Większość rolet świateł fotometrycznych jest identyczna z roletami dla świateł standardowych, ale są w nich również opcje charakterystyczne dla świateł parametrycznych, takie jak możliwość wyboru modelu dystrybucji światła i kształtu jego źródła.

Opcje dystrybucji (Distribution) Opcje dystrybucji znajdują się w rozwijanej liście u dołu rolety General Parameters. Zarówno światłom swobodnym (Free), jak i wycelowanym (Target) można nadać jeden z czterech modeli dystrybucji. Każdy z nich reprezentuje inna ikona w oknach widokowych.

Rozdział 20.  Podstawowe techniki oświetlania sceny

633



Uniform Spherical — emituje światło równomiernie we wszystkich kierunkach z jednego punktu, podobnie jak standardowe światło Omni.



Uniform Diffuse — oznacza emisję światła równomiernie we wszystkich kierunkach, ale tylko w obrębie jednej półkuli, tak jak lampa wisząca na ścianie.



Spotlight — ten typ dystrybucji tworzy snop światła w kształcie stożka, podobnie jak reflektor samochodowy.



Photometric Web — ten typ dystrybucji światła może przyjmować dowolny kształt trójwymiarowy definiowany w oddzielnym pliku, jaki można otrzymać od producenta sprzętu oświetleniowego i przypisać obiektowi źródła światła. Po przypisaniu pliku w rolecie Distribution wyświetlany jest wykres zastosowanego rozkładu.

Opcja Uniform Spherical powoduje rozkładanie światła równomiernie we wszystkich kierunkach. Rozkład typu Uniform Diffuse oznacza największe natężenie światła w kierunku prostopadłym do powierzchni, z której jest emitowane, stopniowo malejące dla pozostałych kierunków. Dla obu rozkładów natężenie światła maleje wraz ze wzrostem odległości od źródła. Opcja Spotlight powoduje skoncentrowanie energii świetlnej w stożku światła. Stożek światła jest kierunkowy i mają na niego wpływ wartości Hotspot i Falloff. Opcja Photometric Web umożliwia otwarcie osobnego pliku opisującego rozkład natężenia światła emitowanego przez dane źródło. Pliki te mają rozszerzenia .IES, .CIBSE lub .LTLI. Producenci rzeczywistych źródeł światła mają takie dane dla swoich produktów. Pliki te wczytujesz, używając przycisku Choose Photometric File, który znajduje się w rolecie Distribution (Photometric Web). W rolecie tej możesz także obrócić rozkład wokół osi X, Y i Z.

Opcje koloru (Color) Sekcja Color rolety Intensity/Color/Attenuation, pokazanej na rysunku 20.10, udostępnia dwa sposoby określenia koloru światła. Pierwszy to rozwijana lista opcji. Znajdują się na niej predefiniowane ustawienia świateł rzeczywistych, takie jak Cool Light, Mercury czy Halogen. W tabeli 20.2 wymieniono wszystkie rodzaje tych świateł i ich przybliżone barwy. Możesz również określić barwę światła na podstawie temperatury wyrażonej w skali Kelwina. Od chłodnego przy 1000 kelwinów, czyli fiołkoworóżowego, poprzez jasnożółty i biały (6000 kelwinów), do gorącego, jasnoniebieskiego przy 20 000 kelwinów. Typowe oświetlenie wnętrz plasuje się w dolnej części tej skali, w okolicach 3300 kelwinów. Bezpośrednie światło słoneczne ma temperaturę ok. 5500 kelwinów, a błyskawice i inne wyładowania elektryczne emitują światło z zakresu od 10 000 do 20 000 kelwinów. Możesz także ustawić kolor wirtualnego filtra (Filter Color). Symuluje on wpływ barwionego celofanu nałożonego na źródło światła.

634

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.10. Roleta Intensity/ Color/Attenuation dla świateł fotometrycznych korzysta z rzeczywistych wartości natężenia światła

Tabela 20.2. Barwy świateł fotometrycznych Rodzaj światła

Barwa

Cool White

żółtobiałe

Custom

dowolne

D65White

białe

Daylight Fluorescent

białe z lekkim odcieniem szarości

Fluorescent

żółtobiałe

Halogen

beżowobiałe

High Pressure Sodium

jasnobrązowe

Incandescent

beżowobiałe

Low Pressure Sodium

jasnopomarańczowe

Mercury

zielonobiałe

Metal Halide

żółtobiałe

Phosphor Mercury

jasnozielone

Quartz

żółtobiałe

White Fluorescent

żółtobiałe

Xenon

białe

Opcje natężenia (Intensity) i wygaszania (Attenuation) Natężenie światła można określić w lumenach (lm), kandelach (cd) lub luksach (lx) przy zadanej odległości. Producenci świateł udostępniają informacje na temat tych wartości. W rolecie Intensity/Color/Attenuation możesz ustawić wartość Multiplier, która określa stopień efektywności światła. Są tam również ustawienia pozwalające określić natężenie

Rozdział 20.  Podstawowe techniki oświetlania sceny

635

światła wynikające z zastosowania efektu ściemnienia (dimming). Można też włączyć opcję zmieniającą barwę ściemnianej żarówki na bardziej żółtą (Incandescent lamp color shift when dimming). Taki efekt zaobserwujemy np. podczas oddalania się od źródła światła. Światła fotometryczne, tak jak rzeczywiste, mają określony zasięg, który można ustalić za pomocą parametrów z sekcji Far Attenuation. Ograniczając w ten sposób drogę promieni świetlnych, możemy znacznie skrócić czas renderingu sceny zwłaszcza wtedy, jeśli umieszczono w niej dużo źródeł światła.

Kształty świateł Niezależnie od typu dystrybucji, dla danego źródła światła można także wybrać konkretny kształt, co ma duży wpływ na jakość cieni przez nie tworzonych. Światła emitowane przez źródła o dużych powierzchniach nie są tak intensywne i nie generują tak ostrych cieni jak światła pochodzące ze źródeł punktowych. Dla świateł fotometrycznych dostępne są następujące kształty. 

Point (punkt) — źródło o tym kształcie emituje światło z jednego punktu, tak jak żarówka.



Line (linia) — emituje światło z linii prostej, tak jak świetlówka.



Rectangle (prostokąt) — emituje światło z prostokątnego obszaru, tak jak lampa złożona z kilku świetlówek.



Disk (koło) — emituje światło z kolistego obszaru, tak jak lampa z otwartym abażurem.



Sphere (kula) — emituje światło z powierzchni kuli, tak jak chiński lampion.



Cylinder (walec) — emituje światło z powierzchni walca, tak jak niektóre lampy oświetleniowe.

W rolecie Shape/Area Shadows można ustalić rozmiary dla każdego kształtu. Tutaj można także zmienić kształt źródła na inny. Jeśli włączysz opcję Light Shape Visible in Rendering, kształt źródła światła będzie widoczny w obrazie zrenderowanym.

Używanie systemu światła słonecznego (Sunlight) i dziennego (Daylight) Systemy światła słonecznego i dziennego dostępne są w kategorii Systems panelu Create oraz jako polecenie Create/Lights/Daylight System. Tworzą światło, które symuluje Słońce w określonym miejscu na Ziemi, w danym dniu, o danej godzinie i przy określonym według kompasu kierunku. System światła dziennego (Daylight) możesz utworzyć przy użyciu menu Create/Lights lub Create/Systems, jednak systemu światła słonecznego (Sunlight) nie utworzysz z poziomu menu.

Aby utworzyć którykolwiek z tych systemów, otwórz panel Create i kliknij przycisk kategorii Systems. Następnie kliknij przycisk Sunlight (lub Daylight) i przeciągnij myszą

636

Część IV  Materiały, kamery i oświetlenie

w oknie widokowym. Pojawi się obiekt kompasu (Compass). Kliknij ponownie, aby utworzyć światło kierunkowe (lub nieboskłonu), pełniące rolę Słońca. Na rysunku 20.11 przedstawiono kompas, który powstał jako część systemu światła słonecznego. Główna różnica pomiędzy tymi dwoma systemami polega na tym, iż system światła słonecznego korzysta ze światła kierunkowego (Direct), a system światła dziennego stosuje światła IES Sun i Sky.

Rysunek 20.11. Kompas pomaga zorientować się w pozycji Słońca w systemie światła słonecznego Gdy tworzysz system Daylight po raz pierwszy, Max wyświetla okno dialogowe z propozycją włączenia logarytmicznej kontroli ekspozycji (Logarithmic Exposure Control) dla światła zewnętrznego. Jeśli klikniesz przycisk Yes, zmiana zostanie wprowadzona automatycznie. Obiekt pomocniczy Compass ustawia się zgodnie orientacją manipulatora ViewCube.

System światła dziennego daje najlepsze rezultaty, gdy zastosowane zostaną opcje mr Sun i mr Sky. Przy tych opcjach dostępne stają się ustawienia fizycznego środowiska dla nieba (mr Physical Sky). Więcej informacji na ten temat znajdziesz w rozdziale 47., „Renderery mental ray i iray”.

Używanie obiektu pomocniczego Compass Kompas przydaje się podczas korzystania z systemu światła słonecznego. Możesz go wykorzystać do określenia geograficznych stron świata: północy — North, wschodu — East, południa — South i zachodu — West. System światła słonecznego korzysta ze stron

Rozdział 20.  Podstawowe techniki oświetlania sceny

637

świata, aby odpowiednio ustawić źródło światła. Obiekt ten nie jest renderowany i powstaje automatycznie podczas tworzenia systemu. Można go utworzyć także po wybraniu polecenia Create/Helper/Compass. Po zakończeniu tworzenia systemu światła słonecznego możesz zmienić pozycję Słońca, manipulując kompasem. Powoduje to przesuwanie się światła w odpowiedni sposób. Położenie Słońca na niebie jest zależne również od ustawień czasu (Time), daty (Date) i położenia geograficznego (Location). Możesz zmienić ustawienia światła pełniącego rolę Słońca, wybierając je w oknie dialogowym Select by Name i otwierając panel Modify. Słońce domyślnie korzysta z cieni typu Ray Traced.

Po utworzeniu systemu światła dziennego parametry jego źródła światła związane z natężeniem i cieniami są dostępne w panelu Modify, ale ustawienia związane z pozycją Słońca na niebie znajdują się w panelu Motion, który można otworzyć, klikając przycisk Setup w rolecie Daylight Parameters. Położenie Słońca można także zmieniać ręcznie za pomocą narzędzi transformujących po uprzednim wybraniu opcji Manual (w panelu Modify lub w panelu Motion).

Azymut (Azimuth) i wysokość (Altitude) Wartości Azimuth (azymut) i Altitude (wysokość) określają położenie Słońca na niebie. Obie podawane są w stopniach kątowych. Azymut określa kierunek kompasowy i może mieć wartość od 0 do 360, przy czym 0 oznacza północ, 90 — wschód, 180 — południe, a 270 — zachód. Wysokość jest kątem pomiędzy Słońcem i horyzontem. Przybiera wartości pomiędzy 0 a 90, przy czym 0 stopni to zachód lub wschód Słońca, a 90 to Słońce w zenicie.

Określanie daty i czasu Sekcja Time rolety Control Parameters pozwala określić datę i godzinę. Wartość Time Zone określa przesunięcie godzinowe dla Twojej aktualnej strefy czasowej. Możesz także uwzględnić zmiany czasu na letni i zimowy — Daylight Saving Time.

Określanie miejsca Kliknij przycisk Get Location w rolecie Control Parameters, aby otworzyć okno dialogowe Geographic Location, pokazane na rysunku 20.12, gdzie znajdziesz mapy kontynentów i listę miast. Wybranie lokalizacji w tym oknie powoduje automatyczne aktualizowanie szerokości (Latitude) i długości (Longitude) geograficznej. Niezależnie od przycisku Get Location, możesz wpisać wartości Latitude i Longitude bezpośrednio w rolecie Control Parameters. System światła dziennego umożliwia również wybór nieba czystego (Clear), częściowo zachmurzonego (Partly Cloudy) lub całkowicie zachmurzonego (Cloudy)3. 3

Opcje te są dostępne w rolecie IES Sky Parameters, która z kolei jest dostępna po wybraniu opcji IES Sky z listy Skylight w rolecie Daylight Parameters — przyp. tłum.

638

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.12. Okno dialogowe Geographic Location pozwala określić miejsce użycia systemu światła słonecznego. Do wyboru jest wiele różnych miast

Ćwiczenie: Dzień w 20 sekund Możesz użyć systemu światła słonecznego w animacji pokazującej dzień od wschodu do zachodu Słońca w małej ilości klatek. W tym ćwiczeniu skupimy się na starym drzewie stojącym gdzieś w mieście Phoenix (stan Arizona) w Boże Narodzenie. Drzewo raczej się nie poruszy, ale obserwuj bacznie jego cień. Aby użyć systemu światła słonecznego do animowania cieni, wykonaj następujące czynności. 1. Otwórz plik Sunlight system.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model drzewa utworzony przez firmę Zygote. 2. Dodaj system Sunlight, wybierając kategorię Systems w panelu Create i klikając przycisk Sunlight. Następnie przeciągnij w oknie widokowym Top, aby utworzyć kompas, i kliknij ponownie, by wykreować światło. W rolecie Control Parameters (w panelu Motion) wpisz wartość 12 w polu Month (miesiąc), 25 w polu Day (dzień) i aktualny rok w polu Year. W polach Hours (godziny), Mins (minuty) i Secs (sekundy) wpisz wartości odpowiadające wczesnemu porankowi. 3. Kliknij przycisk Get Location, znajdź Phoenix na liście miast i kliknij OK. Obróć kompas w oknie widokowym Top tak, by północ wskazywała górę okna widokowego. 4. Kliknij przycisk Auto Key (lub wciśnij klawisz N), a potem przesuń suwak czasu na klatkę 100. 5. W rolecie Control Parameters zmień wartości w polach czasu na godzinę wieczorną. Następnie kliknij ponownie przycisk Auto Key (N), aby wyłączyć tryb animacji. Możesz określić moment wschodu i zachodu Słońca, patrząc na wartość Altitude dla dowolnej godziny. Ujemna wartość Altitude oznacza, że Słońce znajduje się poniżej linii horyzontu.

Na rysunku 20.13 przedstawiono migawki z tego szybkiego dnia. Obraz u góry po lewej przedstawia 20. klatkę animacji, obraz u góry po prawej — 40. klatkę, u dołu po lewej — 60. klatkę, a ostatni to klatka 80.

Rozdział 20.  Podstawowe techniki oświetlania sceny

639

Rysunek 20.13. Kilka klatek animacji sceny z drzewem od wschodu do zachodu Słońca

Używanie świateł wolumetrycznych (Volume Lights) Kiedy światło przechodzi przez mgłę, dym lub pył, widoczne stają się jego promienie. Efekt ten jest znany jako światło wolumetryczne. Gdy zechcesz dodać do sceny ten typ światła, wybierz polecenie Rendering/Environment (lub wciśnij klawisz 8), aby otworzyć okno dialogowe Environment and Effects. Następnie w rolecie Atmosphere kliknij przycisk Add, aby otworzyć okno dialogowe Add Atmospheric Effect i wybierz pozycję Volume Light. Parametry światła wolumetrycznego są widoczne w rolecie Volume Light Parameters. Możesz także, jeśli zaznaczonym obiektem jest źródło światła, włączyć efekt światła wolumetrycznego w rolecie Atmospheres and Effects w panelu Modify. W rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”, opisane są szczegółowo inne efekty pogodowe.

Parametry świateł wolumetrycznych U góry rolety Volume Light Parameters, widocznej na rysunku 20.14, znajduje się przycisk Pick Light, który pozwala na wybranie światła, do jakiego będzie odnosił się dany efekt. Możesz w ten sposób wybrać kilka świateł, które pojawią się w rozwijanej liście. Za pomocą przycisku Remove Light możesz usuwać światła z listy.

640

Część IV  Materiały, kamery i oświetlenie

Rysunek 20.14. Roleta Volume Light Parameters w oknie dialogowym Environment and Effects pozwala wybrać światła tworzące efekt wolumetryczny

Próbka Fog Color w sekcji Volume pozwala wybrać kolor mgły widziany w obrębie światła. Kolor ten jest mieszany z kolorem światła. Próbka Attenuation Color to kolor mgły oddalonej od źródła światła. On także łączy się z kolorem mgły. Najlepiej do tego celu wybrać ciemną barwę. Wartość Density określa gęstość mgły. Opcja Exponential zwiększa gęstość mgły wykładniczo wraz ze zwiększaniem się odległości. Wartości Max i Min Light określają intensywność poświaty powstałej w wyniku użycia światła wolumetrycznego, a Attenuation Multiplier reguluje intensywność koloru widocznego w obszarach zaniku światła. Istnieją cztery opcje filtrowania cieni: Low, Medium, High i Use Light Smp Range. Opcja Low pozwala szybko renderować cienie, ale nie jest zbyt dokładna. Opcja High powoduje dłuższe renderowanie cieni, ale daje najlepszą jakość. Opcja Use Light Smp Range określa wartość filtrowania na podstawie parametru objętości próbkowania (Sample Volume) i może być ustawiona w sposób automatyczny (opcja Auto). Wartość Sample Volume ma zakres od 1 do 10 000. Opcja Low ma wartość Sample Volume równą 8; opcja Medium — 25; a opcja High — 50. Jedynym typem cieni, jakie mogą być rzucane na cząsteczki mgły, jest Shadow Map.

Wartości Start Attenuation i End Attenuation to procentowo określone wartości początku i końca dla zakresu zaniku światła. Mają one wpływ na scenę tylko wtedy, kiedy dla danego światła włączone jest wygaszanie. Ustawienia wartości Noise (szum) pozwalają określić losowość światła wolumetrycznego. Efekty szumu mogą być włączone, można im też przypisać współczynnik Amount (ilość). Możesz także użyć opcji Link to Light (przyłącz do światła), zamiast korzystać ze współrzędnych globalnych. Szum występuje w trzech wersjach: standardowy (Regular), fraktalny (Fractal) i turbulentny (Turbulence). Opcja Invert odwraca wzór szumu, a Noise Threshold

Rozdział 20.  Podstawowe techniki oświetlania sceny

641

ogranicza jego zakres działania. Ustawienia z grupy Wind wpływają na poruszanie się promieni powodowane wiatrem, jego siłą — Wind Strength i przesunięciem fazowym — Phase. Na rysunku 20.15 przedstawiono kilka przykładów świateł wolumetrycznych. Obraz po lewej korzysta z efektu świateł wolumetrycznych, obraz pośrodku dodaje cienie, a po prawej — szum turbulentny.

Rysunek 20.15. Efekt światła wolumetrycznego sprawia, że promienie światła stają się widzialne

Ćwiczenie: Przednie światła samochodu Popularnym zastosowaniem świateł wolumetrycznych są przednie światła samochodowe. Na potrzeby tego ćwiczenia wykorzystamy model Delfino Feroce 2001 opracowany przez Viewpoint Datalabs. Aby wyświetlić przednie światła samochodu, wykonaj następujące czynności. 1. Otwórz plik Car headlights.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model samochodu. 2. Wybierz polecenie Create/Lights/Standard Lights/Target Spotlight i przeciągnij w oknie widokowym Left, aby utworzyć reflektor. Zaznacz i przemieść źródło tak, aby emitowało promienie z lewej przedniej lampy samochodu. 3. Otwórz panel Modify i w rolecie Spotlight Parameters ustaw wartość Hotspot na 20, Falloff na 25, a parametr Decay ustaw na Inverse Square z wartością Start równą 3.0. W rolecie Atmospheres and Effects kliknij przycisk Add, wybierz z okna dialogowego Add Atmosphere or Effect opcję Volume Light i kliknij OK. Kiedy do sceny dodane zostaje światło, domyślne światła sceny są wyłączane automatycznie. Aby zapewnić scenie dodatkowe oświetlenie, umieść nad samochodem kilka świateł typu Omni.

4. Wybierz efekt Volume Light z listy w rolecie Atmospheres and Effects i kliknij przycisk Setup. Pojawi się okno dialogowe Environment and Effects, w którym możesz zmienić parametry światła wolumetrycznego dla nowo utworzonego źródła. Ustaw wartość Density na 100. 5. Teraz wykreuj trzy dodatkowe światła typu reflektor. Aby to zrobić, wybierz pierwsze światło punktowe i jego punkt docelowy, a potem utwórz kopię,

642

Część IV  Materiały, kamery i oświetlenie

przytrzymując klawisz Shift przy równoczesnym przemieszczaniu światła w kierunku prawej lampy samochodu. Umieść pozostałe źródła tak, by uzyskać efekt snopów światła emitowanych przez cztery żarówki w reflektorach. Na rysunku 20.16 przedstawiono samochód świecący przednimi światłami. Rysunek 20.16. Samochód ma teraz przednie światła dzięki zastosowaniu efektu światła wolumetrycznego

Ćwiczenie: Tworzenie promieni laserowych Promienie laserowe są bardzo użytecznymi światłami. Napęd DVD, drukarka laserowa — dzisiaj lasery można znaleźć praktycznie w każdym nowoczesnym biurze. Przydają się również w grafikach fantasy i science fiction. Promienie lasera możesz utworzyć w bardzo prosty sposób przy użyciu świateł kierunkowych i efektów wolumetrycznych. W tym ćwiczeniu dodamy kilka laserów do modelu statku kosmicznego opracowanego w Viewpoint Datalabs. Aby dodać promienie lasera do sceny, wykonaj następujące czynności. 1. Otwórz plik Spaceship laser.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model statku kosmicznego. 2. Wybierz polecenie Create/Lights/Standard Lights/Directional i w oknie widokowym Front dodaj swobodne światło kierunkowe (Free Direct) na końcu jednego z miotaczy laserowych. Przeskaluj emiter tak, aby walec światła miał rozmiar odpowiedni do zasymulowania promienia lasera i obróć go tak, aby emitował promienie w odpowiednim kierunku — zgodnie z ustawieniem lufy miotacza. 3. Zaznacz źródło światła i otwórz panel Modify. W rolecie Atmospheres and Effects wciśnij przycisk Add i kliknij dwukrotnie opcję Volume Light. Następnie wybierz z listy opcję Volume Light i kliknij przycisk Setup, aby otworzyć okno dialogowe Environment and Effects. Zmień Fog Color na kolor czerwony, a wartość Density na 50 i upewnij się, że opcja Use Attenuation Color jest wyłączona.

Rozdział 20.  Podstawowe techniki oświetlania sceny

643

4. Po dodaniu świateł kierunkowych do sceny światła domyślne są automatycznie wyłączane, dlatego musisz dodać kilka świateł Omni nad statkiem, aby go oświetlić. W tym celu wybierz polecenie Create/Lights/Standard Lights/Omni i kliknij trzykrotnie nad statkiem w oknie widokowym Front, aby utworzyć trzy punktowe źródła światła. Ustaw wartość Multiplier pierwszego światła na 1.0 i umieść je dokładnie nad statkiem. Dwa pozostałe światła ustaw na 0.5 i umieść je poniżej pierwszego światła, po bokach statku. Na rysunku 20.17 przedstawiono promień lasera wystrzelony ze statku kosmicznego. Rysunek 20.17. Promienie laserowe możesz tworzyć przy użyciu świateł kierunkowych i efektu wolumetrycznego

Używanie map rzutowanych i cieni raytracingowanych Jeśli w rolecie Parameters do światła zostanie dodana mapa, światło staje się rzutnikiem (projektorem) wyświetlającym obraz na obiektach sceny. Mapy rzutowane mogą być prostymi obrazkami, animacjami lub czarno-białymi maskami dającymi efekt skomplikowanego cienia. Aby wczytać taką mapę, zaznacz światło i otwórz panel Modify. W rolecie Spotlight Parameters kliknij przycisk Projector Map i w oknie Material/Map Browser wybierz mapę, której chcesz użyć. Renderowanie cieni typu Ray Traced trwa dłużej niż w przypadku cieni Shadow Maps lub Area Shadows, ale ten rodzaj cieni zawsze ma wyraźną krawędź i dokładnie odwzorowuje zarysy obiektu. Dokładne cienie dla obiektów szkieletowych z przezroczystościami możesz tworzyć wyłącznie przy użyciu algorytmu Ray Traced Shadow.

W rolecie Shadow Parameters możesz wybrać sposób obliczania cieni za pomocą map cieni lub cieni typu Ray Traced. Ta druga opcja pozwala na mieszanie koloru przezroczystego obiektu z jego cieniem.

644

Część IV  Materiały, kamery i oświetlenie

Ćwiczenie: Rzutowanie obrazu trąbki na scenę W ramach przykładu światła pełniącego rolę projektora utworzymy scenę muzyczną z kilkoma nutami i wykonamy na nie rzutowanie obrazu. Aby wykonać rzutowanie obrazu na renderowaną scenę, wykonaj następujące czynności. 1. Otwórz plik Trumpet mask.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model trąbki wyświetlony w zmaksymalizowanym oknie widokowym Left. Model ten wykorzystamy do wygenerowania mapy projekcji. 2. Wybierz polecenie Rendering/Render (lub wciśnij klawisz F10), aby otworzyć okno dialogowe Render. Ustaw rozdzielczość 640×480 i wybierz okno widokowe Left. Następnie otwórz zakładkę Render Elements i kliknij przycisk Add. Z okna dialogowego Render Elements wybierz opcję Alpha, kliknij OK i na koniec kliknij przycisk Render. W ten sposób, oprócz widoku trąbki, zostanie wyrenderowany również jej kanał alfa. Kiedy rendering się zakończy, w oknie z kanałem alfa kliknij przycisk Save Bitmap i zapisz plik jako trumpet mask.tif (maska trąbki). 3. Otwórz plik Musical notes.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera kilka nut powstałych z prostych obiektów podstawowych. 4. Wybierz polecenie Create/Lights/Standard Lights/Target Spotlight i przeciągnij, aby utworzyć dwa światła w oknie widokowym Top. Ustaw pierwszy reflektor prostopadle do sceny tak, aby świecił na nią z góry. 5. Otwórz panel Modify. W rolecie Advanced Effects kliknij przycisk Projector Map, a następnie kliknij dwukrotnie opcję Bitmap w oknie Material/Map Browser. Znajdź i wybierz plik trumpet mask.tif i kliknij Open. Sylwetka trąbki zostanie zrzutowana na scenę. Użyj drugiego światła punktowego do oświetlenia nut. Na rysunku 20.18 widoczne są nuty z mapą rzutowania trąbki.

Ćwiczenie: Tworzenie witrażu Kiedy światło tworzące cienie typu Ray Traced prześwituje przez obiekt z przezroczystymi materiałami, kolor Filter danego materiału jest rzutowany na obiekty znajdujące się za nim. W tym ćwiczeniu utworzymy witraż i oświetlimy go przy użyciu świateł z cieniami generowanymi metodą śledzenia promieni. Aby opracować taki witraż, wykonaj następujące czynności. 1. Otwórz plik Stained glass window.max z folderu Chap 20 znajdującego się na płycie dołączonej do książki. Plik ten zawiera okno sklepu rybnego z witrażem (nie pytaj mnie, dlaczego sklep rybny ma w oknie witraż).

Rozdział 20.  Podstawowe techniki oświetlania sceny

645

Rysunek 20.18. Możesz użyć map projekcji do rzutowania obrazów na scenę, tak jak w przypadku tej trąbki

2. Wybierz polecenie Create/Lights/Standard Lights/Target Spotlight i przeciągnij w oknie widokowym Left w stronę okna z miejsca znajdującego się po prawej powyżej okna. Utworzysz wycelowany reflektor, który świeci przez okno witrażowe na podłogę. 3. W rolecie General Parameters upewnij się, że w sekcji Shadows jest włączona opcja On, i z rozwijanej listy wybierz Ray Traced Shadows. Na rysunku 20.19 przedstawiono witraż z kolorowym cieniem rzucanym na podłogę sceny. Rysunek 20.19. Efekt okna witrażowego utworzony przy użyciu cieni generowanych metodą śledzenia promieni

646

Część IV  Materiały, kamery i oświetlenie

Podsumowanie Mam nadzieję, że ten rozdział Cię oświecił. (Przepraszam za marny dowcip, ale muszę je wciskać, gdzie się da). Max oferuje wiele różnych świateł, każde z wieloma możliwymi do ustawienia opcjami. Mistrzowskie opanowanie tych opcji może zdecydowanie przybliżyć osiągnięcie maksymalnego realizmu sceny. W tym rozdziale zapoznałeś się z takimi zagadnieniami jak: 

podstawy oświetlenia,



standardowe i fotometryczne rodzaje świateł w Maksie,



tworzenie i ustawianie świateł,



zmiana okna widokowego na podgląd z pozycji światła,



używanie systemów światła słonecznego i dziennego,



wykorzystanie świateł wolumetrycznych,



rzutowanie map za pomocą świateł,



korzystanie z cieni generowanych metodą raytracingu do tworzenia witraży.

W następnym rozdziale przejdziemy w końcu do zagadnień związanych z animacją, a rozpoczniemy od rzeczy podstawowych, takich jak kluczowanie (keyframing).

Część V

Podstawy animacji i renderingu W tej części: Rozdział 21. „Animacja i klatki kluczowe” Rozdział 22. „Animowanie przy użyciu ograniczników i prostych kontrolerów” Rozdział 23. „Renderowanie sceny i korzystanie z renderera Quicksilver” Rozdział 24. „Stylizowanie sceny”

Rozdział 21.

Animacja i klatki kluczowe W tym rozdziale: 

Sterowanie czasem animacji



Używanie przycisków animacyjnych do tworzenia klatek kluczowych



Korzystanie z listwy czasu (Track Bar)



Podgląd i edycja wartości kluczowych



Korzystanie z panelu Motion i trajektorii



Włączanie wyświetlania sąsiadujących klatek animacji (Ghosting)



Ustawianie parametrów animacji



Animowanie materiałów



Tworzenie podglądów animacji

Maksa możesz wykorzystać do tworzenia fantastycznych obrazów, ale założę się, że częściej chodzisz do kina niż do muzeum lub galerii, bo wolisz oglądać obrazy ruchome, a nie statyczne. W tym rozdziale rozpoczynamy omawianie tego, co prawdopodobnie skłoniło Cię do sięgnięcia po taki program, jakim jest 3ds Max, czyli animacji. Max oferuje wiele narzędzi do jej tworzenia. Tu opisano najprostszą i najłatwiejszą do opanowania metodę tworzenia obrazów ruchomych — animację opartą na klatkach kluczowych (keyframe animation). W trakcie lektury tego rozdziału poznasz wszystkie funkcje służące do tworzenia i edycji klatek kluczowych — kontrolki sterujące czasem animacji, listwę czasu (Track Bar) i panel Motion. Mechanizm klatek kluczowych doskonale nadaje się do animowania transformacji obiektów, ale można go również wykorzystać do animowania innych elementów, np. materiałów. Jeśli uporasz się z tym rozdziałem odpowiednio szybko, będziesz miał czas na obejrzenie filmu.

650

Część V  Podstawy animacji i renderingu

Sterowanie czasem animacji (Time Controls) Przed rozpoczęciem prac nad animacjami powinieneś poznać ideę sterowania czasem. Narzędzia sterowania czasem (Time Controls) znajdują się w dolnej części interfejsu programu pomiędzy przyciskami sterowania klatkami kluczowymi a przyciskami nawigacyjnymi okien widokowych. Należy do nich również suwak czasu (Time Slider), który znajduje się bezpośrednio pod oknami widokowymi. Za jego pomocą łatwo będziesz się poruszać między poszczególnymi klatkami animacji. Wystarczy, że przeciągniesz przycisk suwaka w jedną lub drugą stronę. Przycisk ten wyświetla numer bieżącej klatki animacji, a także całkowitą liczbą klatek. Przyciski strzałek po jego obu stronach działają tak samo jak przyciski Previous Frame/Key (poprzednia klatka/klatka kluczowa) i Next Frame/Key (następna klatka/klatka kluczowa). Przyciski sterowania czasem pozwalają przejść do początku (Start) lub końca (End) animacji czy też do przodu i do tyłu po jednej klatce. Możesz także przeskoczyć bezpośrednio do konkretnej klatki, wpisując jej numer w polu tekstowym. W tabeli 21.1 zawarto opis wszystkich przycisków sterowania czasem. Tabela 21.1. Przyciski sterowania czasem (Time Controls) Przycisk

Nazwa

Opis

Go to Start

Ustawia czas na pierwszej klatce.

Previous Frame/Key

Przesuwa czas o jedną klatkę wstecz lub wybiera poprzednią klatkę kluczową.

Play Animation, Play Selected

Powoduje odtwarzanie klatek jedna po drugiej; w trakcie odtwarzania zamienia się w przycisk zatrzymujący animację.

Next Frame/Key

Przesuwa czas o jedną klatkę do przodu lub wybiera następną klatkę kluczową.

Go to End

Ustawia czas na ostatniej klatce.

Przełącznik Key Mode

Przełącza pomiędzy trybami klatek zwykłych i kluczowych; przy włączonym trybie kluczowym (Key Mode) ikona ma jasnoniebieski kolor, a przyciski Previous Frame i Next Frame zamieniają się w Previous Key i Next Key.

Pole Current Frame

Wyświetla numer bieżącej klatki; możesz tu wpisać numer innej klatki, co pozwala przechodzić pomiędzy klatkami dokładniej niż za pomocą suwaka czasu.

Time Configuration

Otwiera okno dialogowe Time Configuration, w którym możesz ustawić liczbę klatek na sekundę, wyświetlanie czasu i długość animacji.

Domyślnie nowa scena zawiera zawsze 100 klatek, ale wartość ta rzadko będzie odpowiednia. Liczbę klatek możesz zmienić w dowolnej chwili, klikając przycisk Time Configuration, który znajduje się na prawo od pola z numerem aktualnej klatki. Jego

Rozdział 21.  Animacja i klatki kluczowe

651

kliknięcie otwiera okno dialogowe Time Configuration, pokazane na rysunku 21.1. Możesz również otworzyć to okno, klikając prawym przyciskiem myszy dowolny z przycisków sterowania czasem. Rysunek 21.1. Okno dialogowe Time Configuration pozwala na ustawienie liczby klatek animacji

Ustawianie liczby klatek na sekundę W oknie dialogowym Time Configuration masz do wyboru kilka opcji, w tym liczbę klatek na sekundę (Frame Rate). Jest to współczynnik określający zależność pomiędzy liczbą klatek animacji i czasem jej trwania. Opcje pozwalają na wybranie standardowych ustawień, takich jak NTSC (National Television Standards Committee, standard północnoamerykański, około 30 klatek na sekundę), Film (około 24 klatek na sekundę) i PAL (Phase Alternate Line, stosowany przez kraje europejskie, około 25 klatek na sekundę). Możesz także wybrać opcję Custom i wpisać własną wartość. Sekcja Time Display pozwala na określenie sposobu wyświetlania czasu na suwaku. Do wyboru są opcje: Frames, SMPTE (Society of Motion Picture Technical Engineers), Frame:Ticks lub MM:SS:Ticks (minuty i sekundy). SMPTE to standard filmowy i telewizyjny. Tick oznacza jednostkę o długości 1/4800 sekundy.

Ustawianie prędkości i kierunku odtwarzania animacji Sekcja Playback pozwala ustawić opcje odtwarzania animacji. Opcja Real Time pomija niektóre klatki, by zachować określoną prędkość — liczbę klatek na sekundę. Opcja Active Viewport Only powoduje odtwarzanie animacji tylko w jednym z okien widokowych, co przyspiesza sam proces odtwarzania. Opcja Loop zapętla odtwarzanie animacji. Jest dostępna jedynie po wyłączeniu opcji Real Time. Jeśli włączona jest opcja Loop, możesz określić kierunek (Direction). Masz do wyboru: do przodu (Forward), wstecz (Reverse) lub odbijanie (Ping-Pong), które powoduje odtworzenie do przodu, a następnie wstecz. Prędkość odtwarzania (Speed) może być mnożona przez współczynnik o wartości 1/4, 1/2, 1, 2 lub 4.

652

Część V  Podstawy animacji i renderingu

Okno dialogowe Time Configuration pozwala również określić Start Time (czas startowy), End Time (czas końcowy), Length (długość) i Current Time (aktualny czas). Wartości te są wzajemnie powiązane, tak więc zmiana długości i czasu startowego automatycznie wpływa na wartość czasu końcowego. Zmiany w nich możesz wprowadzać w dowolnej chwili, bez ryzyka utraty klatek kluczowych. Jeśli np. animacja liczy 500 klatek, a czasy startowy i końcowy ustawisz na 30 i 50, suwak czasu będzie obejmował jedynie te 21 klatek. Klatki kluczowe przed i po wyznaczonym przez Ciebie czasie są ciągle dostępne, ale musisz przestawić wartości czasów startowego i końcowego na 0 i 500. Przycisk Re-scale Time (przeskaluj czas) dopasowuje wszystkie klatki kluczowe do pożądanej długości czasu animacji, zwiększając lub zmniejszając liczbę klatek między kluczami. Możesz użyć tej funkcji, aby przeskalować długość animacji do wartości określonej przez czasy początkowy i końcowy. Opcje z grupy Key Steps pozwalają na zdecydowanie o tym, które z obiektów są uwzględniane w trybie kluczowania. Jeśli zaznaczysz opcję Use Track Bar, tryb kluczowania umożliwia poruszanie się pomiędzy klatkami kluczowymi na listwie czasu. Jeśli zaznaczysz opcję Selected Objects Only, tryb kluczowania pozwala się przemieszczać jedynie pomiędzy klatkami kluczowymi dla aktualnie zaznaczonego obiektu. Możesz także ustawić przemieszczanie się między klatkami kluczowymi położenia (Position), obrotu (Rotation) i skali (Scale). Opcja Use Current Transform znajduje jedynie te klatki kluczowe, które zgadzają się z aktualnie wybranym przyciskiem transformacji.

Używanie etykiet czasu (Time Tags) Na prawo od linii zachęty w dole ekranu znajduje się pole oznaczone jako Add Time Tag. Kliknięcie go otwiera menu z opcjami dodawania (Add Tag) i edycji (Edit Tag) etykiet czasowych. Możesz je ustawić dla każdej klatki w scenie. Po ustawieniu etykiety są widoczne w polu Time Tag, gdy wybierzemy daną klatkę animacji.

Klatki kluczowe Nie przypadkiem największy przycisk w całym interfejsie Maksa jest oznaczony ikoną klucza. Tworzenie kluczy i korzystanie z nich to podstawa animacji. Klucze (umieszczane w klatkach nazywanych kluczowymi) opisują położenie lub inne właściwości obiektu w określonym czasie. Animacja powstaje, gdy obiekt zmienia swoje położenie lub wygląd przy przejściu od jednej klatki kluczowej do innej. Już kilka takich kluczy umożliwia utworzenie skomplikowanej animacji. Klucze można definiować na wiele sposobów, ale najłatwiejszy z nich polega na wykorzystaniu przycisków sterujących kluczowaniem animacji, które znajdziesz na dolnym pasku interfejsu. Znajdują się one na lewo od przycisków sterowania czasem. W tabeli 21.2 zawarto opis wszystkich dostępnych przycisków. W ścisłym związku ze sterowaniem kluczami pozostaje pasek ścieżki (Track Bar), który znajduje się bezpośrednio pod suwakiem czasu.

Rozdział 21.  Animacja i klatki kluczowe

653

Tabela 21.2. Przyciski sterujące kluczami animacji Przycisk

Nazwa

Opis

Set Keys (K)

Tworzy klucze animacji w trybie Set Keys.

Toggle AutoKey Mode (N)

Ustawia klucze dla wybranego obiektu w sposób automatyczny.

Toggle Set Key Mode (')

Ustawia klucze według ustawień filtrów dla wybranego obiektu.

rozwijana lista Selection Set

Określa zestaw wyboru, który będzie stosowany dla określonych kluczy.

Default In/Out Tangents for New Keys

Przypisuje domyślne styczne, które będą stosowane dla wszystkich nowych kluczy.

Open Filters Dialog

Otwiera okno z opcjami filtrowania kluczy.

Max oferuje dwa tryby animacji — Auto Key (N) i Set Key ('). Możesz wybrać jeden z nich, klikając odpowiedni przycisk na dole interfejsu. Włączony przycisk staje się jaskrawoczerwony, podobnie jak ramka wokół aktywnego okna widokowego, aby przypominać Ci o tym, że pracujesz w trybie animacji. Ten sam kolor pojawia się również wokół wszystkich spinerów służących do ustawiania parametrów, które mogą być animowane.

Tryb kluczowania automatycznego (Auto Key) Każda transformacja lub zmiana parametrów przy włączonym przycisku Auto Key powodują utworzenie klucza animacji, który określa położenie i wygląd obiektu w danej klatce. Aby utworzyć klucz, przeciągnij suwak czasu do klatki, w której chcesz go wstawić, i przesuń wybrany obiekt lub zmień parametr. Po zdefiniowaniu pierwszego klucza Max automatycznie cofa się do klatki o numerze 0 i tworzy w niej klucz zachowujący pierwotną pozycję lub parametr obiektu. Po ustanowieniu klucza Max płynnie interpoluje wszystkie zmiany pozycji i parametrów pomiędzy poszczególnymi kluczami. Same klucze są wyświetlane jako małe prostokąty na pasku ścieżki. Każda klatka może zawierać kilka różnych kluczy, ale tylko po jednym dla każdego typu transformacji i danego parametru. Jeśli zatem przesuniesz, obrócisz, przeskalujesz i zmienisz parametr promienia (Radius) dla obiektu sfery z włączonym trybem Auto Key, powstaną oddzielne klucze dla zmiany położenia, obrotu, skali i promienia.

Tryb kluczowania ręcznego (Set Key) Tryb Set Key (') oferuje rozszerzoną kontrolę nad tworzeniem kluczy i ustawia je jedynie wtedy, gdy klikniesz przycisk Set Key (K). Tworzy również tylko takie typy kluczy, jakie określone zostały w oknie dialogowym Set Key Filters. Aby otworzyć to okno, pokazane na rysunku 21.2, kliknij przycisk Key Filters. Dostępne typy kluczy to All (wszystkie), Position (położenia), Rotation (obrotu), Scale (skali), IK Parameters (parametrów kinematyki odwrotnej), Object Parameters (parametrów obiektu), Custom

654

Część V  Podstawy animacji i renderingu

Rysunek 21.2. Okno dialogowe Set Key Filters pozwala określić typy kluczy animacji, jakie mają być tworzone

Attributes (atrybutów zdefiniowanych przez użytkownika), Modifiers (modyfikatorów), Materials (materiałów) i Other (inne). Ostatni typ pozwala na ustawianie kluczy dla manipulatorów.

Ćwiczenie: Wprawianie wiatraka w ruch Najlepszym sposobem nauki są ćwiczenia praktyczne, a pora ku temu jest jak najbardziej odpowiednia. W tym przykładzie spróbujemy opracować animację wiatraka. Aby wprawić w ruch skrzydła wiatraka, wykonaj następujące czynności. 1. Otwórz plik Rotating windmill blades.max z folderu Chap 21 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model wiatraka, który powstał w Viewpoint Datalabs. 2. Kliknij przycisk Auto Key (lub wciśnij klawisz N) na dole okna Maksa i przeciągnij suwak czasu do klatki numer 50. 3. W oknie widokowym Front zaznacz piastę (obiekt prop), znajdującą się u góry wiatraka. Do niej przytwierdzone są skrzydła, które wraz nią obracają się względem jej środka obrotu (Pivot Point). Następnie na głównym pasku narzędziowym kliknij przycisk Select and Rotate (lub wciśnij klawisz E) i obróć piastę względem jej osi Y. 4. Kliknij ponownie przycisk Auto Key (lub wciśnij klawisz N), aby wyłączyć tryb animacji. Na pasku ścieżki kliknij klucz animacji znajdujący się w 1. klatce, przytrzymaj klawisz Shift i przeciągnij do klatki numer 100 (lub też wciśnij klawisz End). Tak skopiujesz klucz z 1. klatki do klatki 100. Zapewni to płynną zapętloną animację (chociaż wiatrak kręci się tam i z powrotem; cóż, pewnie wieje tam jakiś dziwny wiatr). 5. Kliknij przycisk Play Animation, aby odtworzyć animację. Na rysunku 21.3 pokazano 50. klatkę tej prostej animacji. Innym sposobem na tworzenie kluczy jest wybranie obiektu, który ma być animowany, i kliknięcie prawym przyciskiem myszy przycisku suwaka czasu. Spowoduje to otworzenie okna dialogowego Create Key (rysunek 21.4), w którym możesz ustawić klucze położenia (Position), obrotu (Rotation) i skali (Scale) dla aktualnie wybranego obiektu. Tej metody możesz używać jedynie przy tworzeniu kluczy transformacji.

Rozdział 21.  Animacja i klatki kluczowe

655

Rysunek 21.3. Klatka numer 50 prostej animacji wiatraka Rysunek 21.4. Okno dialogowe Create Key pozwala na szybkie utworzenie kluczy położenia, obrotu lub skali

Jeśli klucz już istnieje, możesz go sklonować, przeciągając z wciśniętym klawiszem Shift. Przeciąganie paska ścieżki przy wciśniętych klawiszach Ctrl i Alt zmienia aktywny segment czasowy.

Kopiowanie kluczy animacji parametrów Jeśli przy włączonym trybie Auto Key dokonasz zmiany parametru, zostanie dla niego utworzony klucz animacji. Możesz rozpoznać taki parametr po tym, że strzałki jego spinera wyróżnione są na czerwono, gdy suwak czasu znajduje się na klatce z ustawionym dla niego kluczem. Jeśli zmienisz wartość parametru, którego spiner jest podświetlony na czerwono, wartość klucza ulega zmianie (nie wymaga to włączania trybu Auto Key). Jeśli zaznaczysz i klikniesz prawym przyciskiem myszy wartość parametru w polu edycyjnym, pojawi się menu podręczne z kilkoma opcjami. Przy jego użyciu możesz wyciąć (Cut), skopiować (Copy), wkleić (Paste) i usunąć (Delete) wartość parametru. Możesz także wybrać pozycję Copy Animation, która kopiuje wszystkie klucze związane z tym parametrem i pozwala na wklejenie ich do innego parametru. Przeklejanie kluczy animacji

656

Część V  Podstawy animacji i renderingu

może zostać wykonane jako kopia (Copy), klon (Instance) lub powiązanie (Wire). Kopia jest niezależna, a klon wiąże animację z pierwotną kopią, przez co zmiany wprowadzone w jednej z nich są kopiowane w drugiej. Funkcja Wire pozwala jednemu parametrowi na kontrolowanie drugiego. Gdy chcesz skopiować wartość parametru, upewnij się, że zaznaczyłeś i kliknąłeś prawym przyciskiem myszy wartość liczbową w polu służącym do jej wpisywania. Jeśli klikniesz prawym przyciskiem spiner parametru, jego wartość zostanie ustawiona na 0.

Wspomniane wyżej menu zawiera również polecenia edycji powiązania (Edit Wire), wyświetlenia parametru w oknie z widokiem ścieżki (Show in Track View) i w oknie dialogowym wiązania parametrów (Show in Parameter Wire Dialog). Wiązanie parametrów i okno dialogowe Parameter Wire są omówione dokładnie w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Usuwanie wszystkich kluczy animacji obiektu Możliwe jest wybranie i usunięcie pojedynczych kluczy przy użyciu paska ścieżki lub też menu wyskakującego po kliknięciu prawym przyciskiem myszy, ale może to zająć zbyt wiele czasu, jeśli obiekt ma dużo klatek kluczowych. Aby usunąć wszystkie klucze animacji dla danego obiektu, wybierz z menu polecenie Animation/Delete Selected Animation.

Używanie paska ścieżki (Track Bar) Interfejs Maksa oferuje bardzo prosty sposób operowania klatkami kluczowymi — możesz do tego użyć paska ścieżki, położonego bezpośrednio pod suwakiem czasu. Dla każdego klucza wybranego obiektu wyświetla on prostokątny znacznik. Znaczniki mają różne kolory, zależnie od rodzaju. Klucze położenia są czerwone, obrotu — zielone, skali — niebieskie, a parametrów — ciemnoszare. W oknie Track View — Dope Sheet (raport operatorski) klucze położenia, obrotu i skali są odpowiednio czerwone, zielone i niebieskie, a w przypadku parametrów — żółte.

Aktualna klatka jest również widoczna na pasku ścieżki jako półprzezroczysty prostokąt, który możemy zobaczyć na rysunku 21.5. Ikona na lewym końcu paska ścieżki to przycisk Open Mini Curve Editor, który otwiera małe okno Track View. Rysunek 21.5. Pasek ścieżki wyświetla wszystkie klatki kluczowe dla wybranego obiektu Aby uzyskać więcej informacji na temat okna Track View, przeczytaj rozdział 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Przy użyciu paska ścieżki możesz przesuwać klucze animacji, kopiować je i usuwać. Wyświetla on znaczniki kluczy jedynie dla aktualnie zaznaczonego obiektu (lub obiek-

Rozdział 21.  Animacja i klatki kluczowe

657

tów), a każdy znacznik może symbolizować kilka różnych kluczy. Kiedy przesuniesz mysz nad znacznikami, kursor zmieni się w znak plus, co oznacza, że możesz wybrać znacznik, klikając go (wybrane znaczniki zmieniają kolor na biały). Przy użyciu klawisza Ctrl możesz zaznaczyć kilka kluczy na raz. Możesz to zrobić także, klikając obszar paska ścieżki, niezawierający żadnych kluczy, i przeciągając myszą nad wszystkimi kluczami, które chcesz zaznaczyć. Jeśli przesuniesz kursor nad któryś z zaznaczonych kluczy, zmieni się w dwustronną strzałkę, wskazując możliwość przeciągania danego klucza w lewo lub prawo. Przytrzymanie klawisza Shift podczas przeciągania tworzy kopię klucza. Wciśnięcie klawisza Delete usuwa zaznaczony klucz. Jeśli przeciągniesz klucz poza koniec paska ścieżki, numer klatki zostanie wyświetlony w linii zachęty (Prompt Line) na dole okna, a klucz nie zostanie uwzględniony w aktualnym zakresie czasu. Jeśli chcesz pozbyć się klucza czasowo, bez jego kasowania, możesz przeciągnąć go poza koniec paska i odzyskać później, ustawiając odpowiedni czas animacji w oknie dialogowym Time Configuration.

Ponieważ jeden znacznik może przedstawiać kilka różnych kluczy, możesz przejrzeć wszystkie klucze przedstawione w ramach jednego znacznika w podręcznym menu wywoływanym przez kliknięcie znacznika prawym przyciskiem myszy. W menu podręcznym znak zatwierdzenia wyświetlany obok klucza oznacza, iż mamy do czynienia z kluczem wspólnym dla kilku klonów.

Wymienione wyżej menu oferuje również opcje usuwania wybranych kluczy lub ich filtrowania. Ponadto znajduje się w nim polecenie Go to Time, które automatycznie przemieszcza suwak czasu do pozycji danego klucza. Gdy chcesz usunąć znacznik wraz z wszystkimi zawartymi w nim kluczami, kliknij prawym przyciskiem myszy, aby otworzyć menu podręczne, i wybierz w nim polecenie Delete Key/All lub też zaznacz znacznik i wciśnij klawisz Delete.

Oglądanie wartości kluczy i ich edycja U góry menu znacznika znajduje się lista kluczy zdefiniowanych dla aktualnie zaznaczonego obiektu (w wypadku, gdy jest ich zbyt wiele, można je znaleźć w podmenu Key Properties). Kiedy wybierzesz jeden z kluczy, pojawia się okno dialogowe z informacjami na jego temat. Okno to wyświetla różne opcje, zależnie od rodzaju wybranego klucza. Na rysunku 21.6 przedstawiono okno dialogowe dla klucza obrotu. Rysunek 21.6. Okna informacyjne kluczy pozwalają na zmianę ich parametrów

Te same informacje na temat konkretnych kluczy wybranego obiektu możesz uzyskać również w panelu Motion, włączając w nim przycisk Parameters.

658

Część V  Podstawy animacji i renderingu

W każdym z okien dialogowych znajduje się pole z numerem aktualnej klatki kluczowej. Obok pola widnieją dwie strzałki, które umożliwiają łatwe przechodzenie pomiędzy klatkami kluczowymi danej sceny. Okno zawiera także kilka pól tekstowych, w których możesz zmieniać parametry kluczy. W większości okien umieszczono również rozwijane grupy przycisków służące do wybierania stycznych dla danego klucza. Określają one sposób wejścia i wyjścia animacji z klatki kluczowej. Jeśli np. dla wejściowej stycznej (In) wybierzesz opcję Slow (wolna), a dla wyjściowej (Out) wybierzesz Fast (szybka), obiekt zbliży się wolno do pozycji zapisanej w kluczowej klatce, ale przyspieszy podczas jej opuszczania. Strzałki po obu stronach przycisków ze stycznymi pozwalają na skopiowanie aktualnie wybranej stycznej do następnej lub poprzedniej klatki kluczowej. Dostępne rodzaje stycznych opisano w tabeli 21.3. Tabela 21.3. Styczne kluczy Styczna

Nazwa

Opis

Smooth (gładka)

Daje prosty i płynny ruch; jest to ustawienie domyślne.

Linear (liniowa)

Ruch ze stałą prędkością pomiędzy dwiema klatkami kluczowymi.

Step (skokowa)

Powoduje skokową zmianę ruchu pomiędzy klatkami kluczowymi; tworzy zawsze pary In-Out.

Slow (wolna)

Zwalnia w miarę zbliżania się do klatki kluczowej.

Fast (szybka)

Przyspiesza w miarę zbliżania się do klatki kluczowej.

Custom (dowolna)

Pozwala na modyfikowanie uchwytów stycznej w trybie edycji krzywej kontrolnej.

Custom — Locked Handles (dowolna ze zblokowanymi uchwytami)

Pozwala na modyfikowanie uchwytów stycznej w trybie edycji krzywej funkcyjnej ze zblokowanymi uchwytami.

Używanie panelu Motion Istnieje jeszcze jeden sposób tworzenia kluczy — za pomocą panelu Motion. Jest on zgrupowany z innymi panelami bocznymi i zawiera ustawienia kontrolujące animację obiektów. U góry panelu Motion znajdują się dwa przyciski — Parameters i Trajectories.

Ustawianie parametrów Przycisk Parameters w panelu Motion pozwala przypisywać kontrolery, a także tworzyć i usuwać klucze animacji. Kontrolery animacji to algorytmy tworzenia kluczy, które możesz zdefiniować za pomocą rolety Assign Controller, widocznej na rysunku 21.7.

Rozdział 21.  Animacja i klatki kluczowe

659

Rysunek 21.7. Sekcja Parameters panelu Motion pozwala przypisywać kontrolery animacji i tworzyć klucze

Przypisujesz je, wybierając ścieżkę położenia, obrotu lub skalowania i klikając przycisk Assign Controller, który otwiera listę dostępnych kontrolerów animacji. Aby dowiedzieć się więcej na temat kontrolerów, przeczytaj rozdział 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Gdy zaznaczony jest obiekt, któremu można przypisać klucze, poniżej rolety Assign Controller pojawia się roleta PRS Parameters, w której możesz tworzyć (przyciski Create Key) i usuwać (przyciski Delete Key) klucze położenia, obrotu i skali (Position, Rotation, Scale). Dzięki tej rolecie możesz kreować klucze, niezależnie od tego, czy przyciski Auto Key i Set Key są włączone, czy też nie. W zależności od wybranego kontrolera, mogą być też dostępne dodatkowe rolety. Poniżej rolety PRS Parameters znajdują się dwie rolety Key Info: Basic i Advanced. Zawierają te same informacje na temat kluczy, jakie mogłeś znaleźć w oknach otwieranych za pomocą menu podręcznego na pasku ścieżki.

Trajektorie Trajektoria to inaczej tor ruchu animowanego obiektu. Kiedy klikniesz przycisk Trajectories w panelu Motion, trajektoria animacji zostanie wyświetlona w oknach widokowych jako krzywa, z każdą klatką kluczową zaznaczoną jako węzeł tej krzywej, a każdą zwykłą klatką wyróżnioną w postaci białej kropki. Możesz edytować trajektorię i jej węzły, klikając przycisk Sub-Object, znajdujący się u góry panelu Motion (patrz rysunek 21.8). Jedynym dostępnym tu podobiektem są klucze (Keys), będące w tym przypadku węzłami trajektorii. Przy włączonym przycisku Sub-Object możesz użyć narzędzi transformacji do przemieszczenia węzłów. Możesz także, korzystając z przycisków Add Key i Delete Key, dodawać i usuwać klucze. Aby uzyskać większą kontrolę nad trajektorią, możesz za pomocą przycisku Convert To zmienić ją w zwyczajną krzywą typu splajn, którą poddasz dalszej edycji. Możesz także zmienić istniejącą krzywą w trajektorię przy użyciu przycisku Convert From.

660

Część V  Podstawy animacji i renderingu

Rysunek 21.8. Roleta Trajectories w panelu Motion pozwala na podgląd ścieżki animacji w postaci krzywej

Aby skorzystać z przycisku Convert From, wybierz obiekt poddawany animacji, kliknij tenże przycisk, a następnie w oknie widokowym wskaż kursorem splajn. Spowoduje to powstanie nowej trajektorii dla wybranego obiektu. Pierwszą kluczową klatką tej trajektorii będzie początkowy węzeł krzywej, a ostatnią — ostatni węzeł. Dodatkowe klatki kluczowe są wstawiane zgodnie z ustawieniem wartości próbkowania (Samples), znajdującej się w grupie Sample Range. Rozmieszczenie klatek kluczowych wzdłuż krzywej zależy od jej krzywizny. W okolicach ostrych zakrętów klatki umieszczane są w mniejszych odległościach niż na odcinkach prostych. Kliknij przycisk Collapse u dołu rolety Trajectories, aby zredukować wszystkie transformacje do jednej ścieżki ze standardowymi kluczami, które możesz edytować. Możesz wybrać, które transformacje zostaną zredukowane, dzięki opcjom Position, Rotation i Scale, które znajdziesz pod przyciskiem Collapse. Przykładowo obiekt z kilkoma przypisanymi kontrolerami może zostać zredukowany w celu zmniejszenia złożoności wszystkich kluczy. Jeśli zredukujesz wszystkie klucze, nie będziesz mógł zmieniać ich parametrów w roletach kontrolerów.

Menu Views zawiera polecenie Show Key Times (pokaż czasy kluczy). Wybranie go spowoduje wyświetlenie numerów klatek obok wszystkich kluczy na ścieżce trajektorii. Przy użyciu opcji Trajectory w oknie dialogowym Object Properties możesz także włączyć podgląd trajektorii dla dowolnego obiektu.

Rozdział 21.  Animacja i klatki kluczowe

661

Ćwiczenie: Samolot wykonujący pętlę Samoloty wykonujące akrobacje często poruszają się płynnie po określonej ścieżce. Łatwo można to zauważyć, obserwując samolot „piszący” mgłą po niebie. Na potrzeby tego przykładu przy użyciu narzędzia Line utworzyłem nieskomplikowaną, zapętloną ścieżkę, którą wykorzystamy jako trajektorię samolotu. Aby samolot podążył wzdłuż niej, wykonaj następujące czynności. 1. Otwórz plik Looping airplane.max z folderu Chap 21 znadującego się na płycie dołączonej do książki. Plik ten zawiera zapętlony splajn i model samolotu utworzony przez Viewpoint Datalabs. 2. Zaznacz samolot, otwórz panel Motion i kliknij przycisk Trajectories. Następnie kliknij przycisk Convert From w rolecie Trajectories i wybierz splajn w oknie widokowym Front. 3. Jeśli przeciągniesz suwak czasu, zauważysz, że samolot przemieszcza się po ścieżce, ale nie wykonuje obrotu. Aby to naprawić, na dolnej listwie interfejsu kliknij przycisk Key Mode Toggle, który pozwala na łatwe przechodzenie pomiędzy klatkami kluczowymi. Później kliknij przycisk Key Filters, wybierz jedynie Rotation i naciśnij przycisk Set Key (lub klawisz '), aby wejść w tryb ustanawiania kluczy. 4. Ustaw suwak czasu na początku skali. Kliknij przycisk Select and Rotate, obróć samolot w oknie widokowym Front, tak aby dopasować go do ścieżki, i wciśnij duży przycisk Set Keys (lub lawisz K), żeby utworzyć klatkę kluczową obrotu. Następnie kliknij przycisk Next Key, aby przejść do następnej klatki kluczowej i powtarzaj powyższe czynności aż do ustawienia kluczowych klatek obrotu dla całej ścieżki. 5. Przeciągnij suwak czasu, by sprawdzić, jak samolot wykonuje pętlę. Max oferuje również prostszy sposób skierowania samolotu na ścieżkę przy użyciu ogranicznika Path. Aby dowiedzieć się więcej na temat ograniczników, przeczytaj rozdział 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Na rysunku 21.9 przedstawiono trajektorię lotu samolotu.

Korzystanie z narzędzia Follow/Bank Obiekt podążający po ścieżce wyznaczającej jego trajektorię zachowuje stałą orientację bez wykonywania obrotów ustawiających go wzdłuż ścieżki. Wyobraź sobie wagonik kolejki górskiej; w trakcie jazdy obraca się i przechyla, zgodnie z przebiegiem toru. Do takiego zachowania możesz zmusić także obiekt poruszający się po zadanej ścieżce. Służy do tego narzędzie o nazwie Follow/Bank, które znajdziesz w panelu Utilities po kliknięciu przycisku More.

662

Część V  Podstawy animacji i renderingu

Rysunek 21.9. Gdy użyjesz splajnu jako trajektorii ruchu, klucze położenia samolotu są ustawiane automatycznie Narzędzie Follow/Bank ustawia obiekt tak, aby jego oś X była zgodna z osią Z splajnu, a więc przed zastosowaniem tego narzędzia należy właściwie zorientować lokalny układ współrzędnych obiektu.

Narzędzie Follow/Bank pozwala włączyć przechylanie obiektu (Bank) z odpowiednią wartością (Bank Amount) i płynnością (Smoothness). Można również włączyć opcję zezwalającą na odwracanie obiektu do góry nogami (Allow Upside Down) — niezalecane dla wagoników tradycyjnej kolejki. Kliknięcie przycisku Apply Follow powoduje utworzenie kluczy wprowadzających do ruchu obiektu odpowiednie obroty ustalające jego właściwą orientację względem trajektorii. W sekcji Samples można ustalić liczbę tworzonych kluczy.

Wyświetlanie sąsiadujących klatek animacji (Ghosting) Kiedy próbujesz animować obiekty, funkcja wyświetlania klatek sąsiednich bieżącej animacji może okazać się bardzo przydatna. Wyświetla ona kopię animowanego obiektu przed i po jego aktualnym położeniu. Aby włączyć tę funkcję, wybierz polecenie Views/Show Ghosting. Wykorzystuje ona ustawienia z okna dialogowego Preference Settings. Możesz uzyskać do niego dostęp, wybierając polecenie Customize/Preferences. W panelu Viewports tego okna dialogowego znajdziesz sekcję Ghosting.

Rozdział 21.  Animacja i klatki kluczowe

663

Możesz w niej ustawić liczbę wyświetlanych klatek (Ghosting Frames), to, które z nich mają być wyświetlane — poprzedzające bieżącą klatkę (Ghost Before Current Frame), następujące po niej (Ghost After Current Frame) czy też jedne i drugie (Ghost Before and After) — a także wyświetlanie numerów klatek (Show Frame Numbers). Możesz także określić wyświetlanie co n-tej klatki (Display Nth Frame). Dostępna jest też opcja wyświetlania obiektów w trybie szkieletowym (Ghost in Wireframe). Jeśli opcja ta nie jest włączona, obiekty są wyświetlane jako cieniowane. Można także włączyć wyświetlanie numerów klatek (opcja Show Frame Numbers). Obiekty przed bieżącą klatką są żółte, a po niej — jasnoniebieskie. Na rysunku 21.10 przedstawiono model lwa z włączonym wyświetlaniem sąsiadujących klatek, który w trakcie animacji przemieszcza się po nierównym okręgu. Ustawienia określają wyświetlanie trzech klatek przed aktualną klatką i po niej. Włączone jest również wyświetlanie trajektorii.

Rysunek 21.10. Włączenie funkcji Ghosting umożliwia oglądanie obiektu na tle poprzednich i następnych faz jego ruchu

Preferencje animacji Zakładka Animation okna dialogowego Preference Settings, pokazana na rysunku 21.11, zawiera opcje dotyczące animacji. Zaznaczenie określonej klatki animacji powoduje otoczenie białą ramką każdego obiektu, któremu w tej klatce zostały przypisane klucze. W sekcji Key Bracket Display możesz określić, które z takich obiektów mają być otoczone ramką. Masz do wyboru jedną z trzech opcji: All Objects (wszystkie obiekty), Selected

664

Część V  Podstawy animacji i renderingu

Rysunek 21.11. Zakładka Animation zawiera ustawienia dotyczące wyróżniania obiektów z przypisanymi kluczami animacji

Objects (tylko obiekty zaznaczone) i None (żaden obiekt). Możesz również ograniczyć wyświetlanie ramek tylko do tych obiektów, którym przypisane zostały klucze określonych transformacji. Opcje Key Bracket Display przydają się, gdy chcemy znaleźć określony klucz. Jeśli w danej klatce zaznaczony obiekt ma przypisany klucz, będzie otoczony dodatkową ramką.

Włączenie opcji Local Center During Animate powoduje, że wszystkie obiekty będą animowane względem ich lokalnych układów odniesienia. Jeśli opcja zostanie wyłączona, obiekty będą mogły być animowane względem innych układów (np. ekranowego — Screen lub globalnego — World). Sekcja MIDI Time Slider Control (sterowanie suwakiem czasu za pomocą urządzenia MIDI) zawiera opcję On (włącz) oraz przycisk Setup (ustaw). Kliknięcie przycisku Setup otwiera okno dialogowe MIDI Time Slider Control Setup, pokazane na rysunku 21.12. Po określeniu w tym oknie odpowiednich ustawień możesz sterować animacją za pomocą urządzenia MIDI. Rysunek 21.12. W oknie dialogowym MIDI Time Slider Control Setup możesz poszczególnym funkcjom odtwarzania animacji przypisać określone zdarzenia MIDI

Rozdział 21.  Animacja i klatki kluczowe

665

Korzystając z zakładki Animation, możesz wybrać nowy dźwiękowy moduł dodatkowy, a także ustawić domyślne wartości wszystkich kontrolerów animacji. Włączenie opcji Override Parametric Controller Range by Default powoduje, że kontrolery parametryczne są aktywne podczas całej animacji, a nie tylko w przypisanych im zakresach. Opcja Spring Quick Edit pozwala w tym miejscu zmienić dokładność wszystkich kontrolerów typu Spring zastosowanych w całej scenie. Parametr Rollback określa liczbę klatek, po których kontroler Spring wraca do swojej początkowej pozycji. Kliknięcie przycisku Set Defaults (ustaw wartości domyślne) otwiera okno dialogowe Set Controller Defaults. W oknie tym znajdziesz listę wszystkich kontrolerów i przycisk Set (ustaw). Jeśli wybierzesz kontroler i klikniesz przycisk Set, otworzy się kolejne okno dialogowe, w którym możesz ustawić wszystkie jego parametry. Gdy uruchamiasz Maksa po raz pierwszy, pierwszą klatką animacji na linii czasu jest klatka o numerze 0, ale jeśli włączysz opcję Auto Key Default Frame (automatyczny klucz w klatce domyślnej), będziesz mógł ustawić jako pierwszą klatkę o dowolnym numerze. Może to być przydatne, gdy chcesz tworzyć animację rozpoczynającą się od klatki innej niż 01. Więcej informacji na temat kontrolerów znajdziesz w rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Animowanie obiektów W Maksie możliwa jest animacja wielu różnych rodzajów obiektów, m.in. obiektów geometrycznych, kamer, świateł i materiałów. W tym podrozdziale zajmiemy się kilkoma różnymi rodzajami obiektów i parametrów, które można animować.

Animowanie kamer Kamery możesz animować przy użyciu standardowych przycisków transformacji znajdujących się na głównym pasku narzędziowym. Do animowania kamery, która przemieszcza się w obrębie sceny, najlepiej wybrać kamerę swobodną (Free). Kamera wycelowana (Target) może być animowana m.in. przez przemieszczanie jej celu, ale ryzykujesz jej koziołkowanie, jeśli cel znajdzie się bezpośrednio nad nią. Jeśli chcesz opracować animację kamery wycelowanej, dołącz kamerę oraz jej cel do obiektu pozornego (Dummy) przy użyciu przycisku Link i przemieszczaj ten obiekt. Dwa ograniczniki użyteczne przy animowaniu kamery to Path i Look At. Oba znajdziesz w menu Animation/Constraints. Ogranicznik Path powoduje podążanie kamery po ścieżce, a Look At pozwala utrzymywać jej cel na wybranym obiekcie w trakcie przemieszczania się zarówno kamery, jak i obiektu. 1

Tak naprawdę opcja Auto Key Default Frame, jeśli jest włączona, powoduje automatyczne utworzenie klucza w klatce 0 lub 1 (tylko te dwie wartości są dostępne), gdy w trybie Auto Key tworzymy klucze w innych klatkach niż te. Jeśli jest wyłączona, klucze w klatkach początkowych nie są tworzone. Pierwsza klatka kluczowa powstanie tam, gdzie ją utworzymy — przyp. tłum.

666

Część V  Podstawy animacji i renderingu Aby dowiedzieć się więcej o ogranicznikach, łącznie z dwoma wymienionymi powyżej, przeczytaj rozdział 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Ćwiczenie: Animowanie lotek trafiających w tarczę Prostym przykładem animowania obiektów przy użyciu przycisku Auto Key będzie animowanie kilku lotek trafiających w tarczę. Aby opracować animację lotek, wykonaj następujące czynności. 1. Otwórz plik Dart and dartboard.max z folderu Chap 21 znajdującego się na płycie ołączonej do książki. Plik ten zawiera obiekty lotek i tarczy, które powstały w Zygote Media. 2. Kliknij przycisk Auto Key (lub wciśnij klawisz N), aby włączyć tryb automatycznego kluczowania. Przeciągnij suwak czasu do klatki numer 25 i kliknij przycisk Select and Move na głównym pasku narzędziowym (lub wciśnij klawisz W). 3. Wybierz w oknie widokowym Left pierwszą lotkę i przeciągnij ją w lewo, dopóki jej końcówka nie dotknie tarczy. W wyniku tego na pasku ścieżki zostaną utworzone klucze w klatkach 0 i 25. 4. Kliknij przycisk Select and Rotate na głównym pasku narzędiowym, ustaw układ współrzędnych jako Local i ogranicz obrót do osi Y. Następnie przeciągnij wybraną lotkę w oknie widokowym Front tak, by obrócić ją wokół jej własnej osi Y. Posunięcie to spowoduje utworzenie kolejnego klucza na pasku ścieżki. 5. Wybierz drugą lotkę i ponownie kliknij przycisk Select and Move. Kliknij prawym przyciskiem myszy suwak czasu, aby wywołać okno dialogowe Create Key. Upewnij się, że zaznaczone są pola wyboru dla opcji Position i Rotation, po czym kliknij OK. Powstanie klatka kluczowa, która powstrzyma ruch drugiej lotki do odpowiedniego momentu. 6. Z zaznaczoną drugą lotką przeciągnij suwak czasu do klatki numer 50 i przesuń lotkę do tarczy, tak jak zrobiłeś to w punkcie 3. Następnie powtórz punkt 4., aby ustawić klatkę kluczową obrotu dla drugiej lotki. 7. Powtórz punkty 3., 4. i 5. dla dwóch ostatnich lotek. 8. Kliknij ponownie przycisk Auto Key (lub wciśnij klawisz N), aby wyłączyć tryb animacji, zmaksymalizuj okno widokowe Perspective i kliknij przycisk Play Animation, żeby obejrzeć gotową animację. Na rysunku 21.13 przedstawiono lotki lecące w kierunku tarczy.

Animowanie świateł Animowanie świateł jest bardzo podobne do animowania kamer. Dla przemieszczających się świateł korzystaj z reflektora swobodnego (Free Spot) lub dołącz reflektor wycelowany (Target Spot) do obiektu pomocniczego typu Dummy. Przy animowaniu świateł możesz także użyć kontrolerów Look At i Path.

Rozdział 21.  Animacja i klatki kluczowe

667

Rysunek 21.13. Jedna z klatek animacji lotek Jeśli chcesz animować światło słoneczne o różnych porach dnia, skorzystaj z systemu światła słonecznego, który jest opisany w rozdziale 20., „Podstawowe techniki oświetlania sceny”.

Aby zamrugać światłami, włącz i wyłącz parametr On w różnych klatkach i przypisz kluczom styczną typu Step. Aby przyciemnić światła, w kilku następujących po sobie klatkach zmień odpowiednio wartość mnożnika (Multiplier).

Animowanie materiałów Animacja materiałów może mieć miejsce, jeśli przy włączonym przycisku Auto Key zmieniane są ich właściwości. Max wstawia wartości pośrednie w miarę przebiegu animacji. Materiał musi pozostać ten sam na czas trwania całej animacji: nie możesz zmieniać materiałów w różnych klatkach kluczowych; możesz jedynie zmieniać parametry istniejącego materiału. Jeśli chcesz zmienić materiały w trakcie trwania animacji, możesz użyć materiału złożonego, który łączy kilka różnych materiałów, np. materiału mieszanego (Blend). Znajdziesz w nim wartość Mix Amount, która może się zmieniać dla różnych klatek kluczowych. Kilka rodzajów map, w tym wszystkie te mapy, które mają roletę Noise, zawiera parametr Phase. Parametr ten umożliwia animowanie mapy. Przykładowo użycie mapy szumu (Noise) i zmiana wartości fazy (Phase) na przestrzeni wielu klatek kluczowych daje efekt przemieszczania się szumu.

668

Część V  Podstawy animacji i renderingu Materiały dają się animować także za pomocą węzłów typu Controller, które można tworzyć w rozszerzonym edytorze materiałów. Używając tych węzłów, możesz zmieniać parametry materiałów w poszczególnych klatkach animacji, ale też możesz skorzystać z edytora krzywych.

Dobrym sposobem na podgląd animowanych materiałów jest kliknięcie przycisku Make Preview (szóstego od góry w kompaktowym edytorze materiałów), który otwiera okno dialogowe Create Material Preview, widoczne na rysunku 21.14. Wybierz w nim opcję Active Time Segment i kliknij OK. Program wyrenderuje kolejne klatki animacji i automatycznie otworzy okno z podglądem animowanego materiału. Rysunek 21.14. Okno dialogowe Create Material Preview pozwala na renderowanie całego zakresu klatek lub też ich określonej liczby

Tworzenie list z plikami obrazów (Image File Lists) Tam, gdzie możesz załadować bitmapę, możesz też załadować plik animacji, taki jak Microsoft Video (AVI) lub QuickTime (MOV). Kolejnym sposobem na tworzenie animowanego materiału jest używanie listy plików obrazów, która jest plikiem tekstowym wymieniającym wszystkie pliki obrazów zawarte w danej animacji. Max obsługuje dwa różne typy list plików obrazów — Autodesk ME Image Sequence (IMSQ) i 3ds Max Image File List (IFL). Pliki IMSQ i IFL to pliki tekstowe, będące listami plików obrazów, które mają pojawiać się w konkretnych klatkach animacji. Zapisywane są z rozszerzeniem .IMSQ lub .IFL i wczytuje się je jako mapy typu Bitmap. Listy plików obrazów mogą być tworzone w czasie procesu renderowania przez wybranie opcji Put Image File List in Output Path (umieść listę plików obrazów w ścieżce wyjściowej) z rolety Common Parameter okna dialogowego Render Setup. Dostępny jest również przycisk Create Now, który pozwala tworzyć taką listę w dowolnej chwili. Aby ręcznie utworzyć plik IMSQ lub IFL, otwórz edytor tekstu i wpisz nazwę obrazu, a następnie liczbę klatek, w których ma się pojawić. Upewnij się, że między nazwą obrazu a liczbą klatek wstawiłeś spację. Obrazy są wyświetlane w takiej kolejności, w jakiej wymieniono je na liście, i powtarzane do momentu wyświetlenia wszystkich klatek zakresu. Po zastosowaniu plik listy obrazów można obejrzeć w okienku z próbką materiału przy przeciąganiu suwaka czasu. Możesz również wygenerować podgląd materiału.

Rozdział 21.  Animacja i klatki kluczowe

669

Możesz także wykorzystać znaki * i ? jako wieloznaczniki w obrębie pliku IFL. Przykładowo ciąg przelot* obejmuje każdy obraz, którego nazwa zaczyna się od frazy „przelot”, a przelot? obejmuje każdy obraz, którego nazwa zaczyna się od frazy „przelot” i zawiera jeden dodatkowy znak.

Tworzenie plików IFL przy użyciu narzędzia IFL Manager Jeśli nie chcesz tworzyć plików tekstowych ręcznie, możesz do tego wykorzystać narzędzie IFL Manager Utility. Aby go użyć, otwórz panel Utilities i kliknij przycisk More. Następnie wybierz IFL Manager i kliknij OK. W rolecie IFL Manager, widocznej na rysunku 21.15, przycisk Select otwiera okno dialogowe Browse Images for Input, w którym możesz wybrać listę obrazów, które zostaną włączone do pliku IFL. Po wybraniu listy obrazów możesz określić początkowy i końcowy obraz. Możesz spowodować wyświetlanie obrazów w odwrotnej kolejności, wpisując w polu Start wartość większą niż w polu End. Pole Every Nth pozwala ustawić używanie co n-tego obrazu. Do określenia czasu wyświetlania każdego obrazu możesz użyć pola Multiplier. Rysunek 21.15. Narzędzie IFL Manager pomaga w tworzeniu plików IFL

Przycisk Create otwiera okno dialogowe File, w którym możesz zapisać plik IFL. Przycisk Edit otwiera plik tekstowy IFL w domyślnym systemowym edytorze tekstu i umożliwia wprowadzenie w nim zmian.

Ćwiczenie: Co mamy dzisiaj w telewizji? Pliki animowane, takie jak AVI i MOV, mogą być mapowane na obiekcie jako animowane tekstury, ale możesz do tego celu wykorzystać również pliki IFL. Aby utworzyć plik IFL, który będzie mapowany na modelu telewizora, wykonaj następujące czynności. 1. Otwórz standardowy Notatnik systemu Windows i wpisz następujący tekst: ; te klatki pojawią się na ekranie telewizora. static.tif 20 Exploding planet - frame 10.tif 2 Exploding planet - frame 15.tif 2 Exploding planet - frame 20.tif 2 Exploding planet - frame 25.tif 2 Exploding planet - frame 30.tif 2 Exploding planet - frame 35.tif 2 Exploding planet - frame 40.tif 2

670

Część V  Podstawy animacji i renderingu Exploding planet - frame 45.tif 2 Exploding planet - frame 50.tif 2 Exploding planet - frame 55.tif 2 static.tif 60

Pierwsza linia tekstu to linia komentarza. Komentarze możesz umieszczać w pliku IFL, poprzedzając je średnikiem (;).

2. Zapisz plik jako tv.ifl. Upewnij się, że edytor tekstu nie dodał do pliku rozszerzenia .TXT. Możesz porównać własny plik z moim plikiem, który znajdziesz w folderze Chap 21 na płycie dołączonej do książki. Plik IFL, jak zostało to opisane wcześniej, bazuje na plikach obrazów umieszczonych w tym samym folderze, w którym się znajduje. Upewnij się, że wszystkie obrazy znajdują się w odpowiednim folderze.

3. Otwórz plik Television-IFL File.max z folderu Chap 21 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model telewizora utworzony przez Zygote Media. 4. Wybierz obiekt ekranu, otwórz edytor materiałów i kliknij dwukrotnie materiał Standard w panelu przeglądarki materiałów i map. Nazwij materiał Television Screen (ekran telewizora). Kliknij przycisk mapy, znajdujący się na prawo od próbki Diffuse. Kliknij w przeglądarce dwukrotnie pozycję Bitmap. W oknie dialogowym Select Bitmap Image File wybierz plik tv.ifl i kliknij OK. Węzeł mapy połącz z gniazdem Diffuse Color materiału. Następnie kliknij przycisk Assign Material to Selection, aby nałożyć materiał na ekran telewizora. Żeby zobaczyć mapę w oknie widokowym, kliknij przycisk Show Shaded Material in Viewport. Dzięki temu klatki pliku IFL są wyświetlane w oknie widokowym.

5. Ponieważ ekran telewizora jest obiektem siatkowym, musisz użyć modyfikatora UVW Map, aby utworzyć współrzędne mapowania dla mapy. Otwórz panel Modify i kliknij przycisk UVW Map. Wybierz opcję mapowania Planar. Następnie kliknij przycisk Sub-Object i przetransformuj gizmo płaszczyzny mapowania w taki sposób, aby pokrywała ona cały ekran. 6. Kliknij przycisk Play (/), aby obejrzeć animację wynikową. Na rysunku 21.16 przedstawiono wyrenderowaną klatkę z telewizorem, na który nałożony został plik IFL.

Podgląd animacji Jest bardzo prawdopodobne, że wyniki Twojej pracy będą wyrenderowane przy ustawieniach najwyższej jakości i włączonych wszystkich efektach, co na pewno zajmie dużo czasu. Po kilkudniowym czekaniu na wyrenderowaną sekwencję możesz przeżyć szok,

Rozdział 21.  Animacja i klatki kluczowe

671

Rysunek 21.16. Pliki IFL są powszechnie używane do animowania materiałów za pomocą listy obrazów

jeśli okaże się, że z najważniejszymi ujęciami animacji nie wszystko jest w porządku. Nawet oglądanie animacji w oknach widokowych przy użyciu przycisku Play Animation może nie być wystarczającym środkiem wyłapywania problemów. Jednym ze sposobów na zlokalizowanie potencjalnych nieprawidłowości jest tworzenie podglądu animacji. Podgląd to testowy, uproszczony rendering całej animacji. Pomaga przewidzieć ostateczny wygląd całej sceny. Menu Tools/Views - Grab Viewport zawiera kilka poleceń pozwalających na tworzenie i oglądanie podglądów animacji, a także zmianę ich nazwy. Opcje renderowania dostępne dla podglądów są takie same jak opcje cieniowania obiektów w oknach widokowych.

Tworzenie podglądu Możesz tworzyć podgląd, wybierając z menu polecenie Tools/Views - Grab Viewport/Create Animated Sequence File, co otwiera okno dialogowe Make Preview, widoczne na rysunku 21.17. To samo polecenie możesz wybrać także w menu ukrytym pod etykietą ogólnych ustawień okna widokowego. W oknie dialogowym Make Preview przy użyciu opcji Active Time Segment (bieżący segment czasowy) lub Custom Range (zakres użytkownika) możesz określić, które klatki zostaną użyte do tworzenia podglądu. Możesz także wybrać co n-tą klatkę (Every Nth Frame) lub też w polu Playback FPS podać konkretną liczbę klatek na sekundę. Rozmiar obrazu jest określony na podstawie wartości Percent of Output, która procentowo ustala rozmiar podglądu w stosunku do rozmiaru docelowego renderingu. Widoczna jest także rozdzielczość podglądu. Sekcja Display Filter oferuje wachlarz opcji, które możesz zastosować wobec podglądu, określając jego zawartość. Do wyboru są tutaj Geometry (obiekty geometryczne), Shapes (kształty), Lights (światła), Cameras (kamery), Helpers (obiekty pomocnicze), Space Warps (pola sił), Particle Systems (systemy cząsteczek), Bone Objects (obiekty kości)

672

Część V  Podstawy animacji i renderingu

Rysunek 21.17. Okno dialogowe Make Preview pozwala określić zakres, rozmiar i plik wyjściowy podglądu

i Active Grid (aktywna siatka). Ponieważ podgląd jest renderowany tak samo jak okna widokowe, dla niektórych obiektów (np. świateł i kamer) wyświetlane są ich ikony. Opcje z sekcji Overlay (nakładka) umożliwiają nakładanie na obraz następujących elementów: Safe Frames (obszary bezpieczne), Frame Numbers (numery poszczególnych klatek) i Camera/View Name (nazwa kamery lub widoku). Elementy te są wyświetlane w lewym górnym rogu każdej klatki i ułatwiają identyfikację uzyskanych rezultatów. Rozwijana lista Rendering Level zawiera te same opcje cieniowania, które są używane do wyświetlania obiektów w oknach widokowych, czyli Realistic, Shaded, Consistent Colors, Hidden Line, Wireframe i Bounding Box. Są tu także opcje stylizacji renderingu: Ink, Color Ink, Acrylic, Tech, Graphite, Color Pencil i Pastel. Poza rozwijaną listą są opcje, za pomocą których można włączać i wyłączać wyświetlanie ścianek otoczonych krawędziami (Edged Faces), tekstur (Textures), odblasków (Highlights) i tła (Background). Możliwość renderowania obrazów stylizowanych jest nowością w 3ds Max 2012.

W sekcji Camera View (widok z kamery) możesz włączyć podgląd efektów wieloprzebiegowych, takich jak głębia ostrości lub rozmycie ruchu. Opcje pliku wyjściowego (Output) to: domyślny format AVI oraz opcja Custom File, która pozwala wybrać własny format. Dla opcji AVI możesz wybrać kodek (Choose Codec), który zostanie użyty do kompresji pliku podglądu. Do wyboru masz Cinepak Code by Radius, Logitech Video (1420), Intel IYUV, Microsoft Video 1, Intel Indeo Video 4.5, DivX 5.0.5 i Pełne klatki (nieskompresowane), zależnie od kodeków zainstalowanych w Twoim systemie.

Rozdział 21.  Animacja i klatki kluczowe

673

Na dole okna dialogowego znajduje się rozwijana lista Render Viewport, w której możesz wybrać okno widokowe, z jakiego zostanie wygenerowany plik podglądu. Przycisk Create rozpoczyna proces renderowania. Podczas renderowania podglądu okna widokowe są zastępowane pojedynczym obrazem aktualnej klatki renderingu, a listwa statusu w dole ekranu zastępowana jest przez pasek postępu i przycisk anulowania renderowania (Cancel). Aby anulować proces renderowania podglądu, możesz użyć klawisza Esc.

Jeśli anulujesz rendering, okno komunikatu Make Preview zaoferuje opcje Stop and Play (zatrzymaj i odtwórz), Stop and Don’t Play (zatrzymaj i nie odtwarzaj) i Don’t Stop (nie zatrzymuj).

Oglądanie podglądu Kiedy renderowanie pliku podglądu zostanie zakończone, otworzy się domyślny odtwarzacz multimedialny Twojego systemu i rozpocznie odtwarzanie pliku podglądu. Takie automatyczne odtwarzanie możesz wyłączyć przy użyciu opcji Autoplay Preview File w panelu General okna dialogowego Preference Settings. W dowolnej chwili możesz odtworzyć plik podglądu przy użyciu polecenia Tools/ Views - Grab Viewport/View Animated Sequence File. Polecenie to wczytuje ostatni plik podglądu i wyświetla go w odtwarzaczu multimedialnym.

Zmiana nazwy podglądu Plik podglądu zapisywany jest jako plik o nazwie scene.avi w domyślnym katalogu podglądów (previews). Pamiętaj, że plik ten jest automatycznie nadpisywany przy tworzeniu nowego podglądu. Aby zapisać podgląd, zmieniając jego nazwę, użyj polecenia Tools/Views - Grab Viewport/Rename Animated Sequence File. Polecenie to otwiera okno dialogowe Save Preview As, w którym możesz nadać nazwę plikowi podglądu.

Podsumowanie W tym rozdziale omówiono podstawy animowania obiektów w Maksie, włączając w to pracę z czasem i kluczami. Nauczyłeś się także dwóch trybów tworzenia kluczy i poznałeś sposoby ich edycji. W programie udostępniono wiele pomocy animacyjnych, takich jak trajektorie i wyświetlanie sąsiednich klatek animacji. W rozdziale tym omówiono także animowanie materiałów i tworzenie podglądów animacji. Zapoznałeś się z następującymi zagadnieniami: 

kontrolą czasu i używaniem kluczy animacji,



używaniem dwóch trybów kluczowania animacji,



korzystaniem z paska ścieżki i panelu Motion,



wyświetlaniem i edycją wartości kluczy,

674

Część V  Podstawy animacji i renderingu 

używaniem trajektorii i sąsiadujących klatek animacji,



animowaniem materiałów i używaniem plików IFL,



tworzeniem podglądu animacji.

W następnym rozdziale dowiesz się, jak można zautomatyzować tworzenie animacji przy użyciu ograniczników i kontrolerów.

Rozdział 22.

Animowanie przy użyciu ograniczników i prostych kontrolerów W tym rozdziale: 

Używanie ograniczników



Przyczepianie obiektu do powierzchni innego obiektu



Poruszanie obiektu po ścieżce z użyciem ogranicznika Path



Kontrolowanie ważonej pozycji i orientacji obiektów



Zmiana pomiędzy obiektami nadrzędnymi przy użyciu ogranicznika Link



Podążanie za obiektami za pomocą ogranicznika LookAt



Rodzaje kontrolerów



Przypisywanie kontrolerów przy użyciu panelu Motion i okna Track View



Ustawianie kontrolerów domyślnych

Kiedy rozpoczniesz animowanie i korzystanie z klatek kluczowych, automatyczne tworzenie klatek pomiędzy poszczególnymi klatkami kluczowymi przez Maksa wydaje się być niesamowicie użyteczną opcją szczególnie wtedy, gdy masz doświadczenie w tworzeniu animacji 2D i rysowaniu każdej klatki z osobna. Jednak wkrótce zdasz sobie sprawę, iż używanie klatek kluczowych utrudnia tworzenie złożonych i realistycznych animacji, ale — oczywiście — Max znów spieszy na ratunek. Dla pewnych rodzajów ruchu możesz użyć ograniczników i kontrolerów animacji do zautomatyzowania procesu tworzenia klatek kluczowych. Ograniczniki i kontrolery przechowują wartości klatek kluczowych i zarządzają nimi we wszystkich animacjach w Maksie. Kiedy animujesz obiekt przy użyciu przycisku Auto Key, domyślny kontroler zostaje przypisany automatycznie. Możesz zmienić przypisany kontroler lub jego parametry przy użyciu panelu Motion lub okna Track View.

676

Część V  Podstawy animacji i renderingu

W tym rozdziale poznasz zasady korzystania z ograniczników i kilku prostych kontrolerów. Przykładowo możesz użyć kontrolera Noise do dodania przypadkowości w ruchu flagi powiewającej na wietrze lub kontrolera Surface do utrzymania pojazdu terenowego na wyboistej drodze.

Ograniczanie ruchu przy użyciu ograniczników Cała sztuka animowania obiektu polega na zmuszeniu go do przemieszczenia się tam, gdzie sobie tego życzymy. Animowanie obiektów nie polega jedynie na kontrolowaniu jego ruchów — chodzi też o bezruch. Ograniczniki (zwane też więzami) są rodzajem kontrolerów animacji, których możesz użyć do ograniczania ruchu obiektu. Korzystając z nich, możesz przymocować obiekt do drugiego lub zmusić do podążania określoną ścieżką. Przykładowo ogranicznik Attachment może w trakcie ruchu kontrolować przyczepność stóp robota do podłoża. Ograniczniki wydatnie ułatwiają animowanie obiektów.

Używanie ograniczników Ograniczniki możesz zastosować wobec wybranych obiektów przy użyciu menu Animation/Constraints. Znajdują się w nim ograniczniki Attachment (przypisanie), Surface (powierzchnia), Path (ścieżka), Position (położenie), Link (łącze), LookAt (patrz na) i Orientation (zorientowanie). Wszystkie są przedstawiane za pomocą tej samej ikony wyświetlanej w panelu Motion lub oknie Track View. Po wybraniu z menu Animation/Constraints jednego z ograniczników pojawia się kropkowana linia łącząca aktualnie wybrany obiekt z kursorem myszy. Możesz wybrać obiekt docelowy (nakładający więzy) w dowolnym oknie podglądu. Kursor zmienia się w znak plus, kiedy znajdzie się nad obiektem, który może zostać wybrany. Wybranie ogranicznika z menu Constraints powoduje również otwarcie panelu Motion, gdzie możesz zmienić jego ustawienia. Ograniczniki możesz także wybierać za pomocą przycisku Assign Controller znajdującego się w panelu Motion i w oknie Track View. Więcej na temat okna Track View dowiesz się, czytając rozdział 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Stosowanie ograniczników Ograniczniki różnią się od siebie, a poznanie tych różnic pozwoli Ci lepiej kontrolować animowane obiekty w obrębie sceny. Wobec jednego obiektu możesz zastosować kilka ograniczników. Wszystkie zastosowane ograniczniki są wyświetlane na liście, która znaj-

Rozdział 22.  Animowanie przy użyciu ograniczników

677

duje się w panelu Motion. Przy jej użyciu możesz aktywować i usuwać poszczególne ograniczniki. Możesz także wycinać i wklejać ograniczniki pomiędzy obiektami.

Ogranicznik Attachment Ogranicznik Attachment określa położenie obiektu przez przymocowanie go do ścianki innego obiektu. Pozwala na zamocowanie jednego obiektu na powierzchni drugiego. Przykładowo możesz animować wystrzelenie statku kosmicznego z dopalaczami, doczepionymi za pomocą ogranicznika Attachment. Poruszałyby się one razem ze statkiem kosmicznym do momentu odrzucenia. Środek obrotu obiektu, wobec którego zastosowano ten ogranicznik, jest dołączany do obiektu docelowego. Na górze rolety Attachment Parameters znajduje się przycisk Pick Object, służący do wybrania docelowego obiektu, do którego nastąpi przymocowanie. Możesz użyć tego przycisku do zmiany lub wybrania obiektu docelowego, jeśli nie skorzystałeś z menu Animation/Constraints. Znajduje się tutaj również opcja pomagająca dopasować obiekt do powierzchni. Sekcja Update pozwala na ręczną lub automatyczną aktualizację parametrów przymocowania. Ogranicznik Attachment pojawia się na ścieżce Position rolety Assign Controller. Aby zminimalizować efekt zastosowania innych kontrolerów, ustaw ich wagi (parametr Weight) w rolecie Position List na 0.

Sekcja Key Info rolety Attachment Parameters wyświetla numer klatki kluczowej i pozwala na przemieszczanie się pomiędzy poszczególnymi klatkami kluczowymi. Wartość Time określa położenie klatki kluczowej na listwie czasu. W polu Face możesz ustalić dokładny numer ścianki, do której zostanie przymocowany obiekt. Aby to uczynić, kliknij przycisk Set Position i przeciągnij kursor nad obiektem docelowym. Wartości A i B przedstawiają współrzędne barycentryczne określające położenie obiektu na ściance. Możesz je zmienić, wpisując nowe wartości lub przeciągając czerwony krzyżyk w znajdującym się poniżej okienku. Najprostszym sposobem na precyzyjne umieszczenie obiektu na ściance jest użycie przycisku Set Position, a następnie poprawienie jego pozycji przy użyciu wartości A i B. Przycisk Set Position jest aktywny do chwili ponownego kliknięcia. Sekcja TCB pozwala ustawić dla ogranicznika wartości Tension (naprężenia), Continuity (ciągłości) i Bias (pochylenia). Możesz także ustawić wartości Ease To (zwolnienia na wejściu) i Ease From (zwolnienia na wyjściu).

Ćwiczenie: Przyczepianie oczu do topniejącego bałwana Gdy część modelu jest deformowana, tak jak w przypadku bałwana roztapianego modyfikatorem Melt, inne części, np. oczy, mogą stracić kontakt z resztą obiektu. Jeśli modyfikator Melt nie miałby wpływu na te elementy, zawisłyby w powietrzu, podczas gdy reszta bałwana stopiłaby się doszczętnie. Można zapobiec takiej sytuacji, stosując ogranicznik Attachment, który przymocuje oczy do topniejącego śniegu. Przykład roztapiania bałwana za pomocą modyfikatora Melt znajdziesz w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

678

Część V  Podstawy animacji i renderingu

Aby związać obiekty stałe z topniejącym bałwanem, wykonaj następujące czynności. 1. Otwórz plik Melting snowman.max z folderu Chap 22 znajdującego się na płycie dołączonej do książki. Plik ten zawiera topniejącego bałwana z modyfikatorem Melt zastosowanym względem wszystkich obiektów. 2. Zaznacz lewe oko w scenie. W stosie modyfikatorów wskaż Melt i kliknij przycisk Remove Modifier, aby odłączyć modyfikator od oka. 3. Ciągle mając zaznaczone lewe oko bałwana, wybierz polecenie Animation/ Constraints/Attachment Constraint. W aktywnym oknie podglądu pojawi się linia. Kliknij górną kulę śniegu, aby wybrać ją jako obiekt przymocowania. Spowoduje to przemieszczenie obiektu oka na górę kuli śniegu, gdzie znajduje się jej pierwsza ścianka. 4. W rolecie Attachment Parameters zmieniaj wartość Face tak długo, by oko znalazło się w odpowiednim miejscu. Będą to okolice ścianki numer 315. Następnie zmień wartości A i B (lub też przeciągnij kursorem po wykresie Position), aby umieścić oko w odpowiednim miejscu. 5. Powtórz punkty 2., 3. i 4. dla prawego oka i każdego innego obiektu w scenie, który chcesz przymocować. 6. Kliknij przycisk Play (/) i obserwuj, jak śnieg topnieje, podczas gdy oczy nie zmieniają kształtu ani rozmiaru. Na rysunku 22.1 przedstawiono topniejącego bałwana.

Ogranicznik Surface Ogranicznik Surface przemieszcza jeden obiekt po powierzchni drugiego. Obiekt, względem którego został zastosowany ten ogranicznik, jest ustawiany tak, że jego środek obrotu znajduje się na powierzchni obiektu docelowego. Możesz użyć tego ogranicznika jedynie z określonymi rodzajami obiektów, włączając w to Spheres (kule), Cones (stożki), Cylinders (cylindry), Toruses (torusy), Quad Patches (łaty czworokątne), Loft (obiekty wytłaczane) i obiekty typu NURBS. Ogranicznik Surface wykorzystuje powierzchnie o naturze parametrycznej. Dlatego można go stosować jedynie w odniesieniu do określonego typu obiektów, takich jak podstawowa sfera, stożek, walec, łata czy obiekty NURBS.

W rolecie Surface Controller Parameters znajduje się nazwa obiektu docelowego, który został wskazany po wybraniu polecenia z menu. Przycisk Pick Surface umożliwia wybranie innej powierzchni przymocowania. Możesz także ustalić wartości U Position i V Position. Opcja Alignment (dopasowanie) może mieć wartość No Alignment (brak), Align to U (dopasuj do U), Align to V (dopasuj do V) i przełącznik Flip (odwróć). Nie daj się wprowadzić w błąd nazwie rolety — Surface Controller Parameters zamiast Surface Constraint Parameters. Programiści w firmie Autodesk musieli to po prostu przeoczyć.

Rozdział 22.  Animowanie przy użyciu ograniczników

679

Rysunek 22.1. Ogranicznik Attachment przymocowuje jeden obiekt do powierzchni drugiego

Ćwiczenie: Staczanie koła ze wzgórza przy użyciu ogranicznika Surface Przemieszczanie pojazdu w krajobrazie może być trudną procedurą, jeśli musisz umieścić klucze wszystkich obrotów i położeń, ale ogranicznik Surface zdecydowanie ułatwia sprawę. W tym ćwiczeniu zobaczysz, jak stoczyć koło w dół wzgórza za pomocą ogranicznika Surface. Aby stoczyć koło ze wzgórza przy użyciu ogranicznika Surface, wykonaj następujące czynności. 1. Otwórz plik Tire rolling on a hill.max z folderu Chap 22 znajdującego się na płycie dołączonej do książki. Plik ten zawiera wzgórze uformowane z siatki łaty i koło utworzone z prostych kształtów. 2. Utwórz obiekt atrapę (Dummy) z kategorii Helpers i połącz z nim koło jako obiekt podrzędny. Spowoduje to wspólny ruch koła z atrapą. Umieść punkt obrotu atrapy na dole koła i na szczycie wzgórza. Środek obrotu obiektu może być przesuwany po włączeniu przycisku Affect Pivot Point Only w panelu Hierarchy. 3. Zaznacz atrapę, wybierz polecenie Animation/Constraints/Surface Constraint i wskaż obiekt wzgórza.

680

Część V  Podstawy animacji i renderingu

4. W rolecie Surface Controller Parameters wybierz opcje Align to V, włącz Flip i staw wartość V Position na 50, aby umieścić koło na szczycie wzgórza w odpowiednim położeniu. 5. Kliknij przycisk Auto Key (lub wciśnij klawisz N), przeciągnij suwak czasu do klatki numer 100 i zmień wartość U Position na 100. Kliknij ponownie przycisk Auto Key, aby go wyłączyć, i przycisk Play Animation, by zobaczyć, jak koło stacza się ze wzgórza. Na rysunku 22.2 przedstawiono ruch koła staczającego się w dół wzgórza.

Rysunek 22.2. Ogranicznik Surface pozwala animować obiekt poruszający się po powierzchni innego obiektu

Ogranicznik Path Ogranicznik Path umożliwia wybranie ścieżki opisanej krzywą, po której będzie poruszał się obiekt. Obiekt zostanie przypisany do krzywej i będzie po niej podążał nawet wtedy, gdy zostanie ona zmieniona. To jeden z najbardziej przydatnych ograniczników, ponieważ pozwala na dokładne kontrolowanie ruchu obiektu. Biorąc pod uwagę możliwości krzywych w Maksie, możesz za pomocą ogranicznika Path bardzo precyzyjnie sterować ruchem obiektów. Dobrym przykładem jest animowany pociąg podążający torem. Przy użyciu krzywej możesz utworzyć tor, a ogranicznik Path umożliwi szybkie wykonanie animacji pociągu. Po wybraniu polecenia Animation/Constraints/Path Constraint możesz wskazać pojedynczą ścieżkę, po której będzie poruszał się obiekt. Jest ona dodawana do listy ścieżek w rolecie Path Parameters.

Rozdział 22.  Animowanie przy użyciu ograniczników

681

Roleta Path Parameters zawiera również przyciski Add Path i Delete Path, które pozwalają na dodawanie i usuwanie ścieżek z listy. Jeśli do listy zostaną dodane dwie ścieżki, obiekt podąży trasą stanowiącą wypośrodkowanie pomiędzy nimi. Poprzez zmianę wagi (Weight) dla każdej ścieżki możesz decydować, która z nich będzie miała większy wpływ na ruch obiektu. Sekcja Path Options zawiera wartość % Along Path, która pozwala określić położenie obiektu na ścieżce. Może ona przybrać wartość od 0 na jednym końcu do 100 na drugim. Opcja Follow ustawia obiekt zgodnie z aktualnym kierunkiem ruchu, a opcja Bank powoduje przechylanie obiektu na zakrętach. Wartość Bank Amount reguluje głębokość pochylenia, a Smoothness określa jego płynność. Opcja Allow Upside Down pozwala obiektowi na całkowite obroty wokół osi, a dzięki opcji Constant Velocity jego prędkość będzie stała. Opcja Loop powoduje powrót obiektu do jego pierwotnej pozycji w ostatniej klatce, tworząc zapętloną sekwencję animacji. Opcja Relative pozwala obiektowi na zachowanie pierwotnego położenia początkowego i nie przemieszcza go do początku ścieżki. Ruch odbywa się wzdłuż ścieżki, ale z przesunięciem odpowiadającym różnicy między początkiem ścieżki a pierwotnym położeniem obiektu. Na dole rolety Path Parameters możesz określić oś, która zostanie wykorzystana do ustawienia obiektu względem ścieżki.

Ćwiczenie: Tworzenie trasy przelotu statku kosmicznego Jednym ze sposobów wykorzystania krzywych jest tworzenie ścieżek animacji. W tym przykładzie użyjemy krzywej typu Line. Można tego dokonać na dwa sposoby. Po pierwsze, możesz utworzyć krzywą i wykorzystać ją jako ścieżkę dla obiektu, stosując ogranicznik Path lub pole sił Path Follow. Pierwszy wierzchołek krzywej wyznaczy wówczas pierwszą klatkę animacji. Po drugie, możesz wykonać animację obiektu, a następnie zmienić jego ścieżkę trajektorii — Trajectory. W tym ćwiczeniu użyjemy prostej ścieżki i powiążemy ją z modelem statku kosmicznego, który powstał w Viewpoint Datalabs. Aby dołączyć obiekt do ścieżki krzywej, wykonaj następujące czynności. 1. Otwórz plik Spaceship and asteroids.max z folderu Chap 22 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model statku kosmicznego i kilka obiektów asteroidów. 2. Wybierz polecenie Create/Shapes/Line i w oknie widokowym Top utwórz trasę pomiędzy asteroidami, którą podąży statek. Aby zakończyć jej tworzenie, kliknij prawym przyciskiem myszy. Następnie otwórz panel Modify, kliknij przycisk Vertex w rolecie Selection, aby włączyć tryb zaznaczania wierzchołków, i dokonaj stosownych zmian położenia wierzchołkach w oknie widokowym Front. 3. Mając zaznaczony model statku, wybierz polecenie Animation/Constraints/Path Constraint. Następnie kliknij ścieżkę animacji, aby wybrać ją jako trasę, którą podąży statek. W rolecie Path Parameters wybierz opcję Follow, a następnie w sekcji Axis włącz opcję Y. 4. Kliknij przycisk Play Animation, aby śledzić przelot statku ustaloną trasą.

682

Część V  Podstawy animacji i renderingu

Na rysunku 22.3 przedstawiono statek poruszający się między asteroidami.

Rysunek 22.3. Statek kosmiczny został dołączony do ścieżki, po której podąża

Ogranicznik Position Ogranicznika Position (położenie) możesz użyć do związania obiektu z punktem będącym swego rodzaju środkiem ciężkości kilku innych obiektów1. Przykładowo możesz wykonać animację klucza myśliwców, animując jeden z nich i wykorzystując ogranicznik Position w odniesieniu do pozostałych samolotów. Opcja Position umożliwia wybranie pojedynczego obiektu docelowego, pozwalając na umieszczenie środków obrotu dwóch obiektów jeden na drugim. Aby dodać kolejny obiekt docelowy, kliknij przycisk Add Position Target w rolecie Position Constraint znajdującej się w panelu Motion. Przycisk ten umożliwia wybór obiektu docelowego w oknach widokowych; na liście w rolecie automatycznie pojawia się nazwa wybranego obiektu. Jeśli wybierzesz nazwę obiektu docelowego z listy, możesz przypisać mu wagę (Weight). Obiekt z przypisanym ogranicznikiem jest umieszczany bliżej obiektu o większej wadze. Wartość Weight pozwala wypośrodkować obiekty między innymi obiektami. Opcja Keep Initial Offset (zachowaj początkowe odległości) ustala nowe położenie obiektu, uwzględniając jego pierwotne odległości od obiektów docelowych.

1

Położenie takiego punktu jest zależne od położeń poszczególnych obiektów i wag, jakie zostały im przypisane — przyp. tłum.

Rozdział 22.  Animowanie przy użyciu ograniczników

683

Na rysunku 22.4 przedstawiono sanie umieszczone między czterema drzewami przy użyciu ogranicznika Position. Zauważ, że waga obiektu drzewa u dołu wzgórza jest większa niż innych obiektów docelowych i dlatego sanie znajdują się blisko niego.

Rysunek 22.4. Ogranicznika Position możesz używać, aby kontrolować położenie danego obiektu względem obiektów docelowych

Ogranicznik Link Ogranicznik Link pozwala przenosić pomiędzy obiektami łącza hierarchiczne. Może spowodować zamianę łącza obiektu podrzędnego w trakcie animacji. Jeśli animujesz skomplikowany obiekt przy użyciu obiektu atrapy, ogranicznik ten pozwala na przeniesienie sterowania z jednej atrapy na drugą w trakcie animacji. Dzięki temu ruchy atrap pozostają proste. Roleta Link Params zawiera przyciski Add Link (dodaj łącze) i Delete Link (usuń łącze), listę połączonych obiektów i pole Start Time. Aby zmienić połączenie obiektu, wpisz w polu Start Time numer klatki, w której chcesz dokonać zmiany połączenia, lub też przeciągnij suwak czasu i kliknij przycisk Add Link. Następnie wybierz nowy obiekt nadrzędny. Przycisk Delete jest aktywny, kiedy wybierzesz łącze z listy. Jeśli tworzysz łącze przy użyciu ogranicznika, obiekt nie jest uważany za podrzędny w żadnej z hierarchii.

Wszystkie łącza znaleźć można na liście, która znajduje się w rolecie Link Params. Możesz do niej dodawać łącza za pomocą przycisku Add Link, tworzyć łącza ze sceną z wykorzystaniem przycisku Link to World lub też usuwać je przy użyciu przycisku Delete Link.

684

Część V  Podstawy animacji i renderingu

Pole Start Time określa czas, w którym wybrany obiekt przejmuje kontrolę nad łączem. Obiekt wymieniony na liście jest obiektem nadrzędnym, tak więc pole to określa czas, w którym wybrany obiekt nadrzędny przejmuje kontrolę. Sekcja Key Mode (tryb kluczowania) pozwala wybrać opcję No Key (bez kluczy). Po jej włączeniu dla danego obiektu nie są zapisywane jakiekolwiek klatki kluczowe. Jeśli chcesz je ustawić, możesz wybrać opcję Key Nodes (węzły kluczowe) i określić klatki kluczowe dla obiektu (opcja Child) lub też dla wszystkich obiektów nadrzędnych, z którymi jest połączony (opcja Parents). Opcja Key Entire Hierarchy ustawia klatki kluczowe dla obiektu i nadrzędnej hierarchii (opcja Child) lub też dla obiektu, jego obiektów docelowych i ich hierarchii (opcja Parents). Ogranicznik ten zawiera także rolety PRS Parameters i Key Info. Ograniczników Link nie możesz używać w systemach z kinematyką odwrotną (Inverse Kinematics).

Ćwiczenie: Jazda figurowa na łyżwach Aby animowany obiekt w połowie animacji zmienił swoje łącze z jednym obiektem nadrzędnym na łącze z drugim, musisz zastosować ogranicznik Link. Obrót obiektu względem nieruchomego punktu jest dość prosty — wystarczy połączyć obiekt z atrapą i obrócić atrapę. Zakreślenie ósemki jest bardziej skomplikowane, ale przy użyciu ogranicznika Link możliwe do wykonania. Aby obiekt zakreślił ósemkę, wykonaj następujące czynności. 1. Otwórz plik Figure skater skating a figure eight.max z folderu Chap 22 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model łyżwiarki zaimportowany z programu Poser i dwie atrapy. Łyżwiarka jest połączona z pierwszą atrapą (tą najbliższą). 2. Kliknij przycisk Auto Key (lub wciśnij klawisz N), przeciągnij suwak czasu do klatki numer 100 i obróć atrapę o dwa pełne obroty w oknie widokowym Top. 3. Zaznacz drugą atrapę i obróć ją o dwa pełne obroty w drugą stronę. Kliknij ponownie przycisk Auto Key, aby go wyłączyć. Włączenie przycisku Angle Snap Toggle na głównym pasku narzędziowym ułatwi Ci obrócenie obiektu dokładnie o dwa pełne obroty.

4. Zaznacz łyżwiarkę i wybierz polecenie Animation/Constraints/Link Constraint. Następnie kliknij pierwszą atrapę (górną w oknie widokowym Top). Ogranicznik Link zostanie zastosowany względem modelu łyżwiarki. 5. W rolecie Link Params ustaw wartość Start Time na 0, po czym włącz przycisk Add Link, kliknij drugą atrapę i w rolecie Link Params ustaw wartość Start Time na 25. W końcu kliknij ponownie pierwszą atrapę i ustaw wartość Start Time na 75. 6. Kliknij przycisk Play Animation (lub wciśnij klawisz /), aby odtworzyć animację.

Rozdział 22.  Animowanie przy użyciu ograniczników

685

Innym sposobem na osiągnięcie tego samego rezultatu jest utworzenie krzywej w kształcie ósemki i zastosowanie ogranicznika Path.

Na rysunku 22.5 przedstawiono łyżwiarkę podczas ruchu wokół dwóch atrap.

Rysunek 22.5. Wykorzystując ogranicznik Link, sprawiamy, że łyżwiarka przemieszcza się i kreśli ósemkę, dzięki obrotom wokół dwóch atrap

Ogranicznik LookAt Ogranicznik LookAt nie powoduje przemieszczenia obiektu, ale obraca go tak, że ten zawsze zwrócony jest w stronę obiektu docelowego. Przykładowo możesz w taki sposób zaanimować głowę postaci obserwującej lecącego trzmiela. Przydaje się również do sterowania kamerami, które w trakcie animacji podążają za konkretnym obiektem. Po wybraniu obiektu docelowego pojawia się pojedyncza linia, która go wskazuje. Linia ta, nazwana Viewline (linią widoku), jest widoczna jedynie w oknach widokowych. Roleta LookAt Constraint, jak w przypadku wielu innych ograniczników, zawiera listę obiektów docelowych. Za pomocą przycisków Add LookAt Target i Delete LookAt Target możesz dodawać i usuwać z niej obiekty docelowe. Jeśli na liście znajduje się ich kilka, orientacja obiektu jest wypośrodkowana względem nich. Przy użyciu wartości Weight możesz dla niektórych obiektów docelowych ustawić większy wpływ na orientację obiektu. Opcja Keep Initial Offset zapobiega zmianie zwrotu obiektu po zastosowaniu ogranicznika. Wszelkie zmiany orientacji obiektu są względne w stosunku do pierwotnego ustawienia.

686

Część V  Podstawy animacji i renderingu

Możesz ustawić długość linii widoku, czyli odległość, na jaką rozciąga się ona z obiektu. Opcja Viewline Length Absolute rysuje linię widoku od obiektu do celu, pomijając wartość długości2. Przycisk Set Orientation pozwala na zmianę orientacji obiektu przy użyciu przycisku Select and Rotate. Jeśli chcesz przywrócić pierwotną pozycję obiektu, kliknij przycisk Reset Orientation. Możesz również wybrać lokalną oś wskazującą obiekt docelowy. Obiekt o nazwie Upnode określa, gdzie znajduje się góra. Jeśli oś LookAt zrówna się z osią Upnode, obiekt wywinie kozła i zmieni położenie dołem do góry. Aby temu zapobiec, możesz wybrać, której osi lokalnej będziesz używał jako osi LookAt, a która będzie wskazywała obiekt Upnode. Domyślnie obiektem tym jest World (cała scena), ale możesz wybrać dowolny obiekt, wyłączając opcję World i klikając przycisk po jej prawej stronie. Aby kontrolować obiekt Upnode, możesz wybrać opcję LookAt lub też Axis Alignment, która pozwala na włączenie opcji Align to Upnode Axis. Dzięki tej opcji możesz określić, która oś wskazuje kierunek obiektu Upnode. Obiekt z ogranicznikiem LookAt koziołkuje, jeśli punkt docelowy jest umieszczony dokładnie nad jego punktem obrotu lub pod nim.

Kiedy przypiszesz już ogranicznik LookAt, przycisk Create Key odpowiadający obrotom zmienia się w przycisk Roll. Jest to spowodowane zablokowaniem kamery na wybranym obiekcie, przez co nie może ona wykonywać dowolnych obrotów. Może jedynie obracać się wokół osi wskazującej obiekt docelowy. Możesz użyć ogranicznika LookAt, aby kamery podążały za obiektami podczas ich przemieszczania w scenie. Jest to domyślny kontroler transformacji dla kamer wycelowanych (typu Target).

Ogranicznik Orientation Ogranicznik Orientation wykorzystaj do powiązania obrotów jednego obiektu z obrotami innego obiektu. Możesz przesuwać i skalować obiekty niezależnie od siebie, ale obiekt z ogranicznikiem będzie obracał się jedynie razem z obiektem docelowym. Dobrym przykładem animacji z zastosowaniem tego ogranicznika jest satelita orbitujący nad Ziemią. Możesz przesunąć satelitę względem powierzchni Ziemi, a i tak będzie przemieszczał się zgodnie z obrotem Ziemi. W rolecie Orientation Constraint możesz wybrać kilka docelowych obiektów i nadać im wagi, jak robiłeś to w przypadku ogranicznika Position. Obiekt docelowy z największą wartością Weight ma największy wpływ na zwrot obiektu. Możesz także ograniczyć obiekt względem sceny (World). Opcja Keep Initial Offset zachowuje pierwotny zwrot obiektu i obraca go względem tej pozycji. Ustawienie Transform Rule określa sposób obrotów obiektu — względem lokalnego lub globalnego układu współrzędnych. 2

Włączenie opcji Viewline Length Absolute powoduje, że linia widoku przyjmuje długość dokładnie taką, jaka została ustawiona w polu Viewline Length. Natomiast wyłączenie tej opcji sprawia, że wartość Viewline Length określa długość linii widoku w procentach odległości między obiektami — przyp. tłum.

Rozdział 22.  Animowanie przy użyciu ograniczników

687

Narzędzie Walkthrough Assistant Zamiast ograniczników Path i LookAt można zastosować narzędzie Walkthrough Assistant, dostępne jako polecenie w menu Animation. Jego wybranie otwiera pokazany na rysunku 22.6 panel z kilkoma roletami. Korzystając z niego, można utworzyć kamerę, wybrać ścieżkę i wskazać okno widokowe, w którym ma być wyświetlany obraz z tej kamery. W rolecie View Controls można obracać kamerę w lewo lub w prawo w trakcie wędrówki po ścieżce. Pozwala to zautomatyzować proces podążania kamery wzdłuż określonej ścieżki. Rysunek 22.6. Narzędzie Walkthrough Assistant automatyzuje nakładanie pewnych ograniczników

Roleta Render Preview zawiera pole podglądu uzyskiwanych rezultatów. Jeśli przeciągniesz suwak czasu do innej klatki i klikniesz wspomniane pole, podgląd zostanie zaktualizowany. W wybranej klatce możesz za pomocą suwaka Turn Head skierować kamerę w lewo lub w prawo. Możesz ją także przechylić w górę lub w dół, ustawiając odpowiednią wartość parametru Head Tilt Angle. W rolecie Advanced Controls można ustawić kąt widzenia kamery (Field of View) i odległość do celu (Target Distance), która ma znaczenie przy tworzeniu efektu głębi ostrości. Można tu także włączyć opcję zachowania stałej prędkości (Constant Speed) i wymuszenia ruchu kamery wzdłuż ścieżki (Follow Path).

Rodzaje kontrolerów Kontrolery służą do ustanawiania kluczy dla sekwencji animacyjnej. Każdy animowany obiekt i parametr mają przypisany kontroler, a prawie każdy kontroler ma swoje parametry pozwalające na zmianę działania. Ustawienia niektórych znajdują się w roletach panelu Motion, inne można znaleźć w oknie dialogowym Properties.

688

Część V  Podstawy animacji i renderingu

Max dysponuje pięcioma rodzajami kontrolerów, które wykorzystują jeden parametr lub ścieżkę, i jednym specjalnym rodzajem, który zarządza kilkoma ścieżkami naraz (kontrolery typu Transform). Rodzaj kontrolera zależy od wartości, jakie reguluje. Niżej omówiono dostępne rodzaje kontrolerów. 

Transform — specjalny rodzaj kontrolerów, które mają wpływ na wszystkie transformacje (położenie, obrót i skalę) jednocześnie, np. kontrolery Position, Rotation, Scale (PRS).



Position — kontrolują współrzędne położenia obiektów, czyli wartości X, Y i Z.



Rotation — kontrolują wartości obrotu obiektów względem wszystkich trzech osi.



Scale — kontrolują wartości skali dla obiektów jako wartości procentowe dla każdej z osi.



Float — kontrolują parametry z pojedynczą wartością liczbową, np. Wind Strength (siła wiatru) i Sphere Radius (promień kuli).



Point3 — składają się z komponentów kolorów dla czerwieni, zieleni i niebieskiego, np. kolorów dyfuzji i tła. Zrozumienie różnic pomiędzy poszczególnymi kontrolerami jest bardzo ważne. Kiedy kopiujesz i wklejasz parametry kontrolerów z jednej ścieżki do drugiej, musisz to robić pomiędzy kontrolerami tego samego rodzaju.

Kontrolery typu Float operują na parametrach wykorzystujących liczby zmiennoprzecinkowe, np. promień kuli lub wartość mnożnika skali płaszczyzny. Liczby zmiennoprzecinkowe to liczby z wartościami po przecinku, np. 2,3 lub 10,99. Kontroler Float jest przypisywany do dowolnego animowanego parametru. Po przypisaniu możesz uzyskać dostęp do krzywych funkcyjnych tego kontrolera w oknie Track View i na pasku ścieżki (Track Bar). Kontrolery Float i Point3 sterują parametrami, a nie obiektami i dlatego nie są dostępne w menu Animation.

Przypisywanie kontrolerów Każdy animowany obiekt i parametr mają automatycznie przypisywany domyślny kontroler. Panel Animation w oknie dialogowym Preference Settings wymienia wszystkie domyślne kontrolery i umożliwia ich zmianę. Takiej zmiany można dokonać także przy użyciu okna Track View lub ścieżek transformacji dostępnych w panelu Motion.

Kontrolery przypisywane automatycznie Domyślne kontrolery są przypisywane do ścieżek transformacji wszystkich tworzonych obiektów. Jeśli np. utworzysz prostą kulę i otworzysz panel Motion (którego ikona wygląda jak koło), znajdziesz w nim ścieżki transformacji w rolecie Assign Controller. Domyślny kontroler położenia to Position XYZ, obrotu — Euler XYZ, a skali — Bezier Scale.

Rozdział 22.  Animowanie przy użyciu ograniczników

689

Domyślne kontrolery są różne, zależnie od rodzaju tworzonego obiektu. Przykładowo kontroler Barycentric Morph jest automatycznie przypisywany do złożonych obiektów typu morph, a kontroler Master Point do wierzchołków lub punktów kontrolnych, które są animowane. Ponieważ kontrolery są automatycznie przypisywane do ścieżek animacji, nie mogą zostać usunięte; można je jedynie zastąpić innym kontrolerem. Nie istnieje funkcja pozwalająca na usuwanie kontrolerów.

Przypisywanie kontrolerów za pomocą poleceń z menu Animation Najprostszym sposobem na przypisanie kontrolera do obiektu jest użycie menu Animation. Znajdują się w nim cztery podmenu kontrolerów: Transform, Position, Rotation i Scale. Chociaż ograniczniki znajdują się w innym podmenu, kontrolują animację kluczy w dokładnie ten sam sposób.

Kiedy kontroler zostanie przypisany do obiektu przy użyciu menu Animation, istniejący uprzednio kontroler nie jest usuwany. Nowy kontroler zostaje dodany do listy, co można sprawdzić w panelu Motion. Przykładowo na rysunku 22.7 widoczny jest panel Motion dla obiektu kuli z domyślnym kontrolerem Position XYZ przypisanym do ścieżki Position. Jeśli wybierzesz polecenie Animation/Position Controllers/Noise, na ścieżce Position zostanie umieszczony kontroler Position List, w którym dostępne będą kontrolery Position XYZ i Noise. To pozwala animować złożone ruchy, np. szarpanie samochodem z powodu uszkodzonego gaźnika. Rysunek 22.7. Panel Motion wyświetla wszystkie kontrolery transformacji przypisane do obiektu

W kontrolerze List znajdują się wagi (Weights) dla każdego z zawartych w nim kontrolerów. Przy użyciu rolety Position List możesz ustawić aktywny kontroler i usuwać inne kontrolery z listy. Możesz także wycinać i wklejać kontrolery na inne ścieżki.

Przypisywanie kontrolerów w panelu Motion U góry panelu Motion znajdują się dwa przyciski — Parameters i Trajectories. Kliknięcie pierwszego z nich otwiera roletę Assign Controller (przypisz kontroler).

690

Część V  Podstawy animacji i renderingu

Aby zmienić kontroler ścieżki transformacji, zaznacz ją i kliknij przycisk Assign Controller umieszczony bezpośrednio nad listą. Otworzy się okno dialogowe Assign Controller, które odpowiada wybranej ścieżce. Więcej informacji o przycisku Trajectories uzyskasz, czytając rozdział 21., „Animacja i klatki kluczowe”.

Przykładowo na rysunku 22.8 przedstawiono okno dialogowe Assign Position Controller służące do wybierania kontrolera dla ścieżki Position. Strzałka (>) wskazuje aktualnie wybrany kontroler. Na dole okna widoczny jest domyślny rodzaj kontrolera. Wybierz nowy kontroler z listy i kliknij OK. Zostanie on dołączony do ścieżki, a jego rolety pojawią się poniżej rolety Assign Controller. Kontrolery transformacji możesz przypisywać za pomocą panelu Motion, a w oknie Track View przypisywane mogą być wszystkie typy kontrolerów.

Rysunek 22.8. Okno dialogowe Assign Position Controller pozwala na wybranie kontrolera dla ścieżki położenia

Przypisywanie kontrolerów w oknie Track View Do przypisywania kontrolerów możesz także użyć okna Track View. Znajdź i wybierz ścieżkę, do której chcesz przypisać kontroler, a następnie kliknij przycisk Assign Controller na pasku narzędziowym Controllers, wybierz polecenie Controller/Assign (skrót klawiszowy C) lub kliknij ścieżkę prawym przyciskiem myszy i z podręcznego menu wybierz Assign Controller. Otworzy się okno dialogowe Assign Controller, w którym możesz wskazać odpowiedni kontroler. Okno Track View omówiono szczegółowo w rozdziale 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Narzędzia z paska Controllers możesz także wykorzystać do kopiowania i wklejania kontrolerów pomiędzy ścieżkami. Możesz wklejać jedynie kontrolery pasujące do rodzaju danej ścieżki. Kiedy wklejasz kontrolery, okno dialogowe Paste pozwala na wklejenie kopii lub klonu (instance). Zmiana parametrów sklonowanego kontrolera zmienia para-

Rozdział 22.  Animowanie przy użyciu ograniczników

691

metry wszystkich jego klonów. Okno dialogowe Paste zawiera również opcję zastąpienia wszystkich klonów. Opcja ta powoduje zamianę wszystkich klonów danego kontrolera, niezależnie od tego, czy są zaznaczone, czy nie.

Ustawianie kontrolerów domyślnych Kiedy przypisujesz kontrolery przy użyciu okna Track View, okno dialogowe Assign Controller zawiera opcję Make Default. Dzięki niej wybrany kontroler staje się domyślny dla wybranej ścieżki. Możesz także ustawić globalny kontroler domyślny dla każdego typu ścieżki przy użyciu polecenia z menu Customize/Preferences, wybierając panel Animation i klikając przycisk Set Defaults. Otworzy się okno dialogowe Set Controller Defaults, w którym możesz ustawić domyślne wartości parametrów, takie jak krzywe In i Out dla kontrolera. Aby ustawić kontroler jako domyślny, wybierz go z listy i kliknij przycisk Set Defaults, otworzy się okno dialogowe odpowiadające danemu kontrolerowi, w którym możesz ustawić jego parametry. Panel Animation zawiera przycisk pozwalający przywołać pierwotne ustawienia (Restore To Factory Settings). Zmiana domyślnego kontrolera nie powoduje zmian w aktualnie przypisanych kontrolerach.

Przegląd najprostszych kontrolerów Skoro wiesz już, jak przypisywać kontrolery, czas przyjrzeć się bliżej tym najprostszym. Liczba dostępnych kontrolerów jest znacznie większa. Pozostałe są opisane w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Wcześniej wymieniłem sześć rodzajów kontrolerów zależnych od rodzaju danych, które mają być sterowane. Teraz omówimy rodzaje kontrolerów w zależności od rodzajów ścieżek, na których są stosowane. Obserwacja krzywych funkcyjnych dostępnych dla danego kontrolera pozwala się zorientować w jego możliwościach, tak więc wiele rysunków poniżej będzie przedstawiało krzywe funkcyjne różnych kontrolerów.

W oknie Track View każdy z tych kontrolerów ma swoją własną ikonę. A zatem można je łatwo rozróżnić.

Kontroler Bezier Kontroler Bezier jest domyślnym kontrolerem dla wielu parametrów. Pozwala interpolować wartości przy użyciu krzywej Béziera. Przeciągając jej uchwyty kontrolne, możesz zmieniać jej krzywiznę. Jeśli uchwyty leżą w tej samej linii, dają w rezultacie płynne przejście. Możesz również utworzyć między nimi kąt, by uzyskać ostry punkt. Na rysunku 22.9 przedstawiono kontroler Bezier przypisany do ścieżki Position.

692

Część V  Podstawy animacji i renderingu

Rysunek 22.9. Kontroler Bezier daje płynne krzywe animacji

Parametry kontrolera Bezier są wyświetlane w dwóch roletach panelu Motion: Key Info (Basic) i Key Info (Advanced). Na górze rolety Key Info (Basic) znajdują się dwie strzałki i pole pokazujące numer kluczowej klatki. Strzałki pozwalają się przenosić pomiędzy poszczególnymi klatkami kluczowymi. Każdy wierzchołek widoczny na krzywej funkcyjnej symbolizuje jedną klatkę kluczową. Pole Time wyświetla numer klatki, w której znajduje się klatka kluczowa. Przycisk Time Lock (blokowanie czasu) znajdujący się obok tego pola może zostać użyty do zapobieżenia przeciągnięciu klatki kluczowej w oknie Track View. Pola edycyjne pokazują wartości dla danej ścieżki; ich liczba zmienia się, zależnie od rodzaju wybranej ścieżki. Na dole rolety Key Info (Basic) znajdują się dwa rozwijane przyciski, służące do określenia krzywych na wejściu (In) i wyjściu (Out) dla danej klatki kluczowej. Strzałki po bokach tych przycisków pozwalają przemieszczać się pomiędzy różnymi kształtami krzywych. Dostępne są: Smooth (gładka), Linear (liniowa), Step (stopniowa), Slow (wolna), Fast (szybka), Custom (użytkownika) i Tangent Copy (kopia stycznej). Opis tych kształtów krzywej znajdziesz w rozdziale 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Wartości In i Out w rolecie Key Info (Advanced) są dostępne jedynie wtedy, gdy wybrana została krzywa użytkownika. Pola te pozwalają określić współczynnik każdej z osi krzywej. Przycisk Lock zmienia te dwa współczynniki o równe i przeciwne wartości. Przycisk Normalize Time uśrednia położenie wszystkich klatek kluczowych. Opcja Constant Velocity (stała prędkość) interpoluje wartości kluczowe pomiędzy sąsiadującymi klatkami kluczowymi, co daje w rezultacie bardziej płynny ruch.

Kontroler Linear Kontroler Linear interpoluje pomiędzy dwiema wartościami, by utworzyć linię prostą, co oznacza stałe tempo zmian parametru. Nie zawiera on żadnych parametrów i może być stosowany względem czasu lub wartości. Na rysunku 22.10 przedstawiono krzywe z poprzedniego przykładu po przypisaniu do nich kontrolera Linear — wszystkie zostały zastąpione przez linie proste.

Rozdział 22.  Animowanie przy użyciu ograniczników

693

Rysunek 22.10. Kontroler Linear wykorzystuje linie proste

Kontroler Noise Kontroler Noise wywołuje losowe zmiany w wartościach ścieżki. W oknie dialogowym Noise Controller, widocznym na rysunku 22.11, wartość Seed określa losowość szumu, a Frequency — stopień jego zróżnicowania. Możesz także ustawić siłę (Strength) wzdłuż każdej z osi. Opcja > 0 (więcej niż zero) dla każdej osi zachowuje dodatnie wartości szumu. Rysunek 22.11. Właściwości kontrolera Noise umożliwiają ustawienie wartości siły szumu dla każdej z osi

Możesz także skorzystać z opcji Fractal Noise (szum fraktalowy) z wartością Roughness (nierówność). Wartości Ramp in (nachylenie wejściowe) i Ramp out (nachylenie wyjściowe) określają długości przedziałów czasowych, w których szum narasta od zera do maksimum i maleje od maksimum do zera. Wykres Characteristic Graph przedstawia graficznie szum w danym zakresie. Na rysunku 21.12 widzimy kontroler Noise przypisany do ścieżki Position. Jeśli chcesz zmienić jakiekolwiek właściwości szumu, kliknij prawym przyciskiem myszy ścieżkę szumu i z podręcznego menu wybierz opcję Properties. Rysunek 22.12. Kontroler Noise pozwala na losowe zmiany wartości ścieżek

694

Część V  Podstawy animacji i renderingu

Kontroler Spring Kontroler Spring jest podobny do modyfikatora Flex, ponieważ dodaje drugorzędny ruch związany z oscylacjami ciała sprężystego po cofnięciu siły odkształcającej. Kiedy przypisany zostanie kontroler Spring, pojawia się panel z dwiema roletami. Rolety te, widoczne na rysunku 22.13, pozwalają na kontrolowanie właściwości sprężystych obiektu i sił, które na niego działają. Rysunek 22.13. Rolety kontrolera Spring pozwalają tworzyć sprężyny i działające na nie siły

W rolecie Spring Dynamics możesz określić wartości Mass (masa) i Drag (opór). Im większa masa, tym większy ruch drugorzędny po poruszeniu obiektu. Wartość Drag natomiast kontroluje wygaszanie oscylacji. Możesz dodać wiele sprężyn (Springs), z których każda będzie miała swoje wartości naprężenia (Tension) i tłumienia (Damping), przypisywane względnie (Relative) lub bezwzględnie (Absolute). Roleta Forces, Limits and Precision pozwala dodawać siły mające wpływ na ruch sprężyny. Służy do tego przycisk Add. Zazwyczaj są to pola sił (Space Warps). Możesz tutaj także ograniczyć efekt do określonych osi.

Ćwiczenie: Machanie ogonem za pomocą kontrolera Spring Jednym z najlepszych zastosowań kontrolera Spring jest wprawienie obiektu w drugorzędny ruch związany z istniejącym już ruchem. Jeśli np. postać się porusza, dodatkowy element (np. ogon) może również się ruszać, gdy zastosujesz kontroler Spring. Aby pomachać rządkiem kul za pomocą kontrolera Spring, wykonaj następujące czynności. 1. Otwórz plik Dog wagging tail.max z folderu Chap 22 znajdującego się na płycie dołączonej do książki. Plik ten zawiera połączony rząd kul, przy czym największa z nich obraca się tam i z powrotem. 2. Zaznacz najmniejszą kulę i wybierz polecenie Animation/Position Controllers/Spring. W ten sposób kula zostaje przesunięta do obiektu nadrzędnego. Wybierz przycisk Select and Move (lub też wciśnij klawisz W) i przywróć kuli jej pierwotną pozycję.

Rozdział 22.  Animowanie przy użyciu ograniczników

695

3. Powtórz punkt 2. dla pozostałych kul, przechodząc od najmniejszej do największej. 4. Kliknij przycisk Play Animation (lub wciśnij klawisz /), aby obejrzeć wyniki. Na rysunku 22.14 przedstawiono jedną klatkę z ukończonej animacji. Warto zauważyć, iż kule nie są ułożone w jednej linii. Najmniejsza z nich przemieszcza się najbardziej, ponieważ wszystkie sprężyny sumują swój wpływ.

Rysunek 22.14. Kontroler Spring dodaje drugorzędny ruch do ruchu największej kuli

Kontroler Position XYZ Kontroler Position XYZ dzieli transformacje położenia na trzy osobne ścieżki, po jednej na każdą oś. Do każdej osi przypisany jest kontroler Bezier, ale każda ze ścieżek może mieć przypisany inny kontroler. Roleta Position XYZ Parameters pozwala na przełączanie się między osiami składowymi. Ścieżki Rotation wykorzystują szeroki zakres kontrolerów; wiele jest spokrewnionych z tymi, które stosowane są na ścieżce Position. W tym podrozdziale przedstawiono kontrolery, których można używać wyłącznie na ścieżce Rotation.

Kontroler Scale XYZ W programie Max istnieje jeden kontroler, którego zastosowanie jest ograniczone do ścieżki Scale. Kontroler Scale XYZ dzieli transformacje skali na trzy osobne ścieżki, po jednej dla każdej osi. Dzięki temu możesz dokładnie kontrolować skalowanie obiektu

696

Część V  Podstawy animacji i renderingu

wzdłuż osobnych osi. Jest to lepsza alternatywa od używania opcji Select and Non-Uniform Scale z głównego paska narzędziowego, ponieważ jest ona niezależna od geometrii obiektu. Roleta Scale XYZ Parameters pozwala na wybranie osi, wzdłuż której obiekt ma być skalowany. Kontroler ten działa tak samo jak inne kontrolery położenia i obrotu XYZ.

Podsumowanie Przy użyciu menu Animation/Constraints możesz stosować ograniczniki dla animowanych obiektów. Menu to pozwala także na wybranie obiektu docelowego. Możesz używać różnych ograniczników do ograniczania ruchów obiektów, co jest bardzo przydatne, kiedy rozpoczniesz przygodę z animacją. Jeśli jesteś animatorem, wiesz, jak wielkie masz szczęście, że istnieją kontrolery. Dzięki nim animowanie obiektów nigdy nie było takie proste — pomyśl o tych wszystkich klatkach kluczowych, których nie musisz ustawiać ręcznie. W tym rozdziale mogłeś zapoznać się z zagadnieniami, takimi jak: 

ograniczanie położenia obiektu do powierzchni innego obiektu przy użyciu ograniczników Attachment i Surface,



zmuszanie obiektu do przemieszczania się ustaloną trasą za pomocą ogranicznika Path,



kontrolowanie położenia i zwrotu obiektów przy użyciu ważonych ograniczników Position i Orientation,



zmiany pomiędzy dwoma kontrolującymi obiektami przy użyciu ogranicznika Link,



podążanie za obiektami przy użyciu ogranicznika LookAt,



różne rodzaje kontrolerów,



przypisywanie kontrolerów przy użyciu panelu Motion i okna Track View,



przykłady zastosowania kontrolerów,

W następnym rozdziale nauczysz się przeprowadzać ostateczny rendering sceny i wreszcie będziesz mógł powiesić swoje dzieło na drzwiach lodówki.

Rozdział 23.

Renderowanie sceny i korzystanie z renderera Quicksilver W tym rozdziale: 

Ustalanie parametrów i preferencji renderingu



Korzystanie z okna Rendered Frame



Stosowanie okna ActiveShade i modułu RAM Player



Omówienie typów renderingu



Tworzenie środowiska

Po długich godzinach ciężkiej pracy następny krok — rendering — to czas, kiedy wszystko nabiera kształtu. Po wymodelowaniu, przypisaniu materiałów, umiejscowieniu świateł oraz kamer i wykonaniu animacji naszej sceny wreszcie jesteśmy gotowi, aby wyrenderować końcowy rezultat. Renderowanie polega na wygenerowaniu obrazu sceny z określonym poziomem szczegółowości. Max zawiera moduł Scanline Renderer, nastawiony na przyspieszenie procesu renderowania, zawierający dodatkowo wiele ustawień pozwalających, by proces ten stał się jeszcze szybszy. Poznanie okna dialogowego Render Setup oraz jego funkcji oszczędzi nam wielu godzin pracy i pozwoli uniknąć bólu głowy. Jednak nie jest to jedyna opcja renderingu. Istnienie różnych mechanizmów renderujących wynika z konieczności zachowania pewnego kompromisu miedzy szybkością a jakością. Przykładowo renderer stosowany do wyświetlania obiektów w oknach widokowych jest zoptymalizowany pod kątem szybkości, ale renderer wykorzystywany do generowania ostatecznych obrazów kładzie większy nacisk na jakość. Każdy z nich oferuje szereg ustawień pozwalających przyspieszyć proces generowania obrazów lub poprawić ich jakość.

698

Część V  Podstawy animacji i renderingu

Parametry renderingu Polecenia i ustawienia renderingu obrazów umieszczone są w oknie dialogowym Render Setup. Okno to zawiera kilka paneli z zakładkami. Kiedy jesteś już zadowolony z utworzonej sceny i gotowy do jej zrenderowania, powinieneś otworzyć okno dialogowe Render Setup, pokazane na rysunku 23.1, przez wybranie polecenia Rendering/Render Setup (F10) lub kliknięcie przycisku Render Setup na głównym pasku narzędziowym. W oknie dialogowym znajdziesz kilka paneli, takich jak Common, Renderer, Render Elements, Raytracer i Advanced Lightning. Panel Common zawiera polecenia wspólne dla wszystkich rendererów, ale panel Renderer już tylko specjalne ustawienia dla wybranego renderera. Rysunek 23.1. Korzystamy z okna dialogowego Render Scene, aby zrenderować ostateczny obraz

Panele Common i Renderer dla renderera Default Scanline opisane zostały w tym rozdziale. Omówienie paneli Raytracer i Renderer dla renderera mental ray znajdziesz w rozdziale 47., „Renderery mental ray i iray”, panel Render Elements został objaśniony w rozdziale 49., „Komponowanie przy użyciu interfejsu Video Post i elementów rederingu”, a panel Advanced Lightning — w rozdziale 45., „Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna”.

Inicjowanie pracy renderera Na dole okna dialogowego Render Setup znajduje się kilka ustawień, które są widoczne dla wszystkich paneli; ustawienia te pozwalają na inicjację pracy renderera. Tryby renderingu to Production, Iterative i ActiveShade. Każdy z nich może korzystać z innego

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

699

renderera, określonego w rolecie Assign Renderer, dla którego można wybrać odmienne ustawienia. Jeśli któryś z obiektów sceny nie posiada przypisanych współrzędnych mapowania, przy próbie renderingu zobaczymy okno z przyciskami Continue lub Cancel. Podobne okno pojawia się, gdy brakuje plików zewnętrznych lub odnośników XRefs, i udostępnia przyciski Continue, Cancel lub Browse do przeglądania dysku w poszukiwaniu brakującego pliku.

Tryb iteratywny różni się od produkcyjnego tym, że nie realizuje takich funkcji jak zapisywanie do pliku, renderowanie sieciowe czy renderowanie wielu klatek. Korzystając z tego trybu, można szybko renderować scenę bez konieczności modyfikowania ustawień w oknie Render Setup. Jest to tryb przeznaczony do przeprowadzania renderingów testowych. Opcja Preset pozwala zapisywać i wczytywać kompletne zestawy ustawień renderingu. Przy zapisywaniu lub wczytywaniu ustawień otwiera się okno Select Preset Categories pokazane na rysunku 23.2 (po wybraniu pliku z ustawieniami w oknie wyboru plików). W tym oknie dialogowym można wybrać, który panel z ustawieniami ma być zawarty w zapisanym zestawie. Dostępne do wyboru panele zależą od wybranego renderera. Wszystkie zestawy ustawień zapisywane są jako pliki z rozszerzeniem .RPS. Rysunek 23.2. Okno dialogowe Select Preset Categories pozwala wybrać, które ustawienia zawrzeć w zapisywanym zestawie

W rozwijanej liście View umieszczono wszystkie dostępne okna widokowe. Gdy otwiera się okno dialogowe Render Setup, na liście widoczne jest obecnie aktywne okno widokowe. Właśnie okno wybrane na tej liście zostanie zrenderowane po kliknięciu przycisku Render (lub wciśnięciu klawiszy Shift+Q). Przycisk ten rozpoczyna proces renderingu. Jeśli zostanie kliknięty bez zmieniania jakichkolwiek parametrów, rendering odbędzie się z ustawieniami domyślnymi. Włączenie przycisku z małą kłódką obok listy View spowoduje, że wybrane okno widokowe będzie renderowane zawsze, gdy klikniemy przycisk Render, niezależnie od tego, które okno widokowe w scenie jest aktywne.

Po kliknięciu przycisku Render pojawia się okno dialogowe Rendering. W nim (patrz rysunek 23.3) wyświetlane są wszystkie ustawienia obecnej pracy renderera i śledzony jest jej postęp. Okno Rendering zawiera także przyciski Pause (zatrzymaj) i Cancel (anuluj) dla zatrzymywania i przerywania procesu renderingu. Jeśli przerwiemy rendering, okno dialogowe Rendering znika, ale okno Rendered Frame pozostanie otwarte.

700

Część V  Podstawy animacji i renderingu

Rysunek 23.3. W oknie dialogowym Rendering wyświetlane są aktualne ustawienia renderingu i postęp pracy

Zamknięcie okna Rendered Frame nie przerywa pracy renderera. Aby przerwać rendering, należy kliknąć przycisk Pause albo Cancel lub wcisnąć klawisz Esc.

Po ustawieniu parametrów renderingu możemy bez otwierania okna Render Setup ponownie zrenderować obraz, wybierając polecenie Rendering/Render, korzystając ze skrótu klawiszowego Shift+Q lub też wskazując opcję renderingu z paska narzędziowego Render Shortcuts. Klawiszem F9 można ponownie uruchomić renderowanie ostatnio wybranego okna widokowego.

Roleta Common Parameters Roleta Common Parameters w oknie dialogowym Render Setup zawiera te same ustawienia, niezależnie od tego, jakiego renderera używamy.

Określanie zakresu i rozmiaru Część Time Output określa, które klatki animacji mają być umieszczone w wyjściowym pliku. Opcja Single (pojedyncza) renderuje bieżącą klatkę, wskazaną suwakiem czasu. Opcja Active Time Segment (aktywny segment czasowy) renderuje pełen zakres klatek animacji. Opcja Range (zakres) pozwala ograniczyć zakres renderowanych klatek przez podanie numerów początkowej i ostatniej klatki. Ostatnia opcja to Frames (klatki), gdzie możemy wprowadzić osobno klatki i przedziały klatek, używając przecinków i myślników. Gdy przykładowo wpiszesz 1, 6, 8-12, wyrenderowane zostaną klatki 1., 6. oraz od 8. do 12. Wartość Every Nth Frame jest aktywna dla opcji Active Time Segment i Range. Renderuje ona każdą n-tą klatkę aktywnego segmentu czasowego, np. wpisanie 3 spowoduje wyrenderowanie co trzeciej klatki. Opcja ta jest przydatna do przyspieszania animacji.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

701

File Number Base to liczba dodawana do obecnego numeru klatki lub odejmowana od niego, a służy jako numer odniesienia dołączany na końcu nazwy każdego pliku, np. wartość File Number Base równa 10 dla zakresu klatek od 1. do 10. nazwie kolejne pliki image0011, image0012 itd. Nie należy renderować zbyt długich sekwencji animacji za pomocą formatów .AVI, .MPEG lub .MOV. Jeśli wystąpią problemy z renderingiem, cały plik zostanie uszkodzony. Lepiej wybrać renderowanie klatek jako pojedynczych obrazów. Te obrazy mogą zostać połączone w plik wideo przy użyciu interfejsu Video Post lub RAM Player bądź zewnętrznych pakietów, takich jak Adobe Premiere.

Część Output Size określa rozdzielczość renderowanych obrazów lub animacji. Rozwijana lista zawiera spis standardowych rozdzielczości filmowych i wideo, łącznie z różnymi standardami, czyli 35mm i 70mm, Anamorphic, Panavision, IMAX, VistaVision, NTSC, PAL i HDTV. Opcja Custom pozwala ustalić naszą własną rozdzielczość. Ustalenie proporcji obrazów dla końcowego renderingu jeszcze przed rozpoczęciem prac nad projektem jest bardzo wskazane. Mając te proporcje określone, można w oknie dialogowym Viewport Configuration włączyć wyświetlanie ramek obszarów bezpiecznych (safe frames), co ułatwi właściwe ustawienie renderowanego widoku.

Aperture Width to parametr kamery określający zależność między obiektywem a polem widzenia. Rozdzielczości znajdujące się na rozwijanej liście zmieniają wartość parametru Aperture Width bez konieczności zmiany widoku przez modyfikowanie wartości parametru Lens. W każdej rozdzielczości możemy zmienić wartości szerokości (Width) i wysokości (Height). Są tu także cztery przyciski z gotowymi zestawami tych parametrów dla każdej z dostępnych rozdzielczości. Parametry tych przycisków można ustalić przez klikanie ich prawym przyciskiem myszy i wpisanie w otwartym w ten sposób oknie dialogowym Configure Preset odpowiednich wartości w polach Width, Height i Pixel Aspect.

Image Aspect to proporcje obrazu — stosunek szerokości do wysokości. Można także ustalić proporcje piksela (Pixel Aspect) dla poprawnego renderingu na różnych urządzeniach. Obie te wartości mają po swojej lewej stronie ikony kłódki, które blokują wartość dla wybranej rozdzielczości. Zablokowanie tej wartości automatycznie zmienia szerokość obrazu, za każdym razem kiedy zmienimy wartość wysokości i odwrotnie. Wartości Aperture Width, Image Aspect i Pixel Aspect mogą być ustalone tylko wtedy, gdy na rozwijanej liście wybrana jest opcja Custom.

Opcje renderingu Sekcja Options zawiera następujące opcje: 

Atmospherics — renderuje wszelkie efekty atmosferyczne ustalone w oknie dialogowym Environment,



Effects — włącza ustawione efekty renderowane,



Displacement — włącza nierówności powierzchni spowodowane użyciem mapy przemieszczenia (displacement map),

702

Część V  Podstawy animacji i renderingu 

Video Color Check — włącza wyróżnianie kolorów, które nie mogą być prawidłowo wyświetlone w przestrzeni kolorów HSV stosowanej w telewizji,



Render to Fields — uaktywnia renderowanie pól animacji, używanych przez formaty wideo; animacje wideo zawierają jedno pole złożone z nieparzystych linii ekranu i jedno z linii parzystych, pola te są składane w jeden obraz przy wyświetlaniu,



Render Hidden Geometry — renderuje wszystkie obiekty w scenie, łącznie z ukrytymi; korzystając z tej opcji, można ukryć obiekty, by szybko odświeżać okna widokowe, ale zawrzeć je w końcowym renderingu,



Area Lights/Shadows as Points — renderowanie powierzchniowych świateł i cieni może być czasochłonne, ale światła punktowe renderują się dużo szybciej; uaktywniając tę opcję, przyspieszamy proces renderingu,



Force 2-Sided — renderuje obie strony każdej ścianki; opcja ta niemal dwukrotnie wydłuża czas renderingu i powinna być używana tylko wtedy, jeśli widoczne są pojedyncze ścianki lub wnętrza obiektów,



Super Black — uaktywnia Super Black (superczerń), używaną w kompozycji video; renderowane obrazy z czarnym tłem sprawiają kłopoty w niektórych formatach wideo, a opcja Super Black rozwiązuje tego typu problemy.

Sekcja Advanced Lightning zawiera opcje Use Advanced Lightning (zastosuj oświetlenie zaawansowane) i Compute Advanced Lightning when Required (obliczaj oświetlenie zaawansowane, gdy jest wymagane). Przeliczanie zaawansowanego oświetlenia (Advanced Lightning) może zająć dużo czasu, więc te dwie opcje dają możliwość włączania lub wyłączania zaawansowanego oświetlenia. Zaawansowane oświetlenie zostało szczegółowo opisane w rozdziale 45., „Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna”.

Uproszczone wersje bitmap W sekcji Bitmap Performance and Memory Options (obsługa bitmap i opcje pamięci) znajduje się przycisk Setup umożliwiający włączenie funkcji stosowania uproszczonych (o mniejszej rozdzielczości) map użytych w renderowanej scenie. Kliknięcie tego przycisku otwiera okno dialogowe Global Settings and Defaults for Bitmap Proxies, pokazane na rysunku 23.4. Po włączeniu systemu map zastępczych (Proxy System) możesz wybrać z listy rozwijanej Downscale map to opcję skalowania map do połowy (Half), jednej trzeciej (Third), jednej czwartej (Quarter) lub jednej ósmej (Eighth) ich rozmiarów oryginalnych. Opcja Full pozostawia aktualne rozmiary map. Dzięki temu możesz tworzyć scenę z mapami pełnowartościowymi (o wysokiej rozdzielczości), a potem w razie potrzeby zmniejszyć ich rozmiary bez konieczności skalowania każdej oddzielnie. System map zastępczych umożliwia również określenie progowego rozmiaru mapy (w pikselach), po przekroczeniu którego zostanie ona zastąpiona wersją uproszczoną. Omawiane okno pozwala także wybrać tryb renderowania (Render Mode) zoptymalizowany pod kątem wydajności lub oszczędnego gospodarowania pamięcią komputera. Do wyboru

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

703

Rysunek 23.4. Okno dialogowe Global Settings and Defaults for Bitmap Proxies pozwala zastąpić wszystkie mapy w scenie ich wersjami uproszczonymi

są tu następujące opcje: Render with Proxies (renderowanie z mapami uproszczonymi), Render with Full Resolution Images and Keep them In Memory (renderowanie z pełnymi mapami i zachowywaniem ich w pamięci) i Render with Full Resolution Images and Free them from Memory (renderowanie z pełnymi mapami i usuwaniem ich z pamięci). Włączenie opcji Page Large Images to Disk (stronicuj duże obrazy na dysku) spowoduje, że duże tekstury i wyrenderowane obrazy będą przenoszone do pliku stronicowania w celu zwolnienia pamięci operacyjnej, ale to może oznaczać wolniejsze odświeżanie widoku sceny w sytuacjach, gdy sięganie do tego pliku będzie konieczne. Położenie pliku stronicowania można dowolnie określić.

Wybór opcji wyjściowych renderingu Sekcja Render Output pozwala wybrać wyjściową formę obrazu lub animacji i przekazać ją do pliku, do urządzenia lub do okna Rendered Frame. Aby zapisać wyjściowe dane do pliku, należy kliknąć przycisk Files i wskazać miejsce zapisu w oknie dialogowym Render Output File. Obsługiwane formaty to .AVI, .BMP, .DDS, Postscript (.EPS), JPEG, Kodak Cineon (.CIN), Open EXR, Radiance Image File (.HDRI), QuickTime (.MOV), .PNG, .RLA, .RPF, SGI’s Format (.RGB), Targa (.TGA) oraz .TIF. Przycisk Devices może zapisać dane wyjściowe na zewnętrznych urządzeniach wideo. Jeśli wybrana jest opcja Rendered Frame Window, wtedy oba przyciski Files i Devices są niedostępne1. (Okno Rendered Frame zostało omówione dalej, w tym rozdziale). Każdy z tych formatów ma swoje zalety. Przykładowo pliki Targa doskonale nadają się do komponowania obrazów, bo zawierają kanał alfa. Formaty TIFF i EPS są dobre do zapisywania obrazów przeznaczonych do druku. Pliki JPEG, PNG i GIF są wykorzystywane w grafice internetowej, a pliki DDS — w grach komputerowych.

Dostępna jest także opcja Put Image File List(s) in Output Path(s), tworząca listę plików z obrazami w tym samym miejscu, co wyrenderowany plik. Można wybrać standard IFL Maksa lub Autodesk ME Image Sequence File (IMSQ). Przycisk Create Now natychmiast tworzy listę obrazów. 1

Przyciski te są dostępne, ale dopóki za ich pomocą nie zostanie określony docelowy plik lub urządzenie, dopóty niedostępne są opcje Save File (zapisz plik) i Use Device (użyj urządzenia) — przyp. tłum.

704

Część V  Podstawy animacji i renderingu Więcej informacji o stosowaniu list plików znajdziesz w rozdziale 21., „Animacja i klatki kluczowe”.

Opcja Net Render uaktywnia rendering sieciowy. Opcja Skip Existing Images powoduje pominięcie w procesie renderingu plików już istniejących, możemy użyć jej przy kontynuacji przerwanej wcześniej pracy renderera. Więcej informacji o renderingu sieciowym znajdziesz w rozdziale 48., „Rendering wsadowy i sieciowy”.

Powiadomienia na e-mail Proces renderowania animacji (lub nawet pojedynczej klatki) może przebiegać szybko, ale może też zająć kilka dni, wszystko zależy od stopnia złożoności sceny. Dla złożonych scen, renderujących się dłuższy czas, możemy skonfigurować Maksa tak, aby wysłał e-mail, kiedy rendering zostanie ukończony (opcja Notify Completion) lub przerwany z powodu jakiegoś błędu (Notify Failures). Opcje te znajdują się w rolecie Email Notifications pokazanej na rysunku 23.52. Rysunek 23.5. Roleta Email Notifications zawiera opcje wysyłania e-maili z raportem o stanie procesu renderingu

Dodatkowo możemy ustalić, do kogo e-mail ma zostać zaadresowany, od kogo pochodzi i wprowadzić serwer SMTP.

Dodawanie skryptów Pre-Render i Post-Render Roleta Scripts zawiera przyciski File do dodawania skryptów przedrenderingowych i porenderingowych. Skrypty muszą mieć rozszerzenie .ms i są uruchamiane przed wyrenderowaniem każdego pliku lub po wykonanej operacji. Skrypty te mogą być użyte do zbierania informacji o renderingu lub do wykonania jakiejś pracy postprodukcyjnej. Nad każdym przyciskiem File znajduje się dodatkowy przycisk Execute Now (wykonaj teraz) służący do uruchamiania skryptu w celu przetestowania go przed właściwym renderingiem.

2

Opcja Notify Progress wraz z parametrem Every Nth Frame pozwala ustawić wysyłanie wiadomości po wyrenderowaniu każdej n-tej klatki animacji — przyp. tłum.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

705

Przypisywanie rendererów Max renderuje obrazy w kilku różnych miejscach: okno dialogowe Render Setup renderuje obrazy do plików lub okna Rendered Frame, w edytorze materiałów są renderowane próbki materiałów, a okno ActiveShade reprezentuje jeszcze inny poziom renderingu. Modułowa struktura Maksa umożliwia dobieranie renderera do danego zadania, Aby zmienić domyślny renderer, znajdujemy roletę Assign Renderer w panelu Common okna dialogowego Render Setup (F10). Tutaj wybieramy różne renderery dla trybów Production, Material Editor i ActiveShade. Dla każdego z tych trybów możesz wybrać Default Scanline Renderer, mental ray Renderer, Quicksilver Hardvare Renderer lub VUE File Renderer. Renderer VUE File tworzy pliki VUE będące edytowalnymi plikami tekstowymi zawierającymi szczegółowe informacje o renderowanej scenie.

Zamknięta kłódka obok opcji Material Editor oznacza, że ten sam renderer jest użyty dla trybów Production i Material Editor.

Renderer Scanline A-Buffer Roleta Default Scanline Renderer, znajdująca się w panelu Renderer, pokazana na rysunku 23.6, jest roletą renderera domyślnego. Jeśli załadowany jest inny renderer, wyświetlona zostanie inna roleta, odpowiednia dla niego. Rysunek 23.6. Roleta Default Scanline Renderer zawiera ustawienia wyłącznie dla domyślnego renderera Scanline

W sekcji Options u góry rolety możemy dezaktywować różne opcje renderingu w celu przyspieszenia całej operacji. Opcje te zawierają Mapping (mapowanie), Shadows (tworzenie cieni), Auto Reflect/Refract and Mirrors (automatyczne mapowanie odbić/załamań światła i luster) i Force Wireframe (wymuszanie trybu szkieletowego). Dla opcji Force Wireframe możemy określić w pikselach wartość grubości drutu (Wire Thickness). Opcja Enabled SSE korzysta z rozszerzeń Streaming SIMD (Single Instruction, Multiple Data), aby przyspieszyć proces renderingu poprzez przeliczanie większej ilości danych w jednej instrukcji. Procesory Intel Pentium III i późniejsze zawierają instrukcje SSE i mogą korzystać z tej opcji.

706

Część V  Podstawy animacji i renderingu

Filtry antyaliasingu Innym sposobem na przyspieszenie renderingu jest wyłączenie opcji Antialiasing i Filter Maps. Antyaliasing odpowiada za wygładzanie postrzępionych krawędzi, pojawiających się tam, gdzie następuje zmiana koloru. Opcja Filter Maps pozwala wyłączyć, wymagający pod względem przeliczeń, proces filtrowania map materiałów. Rozwijana lista Filter pozwala na wybranie filtrów stosowanych na poziomie piksela w czasie renderingu. Poniżej tej listy znajduje się opis wybranego filtra. Dostępne filtry to: 

Area — narzuca proces antyaliasingu dla wybranego obszaru, określonego wartością Filter Size,



Blackman — wyostrza obraz na obszarze 25 pikseli; nie rozpoznaje krawędzi,



Blend — gdzieś pomiędzy ostrym a lekko szorstkim filtrem Soften; określany przez parametry Filter Size (rozmiar filtra) i Blend (mieszanie),



Catmull-Rom — wyostrza za pomocą filtra 25×25 pikseli i działa także na krawędziach,



Cook Variable — daje ostre rezultaty przy małych wartościach Filter Size i rozmyte obrazy przy wartościach większych,



Cubic — oparty na funkcjach sześciennych; daje efekt rozmycia,



Mitchell-Netravali — zawiera parametry Blur (rozmycie) i Ringing (otoczki),



Plate Match/MAX R2 — porównuje mapowane obiekty z obszarami tła, tak jak miało to miejsce w Maksie R2,



Quadratic — oparty na funkcjach kwadratowych; daje efekt rozmycia na obszarze 9 pikseli,



Sharp Quadratic — daje efekt ostrości na przestrzeni 9-pikselowego obszaru,



Soften — powoduje lekkie rozmycie i uwzględnia parametr Filter Size,



Video — rozmywa obraz, korzystając z 25-pikselowego filtra zoptymalizowanego dla formatów wideo NTSC i PAL.

Nadpróbkowanie (SuperSampling) Globalny SuperSampling to dodatkowy proces antyaliasingu, który można zastosować wobec materiałów. Proces ten może poprawić jakość obrazu, ale też zwiększyć czas renderingu; wyłączamy go za pomocą opcji Disable All Samplers. Nadpróbkowanie może być uaktywnione w edytorze materiałów dla konkretnych materiałów, ale roleta SuperSampling w edytorze materiałów zawiera także opcję użycia ustawień globalnych (Use Global Settings). Ustawienia globalne określone są w rolecie Default Scanline Renderer. Max posiada filtry antyaliasingu, będące częścią procesu renderingu. Do wyboru mamy kilka metod nadpróbkowania. Nadpróbkowanie jest wyłączone, jeśli opcja Antialiasing jest nieaktywna. Globalne nadpróbkowanie można włączyć przy użyciu opcji Enable Global Supersampler.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

707

W algorytmie supersamplingu próbkowane są kolory różnych punktów wokół środka piksela. Próbki te są następnie używane do przeliczenia ostatecznego koloru każdego piksela. Max został wyposażony w cztery metody nadpróbkowania: Max 2.5 Star, Hammersley, Adaptive Halton oraz Adaptive Uniform. Więcej wiadomości na temat metod próbkowania znajdziesz w rozdziale 16., „Tworzenie i stosowanie materiałów standardowych”.

Rozmycie ruchu Roleta Default Scanline Renderer oferuje także dwa różne typy rozmycia ruchu: Object Motion Blur (rozmycie obiektu) oraz Image Motion Blur (rozmycie obrazu). Każdy z nich możemy uaktywnić, korzystając z opcji Apply. Object Motion Blur ustawiany jest w oknie dialogowym Properties dla każdego obiektu. Renderer dokonuje rozmycia obiektu na przestrzeni wielu klatek podczas renderowania. Ruch kamery nie ma wpływu na ten typ rozmycia. Wartość parametru Duration określa, jak długo obiekt jest rozmywany pomiędzy klatkami. Wartość Samples mówi, jak wiele jednostek Duration jest próbkowanych. Duration Subdivision określa ilość zrenderowanych kopii w każdej jednostce Duration. Maksymalna wartość dla wszystkich tych parametrów to 16. Najbardziej gładkie rozmycie występuje, gdy wartości Duration i Samples są równe. Typ Image Motion Blur także jest ustawiany w oknie dialogowym Properties każdego obiektu. Wpływa na niego ruch kamery, który jest przypisywany po tym, jak obraz zostanie wyrenderowany. Uzyskujemy rozmycie poprzez rozmazanie obrazu w oparciu o analizę ruchu obiektów. Wartość Duration określa czas trwania rozmycia pomiędzy klatkami. Opcja Apply to Environment Map pozwala przypisać efekt rozmycia i dla obiektów, i dla tła. Opcja Work with Transparency rozmywa przezroczyste obiekty bez wpływu na ich obszary przezroczystości. Uaktywnienie tej opcji spowoduje wydłużenie czasu renderingu. Do sceny możemy dodać dwa dodatkowe efekty rozmycia: Blur Render Effect, dostępny w oknie dialogowym Rendering Effects (opisanym w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”) oraz Scene Motion Blur, dostępny w oknie Video Post (opisanym w rozdziale 49., „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”).

Pozostałe opcje Część Auto Reflect/Refract Maps pozwala określić liczbę przebiegów renderowania (Rendering Iterations) dla map odbić w scenie. Im wyższa wartość tego parametru, tym więcej obiektów zostaje włączonych do przeliczeń odbić, co owocuje lepszą ich jakością ale i dłuższym czasem renderingu. Color Range Limiting (ograniczanie zakresu kolorów) dostarcza dwóch metod korekcji przejaskrawiania wywołanego korzystaniem z filtrów. Metoda Clamp (obcinanie) obniża każdą wartość powyżej pułapu 1 do 1 i podnosi każdą wartość poniżej 0 do 0. Metoda Scale skaluje wszystkie kolory pomiędzy wartościami maksymalnymi i minimalnymi. Opcja Conserve Memory (oszczędzaj pamięć) optymalizuje proces renderingu tak, aby korzystał z jak najmniejszej ilości pamięci. Jeśli w czasie trwania renderingu zamierzamy pracować w Maksie (lub innym programie), powinniśmy uaktywnić tę opcję.

708

Część V  Podstawy animacji i renderingu

Renderer Quicksilver Hardware Renderer Quicksilver Hardware wykorzystuje możliwości przetwarzania informacji przez współczesne karty graficzne. Jego podstawową zaletą jest szybkość działania. Jest w stanie wyrenderować scenę szybciej niż mental ray i lepiej niż Scanline Renderer. Niektóre funkcje Maksa, takie jak nieuwzględnianie wybranych świateł, wyłączanie widoczności obiektów, kolorowanie wierzchołków, wielowarstwowość, przezroczystość, a także niektóre mapy — komórkowa, płaskie lustro, wiek cząstek, rozmycie ruchu cząstek, załamanie światła w cienkiej płytce i nieregularny szum — są odrzucane przez renderer Quicksilver Hardware.

Renderera tego można używać tylko na takich komputerach, których karta graficzna obsługuje model cieniowania (Shader Model) w wersji 3.0 lub nowszej. Jeśli wybierzesz polecenie Help/Diagnose Video Harware, Max uruchomi procedurę sprawdzającą i wyświetli podstawowe informacje o zainstalowanej karcie graficznej. Informację o obsługiwanym modelu cieniowania znajdziesz w wierszu GPU Shader Model Support — powinno być co najmniej SM3.0. Po włączeniu renderera Quicksilver Hardware panel Renderer wygląda tak jak na rysunku 23.7. Jak widać, jest tu wiele opcji obsługiwanych również przez bardziej zaawansowany renderer mental ray. Quicksilver obsługuje nawet materiały i światła opracowane specjalnie dla renderera mental ray. Jeśli używasz w scenie shaderów sprzętowych, możesz określić ich folder, podając ścieżkę dostępu do niego w polu Hardware Shaders Cache Folder. Rysunek 23.7. Opcje renderera Quicksilver Hardware są podobne do tych, jakie można spotkać w innych rendererach

O rendererze mental ray dowiesz się więcej podczas lektury rozdziału 47., „Renderery mental ray i iray”.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

709

Preferencje renderingu Poza ustawieniami dostępnymi w oknie dialogowym Render Setup, panel Rendering w oknie dialogowym Preference Settings zawiera wiele globalnych ustawień renderingu. Okno Preference Settings otwieramy za pomocą polecenia Customize/Preferences. Na rysunku 23.8 pokazano panel Rendering. Rysunek 23.8. Panel Rendering okna dialogowego Preference Settings pozwala ustawić globalne parametry renderingu

Sekcja Video Color Check określa, jak oznaczane lub poprawiane są niebezpieczne kolory. Opcja Flag with black (oznacz czernią) pokazuje niebezpieczne kolory, a opcje Scale Luma i Scale Saturation poprawiają je poprzez skalowanie wartości jasności lub nasycenia, dopóki nie znajdą się one w odpowiednim zakresie. Możemy także wybrać któryś z formatów, czyli NTSC lub PAL. Z opcjami Scale należy postępować ostrożnie, mogą pozbawić barwy niektóre obiekty.

Opcje sekcji Output Dithering włączają lub wyłączają dithering kolorów. Opcja True Color odnosi się do obrazów 24-bitowych, a Paletted do 8-bitowych. Opcja Field Order pozwala wybrać pole, które będzie renderowane jako pierwsze. Niektóre urządzenia wideo korzystają najpierw z parzystych pól, a inne — z nieparzystych. Należy sprawdzić konkretne urządzenie, aby dowiedzieć się, jakie ustawienie będzie poprawne. Super Black Threshold określa poziom, poniżej którego czerń wyświetlana jest jako Super Black. Wartość Angle Separation ustala kąt pomiędzy stożkiem światła (Hotspot) a stożkiem wygaszania (Falloff). Jeśli kąt Hotspot będzie taki sam jak Falloff, pojawią się zakłócenia wygładzania.

710

Część V  Podstawy animacji i renderingu

Opcja Don’t Antialias Against Background (nie wygładzaj względem tła) powinna być włączona, jeśli zamierzamy korzystać ze zrenderowanych obiektów jako składowej części kompozycji obrazu. Opcja Filter Background (filtruj tło) włącza obraz tła do obliczeń antyaliasingu. Opcja Use Environment Alpha łączy kanał alfa obrazu tła z kanałem alfa obiektów sceny. Default Ambient Light Color (domyślny kolor światła otaczającego) to najciemniejszy kolor renderowanych cieni sceny. Ustawienie koloru na inny niż czarny rozjaśnia cienie. Opcji Output File Sequencing używamy do ustawienia klatek w kolejności, jeśli włączyliśmy opcję Nth Serial Numbering. Jeśli opcja Nth Serial Numbering jest wyłączona, kolejność ustalana jest na podstawie rzeczywistych numerów klatek. W części Render Termination Alert możemy ustawić alarm dźwiękowy, który usłyszymy, kiedy praca renderera dobiegnie końca. Wartość Frequency określa ton dźwięku, a Duration zmienia czas jego trwania. Możemy także załadować i odgrywać inny dźwięk. Przycisk Choose Sound otwiera okno dialogowe wyboru plików, gdzie możemy wybrać plik dźwiękowy. Możesz także ustalić, czy informacje o błędach mają być wyświetlane oraz jakie komunikaty mają być dołączane do raportu z przebiegu renderowania. Raport może być zapisany w pliku już istniejącym (opcja Append to File) albo w nowym. Wartość GBuffer Layers to maksymalna liczba buforów grafiki dopuszczona w czasie renderingu. Parametr ten może przybierać wartość z zakresu 1 do 1000, jednak zależy ona od pamięci naszego komputera. Opcja Multi-threading umożliwia rendererowi wykonywanie różnych zadań renderingu jako oddzielnych wątków. Wątki wydajniej wykorzystują cykle procesora przez zastosowanie podziałów zadań. Opcja ta powinna być włączona szczególnie wtedy, jeśli posiadamy wieloprocesorowy komputer.

Korzystanie z okna Rendered Frame Okno Rendered Frame to tymczasowe okno, w którym wyświetlane są zrenderowane obrazy. Często w trakcie opracowywania sceny chcemy wykonać rendering testowy, aby sprawdzić cienie lub przezroczystość, niewidoczne w oknie widokowym. Okno Rendered Frame, pokazane na rysunku 23.9, pozwala oglądać te renderingi bez zapisywania jakichkolwiek informacji do sieci lub na dysk twardy. Okno to otwiera się, kiedy w oknie dialogowym Render Setup wybierzemy opcję Rendered Frame Window i klikniemy przycisk Render3. W nim także, korzystając z polecenia File/View Image File, możemy przeglądać obrazy z lokalnego dysku twardego lub sieciowego.

3

Okno Rendered Frame można otworzyć także za pomocą przycisku Rendered Frame Window na głównym pasku narzędziowym lub przez wybranie polecenia Rendering/Rendered Frame Window — przyp. tłum.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

711

Rysunek 23.9. Okno Rendered Frame wyświetla wyrenderowany obraz bez zapisywania go do pliku

Aby przybliżyć widok w tym oknie, należy przytrzymać klawisz Ctrl i kliknąć obraz. Kliknięcie prawym przyciskiem myszy przy wciśniętym klawiszu Ctrl oddala widok. Klawisz Shift umożliwia przesuwanie obrazu. Możemy także korzystać z rolki w myszy (jeśli posiadamy), aby przybliżać i przesuwać widok w oknie. Obraz możemy przybliżać i przesuwać nawet w czasie jego renderowania.

Kontrolki okna Rendered Frame Lista rozwijana Area to Render umożliwia wybór obszaru renderowanego. Domyślnym ustawieniem jest tutaj opcja View (okno widokowe). Po wybraniu innej opcji z listy wystarczy kliknąć przycisk Render, aby rozpocząć proces renderowania nowego obszaru. Wszystkie opcje z listy zostały opisane w tabeli 23.1. U góry okna Rendered Frame znajduje się kilka przycisków z ikonami. Przycisk Edit Region jest włączany automatycznie po wybraniu opcji Region z listy Area to Render. Jego włączenie umożliwia przemieszczanie i zmienianie rozmiarów ramki wyznaczającej obszar renderowany. Włączenie przycisku Auto Region Selected automatycznie ustawia region renderowany na aktualnym zaznaczeniu w oknach widokowych. Opcja Lock to Viewport wymusza renderowanie zawartości ciągle tego samego okna widokowego, bez względu na to, które okno jest aktywne. Można np. renderować za każdym razem okno Perspective, mimo iż używane są także inne okna.

712

Część V  Podstawy animacji i renderingu

Tabela 23.1. Obszary renderowane Obszar

Opis

View (widok)

Renderowana jest cała zawartość okna widokowego.

Selected (zaznaczenie)

Renderowane są tylko obiekty zaznaczone w scenie.

Region

Po wybraniu tej opcji zarówno w aktywnym oknie widokowym, jak i w oknie Rendered Frame wyświetlana jest ramka z uchwytami, za pomocą której można określić region (fragment sceny) przeznaczony do renderowania. Po zdefiniowaniu regionu i kliknięciu ikony ze znakiem X w prawym górnym rogu ramki region nie będzie mógł być edytowany, a ramka pozostanie widoczna tylko w oknie Rendered Frame.

Crop (kadr)

Podobnie jak Region, wyświetla ramkę w celu zdefiniowania obszaru renderowanego, ale generuje obraz ograniczony tylko do rozmiarów owej ramki.

Blowup (powiększenie) Zdefiniowany za pomocą ramki obszar jest renderowany w rozmiarach określonych wielkością okna wyjściowego renderingu.

Przycisk Render Setup otwiera okno dialogowe o takiej samej nazwie. Przycisk Environment and Effects Dialog otwiera okno dialogowe o takiej samej nazwie, które zawiera ustawienia ekspozycji. Przycisk Save Image umożliwia zapisanie aktualnej zawartości okna. Przycisk Copy Image kopiuje zawartość okna do systemowego schowka, skąd można ją wkleić do dokumentu innej aplikacji, np. Photoshopa. Przycisk Clone Rendered Frame Window tworzy kolejne okno. Każdy nowy rendering umieszczany jest w tym nowym oknie, co pomaga w porównywaniu dwóch obrazów. Przycisk Print Image wysyła zrenderowany obraz na domyślną drukarkę. Przycisk Clear wymazuje obraz z okna. Kolejne przyciski włączają kanały czerwony, zielony, niebieski, alfa oraz monochromatyczny. Kanał alfa przechowuje informacje o przezroczystości w obrazie. Jest to mapa w skali szarości, gdzie czarny wskazuje obszary całkowicie przezroczyste, a biały — nieprzezroczyste. Obok przycisku Display Alpha Channel znajduje się przycisk Monochrome, który wyświetla obraz w skali szarości. Rozwijana lista Channel Display pozwala wybrać kanał do wyświetlenia. Próbka koloru po lewej pokazuje barwę aktualnie wybranego piksela. Nowy piksel wybieramy przez kliknięcie prawym przyciskiem myszy. Do momentu zwolnienia przycisku myszy wyświetlane jest małe okno z wymiarami obrazu i wartościami RGB piksela, nad którym znajduje się kursor. Próbkę koloru można przeciągać do innych okien dialogowych, np. do edytora materiałów. Przycisk Toggle UI Overlay włącza wyświetlanie ramki wyznaczającej obszar renderowany.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

713

Przycisk Toggle UI pozwala ukryć część kontrolek interfejsu okna Rendered Frame.

Podgląd sceny w oknie ActiveShade Okno ActiveShade wyświetla szybki, na wpół zrenderowany widok na scenę. Możemy otworzyć je jako okno widokowe, klikając nazwę okna widokowego i wybierając z menu podręcznego polecenie Views/ActiveShade4. Okno ActiveShade było bardzo użyteczne, ale obecnie, gdy Max może renderować światła i cienie w oknach widokowych, jego przydatność nie jest już tak wielka.

Tylko jedno okno ActiveShade może być otwarte w danej chwili. Jeśli spróbujemy otworzyć więcej, pojawi się ostrzeżenie mówiące o tym, że otwierane właśnie okno zamknie poprzednie. Możemy przeciągać materiały z edytora materiałów i upuszczać je bezpośrednio w oknie ActiveShade.

Korzystanie z modułu RAM Player Tak jak okno Rendered Frame może być użyte do oglądania i porównania zrenderowanych obrazów, okno modułu RAM Player pozwala oglądać zrenderowane animacje. W załadowanych do pamięci animacjach możemy dowolnie zmieniać częstotliwość klatek podczas odtwarzania. Na rysunku 23.10 pokazano interfejs modułu RAM Player, otwierany przez wybranie polecenia Rendering/RAM Player. Widać tam dwa obrazy domku z pierników nałożone częściowo na siebie. Jeden z nich został zrenderowany z domyślnymi materiałami, a drugi — z materiałami Ink’n’Paint. Przyciski u góry interfejsu RAM Player, zawarte w tabeli 23.2, pozwalają załadować obraz do dwóch różnych kanałów, nazwanych A oraz B. Dwa przyciski Open Channel otwierają okno dialogowe wyboru pliku, gdzie możemy wybrać plik do załadowania. Zauważmy, że obraz w prawej części okna RAM Player jest inną klatką niż ten po lewej stronie. Przycisk Open Last Rendered Image w oknie interfejsu RAM Player umożliwia szybki dostęp do ostatnio zrenderowanego obrazu. Przycisk Close Channel czyści kanał. Przycisk Save Channel otwiera okno dialogowe zapisywania obecnego pliku. Wszystkie pliki załadowane do okna RAM Player zostają skonwertowane do obrazów 24-bitowych.

Przyciski przełączające Channel A i Channel B włączają użycie obu kanałów, jednego z nich, albo żadnego. Przycisk Horizontal/Vertival Screen Split przełącza linię oddzielającą

4

Okno ActiveShade można otworzyć również niezależnie od okien widokowych. Służy do tego przycisk ActiveShade, dostępny na pasku narzędziowym pod przyciskiem Render Production — przyp. tłum.

714

Część V  Podstawy animacji i renderingu

Rysunek 23.10. Interfejs okna RAM Player pozwala załadować dwa obrazy lub animacje do porównania

Tabela 23.2. Przyciski interfejsu RAM Player Przycisk

Opis Otwiera kanał. Otwiera ostatnio zrenderowany obraz. Zamyka kanał. Zapisuje kanał. Dzieli ekran pionowo lub poziomo. Podwójny bufor.

oba kanały na pionową lub poziomą. Gdy włączone są oba kanały, dwa małe trójkąty oznaczają miejsce, gdzie jeden kanał się kończy, a drugi zaczyna. Możemy przeciągać te trójkąty, aby zwiększyć przestrzeń dla jednego z kanałów. Kontrolki odtwarzania pozwalają poruszać się po klatkach. Możemy przesunąć się do pierwszej, poprzedniej, następnej lub ostatniej klatki oraz odtwarzać animację w przód i do tyłu. Rozwijana lista na prawo od tych kontrolek umożliwia zmianę szybkości odtwarzania animacji (w klatkach na sekundę). Możemy wychwycić kolor jakiegokolwiek piksela obrazu, trzymając wciśnięty klawisz Ctrl podczas klikania obrazu prawym przyciskiem myszy. Umieści to wybrany kolor w próbce kolorów. Wartości RGB tego piksela wyświetlone zostaną na błękitnym pasku tytułowym.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

715

Przycisk Double Buffer synchronizuje klatki obu kanałów. Możemy przemieszczać się po klatkach animacji przy użyciu klawiszy strzałek oraz Page Up i Page Down. Klawisze A i B używane są do włączania dwóch kanałów.

Ćwiczenie: Łączenie wyrenderowanych obrazów w plik wideo za pomocą modułu RAM Player Modułu RAM Player można używać nie tylko do porównywania obrazów lub animacji. Moduł ten potrafi także wczytywać poszczególne klatki zapisane jako oddzielne obrazy i zapisywać je w jednym pliku animacji. Aby połączyć wiele obrazów w jeden plik wideo, wykonaj następujące czynności. 1. Wybierz polecenie Rendering/RAM Player, aby otworzyć okno dialogowe modułu Ram Player. Następnie kliknij przycisk Open Channel A i odszukaj plik Exploding Planet-frame 10.tif w folderze Chap 23 na płycie dołączonej do książki. 2. Jest to pierwsza zrenderowana klatka z 10-klatkowej animacji. 3. Otwarte zostanie okno dialogowe Image File List Control, w którym możesz określić zakres klatek do wczytania, podając pierwszą (Start Frame) i ostatnią (End Frame). Możesz także zadecydować, że wczytana zostanie co n-ta klatka (Every nth). W polu Start Frame wpisz 0, w End Frame wpisz 9 i kliknij przycisk OK. 4. Teraz otworzy się okno dialogowe RAM Player Configuration, w którym możesz ustawić rozdzielczość (Resolution) i przydzielić odpowiednią ilość pamięci dla wczytywanych plików (Memory Usage). Pozostaw wartości domyślne i kliknij przycisk OK. 5. Wszystkie pliki, których podstawowa część nazwy pokrywa się z nazwą wybranego pliku, zostaną kolejno załadowane do kanału A. Kliknij przycisk odtwarzania animacji, aby ją obejrzeć. 6. Kliknij przycisk Save Channel A, aby otworzyć okno dialogowe Save File, w którym możesz wybrać miejsce i format (AVI, MPEG lub MOV) zapisu pliku wideo. Na rysunku 23.11 widać jedną z klatek utworzonej w powyższy sposób animacji.

Korzystanie z linii poleceń renderingu W domyślnym katalogu instalacyjnym Maksa znajduje się plik o nazwie 3dsmaxcmd.exe. Plik ten pozwala na inicjowanie renderingu plików za pomocą wiersza poleceń. Opcja ta umożliwia tworzenie plików wsadowych, których można użyć do włączenia Maksa, załadowania kilku scen i zrenderowania ich automatycznie, w nocy, kiedy śpimy. Wiersz poleceń znajdziemy w systemie Windows XP po wybraniu Start/All Programs/ Accesories/Command Prompt (Start/Wszystkie Programy/Akcesoria/Wiersz polecenia).

716

Część V  Podstawy animacji i renderingu

Rysunek 23.11. Ten obraz jest tylko jedną z klatek animacji odtwarzanej w oknie interfejsu RAM Player

Jeśli umiejętność posługiwania się wierszem poleceń nie jest Twoją mocną stroną, możesz skorzystać z funkcji renderowania wsadowego opisanej w rozdziale 48., „Rendering wsadowy i sieciowy”.

Jeśli wpiszemy 3dsmaxcmd -?, linia poleceń zwróci listę dostępnych do użycia parametrów. Wpisanie 3dsmaxcmd -x zwróci kilka przykładowych poleceń. Najprostszym poleceniem renderującym scenę o nazwie coolstuff.max jest 3dsmaxcmd coolstuff.max. Korzystając z różnych znaczników w wierszu poleceń, możemy określić rozmiar i format obrazu, użyć plików Render Preset w celu zmodyfikowania ustawień renderera, a nawet zlecimy zadanie renderingu sieciowego.

Tworzenie obrazów panoramicznych Narzędzie Panorama Exporter (dostępne w menu Rendering i w panelu Utilities) może być użyte do utworzenia panoramicznej sceny, składającej się z obrazów zrenderowanych w sześciu kierunkach i zmontowanych razem. Do sceny w centrum widoku panoramicznego musi być dodana kamera i kamerę tę trzeba zaznaczyć. Po wybraniu polecenia Views/Create Camera From View (Ctrl+C) możemy szybko utworzyć kamerę korzystającą z widoku Perspective. Następnie klikamy przycisk Render w rolecie Panorama Exporter. Otworzy się okno dialogowe Render Setup, gdzie określimy rozmiar obrazów i pozostałe parametry renderingu. Następnie klikamy przycisk Render, aby zrenderować panoramiczną scenę. Panoramiczna scena po zrenderowaniu zostaje otwarta w oknie Panorama Exporter Viewer, tak jak pokazano na rysunku 23.12, gdzie możemy, przy użyciu myszy, poruszać sceną. Przeciąganie z wciśniętym lewym przyciskiem myszy obraca scenę wokół środkowego punktu. Przeciąganie z wciśniętym środkowym przyciskiem myszy przybliża i oddala

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

717

Rysunek 23.12. Okno Panorama Exporter Viewer pozwala przybliżać, przesuwać i obracać scenę wokół jej środka

widok sceny. Przeciąganie z wciśniętym prawym przyciskiem myszy przesuwa scenę. Interfejs okna Panorama Exporter Viewer zawiera menu File, którego używamy do otwarcia i eksportu pliku sceny. Opcje eksportu to Cylinder, Sphere oraz QuickTime VR.

Uzyskiwanie pomocy przy wydruku W Maksie drukowanie obrazów zawsze było problematyczne, ponieważ tak naprawdę nigdy nie było wiadomo, co uzyskamy. Aby rozwiązać ten problem, Max został wyposażony w polecenie Print Size Assistant, znajdujące się w menu Rendering. To polecenie otwiera okno Print Size Wizard, pokazane na rysunku 23.13. Rysunek 23.13. Okno Print Size Wizard pozwala określić wymiary obrazu w oparciu o rozmiar papieru i ustawienia DPI

Okno Print Size Wizard służy do ustawiania wymiarów renderowanego obrazu, ale nie do jego drukowania.

Korzystając z okna Print Size Wizard, wybieramy rozmiar papieru (Paper Size), orientację (pionową — Portrait lub poziomą — Landscape) i ustawienia DPI, a wymiary obrazu wyliczane są automatycznie. Wtedy możemy kliknąć przycisk Render Setup, aby otworzyć okno dialogowe Render Setup z tymi wymiarami. Możemy także ustalić nazwę pliku, klikając przycisk Files, i wcisnąć przycisk Render, aby zrenderować obraz przy wybranych wymiarach. Jedyny dostępny format plików to TIFF.

718

Część V  Podstawy animacji i renderingu

Kreowanie środowiska Niezależnie od tego, czy jest to piękny krajobraz, czy tylko przesuwające się chmury, tło za naszą sceną ma duży wpływ na jej realizm. W tej części omówimy opracowywanie środowiska z wykorzystaniem polecenia Rendering/Environment (8). Mapy środowiska używane są w nie tylko w tle sceny, ale także można je zastosować do utworzenia odbić na połyskliwych przedmiotach. Mapy te wyświetlane są tylko na ostatecznym renderingu i nie widać ich w oknach widokowych, ale tło możemy wstawić do dowolnego okna widokowego. W rozdziale 2., „Sterowanie oknami widokowymi oraz ich konfigurowanie”, opisano wstawianie obrazu tła do okna widokowego.

Środowisko to jednak coś więcej niż tylko tło. To także ustawienia globalnego oświetlenia, kontrola ekspozycji i efekty atmosferyczne.

Renderowane środowisko sceny Środowisko tworzymy w oknie dialogowym Environment and Effects, pokazanym na rysunku 23.14, które otwieramy, wybierając polecenie Rendering/Environment (lub wciskając klawisz 8). Na środowisko składa się wiele ustawień, takich jak kolor lub obraz tła, globalne oświetlenie, kontrola ekspozycji i efekty atmosferyczne. Rysunek 23.14. Okno dialogowe Environment and Effects pozwala wybrać kolor lub obraz tła, zdefiniować globalne oświetlenie, ekspozycję i efekty atmosferyczne

Ustalanie koloru tła Pierwsza próbka koloru w panelu Environment umożliwia wybór koloru tła. Ten kolor pojawi się w tle, jeśli nie wybraliśmy mapy tła lub opcja Use Map jest nieaktywna. Domyślnie jest on czarny. Kolor tła jest możliwy do animowania, tak więc możemy ustawić, aby kolor na początku był czarny, a następnie powoli rozjaśniał się ku bieli.

Rozdział 23.  Renderowanie sceny i korzystanie z renderera Quicksilver

719

Stosowanie obrazu w tle Aby wybrać obraz, który ma być użyty jako mapa tła, klikamy przycisk Environment Map w panelu Environment i otwieramy okno Material/Map browser. Jeśli chcemy załadować bitmapę jako obraz tła, dwukrotnie klikamy pozycję Bitmap, aby otworzyć okno dialogowe Select Bitmap Image. Wskazujemy bitmapę i klikamy OK. Nazwa bitmapy pojawi się na przycisku Environment Map. Jeśli mapa, której chcemy użyć, występuje już w jednej z próbek w edytorze materiałów, możemy przeciągnąć ją bezpośrednio z tego edytora i upuścić na przycisku Environment Map w panelu Environment.

Aby zmienić któryś z parametrów mapy środowiska (takich jak współrzędne mapowania), należy załadować mapę do edytora materiałów. Czynimy to, przeciągając przycisk mapy z panelu Environment do jednego z pól próbek w edytorze materiałów. Po upuszczeniu tej mapy pojawi się okno dialogowe Instance (Copy) Map z zapytaniem, czy chcemy utworzyć klon (Instance), czy kopię (Copy). Jeśli wybierzemy klon, wszystkie zmiany parametrów dokonane w materiale automatycznie przeniosą się na mapę w panelu Environment. Gdy już mapa jest w edytorze materiałów, można wybrać dla niej opcję Spherical Environment, która umożliwia tworzenie odbić na obiektach sceny. Po więcej informacji na temat dostępnych typów mapowania sięgnij do rozdziału 17., „Określanie właściwości materiałów przy użyciu map”.

Obraz tła nie musi być bitmapą. Możemy także załadować animację. Obsługiwane formaty to m.in. AVI, MPEG, MOV oraz IFL. Na rysunku 23.15 przedstawiono scenę, w której jako mapę tła wykorzystano zdjęcie mostu Golden Gate. Model samolotu powstał w Viewpoint Datalabs. Rysunek 23.15. Wynik załadowania obrazu tła w panelu Environment

720

Część V  Podstawy animacji i renderingu

Ustawianie globalnego oświetlenia Próbka koloru Tint w części Global Lightning panelu Environment określa kolor, którego odcień przybiorą wszystkie światła. Wartość Level zwiększa lub zmniejsza poziom całkowitego oświetlenia dla wszystkich świateł w scenie. Próbka z kolorem Ambient ustala kolor światła otaczającego w scenie, który jest najciemniejszym kolorem, jaki przybiorą cienie. Wszystkie te ustawienia możemy animować.

Podsumowanie W rozdziale tym omówiliśmy podstawy tworzenia efektu wyjściowego za pomocą okna dialogowego Render Setup. Rendering niektórych scen może trwać długo, jednak w Maksie możemy skorzystać z wielu ustawień oraz pomocnych narzędzi (takich jak okno Rendered Frame Window i RAM Player) pozwalających przyspieszyć ten proces. W tym rozdziale zapoznałeś się z zagadnieniami, takimi jak: 

kontrolowanie różnych parametrów renderingu,



konfigurowanie globalnych preferencji renderingu,



wybieranie różnych rendererów,



wykorzystanie podczas renderingu wiersza poleceń,



korzystanie z okien Rendered Frame Window oraz RAM Player,



wybieranie różnych obszarów renderingu,



używanie narzędzi Panoramic Exporter oraz Print Size Wizard,



korzystanie z panelu Environment do zmiany koloru i obrazu tła.

W następnym rozdziale przedstawiono możliwości renderowania scen w formie stylizowanej. Dzięki sterownikowi Nitrous możliwe jest symulowanie efektów uzyskiwanych przy użyciu farb akrylowych, węgla i tuszu.

Rozdział 24.

Stylizowanie sceny W tym rozdziale: 

Wyświetlanie stylizowanych scen w oknach widokowych



Renderowanie scen w rozmaitych stylizacjach

Od wielu lat głównym celem w grafice trójwymiarowej było tworzenie scen jak najwierniej naśladujących świat rzeczywisty. Inne kierunki sztuki większą wagę przywiązują do stylizowanego przedstawiania rzeczywistości. Takie stylizacyjne podejście dało nam kubizm Picassa, pointylizm Seurata i surrealistyczne pejzaże Dalego. Wprawdzie nie ma jeszcze programu komputerowego, który umożliwiałby jednym kliknięciem magicznego przycisku wykreowanie klasycznego dzieła sztuki, ale nowy sterownik grafiki Nitrous dostarczany z Maksem pozwala na wyświetlanie scen w taki sposób, jakby były namalowane farbami akrylowymi, tuszem lub pastelami.

Wyświetlanie stylizowanych scen Obrazy stylizowane są dla komputera łatwiejsze do wyrenderowania niż realistyczne, a zatem można je wyświetlać nie tylko w oknie wyjściowym renderera, ale także w oknach widokowych. Nie sądzę, abyś chciał normalnie pracować w którymś z tych stylizowanych trybów, ale w każdej chwili możesz jeden z nich włączyć, wybierając odpowiednią opcję z menu ukrytego w oknie widokowym pod etykietą trybu cieniowania. Opcje stylizowanego trybu cieniowania w oknach widokowych są nowością w 3ds Max 2012.

Tryby stylizowanego cieniowania znajdują się w podmenu Stylized i są dostępne w każdym oknie widokowym. Dostępne opcje to: Graphite (węgiel), Color Pencil (kredka), Ink (tusz), Color Ink (tusz kolorowy), Acrylic (farby akrylowe), Pastel (pastele) i Tech (rysunek techniczny). Na rysunku 24.1 pokazano domek z piernika wyświetlony przy włączonej opcji Color Ink. Stylizowane tryby wyświetlania zawartości okien widokowych można włączać również w panelu Visual Style & Appearance okna dialogowego Viewport Configuration.

722

Część V  Podstawy animacji i renderingu

Rysunek 24.1. Domek z piernika wyświetlany w trybie Color Ink

Renderowanie stylizowanych scen Takie same jak w oknach widokowych opcje stylizacyjne są dostępne podczas renderowania sceny przy użyciu renderera Quicksilver. Aby włączyć ten renderer, kliknij przycisk z trzema kropkami obok pola Production w rolecie Assign Renderer (znajdującej się na samym dole panelu Common okna dialogowego Render Setup) i wybierz opcję Quicksilver Hardware Renderer. Więcej informacji na temat renderera Quicksilver znajdziesz w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Gdy tylko renderer Quicksilver zostanie włączony, opcje stylizacji staną się dostępne na rozwijanej liście Rendering Level w rolecie Visual Style & Appearance pokazanej na rysunku 24.2. Po wybraniu jednej z opcji kliknij przycisk Render, a wystylizowana scena ukaże się w oknie Rendered Frame (patrz rysunek 24.3).

Podsumowanie W rozdziale tym omówiliśmy opcje renderingu stylizowanego, jakie umożliwia nowy sterownik grafiki Nitrous.

Rozdział 24.  Stylizowanie sceny

723

Rysunek 24.2. W rolecie Visual Style & Appearance można wybrać opcję renderingu stylizowanego

Rysunek 24.3. Dla renderera Quicksilver można wybrać jedną z opcji stylizacji w oknie Render Setup

W tym rozdziale zapoznałeś się z zagadnieniami takimi jak: 

stosowanie opcji stylizacyjnych w oknach widokowych,



renderowanie stylizowanych scen przy użyciu renderera Quicksilver.

W następnym rozdziale przedstawiono możliwości łączenia zewnętrznych obiektów i scen ze sceną bieżącą przy użyciu mechanizmu odnośników zewnętrznych i kontenerów.

724

Część V  Podstawy animacji i renderingu

Część VI

Modelowanie zaawansowane W tej części: Rozdział 25. „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego” Rozdział 26. „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni” Rozdział 27. „Obiekty złożone” Rozdział 28. „Praca z bryłami, czyli obiektami pełnymi” Rozdział 29. „Tworzenie i układanie włosów, futer oraz tkanin”

Rozdział 25.

Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego W tym rozdziale: 

Stosowanie kontenerów



Odnośniki do zewnętrznych obiektów i scen



Konfigurowanie systemu zarządzania zasobami



Poznawanie systemu Autodesk Vault



Korzystanie z widoku schematycznego



Praca z hierarchiami



Ustawianie preferencji dla okna Schematic View



Korzystanie z menu List Views

Stosując kontenery i odnośniki zewnętrzne (XRefs), można w jednej scenie umieścić wiele innych scen, obiektów, materiałów i kontrolerów. Dzięki odnośnikom i kontenerom możliwa jest równoległa praca nad poszczególnymi fragmentami sceny. Możliwe jest także wielokrotne używanie istniejących już zasobów. Wygodnym narzędziem do zaznaczania, łączenia i organizowania obiektów w scenie jest okno Schematic View (widok schematyczny). Umożliwia ono spojrzenie na całą scenę z pewnego dystansu. Przez odrzucenie zbędnych szczegółów pozwala szybko znaleźć poszukiwane elementy.

728

Część VI  Modelowanie zaawansowane

W oknie Schematic View wszystkie obiekty są reprezentowane przez bloki połączone strzałkami symbolizującymi powiązania między obiektami. Taki strukturalny obraz sceny znakomicie ułatwia ustanawianie połączeń między obiektami oraz sprzęganie parametrów. Pomaga także w wyszukiwaniu wszystkich klonów danego obiektu.

Stosowanie kontenerów Kontenery stanowią doskonały sposób na łączenie obiektów w grupy, ale w porównaniu z klasycznymi grupami oferują znacznie więcej dodatkowych funkcji. Przykładowo kontener można zapisać w zewnętrznym pliku, dzięki czemu może być łatwo wykorzystany w innych scenach. Kontenery można też wyłączać przy wczytywaniu sceny, aby przyspieszyć sam proces wczytywania i poprawić wydajność systemu. Każdy kontener można zablokować hasłem i uniemożliwić dostęp do niego osobom niepożądanym.

Tworzenie i wypełnianie kontenerów Kontener tworzymy przez wybranie polecenia Create/Helpers/Container i przeciągnięcie myszą w oknie widokowym w celu wygenerowania ikony wyglądającej jak otwarte pudło kartonowe (patrz rysunek 25.1). Utworzony w ten sposób kontener jest pusty, a do umieszczania w nim obiektów służy przycisk Add w rolecie Local Content panelu Modify. Otwiera on okno dialogowe Add Container Node (dodaj węzeł kontenera), w którym należy wskazać odpowiednie obiekty. Istnieje też możliwość utworzenia kontenera wypełnionego aktualnie zaznaczonymi obiektami. Służy do tego polecenie Tools/Containers/Create Container from Selection. Z kolei do usuwania obiektów z kontenera służy przycisk Remove, który podobnie jak przycisk Add otwiera okno dialogowe z listą obiektów, ale w tym przypadku są to obiekty należące do kontenera. Wygodny sposób dodawania obiektów do kontenera i usuwania ich stamtąd oferuje pasek narzędziowy o nazwie Cointainers, pokazany na rysunku 25.2. Aby wyświetlić ten pasek, kliknij puste miejsce głównego paska narzędziowego i z rozwiniętego w ten sposób menu podręcznego wybierz opcję Containers. Przyciski tego paska są opisane w tabeli 25.1. Działanie przycisków paska Containers jest zdublowane poleceniami z menu Tools/Containers. Rozmaite polecenia związane z kontenerami są dostępne również w eksploratorze sceny, jeśli włączy się w nim wyświetlanie paska narzędziowego Container.

Po utworzeniu kontenera możesz przesuwać, obracać, skalować i zmieniać parametry wyświetlania wszystkich zawartych w nim obiektów naraz. Nie musisz zaznaczać tych obiektów, wystarczy, że zaznaczysz kontener.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

729

Rysunek 25.1. Kontenery są wyświetlane w postaci prostych pudeł Rysunek 25.2. Pasek narzędziowy Containers

Zamykanie i zapisywanie kontenerów Utworzony kontener jest domyślnie otwarty. Jego ikona wygląda wtedy jak otwarte pudło. Gdy wydasz polecenie zamknięcia kontenera po raz pierwszy, otworzy się okno dialogowe, w którym będziesz mógł nazwać kontener i wskazać miejsce jego zapisania. Pliki z kontenerami otrzymują rozszerzenie .maxc. W oknie definiującym plik kontenera można z listy rozwijanej Save as Type (Zapisz jako typ) wybrać definicję zgodną z 3ds Max 2012 lub z 3dsMax 20101.

Zamknięty kontener może być edytowany wyłącznie przez jego autora. Obiekty zawarte w takim kontenerze są widoczne w scenie, ale nie można ich w żaden sposób edytować — widać tylko odnośniki do obiektów zapisanych w pliku kontenera.

1

Wybór taki jest możliwy dopiero przy korzystaniu z przycisku Save As, czyli podczas zapisywania kontenera w nowym pliku — przyp. tłum.

730

Część VI  Modelowanie zaawansowane

Tabela 25.1. Przyciski paska narzędziowego Containers Przycisk

Nazwa

Opis

Inherit Container

Otwiera okno wyboru plików, gdzie można wskazać kontener źródłowy, który ma być wczytany do bieżącej sceny.

Create Container from Selection

Tworzy nowy kontener z zawartością w postaci bieżącego zaznaczenia.

Add Selected to Container

Otwiera okno dialogowe, w którym można wskazać obiekty dodawane do aktywnego kontenera2.

Remove Selected from Container Otwiera okno dialogowe, w którym można wskazać obiekty usuwane z aktywnego kontenera3. Load Container

Wczytuje kontener i wyświetla zawarte w nim obiekty.

Unload Container

Zapisuje aktywny kontener i usuwa zawarte w nim obiekty ze sceny.

Open Container

Umożliwia edycję zawartości kontenera.

Close Container

Zapisuje kontener i blokuje możliwość edycji zawartych w nim obiektów.

Save Container

Zapisuje aktywny kontener.

Update Container

Aktualizuje kontener przez ponowne wczytanie.

Reload Container

Przywraca ostatnią, zapisaną wersję kontenera.

Make All Content Unique

Przekształca kontener i zagnieżdżone w nim inne kontenery w kontener unikatowy4.

Merge Container Source

Wczytuje ostatnią zapisaną wersję kontenera, ale nie otwiera zagnieżdżonych w nim innych kontenerów.

Edit Container

Umożliwia edycję kontenera utworzonego przez innego użytkownika.

Override Object Properties

Wymusza wyświetlanie obiektów zawartych w kontenerze zgodnie z ustawieniami przypisanymi kontenerowi.

Override All Locks

Tymczasowo odblokowuje zawartość aktywnego kontenera lokalnego.

2

Tak naprawdę wybiera się tu kontener, do którego mają być dodane zaznaczone obiekty — przyp. tłum.

3

Przycisk ten nie otwiera żadnego okna, lecz po prostu usuwa zaznaczony obiekt (obiekty) z kontenera (kontenerów). Jeśli żaden z zaznaczonych obiektów nie należy do żadnego kontenera, przycisk nie działa — przyp. tłum.

4

Unikatowość kontenera polega na braku powiązań z plikiem źródłowym — przyp. tłum.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

731

Aktualizowanie i ponowne wczytywanie kontenerów Kontener wczytany z pliku za pomocą przycisku Inherit Container jest umieszczany w bieżącej scenie i zachowuje połączenie z kontenerem oryginalnym. Wszelkie modyfikacje oryginału można przenieść na wczytany kontener z pomocą przycisku Update Container. Jeśli kontener jest otwarty i dopuszczalne jest jego edytowanie, dostępny jest przycisk Edit in Place (edytuj na miejscu). Włączenie tego przycisku zablokuje kontener dla innych użytkowników, ale Ty będziesz mógł go modyfikować. Gdy wyłączysz przycisk, kontener zostanie zapisany i znów stanie się ogólnie dostępny. Jeśli po dokonaniu zmian w zawartości kontenera zechcesz z nich zrezygnować, możesz użyć polecenia Reload, które przywróci stan kontenera z chwili ostatniego zapisu. Możesz także całkowicie przerwać połączenie z kontenerem macierzystym — wystarczy kliknąć przycisk Make All Content Unique.

Ustalanie reguł kontenera Przed zamknięciem kontenera możesz ustanowić reguły udostępniania jego zawartości innym użytkownikom. Stosowne opcje znajdziesz w rolecie Rules (reguły) pokazanej na rysunku 25.3. Do wyboru masz No Access (bez dostępu) — inny użytkownik nie ma dostępu do zawartości kontenera, Only Edit In Place (edytuj tylko na miejscu) — inny użytkownik może otworzyć kontener i dowolnie zmieniać jego zawartość, Only Add New Objects (tylko dodawanie nowych obiektów) — inny użytkownik może dodawać do kontenera nowe obiekty, ale nie może modyfikować jego pierwotnej zawartości, Anything Unlocked (wszystko co nie jest zablokowane) — inny użytkownik może edytować w kontenerze wszystko, co nie zostało zablokowane. Do blokowania różnych elementów służą przyciski umieszczone na samym dole rolety. Za ich pomocą można uniemożliwić innym użytkownikom edytowanie modyfikatorów, materiałów, transformacji i obiektów. Przycisk Edit otwiera okno Track View, gdzie można zablokować wybrane ścieżki. Rysunek 25.3. W rolecie Rules możesz dokładnie określić, co w kontenerze może być edytowane

Kontenery zastępcze W celu zwolnienia zasobów pamięciowych zajmowanych przez kontener można go zastąpić takim, który zawiera te same obiekty, ale w niższej rozdzielczości. Odpowiednie kontrolki znajdują się w rolecie Proxies, pokazanej na rysunku 25.4. Na widocznej tam rozwijanej

732

Część VI  Modelowanie zaawansowane

Rysunek 25.4. Roleta Proxies umożliwia stosowanie uproszczonych wersji kontenera

liście można umieścić różne kontenery zastępcze i wybierać je w zależności od aktualnych potrzeb. Aby zmodyfikować zawartość tej listy, kliknij widoczny obok przycisk Modify alternative-definitions list.

Ustawianie ogólnych właściwości kontenerów W oknie Preference Settigns znajduje się panel Containers, pokazany na rysunku 25.5, w którym można ustalić ogólne właściwości kontenerów. Dostępne opcje umożliwiają określenie, jak nieobsługiwane reguły dostępu mają być obsługiwane przy zapisie kontenera w formacie kompatybilnym z 3ds Max 2010. Można także ustalić częstotliwość, z jaką program powinien sprawdzać, czy kontener źródłowy został zmodyfikowany. Istnieje też możliwość włączenia wyświetlania statusu kontenerów umieszczonych w scenie. Rysunek 25.5. Ogólne właściwości kontenerów można ustalić w panelu Containers okna dialogowego Preference Settings

Odnośniki do obiektów zewnętrznych Nikt z nas nie jest samotną wyspą i jeśli twórcy Maksa dopną swego, również żaden użytkownik tego programu taką wyspą nie będzie. Odnośniki zewnętrzne (XRefs — eXternal References) umożliwiają pracę nad danym projektem jednocześnie kilku zespołom. Stosowanie tych odnośników pozwala na dostęp do obiektów i scen zawartych w oddzielnych plikach. Dzięki temu kilku artystów może w tym samym czasie pracować nad poszczególnymi częściami projektu, nie przeszkadzając sobie wzajemnie, a jednocześnie każdy z nich może mieć podgląd całości.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

733

Max obsługuje dwa rodzaje odnośników zewnętrznych — odnośniki do scen i do obiektów. Można także używać odnośników do materiałów, modyfikatorów i kontrolerów. Odnośniki są bardzo pomocne, ale w większości przypadków lepszym sposobem na wczytywanie zawartości plików zewnętrznych jest stosowanie kontenerów.

Stosowanie odnośników do scen zewnętrznych (XRef Scenes) Scenę dostępną podczas bieżącej sesji Maksa za pośrednictwem odnośnika zewnętrznego można oglądać, ale nie można modyfikować jej zawartości. Jeżeli taka scena zostanie powiązana z obiektem rodzicem, może być wraz z nim transformowana. Możliwe jest także automatyczne uaktualniane odnośnika po każdej modyfikacji pliku źródłowego. Aby zilustrować sposób, w jaki odnośniki do zewnętrznych scen mogą ułatwić pracę zespołową, rozważmy następujący przykład. Załóżmy, że jedna grupa pracuje aktualnie nad modelowaniem środowiska dla określonej animacji, a równocześnie animator opracowuje ruch wymodelowanej postaci. Animator może wykorzystać odnośnik do sceny zawierającej aktualny model środowiska (niekoniecznie ukończony) jako układ odniesienia dla ruchu postaci. Grupa opracowująca środowisko ma przy tym pewność, że animator nie wprowadzi żadnych zmian w oświetleniu sceny, nie zmodyfikuje ukształtowania terenu ani nie przestawi żadnego rekwizytu. Animator też ma powody do radości, bo może przystąpić do pracy, nie czekając, aż grupa modelująca środowisko ukończy swoje dzieło. W rezultacie wszyscy są zadowoleni (jeśli tylko uda im się zakończyć pracę w wyznaczonym terminie). Z menu aplikacji wybierz polecenie References/XRef Scene, aby otworzyć okno dialogowe XRef Scenes (pokazane na rysunku 25.6) służące do tworzenia odnośników do scen zewnętrznych.

Opcje odnośników do scen zewnętrznych W oknie XRef Scenes istnieje kilka opcji sterujących wyglądem obiektów należących do zewnętrznej sceny, ustalających częstotliwość uaktualniania zawartości odnośnika i umożliwiających wybór w bieżącej scenie obiektu, z którym odnośnik ma być połączony. Okno to jest niemodalne i pozwala w każdej chwili zmienić decyzję dotyczącą wybranych opcji. Panel po lewej stronie okna zawiera listę wszystkich odnośników do scen zewnętrznych występujących w bieżącej scenie. Pozycje na liście prezentują pełne ścieżki dostępu do poszczególnych scen — o ile w panelu Files okna dialogowego Preference Settings nie została włączona opcja Convert Local File Paths to Relative (zmień ścieżki do plików z bezwzględnych na względne). Na prawo od tego panelu znajduje się zestaw opcji, które można ustawić inaczej dla każdego odnośnika. Aby opcje stały się dostępne, musisz najpierw wybrać jakąś scenę z listy. Za pomocą przycisku Remove możesz usunąć z listy zaznaczoną scenę. Przycisk Convert Selected umożliwia przekształcenie zaznaczonych obiektów z bieżącej sceny w odnośnik do tych obiektów, przy czym obiekty te są zapisywane w oddzielnym

734

Część VI  Modelowanie zaawansowane

Rysunek 25.6. Okno dialogowe XRef Scenes pozwala wybrać sceny, które zostaną umieszczone w scenie bieżącej jako odnośniki zewnętrzne

Czerwony kolor odnośnika na tej liście oznacza, że wskazywana przez niego scena nie może być wczytana. Źle podaną ścieżkę lub nazwę pliku można poprawić w polu Path znajdującym się poniżej listy.

pliku. Po kliknięciu tego przycisku otwiera się okno dialogowe, w którym możesz określić nazwę i położenie nowego pliku. Jeśli żaden obiekt bieżącej sceny nie jest zaznaczony, przycisk Convert Selected jest niedostępny. Każdy odnośnik do zewnętrznej sceny można włączyć lub wyłączyć, zaznaczając lub usuwając zaznaczenie opcji Enabled. Odnośniki wyłączone są wyświetlane na liście w kolorze szarym. Przycisk Merge umożliwia dołączenie sceny zewnętrznej do bieżącej w taki sam sposób, w jaki można to zrobić za pomocą polecenia Import/Merge z menu aplikacji. Odnośnik do takiej sceny zostanie usunięty z listy. Uaktualnianie odnośników do scen zewnętrznych Opcja Automatic umożliwia włączenie automatycznej aktualizacji odnośnika do sceny zewnętrznej. W tym celu należy zaznaczyć odnośnik na liście, a następnie włączyć tę opcję. Aktualizacja będzie przeprowadzana po każdej modyfikacji pliku źródłowego. Częste zmiany tego pliku mogą powodować spowolnienie pracy systemu, ale za to mamy zawsze aktualny podgląd zawartości sceny zewnętrznej. Przycisk Update Now służy do ręcznej aktualizacji odnośników. Jeśli chcesz uzyskać podgląd ostatnio zapisanej wersji sceny zewnętrznej, zaznacz na liście jej odnośnik i kliknij przycisk Update Now.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

735

Wyświetlanie sceny zewnętrznej Pozostałe opcje pozwalają określić sposób, w jaki scena zewnętrzna ma być wyświetlana w oknach widokowych. Opcja Visible umożliwia włączenie lub wyłączenie wyświetlania sceny zewnętrznej, a opcja Box włącza wyświetlanie „pudełkowe”. Wyłączenie wyświetlania sceny w oknach widokowych nie powoduje usunięcia jej z końcowego renderingu. Jeśli scena zewnętrzna nie powinna być renderowana, należy wyłączyć opcję Enabled. Korzystając z opcji zgrupowanych w sekcji Ignore, możesz spowodować, że pewne kategorie obiektów w scenie zewnętrznej zostaną zignorowane i nie będą mieć wpływu na jej wygląd. W ten sposób możesz wyłączyć światła (Lights), kamery (Cameras), kształty (Shapes), obiekty pomocnicze (Helpers) i animacje (Animation). Jeśli wyłączysz animacje w scenie zewnętrznej, jej wygląd będzie zgodny z wyglądem zerowej klatki animacji. Ustawianie sceny zewnętrznej Aby ustawić scenę zewnętrzną w odpowiednim położeniu, należy ją połączyć z dowolnym (np. pozornym) obiektem należącym do sceny bieżącej. Dzięki temu, że okno XRef Scenes jest niemodalne, możesz wybrać obiekt, do którego scena zewnętrzna ma być podłączona, bez zamykania tego okna. Scena zewnętrzna zostanie tak przesunięta, aby jej środek pokrył się z środkiem obrotu wybranego obiektu. Nazwa takiego obiektu rodzica będzie wyświetlana w oknie XRef Scenes. Wszelkie transformacje wykonywane na obiekcie rodzicu będą dotyczyły także połączonej z nim sceny. Jeśli zechcesz odłączyć scenę od obiektu rodzica, kliknij przycisk Unbind w oknie dialogowym XRef Scenes. Sceny zewnętrzne niezwiązane z żadnym obiektem są umieszczane w środku globalnego układu współrzędnych bieżącej sceny. Określanie odnośnika jako nakładki (Overlay) Włączenie opcji Overlay dla danego odnośnika w oknie dialogowym XRef Scenes sprawia, że wskazywana przez ten odnośnik (nakładkę) scena zewnętrzna jest widoczna w scenie bieżącej, ale nie będzie widoczna w żadnej scenie zawierającej odnośnik do sceny z taką nakładką. W ten sposób można spowodować, że przy wielopoziomowej strukturze odnośników dana scena zewnętrzna będzie widoczna tylko na pierwszym poziomie. Stosowanie odnośników typu nakładka pozwala także rozwiązać problem cyklicznych odwołań. Poprzednie wersje Maksa nie pozwalały np. na to, aby dwie sceny mogły odnosić się wzajemnie do siebie, ale teraz, kiedy jeden z odnośników może mieć charakter nakładki, jest to możliwe.

Praca z odnośnikami do scen zewnętrznych Zawartość odnośników do scen zewnętrznych nie może być modyfikowana w scenie bieżącej. Obiekty należące do sceny zewnętrznej nie są widoczne w oknach Select from Scene, Track View i Schematic View. Nie ma również dostępu do stosu modyfikatorów (modifier stack) dla tych obiektów. W pewien sposób możesz jednak wykorzystać niektóre obiekty należące do sceny zewnętrznej. Przykładowo w oknie widokowym możesz zmienić

736

Część VI  Modelowanie zaawansowane

widok na pochodzący z kamery lub reflektora należących do sceny zewnętrznej. Wszystkie obiekty przynależne do sceny zewnętrznej są uwzględniane na liście obiektów w oknie dialogowym Summary Info. Inne zastosowanie odnośników do scen zewnętrznych polega na utworzeniu odnośnika do sceny z odpowiednio rozmieszczonymi kamerami i (lub) reflektorami. Korzystając z okna dialogowego XRef Scenes, możesz włączać i wyłączać wszystkie światła jednocześnie, a obecność wielu kamer pozwoli Ci na szybką zmianę widoku bez konieczności tworzenia nowych kamer lub przestawiania istniejących.

Odnośniki mogą być zagnieżdżane, np. scena bieżąca może zawierać odnośnik do sceny z modelem gór, a ta z kolei może zawierać odnośnik do sceny z modelem zamku. Próba otwarcia sceny zawierającej odnośnik do sceny, której Max nie może odnaleźć, spowoduje wyświetlenie okna ze stosownym ostrzeżeniem i możliwością wskazania nowej ścieżki do pliku zawierającego żądaną scenę. Jeśli klikniesz OK lub Cancel, scena z odnośnikiem zostanie otwarta, ale bez wyświetlenia sceny zewnętrznej.

Ćwiczenie: Tworzenie odnośnika do sceny zewnętrznej Jako przykład projektu wykorzystującego odnośnik do sceny zewnętrznej utworzyłem animację prostego obiektu poruszającego się w labiryncie. Najpierw zbudowałem scenę z labiryntem i po zapisaniu jej otworzyłem nową scenę, w której umieściłem odnośnik do tej pierwszej. Dzięki temu mogłem dokładnie dopasować ruch obiektu do labiryntu. Aby utworzyć odnośnik do sceny zewnętrznej, wykonaj następujące czynności. 1. Z menu aplikacji wybierz polecenie New, aby utworzyć nową scenę. 2. Otwórz okno dialogowe XRef Scenes, wybierając z menu aplikacji polecenie References/XRef Scene. 3. Kliknij przycisk Add, w folderze Chap 25 na płycie dołączonej do książki odszukaj plik Maze.max i kliknij przycisk Otwórz. Ścieżka dostępu do pliku pojawi się na liście odnośników w oknie XRef Scenes. Niech to okno pozostanie nadal otwarte. Możesz dodawać kolejne odnośniki, klikając ponownie przycisk Add lub przeciągając pliki z rozszerzeniem .max bezpośrednio z okna Eksploratora Windows lub przeglądarki Asset Manager do okna XRef Scenes.

4. Wybierz polecenie Create/Helpers/Dummy i przeciągnij kursor w oknie widokowym Perspective, aby utworzyć nowy obiekt pozorny (Dummy). 5. W oknie dialogowym XRef Scenes kliknij przycisk Bind, a następnie zaznacz utworzony właśnie obiekt pozorny. To pozwoli Ci umieścić scenę zewnętrzną w odpowiednim położeniu. 6. Włącz automatyczną aktualizację (opcja Automatic w sekcji Update File), a następnie kliknij przycisk Close, aby zamknąć okno XRef Scenes. 7. Teraz możesz wykonać animację obiektów poruszających się po labiryncie. Na rysunku 25.7 przedstawiono scenę Maze.max umieszczoną w bieżącej scenie jako odnośnik zewnętrzny.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

737

Rysunek 25.7. Plik Maze.max umieszczony w bieżącej scenie jako odnośnik zewnętrzny Po opracowaniu animacji prostego obiektu możesz go później zamienić na bardziej złożony obiekt, np. model myszy. Zrobisz to za pomocą polecenia Import/Replace dostępnego w menu aplikacji.

Stosowanie odnośników do obiektów zewnętrznych (XRef Objects) Odnośniki do obiektów różnią się nieco od odnośników do scen. Obiekt zewnętrzny dołączony przy użyciu odnośnika jest widoczny w bieżącej scenie i może być transformowany oraz animowany, ale jego struktura i stos modyfikatorów nie mogą być zmieniane. Jednym ze sposobów wykorzystania tego typu odnośników może być umieszczanie w scenie gotowych obiektów pobieranych z odpowiedniej biblioteki. Jeśli np. masz bibliotekę z modelami mebli, możesz wykorzystać technikę odnośników, aby wybrać właściwy styl umeblowania. Odnośniki do obiektów zewnętrznych możesz wykorzystać również do odciążenia sytemu przez umieszczenie w scenie uproszczonych obiektów zastępczych (proxy object) zamiast skomplikowanych modeli. Zwiększa to szybkość odświeżania okien widokowych. Wiele opcji, jakie znajdziesz w oknie dialogowym XRef Objects, pokazanym na rysunku 25.8, pokrywa się z tymi, które występują w oknie XRef Scenes. Wszystkie przyciski dostępne w oknie XRef Objects zostały opisane w tabeli 25.2.

738

Część VI  Modelowanie zaawansowane

Rysunek 25.8. Okno dialogowe XRef Objects pozwala wybrać pliki, z których mają być pobierane obiekty zewnętrzne

Okno dialogowe XRef Objects jest podzielone na dwie części. W górnej części wyświetlana jest lista plików źródłowych (zwanych tutaj rekordami XRef) dla odnośników zewnętrznych, a w dolnej — lista obiektów, materiałów i kontrolerów wybranych z pliku źródłowego. Aby obiekty i materiały należące do danego pliku zostały wyświetlone w dolnej części, należy ten plik zaznaczyć w górnej części. Przycisk Convert Selected Object(s) to XRefs działa tak samo jak przycisk Convert Selected w oknie XRef Scenes. Umożliwia zapisanie zaznaczonych w bieżącej scenie obiektów, tak samo jak przy użyciu polecenia Save As/Save Selected z jednoczesną zamianą ich w odnośniki zewnętrzne. W oknie dialogowym XRef Objects możesz włączyć automatyczne uaktualnianie odnośników do obiektów zewnętrznych (opcja Automatic Update) lub robić to ręcznie za pomocą przycisku Update. Możesz także włączać i wyłączać wszystkie obiekty należące do zaznaczonego pliku, wykorzystując do tego celu opcję Enabled. Włączenie opcji Include All powoduje, że podczas tworzenia nowego rekordu XRef wszystkie obiekty z pliku źródłowego są automatycznie przypisywane do tego rekordu — okno dialogowe XRef Merge nie jest wówczas wyświetlane. Jeśli opcje Merge Transforms, Merge Materials i Merge Manipulators włączysz przed dodaniem odnośnika zewnętrznego, wszystkie transformacje, materiały i manipulatory staną się automatycznie częścią bieżącej sceny i nie będą dla nich tworzone odnośniki. To oznacza, że łącze między nimi a plikiem źródłowym zostanie zerwane i zmiany w tym pliku nie będą odzwierciedlane w bieżącej scenie.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

739

Tabela 25.2. Przyciski okna dialogowego XRef Objects Przycisk

Nazwa

Opis

Create XRef Record from File

Po wskazaniu pliku źródłowego otwiera okno dialogowe XRef Merge, w którym możesz wybrać obiekty, do jakich mają być tworzone odnośniki.

Remove XRef Record

Usuwa zaznaczony rekord XRef.

Combine XRef Records

Łączy zaznaczone rekordy XRef wskazujące ten sam plik w jeden rekord.

Update

Uaktualnia wszystkie odnośniki.

Merge in Scene

Wszystkie odnośniki zaznaczonego rekordu stają się częścią bieżącej sceny, a rekord zostaje usunięty z okna dialogowego.

Convert Selected Object(s) to XRefs

Umożliwia zapisanie zaznaczonych obiektów w oddzielnym pliku i utworzenie dla nich odnośników w bieżącej scenie.

Select

Zaznacza obiekty będące częścią zaznaczonego rekordu XRef.

Select by Name

Otwiera okno dialogowe Select Objects z listą wszystkich obiektów należących do zaznaczonego rekordu XRef.

Highlight Selected Objects’ XRef Records

Podświetla rekordy XRef, które zawierają obiekty zaznaczone w oknie widokowym.

Add Objects

Otwiera okno dialogowe XRef Merge i umożliwia włączenie do bieżącej sceny dodatkowych obiektów z zaznaczonego rekordu XRef.

Delete XRef Entity

Usuwa zaznaczony obiekt z rekordu XRef.

Merge in Scene

Dołącza zaznaczony obiekt do bieżącej sceny i usuwa jego odnośnik.

List Objects

Wyświetla listę odnośników do obiektów zewnętrznych.

List Materials

Wyświetla listę odnośników do materiałów zewnętrznych.

List Controllers

Wyświetla listę odnośników do kontrolerów zewnętrznych.

Stosowanie odnośników do materiałów zewnętrznych Kiedy plik źródłowy jest umieszczany w oknie dialogowym XRef Objects, obiekty i materiały w nim zawarte są wczytywane, a ich nazwy wyświetlane w dolnej części okna. Jeśli przed wybraniem pliku źródłowego zaznaczona zostanie opcja Merge Materials, materiały znajdą się na jednej liście wraz z obiektami. Jeśli natomiast opcja ta nie będzie zaznaczona, wówczas obiekty i materiały zostaną umieszczone na dwóch odrębnych listach, których wyświetlanie możesz włączać i wyłączać za pomocą przycisków List Objects i List Materials.

740

Część VI  Modelowanie zaawansowane

Odnośniki do materiałów można tworzyć także przy użyciu edytora materiałów. Jeśli w bieżącej scenie chciałbyś wykorzystać materiał utworzony przy okazji opracowywania poprzedniej sceny, możesz po prostu w oknie Material/Map Browser wybrać pozycję XRef Material. Ten typ materiału udostępnia pola i przyciski, za pomocą których można wybrać plik z odpowiednią sceną i wskazać w niej obiekt z żądanym materiałem. Materiał ten pojawi się automatycznie w oknie XRef Objects. Tworzenie materiałów i korzystanie z ich edytora zostało opisane w rozdziale 15., „Rozszerzony edytor materiałów”.

Dołączanie modyfikatorów Jeśli przed wybraniem pliku źródłowego włączona zostanie opcja Merge Manipulators, wraz z obiektem wczytane będą wszystkie związane z nim modyfikatory. Sposób dołączania tych modyfikatorów możesz określić, wybierając odpowiednią pozycję z listy rozwijanej Modifiers, ale musisz to zrobić przed wskazaniem pliku źródłowego. Jeśli wybierzesz opcję XRef, wszystkie modyfikatory zostaną wczytane, ale nie będziesz mógł ich edytować. Będziesz jednak miał możliwość dodania do obiektu nowych modyfikatorów. Wybranie opcji Merge (dołącz) spowoduje, że wszystkie modyfikatory zostaną wczytane wraz z obiektem i będą dostępne na stosie modyfikatorów. Po wybraniu opcji Ignore żaden modyfikator nie zostanie wczytany. Odnośniki do obiektów zewnętrznych wyglądają i zachowują się tak samo jak każdy inny obiekt w scenie. Niewielką różnicę możesz zauważyć po otwarciu stosu modyfikatorów — każdy taki odnośnik jest tutaj nazywany XRef Object.

Stosowanie obiektów zastępczych Gdy w oknie widokowym zaznaczysz odnośnik do obiektu zewnętrznego, wszystkie informacje na jego temat — nazwa pliku źródłowego, oryginalna nazwa obiektu i status — są wyświetlane w panelu Modify. Panel ten zawiera także roletę Proxy Object, gdzie możesz wskazać inny obiekt z innego pliku jako obiekt zastępczy. Przyciski poniżej pól File Name i Object Name otwierają odpowiednie okna dialogowe, w których możesz wybrać prosty obiekt, aby zastąpić nim obiekt bardziej złożony. Pamięć komputera zostanie odciążona, ponieważ obiekt bardziej złożony nie będzie w niej przechowywany. Opcja Enable umożliwia przełączanie się między obiektem zastępczym a oryginalnym, a opcja Use in Rendering po włączeniu spowoduje, że scena zostanie zrenderowana z obiektem zastępczym. Wymierną korzyścią stosowania obiektów zastępczych zamiast odnośników do bardziej złożonych obiektów jest szybsze działanie programu. Tworząc skomplikowany model, nie zapomnij o przygotowaniu uproszczonej wersji, którą będziesz mógł zastosować jako obiekt zastępczy.

Odnośniki kontrolerów Odnośniki można tworzyć nie tylko dla obiektów, materiałów i modyfikatorów, ale także dla kontrolerów. Dzięki temu można przyśpieszyć opracowywanie animacji, „pożyczając” gotowy kontroler ruchu od obiektu należącego do innej sceny. Aby utworzyć odnośnik

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

741

do zewnętrznego kontrolera, należy zaznaczyć ścieżkę transformacji i wybrać opcję XRef Controller. To spowoduje otwarcie najpierw okna wyboru plików, a potem Select Object, w którym można wskazać obiekt z przypisanym mu żądanym kontrolerem. Odnośniki kontrolerów również są wyświetlane jako rekordy w oknie dialogowym XRef Objects. Kontrolery i ich stosowanie opisano w rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Konfigurowanie ścieżek dla odnośników Okno dialogowe Configure User Paths zawiera zakładkę XRefs, na której można ustalić ścieżki dla odnośników do zewnętrznych scen i obiektów (patrz rysunek 25.9). Aby otworzyć to okno, wybierz polecenie Customize/Configure User Paths. Rysunek 25.9. Zakładka XRefs okna dialogowego Configure User Paths pozwala określić ścieżki dostępu do katalogów, w których będzie poszukiwany plik źródłowy dla odnośnika zewnętrznego

Max zapamiętuje ścieżki do plików źródłowych dla wszystkich odnośników zastosowanych w scenie, ale jeśli któraś z nich okaże się nieaktualna, wówczas poszukuje odpowiedniego pliku w katalogach wskazywanych przez ścieżki zdefiniowane na zakładce XRefs okna dialogowego Configure User Paths. W projektach korzystających z dużej liczby odnośników warto umieścić tutaj ścieżki do wszystkich katalogów, w których odpowiednie pliki mogą się znajdować. Ścieżki są przeszukiwane w takiej kolejności, w jakiej zostały umieszczone na liście, a zatem staraj się, aby na początku tej listy znalazły się ścieżki do katalogów, w których odnalezienie właściwego pliku jest najbardziej prawdopodobne. Aby dodać nową ścieżkę, kliknij przycisk Add. Za pomocą przycisków Modify i Delete możesz modyfikować i usuwać istniejące ścieżki.

Korzystanie z okna Schematic View Doskonałym sposobem organizowania, wyszukiwania i zaznaczania obiektów jest korzystanie ze schematycznego widoku sceny, jaki jest prezentowany w oknie Schematic View. Każdy obiekt jest tutaj wyświetlany w postaci prostokąta zwanego węzłem (node). Strzałki łączące poszczególne węzły symbolizują połączenia między obiektami. Dla danej sceny można tworzyć różne widoki schematyczne, zapisywać je i później odtwarzać.

742

Część VI  Modelowanie zaawansowane

Okno Schematic View możesz otworzyć przez wybranie odpowiedniego polecenia z menu Graph Editors lub przez kliknięcie przycisku Schematic View (Open) na głównym pasku narzędzi. Po otwarciu możesz je swobodnie przesuwać po ekranie, przeciągając pasek tytułowy. Możesz także zmieniać rozmiary okna, przeciągając jego krawędzie. Okno jest niemodalne, a więc nie musisz go zamykać, aby pracować w oknach widokowych i korzystać z pozostałych elementów interfejsu Maksa.

Polecenia menu Graph Editors Polecenia tego menu, dotyczące okien Schematic View, umożliwiają zarządzanie różnymi widokami schematycznymi sceny. Polecenie Graph Editors/New Schematic View otwiera okno Schematic View pokazane na rysunku 25.10 Jeśli w polu z nazwą widoku wpiszesz nową nazwę, widok ten zostanie automatycznie zapisany z taką właśnie nazwą i będzie dostępny w podmenu Graph Editors/Saved Schematic Views. Nowa nazwa będzie również wyświetlana na pasku tytułowym okna. Rysunek 25.10. W oknie Schematic View wszystkie obiekty są wyświetlane jako węzły schematu

Za każdym razem gdy wybierasz polecenie Graph Editors/New Schematic View, tworzony jest nowy widok (z nową, domyślną nazwą). Jego nazwa pojawia się natychmiast w podmenu Saved Schematic Views. Polecenie Graph Editors/Delete Schematic View otwiera okno dialogowe, w którym możesz wybrać widoki przeznaczone do usunięcia. Każdy z zapisanych widoków schematycznych możesz otworzyć (lub utworzyć nowy) w oknie widokowym, klikając etykietę widoku i wybierając z menu podręcznego polecenie Extended Viewports/Schematic View z opcją New lub z nazwą zapisanego wcześniej widoku.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

743

Interfejs okna Schematic View Okno Schematic View zawiera szereg typowych elementów interfejsu, takich jak menu, przyciski narzędzi i czteroczęściowe menu kontekstowe. Podobnie jak w głównym oknie programu, tutaj też można tę samą funkcję wywołać na kilka sposobów.

Główne menu Menu okna Schematic View znajduje tuż pod paskiem tytułowym i zawiera następujące pozycje: Edit, Select, List Views, Layout, Options, Display oraz View. W menu Edit znajdziemy następujące polecenia: Connect (C) — ustanawia połączenie hierarchiczne między obiektami (węzłami), Unlink Selected — usuwa połączenie między zaznaczonymi obiektami, Delete — usuwa węzeł i odpowiadający mu obiekt w scenie, Assign Controller — przypisuje kontroler, Wire Parameters — sprzęga parametry, Object Properties — umożliwia zmianę właściwości obiektu. Większość skrótów klawiszowych obowiązujących w głównym interfejsie programu obowiązuje także w oknie Schematic View. Jeśli włączysz przycisk Keyboard Shortcut Override Toggle, będziesz mógł używać także skrótów przypisanych tylko do interfejsu okna Schematic View.

Menu Select zawiera polecenia związane z zaznaczaniem elementów schematu: Select (S lub Q) — uaktywnia narzędzie Select służące do zaznaczania poszczególnych elementów, Select All (Ctrl+A) — zaznacza wszystkie elementy, Select None (Ctrl+D) — usuwa istniejące zaznaczenie, Select Invert (Ctrl+I) — odwraca istniejące zaznaczenie, Select Children (Ctrl+C) — zaznacza węzły dzieci, Deselect Children — usuwa zaznaczenie węzłów dzieci, Select to Scene — zaznacza w scenie te obiekty, którym odpowiadają węzły zaznaczone w widoku schematycznym, Select From Scene — zaznacza te węzły, które odpowiadają obiektom zaznaczonym w scenie, Sync Selection — synchronizuje zaznaczanie węzłów w widoku schematycznym z zaznaczaniem obiektów w scenie i na odwrót. Menu List Views zawiera polecenia służące do wyświetlania list obiektów i ich powiązań: All Relationships (wszystkie powiązania), Selected Relatonships (powiązania elementów zaznaczonych), All Instances (wszystkie klony) i Selected Instances (klony obiektów zaznaczonych), Show Occurrences (obiekty podobne do zaznaczonego), All Animated Controlers (obiekty, którym zostały przypisane kontrolery animacji). Niektóre z tych opcji są dostępne również w oknie pływającym Display. Menu Layout zawiera polecenia służące do ustawiania węzłów schematu. Polecenie Align służy do wyrównywania zaznaczonych węzłów zgodnie z następującymi opcjami: Left (do lewej), Right (do prawej), Top (do góry), Bottom (do dołu), Center Horizontal (wyśrodkowanie w poziomie) i Center Vertical (wyśrodkowanie w pionie). Polecenia Arrange Children i Arrange Selected służą do automatycznego wyrównywania węzłów dzieci względem ich rodziców. Z kolei polecenia Free Selected (Alt+S) oraz Free All (Alt+F) czynią swobodnymi, odpowiednio, zaznaczone węzły lub wszystkie węzły. Polecenie Shrink Selected powoduje wyświetlanie zaznaczonych węzłów w postaci małych kółeczek, a polecenia Unshrink Selected i Unshrink All przywracają normalną postać węzłom zaznaczonym

744

Część VI  Modelowanie zaawansowane

lub wszystkim. Natomiast polecenie Toggle Shrink (Ctrl+S) włącza lub wyłącza tryb takiego wyświetlania węzłów. W menu Options możesz wybrać następujące opcje: Always Arrange (wyrównuj zawsze), Hierarchy Mode (tryb hierarchii), Reference Mode (zwykły tryb połączeń) oraz Move Children (Alt+C) (przesuń węzeł dziecko wraz z węzłem rodzicem). Polecenie Preferences (P) otwiera okno dialogowe, w którym możesz ustawić swoje preferencje dotyczące widoków schematycznych. W menu Display znajdziesz polecenie Display Floater (D) otwierające pływającą paletę Display, w której możesz określić, jakie typy węzłów mają być wyświetlane. Polecenie Hide Selected ukrywa zaznaczone węzły, a polecenie Unhide All powoduje wyświetlenie wszystkich ukrytych węzłów. Polecenia Expand Selected i Collapse Selected powodują, odpowiednio, wyświetlanie lub ukrywanie węzłów dzieci węzła zaznaczonego. Menu View zawiera polecenia służące do uaktywniania narzędzi Pan (Ctrl+P), Zoom (Alt+Z) i Zoom Region (Ctrl+W). Są tutaj również polecenia Zoom Extents (Alt+Ctrl+Z), Zoom Extents Selected (Z) i Pan to Selected. Działanie tych narzędzi i poleceń jest analogiczne do działania ich odpowiedników w głównym interfejsie. Opcje Show Grid (G) i Show Background służą do włączania i wyłączania wyświetlania siatki oraz obrazu wybranego jako tło. Polecenie Refresh View (Ctrl+U) odświeża zawartość okna Schematic View.

Pasek narzędzi Większość wymienionych wyżej poleceń można wywołać również za pomocą przycisków znajdujących się na pasku narzędzi. Niektóre z nich mają charakter przełączników włączających lub wyłączających określony tryb. Włączenie danego trybu jest sygnalizowane żółtym kolorem odpowiadającego mu przycisku. Kilka przycisków umieszczono w dolnej części okna. Wszystkie kontrolki okna Schematic View zostały przedstawione w tabeli 25.3, a sposoby posługiwania się nimi znajdziesz w dalszych częściach tego rozdziału. Pasek narzędzi okna Schematic View jest na stałe zadokowany do górnej krawędzi okna i nie można go przesunąć w inne miejsce.

Podczas nawigowania w oknie Schematic View możesz określonym fragmentom tego widoku nadawać nazwy, wpisując je na liście Bookmark Name. Aby później powrócić do jednego z tych fragmentów, wybierz jego nazwę z rozwijanej listy i kliknij przycisk Go to Bookmark. Wybraną pozycję możesz z tej listy usunąć, klikając przycisk Delete Bookmark. Większość poleceń dostępnych w głównym menu i na pasku narzędzi jest również dostępna w menu kontekstowym rozwijanym po kliknięciu prawym przyciskiem myszy w oknie Schematic View.

Kontrolki nawigacyjne W miarę wzrostu liczby węzłów schematu sceny rośnie też trudność znalezienia właściwego. Poruszanie się po takim rozbudowanym schemacie ułatwiają narzędzia uaktywniane przyciskami umieszczonymi wzdłuż dolnej krawędzi okna. Działają one podobnie

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

745

Tabela 25.3. Kontrolki paska narzędzi okna Schematic View Kontrolka

Nazwa

Opis

Diplay Floater

Otwiera paletę Display, w której możesz określić, jakie elementy mają być wyświetlane.

Select (S)

Włącza tryb, w którym kliknięcie węzła powoduje jego zaznaczenie.

Connect (C)

Umożliwia tworzenie hierarchicznych połączeń między obiektami w oknie Schematic View, a także kopiowanie między nimi modyfikatorów i materiałów.

Unlink Selected

Likwiduje połączenie hierarchiczne między zaznaczonym obiektem a jego rodzicem.

Delete Objects

Usuwa zaznaczony obiekt zarówno w oknie Schematic View, jak i w oknach widokowych.

Hierarchy Mode

Wyświetlane jest drzewo hierarchii — obiekty dzieci są wyświetlane poniżej swoich rodziców z przesunięciem w prawo.

References Mode

Obiekty pozostające na tym samym poziomie hierarchii są wyświetlane obok siebie.

Always Arrange

Wszystkie węzły są ustawiane automatycznie i nie można ich przesuwać.

Arrange Children

Automatycznie ustawia węzły dzieci zaznaczonego węzła.

Arrange Selected

Automatycznie ustawia zaznaczony węzeł względem jego rodzica.

Free All

Wyłącza automatyczne ustawianie wszystkich obiektów.

Free Selected

Wyłącza automatyczne ustawianie zaznaczonych obiektów.

Move Children

Włącza tryb, w którym wraz z węzłem przesuwane są również jego dzieci.

Expand Selected

Wyświetla wszystkie węzły dzieci zaznaczonego węzła.

Collapse Selected

Ukrywa wszystkie węzły dzieci zaznaczonego węzła.

Preferences

Otwiera okno dialogowe Schematic View Preferences.

Pole z nazwą widoku Tu możesz wpisać nową nazwę aktualnego widoku. Będzie ona widoczna w podmenu Graph Editors/Saved Schematic Views. Bookmark Name

Tu możesz nadać nazwę aktualnie oglądanemu fragmentowi schematu (tworząc swego rodzaju zakładkę), aby później szybko do niego wrócić.

Go to Bookmark

Przesuwa widok i dopasowuje jego skalę, aby wyświetlić obiekty wchodzące w skład wybranej zakładki.

Delete Bookmark

Usuwa wybraną pozycję z listy zakładek.

746

Część VI  Modelowanie zaawansowane

do narzędzi nawigacyjnych znanych z głównego interfejsu Maksa. Za pomocą tych narzędzi możesz przesuwać widok lub zmieniać jego skalę. Możesz także powiększać widok wybranego fragmentu schematu lub tak dopasować skalę, aby widoczne były wszystkie węzły. Wszystkie kontrolki narzędzi nawigacyjnych są przedstawione w tabeli 25.4. Tabela 25.4. Kontrolki nawigacyjne okna Schematic View Kontrolka

Nazwa

Opis

Zoom Selected Viewport Objects Dopasowuje widok schematu, tak aby widoczne były wszystkie węzły odpowiadające obiektom zaznaczonym w oknach widokowych. Pole wyszukiwania wg nazwy

Po wpisaniu nazwy obiektu zostanie on zaznaczony, a po kliknięciu przycisku Zoom Selected Viewport Objects widok zostanie skupiony na tym obiekcie.

Pan

Umożliwia przesuwanie widoku przez przeciąganie kursora.

Zoom

Umożliwia zmianę skali widoku przez przeciąganie kursora.

Zoom Region

Umożliwia powiększenie wybranego fragmentu schematu.

Zoom Extents

Zmienia skalę widoku, tak aby wszystkie węzły były widoczne.

Zoom Extents Selected

Zmienia skalę widoku, tak aby wszystkie zaznaczone węzły były widoczne.

Pan To Selected

Przesuwa widok (bez zmiany skali), tak aby zaznaczone węzły były widoczne.

Narzędzia nawigacyjne okna Schematic View są dostępne także w menu View. Odpowiednie polecenia tego menu to: Pan (Ctrl+P), Zoom (Alt+Z) i Zoom Region (Ctrl+W), Zoom Extents (Alt+Ctrl+Z), Zoom Extents Selected (Z) i Pan to Selected. Do nawigowania w oknie Schematic View możesz również wykorzystać mysz wyposażoną w rolkę do przewijania. Pokręcanie tym kółkiem powoduje skokową zmianę skali widoku. Przeciąganie myszy z wciśniętym środkowym przyciskiem (kółkiem do przewijania) i przy wciśniętym klawiszu Ctrl powoduje płynną zmianę skali widoku, natomiast takie przeciąganie (z wciśniętym środkowym przyciskiem) bez wciskania jakiegokolwiek klawisza powoduje przesuwanie widoku.

Węzły schematu sceny Każdemu obiektowi w scenie odpowiada w widoku schematycznym węzeł (node) — prostokątny blok reprezentujący sam obiekt lub jeden z jego atrybutów. Każdy węzeł jest opatrzony etykietą i ma przypisany kolor, zależny od typu węzła.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

747

Kolory węzłów Dla ułatwienia identyfikacji poszczególnym typom węzłów zostały przypisane różne kolory. Wykaz wszystkich typów węzłów i przypisanych im kolorów zawiera tabela 25.5. Tabela 25.5. Typy węzłów i ich kolory Kolor

Węzeł

Biały

Węzeł zaznaczony

Niebieski

Węzeł obiektu geometrycznego

Cyjan

Węzeł kształtu

Żółty

Węzeł źródła światła

Granatowy

Węzeł kamery

Zielony

Węzeł obiektu pomocniczego

Fioletowy

Węzeł pola sił

Złoty

Węzeł modyfikatora

Ciemnożółty

Węzeł obiektu bazowego

Brązowy

Węzeł materiału

Ciemnozielony Węzeł mapy Łososiowy

Węzeł kontrolera

Magenta

Sprzężenie parametrów Jeśli któryś z tych kolorów nie podoba Ci się, możesz go zmienić, korzystając z zakładki Colors okna dialogowego Customize/Customize User Interface.

Zaznaczanie węzłów Kliknięcie przycisku Select (S) wprowadza tryb zaznaczania węzłów w oknie Schematic View. Aby zaznaczyć pojedynczy węzeł, wystarczy go kliknąć. Jeśli chcesz zaznaczyć kilka węzłów, możesz je otoczyć ramką zaznaczenia (w tym celu przeciągnij kursor nad tymi węzłami) lub klikać je kolejno przy wciśniętym klawiszu Ctrl. Węzły zaznaczone zmieniają kolor na biały. Menu Select zawiera kilka poleceń umożliwiających szybkie zaznaczanie (lub usuwanie zaznaczenia) wielu węzłów jednocześnie. Są to następujące polecenia: Select All (Ctrl+A) (zaznacz wszystko), Select None (Ctrl+D) (usuń zaznaczenie), Select Invert (Ctrl+I) (odwróć zaznaczenie), Select Children (Ctrl+C) (zaznacz węzły dzieci) i Deselect Children (usuń zaznaczenie węzłów dzieci). Jeśli opcja Sync Selection w menu Select jest włączona, zaznaczenie obiektu w oknie widokowym powoduje równoczesne zaznaczenie odpowiedniego węzła w oknie Schematic View i na odwrót. Jeśli natomiast wyłączysz tę opcję, będziesz mógł niezależnie zaznaczać obiekty w oknach widokowych i węzły w oknie Schematic View. Węzeł obiektu

748

Część VI  Modelowanie zaawansowane

zaznaczonego w oknie widokowym jest otaczany białą ramką, a zaznaczony węzeł jest wypełniany takim kolorem. Aby w scenie zaznaczyć wszystkie obiekty, których węzły zostały zaznaczone w oknie Schematic View przy wyłączonej opcji Sync Selection, wybierz polecenie Select/Select to Scene. Polecenie Select/Select From Scene działa w drugą stronę — zaznacza w oknie Schematic View te węzły, które odpowiadają obiektom zaznaczonym w oknach widokowych. Węzły reprezentujące obiekty animowane są otoczone czerwoną ramką.

Rozmieszczanie węzłów Interfejs okna Schematic View udostępnia kilka sposobów rozmieszczania węzłów. W menu Options możesz wybrać opcję Hierarchy lub Reference. W trybie Hierarchy węzły dzieci są umieszczane poniżej swoich rodziców i przesunięte w stosunku do nich w prawo. W trybie Reference węzły są wyświetlane w układzie poziomym — węzły znajdujące się na tym samym poziomie hierarchii są wyświetlane obok siebie. Oba tryby zostały pokazane na rysunku 25.11. Rysunek 25.11. W oknie Schematic View można wybrać jeden z dwóch trybów rozmieszczania węzłów, Hierarchy lub Reference

Węzły można przesuwać i ustawiać w dowolnym porządku. Aby przesunąć węzeł, wystarczy go po prostu przeciągnąć w inne położenie. Przesuwanie jednego z zaznaczonych węzłów powoduje przesunięcie również pozostałych. Przesuwane są też wszystkie węzły połączone z nimi, przy czym zachowują rozmieszczenie wynikające z wybranego trybu. Przesunięcie węzła sprawia również, że staje się on swobodny, co jest sygnalizowane pustym prostokątem widocznym z lewej strony węzła. Na rysunku 25.12 widoczne są dwa węzły, które zostały przesunięte, a tym samym stały się swobodne. Pozostałe węzły dzieci zostały automatycznie przesunięte, aby zapełnić lukę powstałą po przesunięciu tamtych węzłów. Za pomocą poleceń Free Selected (Alt+S) i Free All (Alt+F) z menu Layout możesz sprawić, że swobodne staną się, odpowiednio, węzły zaznaczone lub wszystkie. Wybranie polecenia Layout/Arrange Children powoduje automatyczne (zgodne z wybranym trybem) rozmieszczenie węzłów dzieci połączonych z węzłami zaznaczonymi. Natomiast polecenie Layout/Arrange Selected powoduje właściwe rozmieszczenie tylko węzłów zaznaczonych. Włączenie opcji Move Children (Alt+C) w menu Options sprawia, że wszystkie węzły dzieci (swobodne i nieswobodne) są przesuwane wraz z ich rodzicami.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

749

Rysunek 25.12. Węzły swobodne mogą być przesuwane niezależnie od trybu rozmieszczania

Jeśli jest włączona opcja Options/Always Arrange, węzły są rozmieszczane automatycznie (zgodnie z wybranym trybem Hierarchy lub Reference) i nie można ich przesuwać. Włączenie tej opcji po wcześniejszym przesunięciu jakiegokolwiek węzła powoduje otwarcie okna dialogowego z ostrzeżeniem, że wprowadzone zmiany w rozmieszczeniu węzłów zostaną utracone. Po włączeniu opcji Always Arrange niedostępne stają się polecenia Arrange Children, Free All (Alt+F) i Free Selected (Alt+S) oraz opcja Move Children (Alt+C) i wszystkie opcje z podmenu Align. Opcje podmenu Align służą do wyrównywania położenia zaznaczonych (co najmniej dwóch) węzłów. Są to następujące opcje: Left (do lewej), Right (do prawej), Top (do góry), Bottom (do dołu), Center Horizontal (wyśrodkowanie w poziomie) i Center Vertical (wyśrodkowanie w pionie).

Ukrywanie, zmniejszanie i usuwanie węzłów Jeśli schemat sceny staje się bardzo zatłoczony, możesz go uprościć, ukrywając część węzłów. Aby ukryć węzeł, należy go zaznaczyć i wybrać polecenie Display/Hide Selected. Do przywracania widoczności ukrytych węzłów służy polecenie Display/Unhide All. Jeśli zostanie ukryty węzeł rodzic, jego dzieci również zostaną ukryte.

Inny sposób uproszczenia schematu polega na zastosowaniu polecenia Layout/Shrink Selected, które powoduje wyświetlanie zaznaczonych węzłów w postaci niewielkich kółek zamiast prostokątnych bloków. Linie symbolizujące połączenia między obiektami zostają przy tym zachowane. Na rysunku 25.13 został pokazany schemat, w którym dwa węzły zostały zmniejszone do takiej właśnie postaci. Aby przywrócić im normalne rozmiary, wystarczy wybrać polecenie Layout/Unshrink Selected lub Layout/Unshrink All, przy czym pierwsze z nich dotyczy węzłów aktualnie zaznaczonych, a drugie — wszystkich. Polecenia z grupy Shrink działają tylko wtedy, gdy włączona jest opcja Layout/Toggle Shrink (Ctrl+S). Po wyłączeniu tej opcji wszystkie węzły będą wyświetlane w normalnej, blokowej postaci.

Jeśli zechcesz usunąć węzeł, zaznacz go i kliknij przycisk Delete Objects na pasku narzędzi okna Schematic View lub wciśnij klawisz Delete. Jeśli zaznaczysz kilka węzłów, wszystkie zostaną usunięte. Wraz z węzłami usuwane są obiekty odpowiadające im w scenie.

750

Część VI  Modelowanie zaawansowane

Rysunek 25.13. Węzły mogą być wyświetlane w postaci niewielkich kółek

Zmienianie nazw obiektów W oknie Schematic View możesz bardzo łatwo zmienić nazwę obiektu. Kliknij zaznaczony wcześniej węzeł i wpisz nową nazwę, gdy tekst jego etykiety zostanie podświetlony. Dotyczy to wszystkich węzłów, które mają przypisaną nazwę, np. węzłów reprezentujących materiały.

Ćwiczenie: Zmiana kolejności planet w Układzie Słonecznym Aby przećwiczyć ustawianie węzłów schematu sceny, uporządkujemy model układu planetarnego. Max umieszcza węzły w widoku schematycznym bez uwzględniania konkretnej kolejności, ale zawsze możemy ręcznie taką kolejność wprowadzić. Żeby uporządkować kolejność planet w Układzie Słonecznym, wykonaj następujące czynności. 1. Otwórz plik Ordered solar system.max z folderu Chap 25 na płycie dołączonej do książki. Plik ten zawiera odpowiednio nazwane sfery, które reprezentują poszczególne planety. 2. Wybierz polecenie Graph Editors/New Schematic View, aby otworzyć okno Schematic View. Wszystkie planety wyświetlane są jako niebieskie węzły leżące poniżej węzła o nazwie Sun (Słońce). 3. Wybierz polecenie Options/Reference Mode, aby ustawić wszystkie węzły w układzie poziomym, a następnie kliknij przycisk Select na pasku narzędzi (lub wciśnij klawisz S). 4. Upewnij się, czy wyłączona jest opcja Always Arrange w menu Options. Następnie przeciągnij węzeł Mercury w lewo, przed węzeł Venus.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

751

5. W menu Options włącz opcję Move Children (Alt+C) i ustaw węzeł Saturn między węzłami Jupiter i Uranus. Włączenie opcji Move Children spowoduje, że wraz Saturnem zostaną przesunięte jego pierścienie. 6. Przesuń węzeł Pluto poza węzeł Neptun. 7. Zaznacz węzły wszystkich planet i wybierz polecenie Layout/Align/Top, aby wyrównać położenie węzłów. Wprawdzie astronomowie twierdzą, że Pluton nie jest planetą, ale przecież książka o Maksie nie jest lekturą obowiązkową dla studentów astronomii. Sądzę, że na potrzeby niniejszego ćwiczenia możemy przyjąć, iż Pluton jednak jest planetą.

Uporządkowany schemat Układu Słonecznego został pokazany na rysunku 25.14. Rysunek 25.14. Właściwe rozmieszczenie węzłów ułatwia odszukanie konkretnej planety

Praca z hierarchiami Okno Schematic View umożliwia przeglądanie powiązań istniejących między różnymi obiektami. Z łatwością możesz tutaj określić, które obiekty są dziećmi, a które ich rodzicami. Możesz również wskazać obiekty, którym zostały przypisane modyfikatory i materiały. Krótko mówiąc, okno Schematic View jest źródłem wielu cennych informacji.

Paleta Display Jeśli włączysz wyświetlanie wszystkich powiązań, widok schematyczny sceny stanie się mało przejrzysty. Na szczęście, możemy kontrolować wyświetlanie różnych typów powiązań (Relationships) i elementów schematu (Entities). Do tego właśnie celu służy paleta Display pokazana na rysunku 25.15. Górna część palety (sekcja Relationships) zawiera opcje służące do włączania i wyłączania wyświetlania powiązań między obiektami (linii łączących węzły). Są to następujące kategorie powiązań: Constraints (ograniczenia), Controllers (kontrolery), Parameter Wires (sprzężenia parametrów), Light Inclusion (włączenie do systemu oświetlenia) i Modifiers (modyfikatory). Jeśli przytrzymasz wskaźnik myszy nad linią reprezentującą powiązanie, wyświetlona zostanie informacja dotycząca tego powiązania.

752

Część VI  Modelowanie zaawansowane

Rysunek 25.15. Za pomocą palety Display możesz włączać i wyłączać wyświetlanie określonych typów węzłów i łączących je linii

W przypadku niektórych powiązań dwukrotne kliknięcie linii powoduje otwarcie okna dialogowego z ustawieniami danego powiązania, np. dwukrotne kliknięcie linii reprezentującej powiązanie typu Parameter Wire (sprzężenie parametrów) powoduje otwarcie okna dialogowego Parameter Wiring.

Sekcja Entities palety Display pozwala włączać i wyłączać wyświetlanie elementów reprezentowanych przez węzły. Są to następujące kategorie elementów: Base Objects (obiekty bazowe), Modifier Stack (stos modyfikatorów), Materials (materiały) i Controllers (kontrolery). Przyciski P, R i S służą do włączania i wyłączania wyświetlania węzłów reprezentujących kontrolery przesunięcia, obrotu i skalowania. Jeśli dany węzeł jest powiązany z innym węzłem, po jego prawej stronie wyświetlana jest strzałka, której kliknięcie włącza lub wyłącza wyświetlanie linii tego powiązania. Włączenie wyświetlania określonej kategorii węzłów przy wyłączonym przycisku Expand powoduje wyświetlenie tylko czarnych strzałek przy węzłach reprezentujących obiekty. Kliknięcie tej strzałki powoduje wyświetlenie kolejnego węzła połączonego z tym węzłem, którego strzałka została kliknięta. Włączenie przycisku Focus sprawia, że tylko węzły, między którymi występują powiązania, są wyświetlane w kolorach, natomiast pozostałe nie są pokolorowane. Na rysunku 25.16 został pokazany schemat z włączonym wyświetlaniem obiektów bazowych i kontrolerów (w sekcji Entities palety Display). Włączenie tych kategorii nastąpiło przy wyłączonym przycisku Expand. To spowodowało, że węzłom reprezentującym obiekty towarzyszą tylko strzałki skierowane w górę lub w dół. Kliknięcie strzałki skierowanej w górę spowoduje zwinięcie danego węzła do węzła rodzica. Kliknięcie strzałki skierowanej w dół spowoduje rozwinięcie danego węzła i wyświetlenie połączonych z nim węzłów obiektu bazowego i kontrolera, tak jak to zostało pokazane na rysunku 25.16 dla węzła Earth. Do zwijania i rozwijania węzłów możesz użyć także poleceń Expand Selected i Collapse Selected z menu Display. Powiązania hierarchiczne między obiektami są reprezentowane przez linie łączące węzły. Podczas przesuwania węzłów linie te są automatycznie dopasowywane do nowego położenia węzłów.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

753

Rysunek 25.16. Węzły mogą być zwijane i rozwijane przez klikanie strzałek skierowanych, odpowiednio, w górę lub w dół

Łączenie węzłów Aby utworzyć połączenie hierarchiczne, możesz zastosować polecenie Edit/Connect (skrót klawiszowy C) lub przycisk Connect na pasku narzędzi okna Schematic View. Wprowadzony w ten sposób tryb umożliwia łączenie obiektów, kopiowanie między nimi modyfikatorów, materiałów i kontrolerów, a nawet sprzęganie parametrów. W przypadku hierarchicznego łączenia obiektów przycisk Connect działa tak samo jak jego odpowiednik w głównym interfejsie — wystarczy zaznaczyć węzeł dziecko i przeciągnąć linię łączącą go z węzłem rodzicem. Można nawet zaznaczyć kilka węzłów i jednym ruchem połączyć je z węzłem rodzicem. Polecenie Edit/Unlink Selected (i przycisk na pasku narzędzi) usuwa połączenie między zaznaczonym węzłem a jego rodzicem. Pamiętaj, że każdy obiekt może mieć tylko jednego rodzica.

Kopiowanie modyfikatorów i materiałów między węzłami Zanim przystąpisz do kopiowania materiałów lub modyfikatorów między węzłami, upewnij się, czy wyświetlanie tych kategorii węzłów zostało włączone w sekcji Entities palety Display. Aby otworzyć tę paletę, kliknij przycisk Display Floater lub wciśnij klawisz D. By skopiować materiał lub modyfikator, zaznacz węzeł reprezentujący materiał (modyfikator) jednego obiektu, kliknij przycisk Connect (lub wciśnij klawisz C), a następnie przeciągnij ten materiał (modyfikator) do węzła drugiego obiektu. W oknie Schematic View materiały mogą być kopiowane tylko między obiektami — nie można ich przenosić z okna edytora materiałów.

Podczas takiego kopiowania modyfikatorów wyświetlane jest okno dialogowe, w którym możesz wybrać jedną z następujących opcji: Copy (kopiuj), Move (przenieś) lub Instance (utwórz klon modyfikatora). W oknie Schematic View możesz także zmieniać kolejność

754

Część VI  Modelowanie zaawansowane

w stosie modyfikatorów. Po włączeniu narzędzia Connect po prostu przeciągnij węzeł przenoszonego modyfikatora do węzła modyfikatora leżącego bezpośrednio nad miejscem docelowym. O modyfikatorach i ich stosie możesz przeczytać w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Przypisywanie kontrolerów i sprzęganie parametrów Jeśli włączone jest wyświetlanie węzłów kontrolerów, możesz kopiować kontrolery tak samo jak materiały i modyfikatory, korzystając z przycisku Connect (C). Możesz również przypisywać kontrolery węzłom obiektów, które nie mają jeszcze przypisanego kontrolera. Do tego celu służy polecenie Edit/Assign Controller. Otwiera ono okno dialogowe Assign Controller, pokazane na rysunku 25.17, w którym możesz wybrać odpowiedni kontroler. Rysunek 25.17. W oknie Schematic View można również przypisywać kontrolery

Korzystając z okna Schematic View, można także sprzęgać parametry. Aby tego dokonać, zaznacz odpowiedni węzeł, a następnie wybierz polecenie Edit/Wire Parameters. Zostanie wyświetlone menu podręczne funkcjonujące tak samo jak w oknach widokowych. Linie symbolizujące powiązania polegające na sprzężeniu parametrów są wyświetlane w kolorze purpurowym (magenta). Więcej informacji na temat sprzęgania parametrów znajdziesz w rozdziale 36., „Animowanie przy użyciu kontrolera Expression i wiązania parametrów”.

Ćwiczenie: Tworzenie połączeń hierarchicznych w oknie Schematic View Jedną z największych zalet okna Schematic View jest łatwość, z jaką można w nim tworzyć połączenia hierarchiczne między obiektami. Łączenie obiektów oknach widokowych może być trudne — obiekty bywają bardzo małe i przesłonięte innymi obiektami. W oknie Schematic View wszystkie węzły mają te same rozmiary i nie zasłaniają się wzajemnie, istotne jest tylko to, aby obiekty miały przypisane nazwy ułatwiające ich identyfikację.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

755

Aby połączyć poszczególne części modelu postaci, wykonaj następujące czynności. 1. Otwórz plik Futuristic man.max z folderu Chap 25 na płycie dołączonej do książki. Plik ten zawiera uproszczoną wersję modelu futurystycznej postaci, z którego zostały usunięte połączenia między poszczególnymi częściami. Model ten został opracowany w Viewpoint Datalabs. 2. Wybierz polecenie Graph Editors/New Schematic View, aby otworzyć okno Schematic View. Zmień nazwę widoku na Linked character (postać z połączeniami). Kliknij przycisk Zoom Region w prawym dolnym rogu okna i przeciągnij kursor nad węzłami położonymi w lewej części schematu. Węzłem rodzicem dla całego modelu niech będzie węzeł o nazwie pelvis (miednica). 3. Kliknij przycisk Connect na pasku narzędzi (lub wciśnij klawisz C) i przeciągnij kursor od węzła handr (prawa dłoń) do węzła armr (prawe ramię), aby je połączyć. Następnie połącz w taki sam sposób: handl (lewa dłoń) z arml (lewe ramię), head (głowa) z neck (szyja), pupil (źrenica) z eyes (oczy), bootr (prawy but) z legr (prawa noga), bootl (lewy but) z legl (lewa noga) oraz torso (tułów) z pelvis (miednica). 4. Zaznacz węzły eyes, mask, patch oraz hair i połącz je z węzłem head. 5. Na koniec zaznacz węzły armr, arml, neck oraz katana i połącz je z węzłem torso, a węzły legr i legl połącz z węzłem pelvis. W ten sposób została utworzona właściwa hierarchia. Przy zestawianiu modelu ludzkiej postaci zazwyczaj jako obiekt rodzic przyjmuje się miednicę, ponieważ jest ona środkiem większości ruchów takiej postaci.

Ostateczny schemat połączeń wszystkich części modelu przedstawia rysunek 25.18. Jeśli teraz przesuniesz węzeł miednicy, wszystkie pozostałe węzły zostaną również przesunięte. Rysunek 25.18. Wszystkie części postaci są teraz połączone z obiektem o nazwie pelvis (miednica)

Ustawianie preferencji okna Schematic View Kliknięcie przycisku Preferences (lub wybranie polecenia Options/Preferences) otwiera okno dialogowe Schematic View Preferences, pokazane na rysunku 25.19, w którym możesz określić, jakie elementy schematu mają być wyświetlane, ustawić parametry siatki,

756

Część VI  Modelowanie zaawansowane

Rysunek 25.19. Okno dialogowe Schematic View Preferences umożliwia sterowanie różnymi aspektami okna Schematic View

wybrać obraz wyświetlany jako tło okna Schematic View oraz podać inne parametry decydujące o wyglądzie i funkcjonowaniu tego okna.

Ograniczanie liczby wyświetlanych węzłów Podczas otwierania okna Schematic View Max przegląda całą scenę w poszukiwaniu elementów, które mogą być przedstawione w widoku schematycznym jako węzły. Jeśli masz do czynienia ze skomplikowaną sceną i nie zamierzasz manipulować w oknie Schematic View węzłami materiałów lub modyfikatorów, możesz je wyłączyć w sekcji Include in Calculation (uwzględniaj w obliczeniach) okna Schematic View Preferences. Dzięki temu uprościsz schemat sceny, ułatwiając sobie manipulowanie tymi elementami, które są istotne. Sekcja Include in Calculation zawiera następujące opcje. 

Base Objects (obiekty bazowe) — uwzględnia obiekty geometryczne tworzące węzły. Węzłem jest obiekt o określonej nazwie, np. Ziemia, a obiektem bazowym jest w tym przypadku obiekt podstawowy typu Sphere reprezentowany w widoku schematycznym przez element o nazwie Sphere (Object).



Modifier Stack (stos modyfikatorów) — uwzględnia wszystkie modyfikatory przypisane poszczególnym obiektom.



Materials/Maps (materiały/mapy) — uwzględnia wszystkie materiały i mapy przypisane poszczególnym obiektom.



Controllers (kontrolery) — uwzględnia wszystkie kontrolery przypisane poszczególnym obiektom.



Static Values (wartości stałe) — uwzględnia wszystkie nieanimowane parametry poszczególnych obiektów.



Master Point Controller (kontroler punktu nadrzędnego) — uwzględnia wszystkie kontrolery przypisane zaznaczonym podobiektom.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów 

757

Skin Details (szczegóły skóry) — uwzględnia wszystkie modyfikatory i kontrolery stosowane wraz z modyfikatorem Skin w odniesieniu do systemu kości.

Dalsze ograniczenie liczby węzłów możesz uzyskać, zaznaczając opcje w sekcji Include Only (uwzględniaj tylko). Opcja Selected Objects powoduje tworzenie węzłów tylko dla obiektów zaznaczonych w oknach widokowych. Zawartość okna Schematic View będzie się zmieniać, w zależności od tego, jakie obiekty zostaną zaznaczone. Włączenie opcji Visible Objects powoduje tworzenie węzłów tylko dla obiektów, które nie są ukryte, a włączenie opcji Animated Objects — dla obiektów, które są animowane. W sekcji Hide by Category (ukrywaj wg kategorii) możesz włączyć ukrywanie węzłów reprezentujących obiekty następujących kategorii: Geometry (obiekty geometryczne), Shapes (kształty), Lights (źródła światła), Cameras (kamery), Helpers (obiekty pomocnicze), Space Warps (pola sił) i Bone Objects (obiekty kości). Na rysunku 25.20 został pokazany schematyczny widok sceny z jednym obiektem typu Sphere po zaznaczeniu wszystkich opcji w sekcji Include in Calculation. Rysunek 25.20. Bez ograniczenia liczby wyświetlanych węzłów okno Schematic View może stać się mało przejrzyste

Siatki i tła w oknie Schematic View Sekcja Grid okna dialogowego Schematic View Preferences zawiera ustawienia związane z siatką wyświetlaną w oknie Schematic View. Opcja Show Grid odpowiada za wyświetlanie tej siatki. Skrótem klawiszowym tej opcji jest G. Po włączeniu opcji Snap to Grid węzły będą przyciągane do najbliższego punktu przecięcia linii siatki. Ułatwia to wyrównywanie położenia węzłów. Parametr Grid Spacing określa odległość między sąsiednimi liniami siatki. Przycisk File w sekcji Background Image otwiera okno wyboru plików, umożliwiając wybranie obrazu, który będzie wyświetlany jako tło okna Schematic View. Takie tło może być przydatne podczas rozmieszczania węzłów. Aby wybrany obraz został wyświetlony, należy jeszcze włączyć opcję Show Image. Opcja Lock Zoom/Pan blokuje położenie węzłów względem obrazu tła tak, że np. powiększenie widoku określonych węzłów powoduje powiększenie również widoku obrazu stanowiącego tło. Jako tło okna Schematic View można wykorzystać obraz przedstawiający model umieszczony w scenie. W tym celu należy model zrenderować i otrzymany w ten sposób obraz zapisać w pliku. Następnie trzeba wybrać ten obraz jako tło okna Schematic View. Aby wydrukować schemat sceny, należy wykonać zrzut ekranu — szkoda, że okno nie zostało wyposażone w funkcję drukowania.

758

Część VI  Modelowanie zaawansowane

Opcje wyświetlania W sekcji Link Style okna Schematic View Preferences możesz wybrać styl linii reprezentujących powiązania między węzłami. Do wyboru masz następujące opcje: Bezier Lines (krzywe Béziera), Straight Lines (linie proste), Circuit Lines (linie złożone z prostopadłych odcinków, jak w schematach obwodów elektrycznych) i None (brak linii). W sekcji Arrange Method możesz wybrać jedną z następujących metod rozmieszczania hierarchii (metoda ta będzie używana przez narzędzia Always Arrange, Arrange Children i Arrange Selected): Stacked (hierarchie zgrupowane), Horizontal (hierarchie umieszczone obok siebie) i Vertical (hierarchie umieszczone jedna nad drugą). W sekcji Sync Selection możesz wybrać opcję Viewports włączającą synchronizację zaznaczania z oknami widokowymi lub opcję Everything włączającą taką synchronizację ze wszystkimi elementami interfejsu. Jeśli wybierzesz tę drugą opcję, wówczas zaznaczenie np. materiału w oknie Schematic View spowoduje zaznaczenie tego materiału również w oknie edytora materiałów. Poza edytorem materiałów dotyczy to także stosu modyfikatorów, pola kontrolerów w panelu Display oraz okna dialogowego Wiring Parameters. Okno Schematic View Preferences zawiera również sekcję Preferences. Opcja Double Buffer służy do włączania trybu wyświetlania z podwójnym buforowaniem przyspieszającym odświeżanie zawartości okna Schematic View. Włączenie opcji Zoom About Mouse sprawia, że zmiana skali widoku przez przeciąganie kursora przy wciśniętych środkowym przycisku myszy i klawiszu Ctrl zachodzi względem punktu wyznaczonego położeniem kursora. Opcja Move Children odpowiada za przemieszczanie węzłów dzieci wraz z węzłem rodzicem. Opcja Pan to Added Nodes powoduje takie przesunięcie widoku, aby dodane węzły stały się widoczne. Po włączeniu opcji Use Wireframe Color kolor węzła reprezentującego obiekt będzie zgodny z kolorem obiektu. Opcja Display Layout Warning pozwala wyłączyć wyświetlanie ostrzeżenia przy korzystaniu z narzędzia Always Arrange. Włączenie opcji Only Update On Focus powoduje, że zawartość okna Schematic View jest aktualizowana tylko podczas uaktywniania tego okna. Pozwala to uniknąć ciągłego odświeżania tego okna podczas dokonywania zmian w scenie za pośrednictwem okien widokowych. Przy bardziej rozbudowanych scenach mogłoby to oznaczać znaczne spowolnienie działania programu. Opcja Show Tooltips służy do włączania i wyłączania podpowiedzi wyświetlanych po zatrzymaniu kursora nad węzłem. Takie podpowiedzi są przydatne np. wtedy, gdy skala widoku jest tak mała, że nazwy węzłów są nieczytelne. Opcja Snap Floaters włącza przyciągane pływających okien i palet do krawędzi okna Schematic View, a opcja Relative Floaters powoduje ich przesuwanie wraz z przesuwaniem lub zmienianiem rozmiarów okna Schematic View.

Ćwiczenie: Umieszczanie tła w oknie Schematic View Węzły można rozmieszczać dowolnie, ale często wygodnie jest rozmieścić je zgodnie z kształtem modelu, którego elementy chcemy połączyć. W takiej sytuacji przydaje się umieszczenie w oknie Schematic View tła w postaci obrazu przedstawiającego ten model. Aby umieścić tło w oknie Schematic View, wykonaj następujące czynności.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

759

1. Otwórz plik Futuristic man with background.max z folderu Chap 25 na płycie dołączonej do książki. W pliku znajduje się ten sam model futurystycznej postaci, nad którym pracowaliśmy w poprzednim ćwiczeniu. 2. Zmaksymalizuj okno widokowe Perspective, a następnie wybierz polecenie Tools/ Grab Viewport. W oknie Grab Active Viewport wpisz nazwę przechwytywanego widoku: Futuristic man — front view i kliknij przycisk Grab. Otwarte zostanie okno Rendered Frame. 3. Kliknij przycisk Save Bitmap w lewym górnym rogu tego okna i zapisz obraz pod nazwą Futuristic man — front view, a następnie zamknij okno Rendered Frame. 4. Wybierz polecenie Graph Editors/New Schematic View, aby utworzyć nowy widok schematyczny i nazwij go Background (tło). Następnie kliknij przycisk Preferences na pasku narzędzi okna Schematic View i w sekcji Background Image okna Schematic View Preferences kliknij przycisk File. 5. Odszukaj zapisany przed chwilą obraz i otwórz go. Zaznacz opcję Show Image w oknie Schematic View Preferences i kliknij przycisk OK. Możesz wykorzystać obraz zapisany w katalogu Chap 25 na płycie dołączonej do książki. 6. Wybierz polecenie View/Show Grid (lub wciśnij klawisz G), aby wyłączyć wyświetlanie siatki. Przeciągnij narożnik okna Schematic View, powiększając okno tak, aby cały obraz w tle stał się widoczny. 7. W oknie Schematic View Preferences włącz opcję Lock Zoom/Pan, aby wraz ze zmianą skali widoku węzłów zmieniała się skala widoku tła. Przeciągnij poszczególne węzły do miejsc pokrywających się z odpowiednimi elementami modelu. Rozpocznij od węzła rodzica, a potem przesuwaj kolejne węzły dzieci. Na rysunku 25.21 przedstawiono układ węzłów przyporządkowanych poszczególnym elementom modelu. Takie rozmieszczenie węzłów ułatwia ocenę wzajemnych połączeń między nimi.

Polecenia menu List Views (widoki list) Okno Schematic View możesz również wykorzystać do wyświetlania list węzłów mających pewne cechy wspólne. Do wyświetlania takich list służą polecenia z menu List Views. Listy wyświetlane są w odrębnym oknie, którego nazwa i zawartość zmieniają się, w zależności od wybranego polecenia. Polecenie List Views/All Relationships wyświetla listę wszystkich powiązań między węzłami (patrz rysunek 25.22), natomiast polecenie Selected Relationships ogranicza tę listę do tych elementów schematu, które są aktualnie zaznaczone. W przypadku tych dwóch poleceń okno wyświetlające listę zawiera przycisk Detach umożliwiający usunięcie wybranych powiązań. Dwukrotne kliknięcie wybranej pozycji listy otwiera okno dialogowe z ustawieniami parametrów danego powiązania.

760

Część VI  Modelowanie zaawansowane

Rysunek 25.21. Korzystając z odpowiedniego tła, można lepiej ocenić prawidłowość połączeń między węzłami

Rysunek 25.22. Okno dialogowe z listą powiązań

Kliknięcie nagłówka którejkolwiek kolumny powoduje sortowanie zawartości okna zgodnie z zawartością tej kolumny.

Kolejne dwa polecenia menu List View, czyli All Instances i Selected Instances, wyświetlają listę klonów wszystkich lub tylko zaznaczonych elementów schematu. Mogą to być klony obiektów geometrycznych, modyfikatorów, kontrolerów itd. W przypadku tych poleceń przycisk Detach zostaje zastąpiony przyciskiem Make Unique umożliwiającym zmianę wybranych klonów w kopie. Innym sposobem zidentyfikowania klonów jest zwrócenie uwagi na czcionkę, jaką podpisane są poszczególne elementy schematu. Do wyświetlania nazw klonów używana jest czcionka pogrubiona.

Polecenie Show Occurrences wyświetla listę tych elementów schematu, które mają te same właściwości lub te same typy powiązań, co węzeł aktualnie zaznaczony. Ostatnie polecenie, All Animated Controllers, wyświetla listę wszystkich kontrolerów animacji.

Rozdział 25.  Budowanie złożonych scen przy użyciu kontenerów

761

Podsumowanie Stosowanie odnośników umożliwia równoległą pracę kilku użytkowników nad tym samym projektem. Wykonanie niektórych zadań w oknach widokowych, np. łączenie hierarchiczne obiektów, może być bardzo trudne. Okno Schematic View prezentuje wszystkie dane w postaci prostokątnych węzłów i łączących je linii. Takie schematyczne przedstawienie sceny znacznie ułatwia wykonywanie wielu czynności. Niniejszy rozdział obejmował następujące zagadnienia: 

używanie odnośników do zewnętrznych scen i obiektów, aby pracować nad tym samym projektem równocześnie z innymi członkami zespołu i nie przeszkadzać sobie wzajemnie,



konfigurowanie ścieżek dla odnośników zewnętrznych w celu ułatwienia Maksowi odnajdywania właściwych plików,



wyświetlanie obiektów w postaci węzłów w oknie Schematic View,



posługiwanie się elementami interfejsu okna Schematic View,



korzystanie z okna Schematic View w celu zaznaczania, usuwania i kopiowania obiektów, materiałów i modyfikatorów,



przypisywanie kontrolerów i sprzęganie parametrów w oknie Schematic View,



ustawianie preferencji dla okna Schematic View,



wyświetlanie list elementów schematu mających wspólne właściwości.

W następnym rozdziale zapoznasz się z narzędziami do deformowania siatek. Dowiesz się, jak działają modyfikatory siatkowe i pędzel do malowania deformacji.

762

Część VI  Modelowanie zaawansowane

Rozdział 26.

Stosowanie modyfikatorów siatkowych i deformowanie powierzchni W tym rozdziale: 

Korzystanie z pędzla Paint Deformation



Edycja obiektów parametrycznych przy użyciu modyfikatorów Edit Mesh i Edit Poly



Zmiana geometrii siatki za pomocą modyfikatorów



Edycja wektorów normalnych siatki



Stosowanie modyfikatorów zagęszczania siatki (Subdivision Surfaces)

Po zaznaczeniu obiektu Editable Poly w rolecie Paint Deformation udostępnione zostają trzy specyficzne pędzle deformujące. Gdy korzystasz z tych narzędzi, możesz odkształcać powierzchnię obiektu, przeciągając po niej pędzlem. Podczas edycji obiektów Editable Mesh oraz Editable Poly możesz korzystać, oprócz typowych funkcji edycyjnych i pędzli typu Paint Deformation, z modyfikatorów specyficznych dla obiektów siatkowych, zawartych w menu Modifiers. Modyfikatory te znaleźć można w podmenu Mesh Editing i wykorzystać jako rozszerzenie funkcji edycyjnych. Osobną grupę modyfikatorów, stosowanych do edycji obiektów siatkowych, stanowią modyfikatory zagęszczania siatki (Subdivision Surface). Również one zostaną omówione w tym rozdziale.

764

Część VI  Modelowanie zaawansowane

Podstawy malowania deformacji Pierwszą rzeczą dotyczącą funkcji malowania deformacji (Deformation Painting), jaką powinieneś zapamiętać, jest to, że można z niej korzystać wyłącznie podczas edycji obiektów Editable Poly (lub takich, na które nałożony został modyfikator Edit Poly). Gdy zaznaczony jest obiekt tego typu, na samym dole panelu Modify pojawia się roleta Paint Deformation.

Malowanie deformacji Na samej górze rolety Paint Deformations znajdują się trzy przyciski, które umożliwiają wybór typu pędzla deformacji. Odpowiadają one pędzlom Push/Pull (pchnij/pociągnij), Relax (rozluźnij) oraz Revert (przywróć). Po wybraniu któregoś z przycisków wskaźnik myszy zamienia się w okrągły pędzel, pokazany na rysunku 26.1. Przesuwa się on po powierzchni obiektu zgodnie z ruchami myszy. Pojedyncza linia wyprowadzona ze środka pędzla wskazuje kierunek wektora normalnego danej powierzchni. Przeciągnięcie myszą wpływa na powierzchnię w określony sposób, wynikający z wyboru pędzla.

Rysunek 26.1. Pędzel Paint Deformation ma postać kółka przesuwającego się po powierzchni obiektu

Pędzel Paint Deformation deformuje powierzchnię obiektu poprzez przesuwanie wierzchołków w obszarze malowania. Kierunek, w którym wierzchołki są przesuwane, jest domyślnie

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

765

zgodny ze zwrotem wektorów normalnych. Możliwe jest jednak, by deformacja następowała wzdłuż odkształconych wektorów lub wskazanej osi odkształcenia. Jeśli np. jako oś deformacji wybierzesz X, wówczas te wierzchołki, które znajdą się w obszarze działania pędzla, zostaną przesunięte w osi X. Deformacji uzyskanych przy użyciu pędzla Paint Deformation nie można animować. W przypadku obiektów, na które nałożony został modyfikator Edit Poly, włączenie trybu Animate powoduje wyłączenie pędzli.

Wartość Push/Pull określa odległość przesunięcia wierzchołków, a tym samym głębokość deformacji. Parametr Brush Size definiuje wielkość (czyli promień) pędzla, co ma bezpośredni wpływ na wielkość deformowanego obszaru. Z kolei wartość Brush Strength determinuje współczynnik przesunięcia wierzchołków. Jeżeli np. parametr Push/Pull ustawiony jest na 100 mm, to ustawienie Brush Strength na 1.0 skutkuje przemieszczeniem wierzchołków o 100 mm. Jeśli natomiast wartość Brush Strength wynosi 0.4, wtedy wierzchołki przesuwają się jedynie o 40 mm. Wciśnięcie klawiszy Shift i Alt podczas malowania w oknie widokowym pozwala na interaktywną zmianę wartości Brush Strength.

Dostęp do ustawień pędzli Jeśli klikniesz prawym przyciskiem myszy główny pasek narzędziowy, ale z dala od któregokolwiek z przycisków, wówczas z poziomu menu podręcznego uzyskasz dostęp do paska predefiniowanych ustawień pędzli (Brush Presets), przedstawionego na rysunku 26.2. Rysunek 26.2. Pasek narzędziowy Brush Presets pozwala na szybkie wybieranie predefiniowanych pędzli

Pierwszy z przycisków na tym pasku otwiera okno dialogowe menedżera ustawień pędzli (Brush Preset Manager), ukazane na rysunku 26.3. W oknie tym możesz tworzyć pędzle dla wykorzystujących je funkcji — malowania wierzchołków (Vertex Paint), deformacji (Paint Deformation), miękkiego zaznaczania (Paint Soft Selection) czy nierówności skóry (Paint Skin Weights). Przycisk Add działa tak samo jak przycisk Add New Preset na pasku narzędziowym. Otwiera okno dialogowe, w którym możesz nadać pędzlowi nazwę. Nowe ustawienie zostanie dołączone do listy. Przyciski paska Brush Presets stają się aktywne dopiero po wybraniu jednej z funkcji wykorzystujących pędzle.

Po wybraniu pędzla na pasku narzędziowym można zmieniać jego atrybuty, korzystając z okna dialogowego Painter Options otwieranego przyciskiem Brush Options w rolecie

766

Część VI  Modelowanie zaawansowane

Rysunek 26.3. Okno dialogowe Brush Preset Manager umożliwia tworzenie nowych predefiniowanych pędzli

odpowiedniej funkcji. Roleta funkcji Paint Deformation też ma taki przycisk. Wszelkie zmiany właściwości pędzla są automatycznie uwzględniane przez menedżer pędzli. Przyciski Load i Save w oknie dialogowym Brush Preset Manager dają możliwość wczytywania i zapisywania zestawów predefiniowanych pędzli. Do opcji określających właściwości pędzla wrócimy jeszcze w dalszej części rozdziału.

Korzystanie z pędzli deformujących Pędzel Push/Pull można zastosować do przesuwania wierzchołków powierzchni obiektu w kierunku od środka lub do wewnątrz. Kierunek ten zależy od znaku wartości Push/Pull. Wartości dodatnie powodują wypychanie wierzchołków na zewnątrz, a ujemne — wpychanie ich do środka. Wciśnięcie klawisza Alt podczas malowania pędzlem Push/Pull odwraca kierunek przesuwania wierzchołków, zamieniając pędzel Push na Pull i vice versa.

Sterowanie kierunkiem deformacji Domyślnie (włączona opcja Original Normals) przeciąganie pędzlem Push/Pull nad wierzchołkami powoduje ich przemieszczanie w kierunku równoległym do normalnych. Jeśli wielokrotnie przeciągniesz pędzlem nad tym samym miejscem, wierzchołki będą wciąż przesuwane, zgodnie z pierwotnym kierunkiem normalnych. Opcja Deformed Normals sprawia, że przemieszczenie wierzchołków następuje wzdłuż zdeformowanych normalnych. Użycie opcji Original Normals powoduje, że deformowany obszar wznosi się jak wzgórze o stopniowo rosnącej wysokości, a po włączeniu opcji Deformed Normals na deformowanej powierzchni powstaje coś na kształt bąbla. Opcje Transform Axis pozwalają wybrać oś, wzdłuż której wierzchołki mają być przesuwane. Są użyteczne, gdy trzeba pochylić bądź przesunąć zdeformowany obszar.

Ograniczanie deformacji Jeśli istnieje zaznaczenie na poziomie podobiektów, obszar przesuwania wierzchołków ograniczony jest wyłącznie do powierzchni zaznaczonych składników siatki. Jest to więc funkcja, która pozwala upewnić się, że deformacji ulegnie ściśle wyznaczony fragment powierzchni.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

767

Zatwierdzanie zmian Po dokonaniu deformacji uaktywniają się przyciski Commit oraz Cancel. Kliknięcie przycisku Commit powoduje zatwierdzenie zmian, co oznacza brak możliwości przywrócenia wierzchołkom ich pierwotnego położenia przy użyciu pędzla Revert. Przycisk Cancel pozwala cofnąć ostatnio wprowadzone deformacje.

Użycie pędzli Relax i Revert Użycie pędzla Relax daje subtelniejsze rezultaty. Jego działanie polega na rozsuwaniu wierzchołków, które leżą zbyt blisko siebie, co w efekcie przynosi wygładzenie ostrych punktów. Pędzel działa dokładnie w ten sam sposób, co funkcja Relax dla obiektów Editable Poly oraz modyfikator Relax. Pędzel Revert służy do przywracania pierwotnego położenia przesuniętych wierzchołków. Jeśli np. wepchnąłeś i wypchnąłeś kilka z nich, to za pomocą pędzla Revert możesz cofnąć wprowadzone zmiany w wybranym obszarze. Wciśnięcie klawisza Ctrl podczas malowania deformacji pędzlem Push/Pull powoduje tymczasowe przełączenie go w tryb Revert.

Ćwiczenie: Tworzenie żył na przedramieniu Funkcja Paint Deformation jest bardzo przydatna podczas modelowania szczegółów powierzchni obiektów, takich jak nabrzmienie żył przedramienia. Aby wymodelować żyły na przedramieniu, wykonaj następujące czynności. 1. Otwórz plik Forearm with veins.max, który znajduje się w folderze Chap 26 na płycie dołączonej do książki. Wielokąty, z których składa się model przedramienia, zostały wyselekcjonowane i poddane mozaikowaniu, co zwiększyło ich rozdzielczość. 2. Po zaznaczeniu obiektu przedramienia otwórz panel Modify i kliknij przycisk Relax w rolecie Paint Deformation. Parametr Brush Size ustaw na 1.0, po czym przeciągnij myszą nad całym przedramieniem. W ten sposób wygładzisz pionowe linie biegnące wzdłuż przedramienia. 3. Kliknij przycisk Push/Pull i ustaw wartości Push/Pull Value na 0.15, Brush Size na 0.08, a Brush Strength na 0.5. Następnie narysuj kilka żył odchodzących od łokcia w kierunku dłoni. 4. Zmniejsz wartość Brush Strength na 0.25 i poprowadź żyły dalej w tym samym kierunku. Jeszcze raz zmniejsz Brush Strength, tym razem na 0.1, i dokończ modelowanie żył. 5. Nie wyłączając pędzla Push/Pull, wciśnij klawisz Alt i przeciągnij myszą w okolicach nadgarstka, wpychając nieco do środka powierzchnię w okolicach ścięgien dłoni. Na rysunku 26.4 przedstawiono gotowy model.

768

Część VI  Modelowanie zaawansowane

Rysunek 26.4. Pędzle Paint Deformations są użyteczne do malowania wybrzuszeń i wgłębień powierzchni

Ustawienia opcji pędzla Na dole rolety Paint Deformation znajduje się przycisk Brush Options (opcje pędzla). Kliknięcie go otwiera okno dialogowe Painter Options, przedstawione na rysunku 26.5. Za jego pomocą możesz konfigurować szereg opcji pędzla, w tym jego czułość. Rysunek 26.5. Okno dialogowe Painter Options zawiera wykres, który pomaga definiować minimalną i maksymalną siłę działania pędzli, a także ich wymiary

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

769

Okno Painter Options jest wykorzystywane przez pędzle do modyfikowania kolorów wierzchołków podczas stosowania modyfikatora Vertex Paint, a także do określania wag wierzchołków, gdy stosowany jest modyfikator Skin. O modyfikatorze Vertex Paint będzie mowa w rozdziale 34., „Tworzenie wypiekanych tekstur i map normalnych”, a o modyfikatorze Skin — w rozdziale 40., „Nakładanie skóry”.

Parametry Min/Max Strength i Min/Max Size określają minimalne i maksymalne wartości siły i rozmiaru gizma malowania. Możesz tu zdefiniować charakterystykę zanikania siły pędzla, odpowiednio modyfikując krzywą. Dzięki temu można uniknąć nagłego zanikania modelowanych nierówności (szczególnie zabawnie wyglądają mięśnie, gdy zanikanie nie jest płynne). Poniżej wykresu znajduje się kilka przycisków pozwalających na szybki wybór charakterystyki krzywej zaniku: liniowa (Linear), gładka (Smooth), powolna (Slow), szybka (Fast) lub płaska (Flat). Sekcja Display Options zawiera opcje definiujące wygląd gizma malowania. Dostępne są tu opcje Draw Ring (rysuj pierścień), Draw Normal (rysuj normalną) oraz Draw Trace (rysuj ślad); pierwsza rysuje pierścień, a pozostałe dwie pozwalają wyświetlać normalną powierzchni deformowanej i ścieżkę ruchu pędzla. Normalna może być skalowana, co umożliwia kontrolka Normal Scale, a po włączeniu opcji Marker na końcu wektora pojawia się mały, okrągły znacznik1. Opcje dostępne w sekcji Pressure Options (opcje nacisku) pozwalają na użycie tabletu graficznego. Do włączania czułości na nacisk służy opcja Enable Pressure Sensitivity. Siła nacisku rysika decyduje wówczas o intensywności działania pędzla, jego rozmiarze lub obu tych parametrach — odpowiedniego wyboru dokonujemy na liście rozwijanej Pressure Affects. Dostępnymi na niej opcjami są: None (nic), Strength (intensywność), Size (rozmiar) oraz Size/Str. Posługując się wykresem, możesz definiować charakterystyki oddziaływania siły nacisku na parametry Strength i Size, a następnie wybierać je za pomocą przycisków Predefined Str Pressure lub Predefined Size Pressure. Opcja Mirror (lustro) sprawia, że malowanie odbywa się także po przeciwnej stronie gizma, względem wskazanej osi. Możesz też określić odstęp (Offset) i wielkość gizma (Gizmo Size). Opcje te są szczególnie użyteczne podczas symetrycznego deformowania mięśni. W sekcji Misc (różne) znajdziesz kontrolki Tree Depth, Update on Mouse Up oraz Lag Rate, które decydują o częstotliwości uaktualniania sceny i malowanych elementów.

Edycja obiektów parametrycznych za pomocą modyfikatorów Wśród modyfikatorów z grupy Mesh Editing znajdują się dwa unikalne, które można stosować do edycji obiektów podstawowych, zachowując przy tym ich parametryczną naturę.

1

W polu edycyjnym widocznym na prawo od opcji Marker można określić położenie znacznika na wektorze normalnym. Przy wartości 1 wskaźnik znajduje się na końcu wektora — przyp. tłum.

770

Część VI  Modelowanie zaawansowane Użycie modyfikatorów Edit Mesh i Edit Poly powoduje zwiększenie objętości pliku oraz obciążenia pamięci wykorzystywanej podczas edycji obiektu. Obciążenie to można zredukować, scalając stos modyfikatorów.

Modyfikator Edit Mesh Każdy obiekt siatkowy jest z założenia obiektem typu Editable Mesh (edytowalna siatka). Modyfikator Edit Mesh pozwala na modyfikowanie obiektów przy użyciu funkcji służących do pracy z edytowalnymi siatkami, z jednoczesnym zachowaniem podstawowych parametrów konstrukcyjnych obiektu. Konwersja obiektu do postaci Editable Mesh powoduje eliminację jego parametrycznej natury. Jednakże modyfikator Edit Mesh pozwala na korzystanie ze wszystkich funkcji typowych dla obiektu Editable Mesh, bez wpływu na typ i parametryczną naturę obiektów. Jeśli np. utworzysz kulę i zastosujesz modyfikator Edit Mesh, po czym wytłoczysz kilka z jej ścianek, to wciąż będziesz mógł zmieniać promień kuli, zaznaczając obiekt Sphere na stosie modyfikatorów i modyfikując wartość parametru Radius w rolecie Parameters. Jeśli po zastosowaniu modyfikatora wybierzesz w stosie modyfikacji obiekt bazowy Sphere, pojawi się okno dialogowe ostrzegające o zależnościach topologicznych. Nie zakazuje ono wprowadzania zmian w parametrach obiektu, ale ostrzega, że takie zmiany w połączeniu z efektami działania modyfikatora mogą przynieść nieoczekiwane rezultaty. Przycisk Hold/Yes (zachowaj/tak) umożliwia zapisanie sceny w specjalnym buforze, na wypadek gdyby rezultaty te okazały się niemożliwe do zaakceptowania. Wadą modyfikatora Edit Mesh jest to, że uniemożliwia animowanie podobiektów.

Modyfikator Edit Poly Modyfikator Edit Poly pozwala edytować obiekty parametryczne przy zastosowaniu narzędzi dostępnych dla siatek typu Editable Poly. Ogromną zaletą modyfikatorów siatkowych jest możliwość usuwania ich, gdy wprowadzone zmiany dają niezadowalające rezultaty. Modyfikator Edit Poly może pracować w jednym z dwóch trybów — Model lub Animate. Tryby te wybiera się w rolecie Edit Poly Mode, pokazanej na rysunku 26.6. Rysunek 26.6. Roleta Edit Poly Mode pozwala przełączać modyfikator między trybami modelowania i animowania

Tryb Model daje dostęp do tych samych funkcji, które dostępne są podczas edycji obiektów Editable Poly. Z kolei w trybie Animate możesz animować zmiany podobiektów, stosując narzędzia używane do edycji obiektu. Aby animować owe zmiany podobiektów, należy ustawić klucze animacji za pomocą przycisku Auto Key lub Set Key.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

771

Przycisk Commit pozwala zamrozić wprowadzone zmiany i ustanowić dla nich klatkę kluczową. Zmiana bieżąca wyświetlana jest bezpośrednio nad przyciskiem Commit. Przycisk Settings służy do otwierania i zamykania okna dialogowego z ustawieniami zastosowanego narzędzia edycyjnego. Przycisk Cancel służy do cofania ostatniej modyfikacji, zaś po włączeniu opcji Show Cage (pokaż siatkę) wokół obiektu wyświetlana jest siatka w kolorze pomarańczowym. Siatka ta jest użyteczna podczas korzystania z modyfikatora MeshSmooth, gdyż pozwala obserwować oryginalny kształt obiektu sprzed wygładzenia. Różnice między funkcjami dostępnymi dla modyfikatora Edit Poly i obiektu Editable Poly są niewielkie. W rolecie Selection znajduje się przycisk Get Stack Selection (pobierz zaznaczenie ze stosu). Kliknięcie go powoduje pobranie zaznaczenia podobiektów z pozycji wcześniejszej na stosie modyfikatorów. Ponadto modyfikator Edit Poly nie jest wyposażony w roletę Subdivision Surfaces, ale zastosowanie modyfikatora MeshSmooth pozwala na wykorzystanie funkcji, jakie ona daje.

Modyfikatory do edycji geometrii Większość modyfikatorów z podmenu Mesh Editing służy do zmiany geometrii obiektów. Niektóre z nich, takie jak Extrude czy Tessellate, realizują te same operacje, co przyciski dostępne w trakcie edycji obiektów Editable Mesh i Editable Poly. Zastosowanie ich jako modyfikatorów uniezależnia daną operację edycyjną od obiektu bazowego. Ogólne omówienie modyfikatorów znajdziesz w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Modyfikator Cap Holes Modyfikator Cap Holes (zakrywanie dziur) wypełnia wszelkie otwory odnalezione w geometrii obiektu. Czasami, gdy obiekty są importowane, zdarza się, że tracą niektóre ścianki. Modyfikator ten potrafi odnaleźć i wyeliminować dziury, tworząc powierzchnię rozpiętą na otwartych krawędziach. Jeśli np. wytłaczasz krzywą typu Spline bez włączonej opcji Caps, wówczas wytłoczony splajn będzie miał otwory na obu końcach. Modyfikator Cap Holes wykryje je i utworzy ścianki. Parametry modyfikatora Cap Holes to Smooth New Faces (wygładzaj nowe ścianki), Smooth with Old Faces (wygładzaj zgodnie ze starymi ściankami) oraz Triangulate Cap (dziel nowe ścianki na trójkąty). Parametr Smooth with Old Faces nakłada na nowe ścianki taką samą grupę wygładzania, jaka stosowana jest na ściankach granicznych.

Modyfikator Delete Mesh Za pomocą modyfikatora Delete Mesh (usuwanie siatki) możesz usuwać podobiekty siatki. Podobiektami, które możesz usunąć przy użyciu Delete Mesh, są wierzchołki, krawędzie, ścianki i obiekty. Dużą zaletą omawianego modyfikatora jest to, że usunięcie go ze stosu modyfikatorów pozwala na przywrócenie usuniętych podobiektów.

772

Część VI  Modelowanie zaawansowane

Modyfikator Delete Mesh usuwa bieżące zaznaczenie, zdefiniowane za pomocą modyfikatora Mesh Select (lub Poly Select). Można go użyć do usuwania zaznaczonych wierzchołków, krawędzi, ścianek i wielokątów, a nawet całej siatki, jeśli żadne jej podobiekty nie są zaznaczone. Modyfikator Delete Mesh nie ma żadnych parametrów. Nawet wtedy, gdy za pomocą modyfikatora Delete Mesh usunięta zostanie cała siatka, obiekt i tak pozostanie w scenie. Aby usunąć go całkowicie, należy użyć klawisza Delete.

Modyfikator Extrude Za pomocą modyfikatora Extrude (wytłaczanie) można edytować wyłącznie krzywe typu Spline lub kształty, ale wynikiem wytłaczania mogą być łaty, siatki bądź obiekty NURBS. Działanie tego modyfikatora polega na tym, że tworzy on kopię splajnu, przesuwa ją na określoną odległość, po czym, łącząc obie krzywe, formuje kształt trójwymiarowy. Wśród parametrów tego modyfikatora jest wartość Amount (ilość), definiująca dystans wytłaczania, oraz liczba segmentów (Segments) wzdłuż tego dystansu. Opcje Capping pozwalają wybrać kształt zakończenia początkowego (Start Cap) i (lub) końcowego (End Cap) oraz jego strukturę (Morph lub Grid). Włączenie opcji Morph powoduje podział zakończeń na długie, wąskie wielokąty, które mogą być wykorzystane jako formy pośrednie w morfingu. Z kolei po wybraniu opcji Grid zakończenie przekształcane jest w gęstą siatkę wielokątów, odpowiednią dla operacji deformowania. Wytłoczona bryła może mieć formę łaty (Patch), siatki (Mesh) lub powierzchni NURBS. Ponadto możliwe jest automatyczne generowanie współrzędnych mapowania oraz identyfikatorów materiałów. Opcja Smooth pozwala na wygładzenie wytłoczenia. W rozdziale 12., „Rysowanie i edycja dwuwymiarowych splajnów i kształtów”, znajdziesz przykład zastosowania modyfikatora Extrude.

Modyfikator Face Extrude Modyfikator Face Extrude wytłacza wyselekcjonowane ścianki, wypychając je zgodnie ze zwrotem normalnych. Parametrami tego modyfikatora są wysokość wytłoczenia (Amount) i skala (Scale) oraz opcja wytłaczania od środka (Extrude From Center). Na rysunku 26.7 ukazano obiekt siatkowy z kilkoma wytłoczonymi ściankami. Do zaznaczenia ścianek użyty został modyfikator Mesh Select, zaś wartość Amount wytłoczenia ustawiono na 30.

Ćwiczenie: Wytłaczanie pocisku Wykonasz teraz proste ćwiczenie, w którym wykorzystasz dwa modyfikatory siatkowe, tworząc model pocisku na bazie półkuli. Ten prosty obiekt można zbudować też innymi metodami, ale opisana tutaj stanowi dobry przykład praktyczny. Aby utworzyć model pocisku przy użyciu modyfikatora Face Extrude, wykonaj następujące czynności. 1. Wybierz Create/Standard Primitives/Sphere i przeciągnij myszą oknie widokowym Top, tworząc obiekt kuli. Wartość Radius ustaw na 60, a Hemisphere na 0.5. W ten sposób powstanie półkula.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

773

Rysunek 26.7. Wytłoczone ścianki zostały przesunięte zgodnie ze zwrotem wektorów normalnych

2. Kliknij obiekt kuli prawym przyciskiem myszy i wybierz polecenie Convert To/ Editable Poly z podręcznego menu, aby skonwertować półkulę w obiekt typu Editable Poly. 3. Uaktywnij okno widokowe Top, kliknij etykietę widoku i z podręcznego menu wybierz Bottom (lub wciśnij klawisz B), by włączyć widok od dołu (Bottom). 4. Kliknij przycisk Vertex w rolecie Selection, aby włączyć tryb edycji wierzchołków i włącz opcję ignorowania tylnych ścianek (Ignore Backfacing). Następnie zaznacz pojedynczy wierzchołek pośrodku półkuli i wciśnij klawisz Delete. 5. Kliknij przycisk Border, który również znajduje się w rolecie Selection. W ten sposób włączysz tryb edycji krawędzi brzegowych. Kliknij krawędź półkuli, aby zaznaczyć brzeg otworu, który powstał w wyniku usunięcia wierzchołka środkowego. Następnie kliknij przycisk Cap, który znajdziesz w rolecie Edit Borders. 6. Kliknięciem przycisku Polygon w rolecie Selection, włącz tryb edycji wielokątów, po czym zaznacz dolną ściankę obiektu. Wybierz polecenie Modifiers/Mesh Editing/Face Extrude, by zastosować modyfikator Face Extrude na zaznaczonej ściance. Wartość Amount ustaw na 200. 7. Wybierz polecenie Create/Standard Primitives/Cylinder i przeciągając myszą w oknie widokowym Bottom, utwórz niski walec, nieco szerszy od wytłoczonej półkuli. Przesuń nowy obiekt Cylinder w taki sposób, by umieścić go na końcu pocisku. Na rysunku 26.8 przedstawiono ukończony, prosty model pocisku.

774

Część VI  Modelowanie zaawansowane

Rysunek 26.8. Prosty model pocisku można utworzyć przez wytłaczanie jednej ścianki półkuli

Modyfikator ProOptimizer Chociaż współczesne konsole do gier radzą sobie coraz lepiej z wyświetlaniem obiektów o dużej liczbie ścianek, czasami konieczne jest zredukowanie rozdzielczości jakiegoś modelu. Przykładowo, jeśli w scenie znajduje się pomnik, który ma być tylko elementem tła, warto zmniejszyć liczbę jego ścianek, aby zbytnio nie obciążać zasobów pamięciowych komputera. Za pomocą specjalnego modyfikatora optymalizującego (ProOptimizer) można to zrobić bez większego uszczerbku dla ogólnego kształtu obiektu. Modyfikator ProOptimizer został usprawniony w 3ds Max 2012. Jest teraz szybszy i nie wykazuje tak silnej tendencji do odwracania ścianek.

Gdy po raz pierwszy zastosujesz ten modyfikator, nic się nie wydarzy. Aby w modyfikowanym obiekcie zaszły jakieś zmiany, musisz dokonać odpowiednich zmian w ustawieniach modyfikatora, a następnie kliknąć przycisk Calculate (przelicz). W rolecie Optimization Options możesz ustalić, jakie wierzchołki mają być usuwane. Możesz na przykład wybrać zniekształcanie brzegów (Crunch Borders), ich ochronę (Protect Borders) lub całkowite wykluczenie z procesu optymalizacji (Exclude Borders). Brzegiem jest każda krawędź należąca do jednej tylko ścianki. Przy włączonej opcji Crunch Borders krawędzie brzegowe nie są w żaden sposób faworyzowane przez modyfikator, co oczywiście zwiększa efektywność jego działania, ale może prowadzić do widocznych zmian na brzegach obiektu. Opcja Protect Borders do pewnego stopnia ogranicza optymalizację na brzegach, ale najpełniej czyni to opcja Exclude Borders, która nie dopuszcza do usuwania jakichkolwiek podobiektów brzegowych — oczywiście optymalizacja jest w tym przypadku najmniej efektywna.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

775

Inne ustawienia umożliwiają zmuszanie modyfikatora do zachowania granic materiałów (opcja Keep Material Boundaries), tekstur (Keep Textures) i (lub) granic UV (Keep UV Boundaries). Można także zabezpieczyć kolory wierzchołków (Vertex Colors) i normalne (Normals). W sekcji Merge Tools (narzędzia łączenia) można włączyć scalanie wierzchołków i (lub) ścianek przed zasadniczą optymalizacją. Warunki takiego scalania określą wartości progowe (Threshold). Dzięki temu można uniknąć potencjalnych problemów spowodowanych istnieniem współpłaszczyznowych ścianek lub nadmiarowych wierzchołków. Możliwe jest także optymalizowanie tylko określonych fragmentów obiektu — należy tylko zaznaczyć odpowiednie wierzchołki i w sekcji Sub-Object Selection włączyć opcję Preserve Vertices (zachowaj wierzchołki). Opcje symetrii (Symmetry Options) zmuszają modyfikator do redukowania wielokątów jednakowo po obu stronach wskazanej osi w celu zachowania wizualnej symetrii. O dokładności tej symetrii decyduje parametr Tolerance. W rolecie Advanced Options (opcje zaawansowane) opcja Favor Compact Faces (faworyzuj ścianki kompaktowe) powstrzymuje usunięcie ścianki, jeśli to miałoby prowadzić do powstania ścianek o bardzo nieregularnych kształtach. Pozostałe dwie opcje Prevent Flip Normals (zapobiegaj odwracaniu normalnych) i Lock Vertex Position (blokuj położenie wierzchołka) wymuszają pozostawanie wierzchołków (tych, które nie są usuwane) w ich pierwotnych położeniach. Po ustawieniu wszystkich opcji kliknij przycisk Calculate, aby uruchomić proces upraszczania siatki obiektu. W polu Statistics (poniżej przycisku Calculate) wyświetlona zostanie liczba punktów (Points) i ścianek (Faces) przed optymalizacją i po optymalizacji (Before/ After). Przez zmniejszanie wartości parametru Vertex % możesz w sposób interaktywny redukować liczbę ścianek modelu. Na rysunku 26.9 przedstawiono model aligatora, przed optymalizacją i po niej. Zwróć uwagę na znaczną redukcję ścianek modelu po prawej, w stosunku do modelu z lewej. Model ten stworzony został przez Viewpoint Datalabs, znanego producenta modeli 3D o wysokiej rozdzielczości siatek. W panelu Modify możesz odczytać informację, że liczba ścianek zmalała z 34 404 do 6937. (Sądzę, że ta kuracja odchudzająca poprawiła kondycję aligatora po prawej). W poprzednich wersjach Maksa do optymalizowania siatek służyły modyfikatory Optimize i MultiRes. Są one nadal dostępne, ale tylko ze względu na konieczność obsługi starszych plików.

Jeśli chcesz zoptymalizować modele w wielu plikach, możesz użyć funkcji modyfikatora ProOptimizer w trybie wsadowym. Narzędzie o nazwie Batch ProOptimizer jest dostępne w panelu Utilty. W jego oknie dialogowym możesz wskazać pliki źródłowe, ustalić parametry procesu optymalizującego i określić nazwy oraz lokalizację plików wynikowych. Po dokonaniu niezbędnych ustawień po prostu kliknij przycisk OK, a wszystkie modele we wskazanych plikach zostaną zoptymalizowane.

Ćwiczenie: Upraszczanie modelu dłoni Modyfikatora ProOptimizer można używać do szybkiego i precyzyjnego obniżania rozdzielczości obiektów w czasie rzeczywistym. W tym przykładzie użyjemy modyfikatora ProOptimizer do przetworzenia wysokorozdzielczego modelu dłoni, przygotowanego

776

Część VI  Modelowanie zaawansowane

Rysunek 26.9. Stopień złożoności modelu aligatora można zredukować za pomocą modyfikatora ProOptimizer

przez Viewport Datalabs. Dłoń składa się z 2906 wieloboków, co dla większości rendererów stosowanych w grach stanowi wartość zbyt wysoką. Aby uprościć model dłoni, wykonaj następujące operacje. 1. Otwórz plik ProOptimizer hand.max, który znajdziesz w folderze Chap 26 na płycie dołączonej do książki. Plik ten zawiera model dłoni. 2. Po zaznaczeniu dłoni wybierz z listy modyfikatorów ProOptimizer. 3. W rolecie Optimization Options włącz opcje Protect Borders, Merge Vertices z wartością Threshold równą 0.05 i Merge Faces z parametrem Threshold Angle równym 0.5. Następnie kliknij przycisk Calculate. 4. Utwórz kopię dłoni, wciskając klawisz Shift i przeciągając model w prawo. W oknie dialogowym Clone Options, które się pojawi, zaznacz Copy, nadaj kopii nazwę Hand - Lo (ręka uproszczona) i kliknij OK. 5. Po zaznaczeniu skopiowanej dłoni ustaw wartość Vertex % na 10. Zwróć uwagę, że liczba ścianek zmalała z 2906 do 286. Na rysunku 26.10 przedstawiono rezultaty działania modyfikatora ProOptimizer. Jeśli przyjrzysz się uważniej, zauważysz, że dłoń nie jest już tak gładka, ale wciąż wygląda wystarczająco dobrze, a renderer gry będzie miał ułatwione zadanie.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

777

Rysunek 26.10. Za pomocą modyfikatora ProOptimizer możesz dynamicznie zmniejszyć złożoność siatki W przypadku obiektów animowanych, np. postaci ludzkich, nie należy obniżać gęstości ich siatek „w locie”, bo zwykle prowadzi to do niepożądanych artefaktów i nieprawidłowych deformacji. Modyfikator ProOptimizer można za to z powodzeniem stosować w odniesieniu do pozostających w tle obiektów statycznych.

Modyfikator Quadify Mesh Jeśli przyjrzysz się kształtom poszczególnych wielokątów w większości modeli, to stwierdzisz, że są to trójkąty lub czworokąty. Czworokąty (quads) na ogół ułatwiają pracę, ponieważ w naturalny sposób układają się w rzędy i kolumny. Pod tym względem trójkąty wypadają znacznie gorzej. Przekształcenie czworokątów w trójkąty (triangulation) jest stosunkowo proste i sprowadza się do podziału czworokątów na dwie części. Proces odwrotny nie jest już taki trywialny i wymaga dość skomplikowanych obliczeń. Na szczęście twórcy Maksa opanowali to zagadnienie i oddali nam do dyspozycji modyfikator Quadify Mesh. Jedynym parametrem tego modyfikatora jest Quad Size % (procentowy rozmiar czworokąta). Przy wyższych wartościach otrzymujemy większe czworokąty, ale jest ich mniej. Niższe wartości tego parametru prowadzą do zwiększenia liczby czworokątów. Na rysunku 26.11 pokazana jest siatka prostej półki po kwadryfikacji. Modyfikator Quadify Mesh najlepiej sprawdza się w przypadku siatek wytłaczanych.

778

Część VI  Modelowanie zaawansowane

Rysunek 26.11. Modyfikator Quadify Mesh przekształca ścianki modelu w czworokąty

Modyfikator Smooth Modyfikatora Smooth możesz użyć do automatycznego wygładzania obiektu. Parametry wygładzania obejmują opcje Auto Smooth i Prevent Indirect Smoothing (powstrzymaj wygładzanie pośrednie), którym towarzyszy wartość Threshold (próg). Roleta Parameters zawiera także zestaw 32 przycisków grup wygładzania (Smoothing Groups), oznaczonych numerami od 1 do 32. Te same grupy wygładzania dostępne są jako opcje podobiektów Polygon i Element.

Modyfikator Symmetry Modyfikator Symmetry pozwala na tworzenie jednoosiowych, lustrzanych odbić siatek obiektów. Daje też możliwość wyboru opcji przecięcia wzdłuż płaszczyzny odbicia (Slice Along Mirror) i spawania wzdłuż szwu (Weld Seam), zgodnie z ustawieniem parametru Threshold. Gizmo dla tego modyfikatora to płaszczyzna, która ustawia się tak, aby jej normalna pokrywała się z wybraną osią.

Ćwiczenie: Tworzenie symetrycznego poroża Korzystając z symetrii, możesz utworzyć jedną połowę modelu, a następnie, za pomocą odbicia lustrzanego, dodać jego drugą połówkę. Jeżeli dokonywane zmiany chcesz obserwować na bieżąco, użyj modyfikatora Symmetry. W poniższym przykładzie utworzymy w ten sposób model poroża łosia.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

779

Aby utworzyć symetryczną parę rogów, wykonaj następujące czynności. 1. Otwórz plik Elk with short antlers.max, który znajdziesz na płycie dołączonej do książki, w folderze Chap 26. Plik ten zawiera model łosia z usuniętymi rogami, utworzony przez Viewpoint Datalabs. 2. Po zaznaczeniu obiektu elk (łoś) wybierz polecenie Modifiers/Mesh Editing/ Symmetry, by zastosować modyfikator Symmetry. Domyślnie wybrana jest oś X, co powoduje umieszczenie płaszczyzny biegnącej w dół, przez środek modelu łosia. 3. Na stosie modyfikatorów zaznacz obiekt Editable Poly i włącz tryb podobiektu Polygon. Następnie obróć widok w taki sposób, by obserwować model łosia zza jego głowy. Zaznacz wielokąt po lewej stronie głowy, w miejscu, gdzie powinien znajdować się róg. 4. W rolecie Edit Polygons kliknij przycisk okna dialogowego narzędzia Bevel. Ustaw wartość Height na 2.0, a Outline Amount na –0.15 i kliknij OK. 5. Nie usuwając zaznaczenia wieloboku, przesuń go na zewnątrz głowy łosia. 6. Wyłącz tryb podobiektu wieloboku i zaznacz modyfikator Symmetry na stosie modyfikatorów, by ujrzeć symetrycznie utworzony róg. Jeśli w stosie modyfikatorów włączysz przycisk Show End Result, będziesz mógł oglądać rezultaty stosowania modyfikatora w czasie rzeczywistym.

Rezultat zastosowania modyfikatora Symmetry zaprezentowano na rysunku 26.12.

Modyfikator Tessellate Modyfikator Tessellate służy do dzielenia wybranych ścianek w celu zwiększenia rozdzielczości modelu. Można go stosować do ścianek trójkątnych (Faces) lub wielokątnych (Polygons). Opcja Edge tworzy nowe krawędzie pomiędzy geometrycznym środkiem ścianki a środkami jej krawędzi. Opcja Face-Center wykonuje to samo zadanie, ale łączy środek ścianki z jej narożnikami. Ustawienie Tension (naprężenie) decyduje o tym, czy ścianki mają być wypukłe, czy też wklęsłe. Korzystając z ustawienia Iterations, możesz natomiast określić liczbę podziałów ścianek. Zastosowanie modyfikatora z wysokim ustawieniem Iterations może spowodować zwielokrotnienie liczby ścianek obiektu.

Modyfikator Vertex Weld Vertex Weld to bardzo prosty modyfikator, którego rola polega na spawaniu wszystkich wierzchołków w zakresie wartości Threshold. Jest to wygodne narzędzie do oczyszczania obiektów siatkowych z niepotrzebnych wierzchołków.

780

Część VI  Modelowanie zaawansowane

Rysunek 26.12. Kiedy korzystasz z modyfikatora Symmetry, pewne fragmenty obiektu wystarczy wymodelować tylko raz

Modyfikatory różne Wśród modyfikatorów Mesh Editing znaleźć można kilka unikalnych, wykonujących zadania specjalne. Przykładowo modyfikator Edit Normals pozwala zmieniać kierunek normalnych siatki, co w rzeczywistości nie oddziałuje na geometrię, ale ma duży wpływ na wygładzanie i cieniowanie obiektów.

Modyfikator Edit Normals Modyfikator Edit Normals pozwala zaznaczać i transformować wektory normalne. Wektory te wyświetlane są w postaci niebieskich linii, wyprowadzonych z każdego wierzchołka każdej ścianki. Edit Normals zawiera podobiekt Normals, który można zaznaczać i zmieniać jego kierunek. Aby przesunąć (lub obrócić)2 wektor normalny, możesz użyć narzędzi transformacyjnych, dostępnych z głównego paska narzędziowego. Jeżeli cieniowanie w oknie widokowym jest włączone, wówczas możliwe jest obserwowanie rezultatów obracania wektorów.

2

Przesuwanie wektorów normalnych sprowadza się do ich obracania, ponieważ przesuwane są tylko końce wektorów, a ich punkty zaczepienia pozostają ciągle w wierzchołkach siatki — przyp. tłum.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

781

Za pomocą modyfikatora Edit Normals można symulować rozmaite odkształcenia powierzchni obiektów. Przykładowo, przez zaznaczenie i odwrócenie określonych wektorów można uzyskać efekt wgnieceń na płaskiej metalowej powierzchni.

Wektory normalne można zaznaczać według kategorii Normal, Edge, Vertex lub Face. Przykładowo wybór opcji Face powoduje zaznaczenie wszystkich wektorów normalnych przyłączonych do ścianki, która została kliknięta. Przemieszczenie jednego z wektorów wywołuje współbieżne przesunięcie tych pozostałych, które zostały zaznaczone. Do wyboru masz także opcje Ignore Backfacing oraz wyświetlania uchwytów (Show Handles). Uchwyty mają postać niewielkich kwadratów, wieńczących końcówki wektorów. Wartość Display Length determinuje długość wektorów wyświetlanych w oknach widokowych. Na rysunku 26.13 przedstawiono normalne wyprowadzone z prostego obiektu typu Sphere.

Rysunek 26.13. Modyfikator Edit Normals pozwala edytować wektory normalne

Modyfikator wyposażony jest ponadto w przyciski Unify i Break. Kliknięcie pierwszego sprawia, że dla wszystkich wyselekcjonowanych wektorów zwrot jest ujednolicany, zaś klikając przycisk Break, możesz rozdzielić ujednolicone wektory dla sąsiadujących ze sobą podobiektów. Zwrot zunifikowanego wektora jest uśredniany w oparciu o punkty powierzchni lub, jeżeli opcja Unify/Break to Average jest włączona, w oparciu o zwroty dotychczasowych wektorów. Wciśnięcie przycisku Selected (zaznaczone) w sekcji Average uśrednia wyselekcjonowane wektory, które mieszczą się w zadanym przedziale, o ile opcja Use Threshold jest włączona. Jeżeli nie została włączona, wtedy uśredniane są wszystkie zaznaczone wektory

782

Część VI  Modelowanie zaawansowane

normalne. Przycisk Target (docelowy) pozwala na interaktywne wskazanie wektora, a następnie uśrednianie jego kierunku z kierunkiem innego, klikniętego w dalszej kolejności. Wektor docelowy musi znajdować się w odległości od kursora mniejszej niż wartość parametru Target. Zwroty wektorów normalnych można kopiować i przenosić pomiędzy nimi. Przycisk Specify oznacza wektor jako Specified (określony). Kolor takiego wektora zmienia się w oknie widokowym na zielononiebieski, zaś sam wektor ignoruje wszelkie dotychczasowe informacje o grupach wygładzania, powiązane z wierzchołkiem. Wektory ustalone (Explicit) wyświetlane są w kolorze zielonym, który oznacza, że wektor został odchylony od normalnego położenia. Wektor można przekształcić w ustalony, a tym samym wyłączyć go z udziału w automatycznych wyliczeniach, klikając przycisk Make Explicit. Z kolei przycisk Reset przywraca zaznaczonemu wektorowi jego oryginalny typ i położenie. U dołu rolety Parameters znajduje się wiersz informujący o tym, który wektor normalny został wyselekcjonowany lub ile wektorów zaznaczono.

Modyfikator Normal Prekursorem modyfikatora Edit Normals jest modyfikator Normal. Daje on możliwość odwracania wektorów normalnych (Flip Normals) i ich unifikowania (Unify Normals). Gdy zaimportujesz jakiś obiekt, jego wektory normalne mogą mieć błędne ustawienia, w rezultacie w geometrii pojawiają się dziury. Unifikując i odwracając wektory, możesz przywrócić zwartość obiektu. Modyfikator ten udostępnia tylko dwie opcje — Unify Normals i Flip Normals.

Modyfikator STL Check Modyfikator STL Check bada modele będące w trakcie przygotowania do eksportu w formacie StereoLitography (STL). Pliki StereoLitograhy wymagają zamknięcia powierzchni — geometria z dziurami lub przerwami może sprawiać problemy. Wszelkie napotkane nieprawidłowości są raportowane w sekcji Status rolety Parameters. Modyfikator ten potrafi identyfikować kilka typowych błędów siatek, w tym otwarcie krawędzi (Open Edge), zdublowanie ścianek (Double Face), kolce (Spike) czy też zwielokrotnienie krawędzi (Multiple Edge). Kolce to samotne ścianki, połączone z innymi tylko pojedynczą krawędzią. Możesz wybrać dowolną opcję lub wszystkie. Po odnalezieniu błędów modyfikator może zaznaczyć problematyczne krawędzie lub ścianki, osobno lub razem. Można też przypisać obszarowi stwarzającemu problemy inny identyfikator materiału (Material ID).

Modyfikatory Subdivision Surfaces Menu Modifiers zawiera też podmenu modyfikatorów do zagęszczania siatki. Znajdziesz tam m.in. modyfikatory MeshSmooth oraz HSDS. Za ich pomocą można wygładzać i dzielić powierzchnię obiektów. Podzielenie jej powoduje zwiększenie rozdzielczości obiektu, co z kolei pozwala na dokładniejsze modelowanie.

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

783

Modyfikator MeshSmooth Modyfikator MeshSmooth wygładza całą powierzchnię obiektu, zaokrąglając zarówno wierzchołki, jak i krawędzie. Modyfikator ten ma najsilniejsze działanie na ostrych narożnikach i krawędziach. Korzystając z modyfikatora MeshSmooth, można tworzyć obiekty typu NURMS. Skrót ten oznacza Non-Uniform Rational MeshSmooth (niejednorodna wymierna gładka siatka). NURMS może kontrolować wagę (Weight) każdego z punktów kontrolnych. Roleta Parameters udostępnia trzy typy wygładzania siatki: Classic (klasyczne), NURMS oraz Quad Output (tworzące ścianki czworokątne). Modyfikator da się skonfigurować tak, by operował na ściankach trójkątnych lub wielokątnych. Wśród parametrów wygładzania znajdują się wartości Strength (siła) i Relax (rozluźnienie). Dostępne są także ustawienia liczby iteracji oraz wag punktów kontrolnych. Jako opcję uaktualniania (Update) możesz wybrać uaktualnianie ciągłe (Always), podczas renderowania (When Rendering) lub ręczne (Manually) — to ostatnie wykonujemy poprzez kliknięcie przycisku Update. Możliwy jest także wybór podobiektu roboczego, Vertex lub Edge. Podobiekty te udostępniają lokalną kontrolę nad przebiegiem wygładzania. W rolecie Local Control znajduje się kontrolka wartości Crease (kant), dostępna w trybie podobiektu Edge. Wybranie tego podobiektu i zastosowanie wartości Crease 1.0 powoduje zachowanie ostrości krawędzi podczas wygładzania obiektu. Modyfikator MeshSmooth oddaje też do dyspozycji użytkownika roletę miękkiej selekcji (Soft Selection). Z kolei roleta Reset pozwala na szybkie zerowanie wartości parametrów Crease i Weight.

Modyfikator TurboSmooth Modyfikator TurboSmooth wykonuje zadania, podobne jak MeshSmooth, ale robi to znaczenie szybciej i ma mniejsze zapotrzebowanie na pamięć.

Ćwiczenie: Wygładzanie poidełka dla ptaków Jeden z efektywnych sposobów modelowania polega na zablokowaniu istotnych szczegółów modelu za pomocą funkcji dostępnych dla obiektów Editable Poly, a następnie wygładzeniu całości przy użyciu modyfikatora TurboSmooth. Dzięki temu model uzyskuje gładki wygląd i zwiększa się jego rozdzielczość. Aby utworzyć gładkie poidełko, wykonaj następujące czynności. 1. Otwórz plik Birdbath.max, zawarty w folderze Chap 26, na płycie dołączonej do książki. Plik ten zawiera prosty model poidełka wykonany przez odpowiednie skalowanie kolejnych warstw wierzchołków walca. Wodą jest po prostu odwrócony stożek. 2. Zaznacz i skopiuj poidełko, przeciągając je przy wciśniętym klawiszu Shift. 3. Zaznacz kopię i poddaj ją działaniu modyfikatora TurboSmooth — po prostu wybierz polecenie Modifiers/Subdivision Surfaces/TurboSmooth. 4. W rolecie TurboSmooth ustaw wartość Iterations na 2.

784

Część VI  Modelowanie zaawansowane

Zauważ, że całe poidełko zostało wygładzone, a jego rozdzielczość znacznie wzrosła, co widać na rysunku 26.14.

Rysunek 26.14. Modyfikator TurboSmooth może nadać obiektowi bardziej płynne kształty

Modyfikator HSDS Za pomocą modyfikatora HSDS (Hierarchical SubDivision Surfaces — hierarchiczny podział powierzchni) można zwiększać rozdzielczość i gładkość wybranych obszarów. Jego działanie jest podobne do modyfikatora Tessellate z tą różnicą, że HSDS działa na pewnych zbiorach podobiektów, a nie na powierzchni całego obiektu. Modyfikator HSDS pozwala pracować na podobiektach Vertex, Edge, Polygon i Element. Po wyselekcjonowaniu zbioru podobiektów możesz ów obszar podzielić, klikając przycisk Subdivide. Każde kliknięcie tego przycisku spowoduje dalsze dzielenie zaznaczonych obszarów, zaś kolejne poziomy podziału wyświetlane są na liście powyżej przycisku Subdivision. Korzystając z tej listy, można przechodzić pomiędzy kolejnymi poziomami hierarchii podziałów. Gdy zaznaczone są krawędzie, to ustalając wartość Crease, zachowasz ich ostrość. Roleta Advanced Options udostępnia opcje Smooth Result (wygładzanie rezultatu), Hide i Delete Polygon (ukrywanie i usuwanie wielokątów). Przycisk Adaptive Subdivision otwiera okno dialogowe Adaptive Subdivsion, w którym można ustawić parametry szczegółów. Modyfikator oferuje też roletę Soft Selection (miękkie zaznaczanie).

Rozdział 26.  Modyfikatory siatkowe i deformowanie powierzchni

785

Podsumowanie Paint Deformation, czyli malowanie deformacji, jest bardzo interesującą funkcją, pozwalającą na modelowanie szczegółów powierzchni przy użyciu intuicyjnego, łatwego w użyciu interfejsu. Max wyposażony jest w szereg unikalnych modyfikatorów, które stosuje się szczególnie do obiektów siatkowych. W rozdziale bieżącym omówiliśmy następujące zagadnienia: 

posługiwanie się pędzlami Paint Deformations,



konfigurowanie pędzli za pomocą okna dialogowego Painter Options,



edycję obiektów parametrycznych za pomocą modyfikatorów Edit Mesh i Edit Poly; korzystaliśmy z funkcji typowych dla siatek Editable Mesh oraz Editable Poly, zachowując przy tym parametryczną naturę modyfikowanych obiektów,



zastosowanie modyfikatorów siatkowych do edycji geometrii obiektów,



edytowanie wektorów normalnych i efekty, jakie można dzięki temu uzyskać,



wygładzanie obiektów siatkowych przy użyciu modyfikatorów Subdivision Surface.

W kolejnym rozdziale dowiesz się, jak modelować i edytować obiekty złożone. Są to obiekty unikatowe, tworzone w określonym celu.

786

Część VI  Modelowanie zaawansowane

Rozdział 27.

Obiekty złożone W tym rozdziale: 

Istota obiektów złożonych



Morfing obiektów



Wykorzystanie obiektów złożonych Conform i ShapeMerge



Tworzenie obiektów Terrain



Korzystanie z obiektu Mesher



Użycie obiektów złożonych Scatter i Connect



Praca z obiektami BlobMesh



Wytłaczanie obiektów



Deformowanie wytłoczonych obiektów



Obiekty ProBoolean i ProCutter

W poprzednich rozdziałach omówiliśmy modelowanie kształtów, siatek i wielokątów. Natomiast ten rozdział poświęcony jest obiektom, które nie pasują do żadnej z wymienionych grup, i dlatego zebrano je w jedną podkategorię, czyli obiekty złożone (Compound Objects). Jak przekonasz się podczas czytania, posiadają one wiele nietypowych, ale bardzo użytecznych cech, np. pozwalają wykonywać operacje boolowskie na obiektach, rozmieszczać wiele drobnych elementów na powierzchni wybranego obiektu (Scatter) lub wytłaczać kształty wzdłuż dowolnie uformowanej ścieżki (Loft).

Typy obiektów złożonych W podkategorii Compound Objects mamy dostęp do kilku dość specyficznych typów obiektów. Aby utworzyć jeden z nich, musisz wybrać odpowiednie polecenie w podmenu Create/Compound lub w bocznym panelu Create włączyć ikonę kategorii Geometry (pierwsza od lewej), a następnie z rozwijanej listy w górze panelu wybrać pozycję Compound Objects. W rolecie Object Type pojawią się przyciski, które pozwalają utworzyć poniższe typy obiektów.

788

Część VI  Modelowanie zaawansowane 

Obiekt morfowany (Morph) — umożliwia płynne przetransformowanie jednej siatki w drugą, składającą się z takiej samej liczby wierzchołków. Służy do tworzenia wielu efektów animacyjnych.



Obiekt rozproszony (Scatter) — rozmieszcza wiele kopii obiektu w scenie w sposób losowy. Obiekty mogą też być rozmieszczane na powierzchni wybranej siatki.



Obiekt owijany (Conform) — zacieśnia wierzchołki jednego obiektu wokół powierzchni innego. Można to wykorzystać do symulacji morfingu, w przypadku gdy siatki różnią się liczbą wierzchołków.



Obiekt łączony (Connect) — łączy dwa obiekty posiadające otwarte krawędzie, wstawiając między tymi krawędziami dodatkowe powierzchnie.



Obiekt płynny (BlobMesh) — obiekt niemal kulisty, przepływający z jednego obiektu na sąsiedni niczym woda.



Obiekt zagnieżdżony (ShapeMerge) — pozwala osadzić krzywe sklejane (edytowalne splajny lub standardowe kształty Maksa) w obrębie obiektu siatkowego i przy ich użyciu zmodyfikować powierzchnię siatki.



Obiekt boolowski (Boolean) — powstaje w wyniku przeprowadzenia operacji logicznych (operacje boolowskie) na wybranych obiektach. Możliwe jest dodawanie (Union), odejmowanie (Subtraction), wyznaczanie części wspólnej (Intersection) oraz przycinanie (Cut) obiektów.



Obiekt topograficzny (Terrain) — tworzy trójwymiarowy model ukształtowania terenu w oparciu o poziomice, takie jak na mapach topograficznych.



Obiekt wytłaczany (Loft) — tworzy powierzchnię w oparciu o ścieżkę zdefiniowaną za pomocą splajnu i rozmieszczone na niej przekroje, które również są splajnami o dowolnych kształtach.



Obiekt siatkowany (Mesher) — przekształca obiekty generowane proceduralnie podczas animacji (np. cząstki w systemach Particle Systems) w obiekty siatkowe, zgodnie z upływem czasu animacji. Pozwala to przypisywać cząstkom modyfikatory.



Obiekt proboolowski (ProBoolean) — zastępuje oryginalny obiekt boolowski, umożliwiając stosowanie operacji logicznych na wielu obiektach jednocześnie.



Obiekt rozcinany (ProCutter) — powstaje w wyniku pocięcia obiektu na kawałki za pomocą kilku obiektów tnących. Gdy dwa lub więcej obiektów zostanie połączonych w jeden, wówczas pokrywane są one jednym i tym samym materiałem. Aby na poszczególne części modelu nałożyć inne materiały, należy użyć materiału Multi/Sub-Object.

Morfing obiektów Obiekty typu Morph wykorzystujemy do animacji morfingu, ponieważ pozwalają one na animowaną transformację wierzchołków jednego obiektu w wierzchołki drugiego. Pierwszy obiekt nazywamy bazowym (Base), natomiast drugi — docelowym (Target).

Rozdział 27.  Obiekty złożone

789

Oba obiekty muszą być tego samego typu (np. siatki albo powierzchnie sklejane) i posiadać taką samą liczbę wierzchołków. Pojedynczy obiekt bazowy można morfować w wiele różnych obiektów docelowych. Najprostszym sposobem na zapewnienie takiej samej liczby wierzchołków jest skopiowanie obiektu bazowego i poddanie go odpowiednim modyfikacjom — takim, które nie zmieniają liczby wierzchołków w siatce. Zatem powinieneś unikać modyfikatorów, takich jak Tessellate czy Optimize.

Aby wykonać morfing obiektu bazowego w docelowy, zaznacz pierwszy z nich i wybierz polecenie Create/Compound/Morph. Następnie kliknij przycisk Pick Target w rolecie Pick Targets, przedstawionej na rysunku 27.1, i zaznacz obiekt docelowy w oknie widokowym. Gdy umieścisz kursor nad obiektem, który może zostać wybrany jako docelowy, ikona kursora zmieni się w znak plus. Nie będziesz mógł natomiast wybrać obiektu, który nie nadaje się do tej roli (np. ma nieodpowiednią liczbę wierzchołków). Opcje pod przyciskiem Pick Target pozwalają utworzyć kopię (Copy), klon (Instance) czy odnośnik (Reference) obiektu docelowego bądź usunąć go ze sceny (Move). Wszystkie obiekty docelowe są wyświetlane na liście Morph Targets w rolecie Current Targets. Rysunek 27.1. Rolety morfingu umożliwiają wybieranie obiektów docelowych i tworzenie kluczy animacji

Obiekt Morph może zawierać wiele obiektów docelowych. Używając przycisku Pick Target, możesz do listy Morph Targets dodawać nowe obiekty, a ich kolejność na liście odpowiadać będzie kolejności morfowania. Aby usunąć obiekt z listy, wybierz go i kliknij przycisk Delete Morph Target. W polu Morph Target Name możesz zmienić nazwę obiektu docelowego wybranego na liście.

Tworzenie kluczy morfingu Po wybraniu nazwy jednego z obiektów docelowych na liście Morph Targets możesz przeciągnąć suwak klatek w dole ekranu do dowolnej klatki i utworzyć klucz animacji morfingu, klikając przycisk Create Morph Key w dolnej części rolety. W ten sposób wykreujesz animację przekształcania jednego obiektu w drugi w zadanej liczbie klatek. Jeśli w chwili wybierania obiektu docelowego wybrana jest klatka inna niż 0, wówczas program automatycznie tworzy klucz animacji morfingu.

790

Część VI  Modelowanie zaawansowane Jeśli morfing przebiega zbyt gwałtownie, wstaw więcej klatek animacji, dzięki czemu będzie płynniejsza.

Obiekty typu Morph a modyfikator Morpher Morfing obiektów w Maksie można zrealizować na dwa różne sposoby: tworząc obiekt złożony typu Morph albo przypisując modyfikator Morpher wybranemu obiektowi sceny. Rezultaty działania obu narzędzi są praktycznie takie same, jednak pomiędzy samymi technikami występują pewne różnice. Obiekt typu Morph może zawierać wiele obiektów docelowych (Morph Targets), ale może być utworzony tylko raz. Z kolei każdemu obiektowi docelowemu można przypisać wiele kluczy animacji, co znacząco ułatwia sterowanie nią. Stosując np. zaledwie dwa klucze, można animować przekształcenie jednej siatki w drugą, a następnie powrót do pierwotnej formy. Modyfikator Morpher można nakładać na obiekt wielokrotnie i bez problemów współpracuje on z innymi modyfikatorami, ale przebieg morfingu kontrolować trzeba z poziomu stosu modyfikatorów. Roleta parametrów modyfikatora Morpher jest znacznie bardziej rozbudowana niż ta sama roleta obiektu Morph i obejmuje kontrolki kanałów oraz obsługuje morfing materiałów. Więcej informacji o modyfikatorze Morpher znajdziesz w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Aby wykorzystać to, co obie techniki oferują najlepszego, można nałożyć modyfikator Morpher na obiekt Morph.

Ćwiczenie: Morfing kobiecej twarzy Choć przykład ten jest dość prosty, to jednak pozwoli Ci zapoznać się z techniką, która jest bardzo pomocna podczas animowania postaci. Jedno z kluczowych zastosowań morfingu polega na skopiowaniu postaci, nadaniu jej nowej pozy i przeprowadzeniu morfingu pomiędzy obydwiema pozami. W ten sposób można animować ruchy, gesty, a także zmiany wyrazu twarzy. Aby dokonać morfingu kobiecej twarzy, wykonaj następujące czynności. 1. Otwórz plik Greek woman head morph.max zapisany w folderze Chap 27 na płycie dołączonej do książki. Znajdziesz w nim model kobiecej głowy. W celu ułatwienia dalszej pracy wszystkie obiekty zostały połączone z obiektem twarzy. 2. Zaznacz obiekt głowy, po czym wciśnij klawisz Shift i w oknie widokowym Top przeciągnij głowę w prawo. Gdy otworzy się okno dialogowe opcji klonowania (Clone Options), włącz opcję Copy, a liczbę kopii (Number of Copies) ustaw na 2. Jedną z kopii nazwij frown face (twarz zatroskana), a drugą — smiling face (twarz uśmiechnięta).

Rozdział 27.  Obiekty złożone

791

3. Zaznacz obiekt smiling face i otwórz panel Modify. Powiększ obraz w okolicy ust i włącz tryb podobiektu Vertex. Włącz opcję Ignore Backfacing w rolecie Selection, a następnie włącz opcję miękkiej selekcji (Use Soft Selection) w rolecie Soft Selection. Wartość zanikania (Falloff) ustaw na 1,4. Zaznacz wierzchołek w kąciku ust i w oknie widokowym Front przeciągnij go w górę, modelując uśmiech. Powtórz tę czynność po przeciwnej stronie ust. Wyłącz tryb podobiektu Vertex, klikając odpowiadający mu przycisk w panelu Modify. 4. Zaznacz pierwotny obiekt głowy i wybierz polecenie Create/Compound/Morph, by przekształcić go w obiekt typu Morph. Włącz opcję Copy w rolecie Pick Targets i kliknij przycisk Pick Target. Następnie kliknij obiekt frown face (lub wciśnij klawisz H i zaznacz ten obiekt, korzystając z okna dialogowego Pick Object), po czym kliknij obiekt smiling face. Oba obiekty zostaną umieszczone na liście obiektów docelowych. Ponownie kliknij przycisk Pick Target, wyłączając tryb wskazywania. 5. Zaznacz obiekt frown face na liście Morph Targets i kliknij przycisk tworzenia klucza animacji morfingu (Create Morph Key). Przeciągnij suwak czasu (Time Slider), znajdujący się tuż poniżej okien widokowych, do klatki 50., zaznacz obiekt smiling face i jeszcze raz kliknij przycisk Create Morph Key. 6. Kliknij przycisk odtwarzania animacji (Play), który znajduje się w sekcji Time Controls u dołu okna programu. Obejrzyj animację morfingu. Wyraz twarzy będzie się zmieniał wraz z przesuwaniem suwaka czasowego pomiędzy klatką 0 i 50. Na rysunku 27.2 przedstawiono kolejne etapy morfingu obiektu. Rysunek 27.2. Animacja uśmiechu za pomocą morfingu

Tworzenie obiektów Conform Obiekt typu Conform rzutuje wierzchołki jednej siatki na powierzchnię drugiej siatki. Jest to użyteczne przy dopasowywaniu kształtu jednego obiektu do drugiego, np. szwów do piłki baseballowej czy kołdry. W obiekcie złożonym typu Conform wyróżniamy dwa obiekty składowe — owijający (Wrapper) i owijany (Wrap-To). Oba muszą być siatkami lub muszą umożliwiać konwersję do siatki. Inny sposób rzutowania jednego obiektu na powierzchnię innego polega na użyciu pola sił Conform. Więcej o tym polu sił dowiesz się, czytając rozdział 42., „Stosowanie pól sił”.

Aby utworzyć obiekt typu Conform, zaznacz obiekt, który ma stać się obiektem owijającym (Wrapper) i wybierz polecenie Create/Compound/Conform. Aby wskazać obiekt owijany, włącz przycisk Pick Wrap-To Object w rolecie Pick Wrap-To Object, kliknij odpowiedni obiekt w oknie widokowym i wybierz jedną z opcji poniżej przycisku Pick Wrap-To Object (Reference, Move, Copy lub Instance).

792

Część VI  Modelowanie zaawansowane Splajnów i kształtów nie można używać do tworzenia obiektu typu Conform nawet wtedy, gdy są one renderowalne.

W rolecie Parameters, przedstawionej na rysunku 27.3, znajduje się sekcja Objects, a w niej wyświetlane są nazwy obiektów owijającego i owijanego. Możesz je zmienić za pomocą pól Wrapper Name i Wrap-To Object Name. Rysunek 27.3. Roleta Parameters obiektu Conform pozwala określić sposób owijania obiektu

Sekcja Wrapper Parameters zawiera dwa parametry — Default Projection Distance, określający odległość, na jaką zostanie przesunięty obiekt owijający, jeśli nie przecina się z obiektem owijanym, oraz Standoff Distance, który określa minimalną odległość pomiędzy wierzchołkiem obiektu owijającego a obiektem owijanym. Włączona opcja Use Selected Vertices sprawia, że mogą być przemieszczane tylko te wierzchołki siatki, które zostały wcześniej wyselekcjonowane.

Ustalanie kierunku rzutowania wierzchołków W rolecie Parameters znajdują się też opcje, które służą do ustawiania kierunku rzutowania wierzchołków (Vertex Projection Direction). Możesz zdecydować o tym, aby kierunek ten był ustalany w oparciu o aktywne okno widokowe (Use Active Viewport). Jeśli uaktywnisz inne okno widokowe, przycisk Recalculate Projection pozwala wyznaczyć nowy kierunek rzutowania. Jako osi rzutowania możesz też użyć lokalnej osi Z dowolnego obiektu (opcja Use Any Object’s Z Axis). Przycisk Pick Z-Axis Object pozwala wybrać ten obiekt. Gdy obrócisz obiekt, jego oś Z również zmieni kierunek i w ten sposób możesz zmienić kierunek rzutowania wierzchołków. Nazwa wybranego obiektu jest wyświetlana pod przyciskiem Pick Z-Axis Object. Opcje w dole sekcji Vertex Projection Direction pozwalają na rzutowanie wierzchołków wzdłuż normalnych (Along Vertex Normals), w stronę środka geometrycznego obiektu owijającego (Toward Wrapper Center), w stronę środka obrotu obiektu owijającego

Rozdział 27.  Obiekty złożone

793

(Towards Wrapper Pivot) i analogicznie dla obiektu owijanego — w stronę środka geometrycznego (Towards Wrap-To Center) lub w stronę środka transformacji (Towards Wrap-To Pivot).

Ćwiczenie: Modelowanie szramy na twarzy Jako przykład obiektu Conform wymodelujesz teraz pokaźnych rozmiarów szramę na twarzy postaci. Kiedy stosujesz obiekt złożony Compound, wówczas elementy, takie jak szrama, mogą być obiektami siatkowymi, a mimo to doskonale dopasowującymi się do obiektu, na który są rzutowane. Aby wymodelować szramę na twarzy, wykorzystując do tego celu obiekt Compound, wykonaj następujące czynności. 1. Otwórz plik Facial scar.max zawarty w folderu Chap 27 na płycie dołączonej do książki. Zapisany w nim jest siatkowy model twarzy z siatkową szramą na jednym z policzków. Model został przygotowany przez Viewpoint Datalabs. 2. Kliknij przycisk Select and Move na głównym pasku narzędziowym i zaznacz, a następnie przesuń szramę na przód twarzy. Użyj okien widokowych Front oraz Top. 3. Nie anulując zaznaczenia szramy, wybierz polecenie Create/Compound/Conform. 4. Wybierz opcję Use Active Viewport w rolecie Parameters i upewnij się, że aktywne jest okno widokowe Front. Parametr Standoff Distance w rolecie Wrapper Parameters ustaw na 3.0. 5. Włącz przycisk Pick Wrap-To Object i kliknij siatkę twarzy. Włącz opcję Move. 6. Siatka przyjmie domyślny kolor obiektu, ale jeśli włączysz opcję Display Operands na samym dole rolety Parameters, widoczne staną się oryginalne materiały. Po wykonaniu rzutowania obiekt rzutowany staje się obiektem typu Conform, ale jeśli stos modyfikatorów zostanie scalony, obiekt wróci do typu Editable Poly i jego edycja będzie możliwa.

Na rysunku 27.4 przedstawiono wyniki operacji chirurgicznej, oglądane w powiększonym oknie widokowym Perspective.

Tworzenie obiektów typu ShapeMerge Dzięki obiektom ShapeMerge możesz wykorzystywać splajny (Splines) oraz parametryczne kształty Maksa (Shapes) do cięcia powierzchni siatek. Utworzenie takiego obiektu wymaga dodania do sceny przynajmniej jednej siatki i splajnu. Po zaznaczeniu siatki i kliknięciu przycisku ShapeMerge należy włączyć przycisk Pick Shape w rolecie Pick Operand, a następnie kliknąć splajn w oknie widokowym. Dla wskazywanego splajnu możesz też wybrać opcję Reference, Move, Instance lub Copy.

794

Część VI  Modelowanie zaawansowane

Rysunek 27.4. Szrama została zrzutowana na przednią część twarzy

Splajn jest zawsze rzutowany na siatkę w stronę ujemnej osi Z własnego układu współrzędnych. Obracając i przemieszczając splajn względem siatki, odpowiednio ustawisz kierunek i miejsce rzutowania. Wraz z pojedynczą siatką możesz wykorzystać wiele różnych splajnów. Przy korzystaniu ze sterownika Nitrous może być konieczne przekonwertowanie obiektu ShapeMerge do Editable Poly, aby był prawidłowo wyświetlany w oknach widokowych.

Na liście w rolecie Parameters, pokazanej na rysunku 27.5, wyświetlana jest nazwa siatki oraz nazwy wszystkich dołączonych do niej splajnów. W polu Name łatwo zmienisz nazwy tych obiektów. Przycisk Extract Operand pozwala odłączyć wybrany obiekt od obiektu złożonego Conform jako kopię (Copy) lub klon (Instance). Rysunek 27.5. Roleta Parameters dla obiektu złożonego ShapeMerge pozwala wybrać splajny wykorzystywane do wycinania lub wstawiania nowych krawędzi

Rozdział 27.  Obiekty złożone

795

Opcje Cookie Cutter oraz Merge W sekcji Operations znajdują się opcje związane z cięciem powierzchni siatki przez splajn. Opcja Cookie Cutter wycina otwór odpowiadający kształtem splajnowi, natomiast opcja Merge jedynie wstawia nowe krawędzie zgodnie z kształtem splajnu. Włączona opcja Invert sprawia, że jako wycięty traktowany jest obszar nie wewnątrz, tylko na zewnątrz splajnu. Występuje tu pewne podobieństwo do odejmowania brył (Subtraction) w obiekcie boolowskim (Boolean), z tym że w przypadku obiektu ShapeMerge z opcją Cookie Cutter obszar wycinany z powierzchni siatki jest zdefiniowany kształtem splajnu, a nie przekrojem trójwymiarowej bryły. Opcja Merge przydaje się z kolei do wyznaczania takich obszarów powierzchni siatki, które później można w łatwy sposób selekcjonować podczas edycji obiektu. Na rysunku 27.6 pokazano przykładowy obiekt ShapeMerge utworzony z opcją Cookie Cutter.

Rysunek 27.6. Obiekt ShapeMerge z włączoną opcją Cookie Cutter Opcji Merge możesz użyć w celu utworzenia łatwej do selekcjonowania powierzchni, którą później wykorzystasz w obiekcie złożonym typu Connect.

Opcje w polu Output Sub-Mesh Selection umożliwiają zapamiętanie informacji o zaznaczeniu i przekazanie jej w górę stosu modyfikacji w celu późniejszej edycji obiektu za pomocą modyfikatorów. Opcje te włączają zapamiętywanie danych na temat zaznaczonych krawędzi (Edge), ścianek (Face) lub wierzchołków (Vertex). Z kolei opcja None wyłącza działanie tej funkcji.

796

Część VI  Modelowanie zaawansowane Jeśli po wycięciu fragmentu siatki chcesz widzieć również wewnętrzne powierzchnie obiektu, kliknij go prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Properties. W oknie z właściwościami obiektu (Object Properties) wyłącz opcję Backface Cull.

Ćwiczenie: Wykorzystanie obiektu ShapeMerge Gdy importujesz do Maksa tekst, litery zazwyczaj posiadają krzywe zawierające się w obrębie innych krzywych. Jeśli popatrzysz np. na kontury litery p, ujrzysz zewnętrzny obrys i małe kółko wewnątrz górnej części litery. Po przekonwertowaniu w siatkę okazuje się jednak, że program zapełnia trójkątami „otwór” wewnątrz litery, co sprawia, że jest ona nieczytelna. Obiekt ShapeMerge pomaga rozwiązać ten problem. Żeby przećwiczyć radzenie sobie z tą sytuacją, wykorzystasz logo fikcyjnej firmy Box It Up Company. Zanim jednak logo będzie można wytłaczać, musisz wykonać kilka czynności wymagających skorzystania z obiektu ShapeMerge. Aby przy użyciu obiektu ShapeMerge wykluczyć wytłaczanie środkowego obszaru, wykonaj, co następuje. 1. Otwórz plik Box It Up Co logo.max, zapisany w folderze Chap 27 na płycie dołączonej do książki. 2. Zaznacz wszystkie litery logo, po czym przytrzymaj klawisz Alt i usuń zaznaczenie wewnętrznych kształtów w literach B, O i P. Następnie zastosuj modyfikator Extrude z parametrem Amount równym 0,010 stopy. 3. Ponownie zaznacz literę B (tylko wytłoczony kontur zewnętrzny). Następnie wybierz polecenie Create/Compound/ShapeMerge. 4. W sekcji Operations wybierz opcję Cookie Cutter i kliknij przycisk Pick Shape w rolecie Pick Operand, włączając przy tym opcję Copy. Zaznacz oba wewnętrzne kształty litery B. Następnie kliknij przycisk Select Object znajdujący się na głównym pasku narzędziowym, aby wyjść z trybu Shape Merge. Te same zabiegi powtórz dla liter O i P. 5. Jeśli wycinane litery nadal są pełne, zaznacz każdą z nich i przekonwertuj do postaci Editable Poly — kliknij przyciskiem myszy jej typ na stosie modyfikatorów i wybierz opcję Editable Poly. Gotowe logo przedstawione jest na rysunku 27.7. Zwróć uwagę, że teraz wewnętrzne fragmenty liter zostały usunięte.

Tworzenie obiektów typu Terrain Obiekt typu Terrain pozwala modelować powierzchnię terenu w oparciu o splajny reprezentujące poziomice. Splajny te można utworzyć w Maksie lub zaimportować je z zewnętrznego programu, np. w formacie DWG AutoCAD-a. Jeśli splajny są tworzone w Maksie, należy upewnić się, że każdy z nich jest oddzielnym obiektem. Wszystkie muszą też

Rozdział 27.  Obiekty złożone

797

Rysunek 27.7. Logo z wytłoczonymi literami, których wewnętrzne fragmenty zostały usunięte przy użyciu obiektu ShapeMerge

być splajnami zamkniętymi. Jeśli splajny mają taką samą liczbę wierzchołków, tworzony na ich podstawie teren jest bardziej naturalny. Żeby sobie coś takiego zapewnić, można wielokrotnie kopiować i odpowiednio modyfikować splajn wyjściowy. Aby ukształtować model terenu, utwórz splajny odpowiadające różnym wysokościom, zaznacz je i kliknij przycisk Terrain. Przycisk ten jest dostępny tylko wtedy, gdy zaznaczone splajny są zamknięte. Jeśli chcesz dodać nowe splajny do obiektu Terrain, użyj przycisku Pick Operand znajdującego się w rolecie o tej samej nazwie. Nazwy wszystkich splajnów, które stanowią wspólny obiekt, są wyświetlane na liście Operands. W polu Form znajdują się opcje określające sposób formowania powierzchni, takie jak Graded Surface (pochyła powierzchnia), Graded Solid (pochyła bryła) i Layered Solid (bryła warstwowa). Opcja Graded Surface tworzy gładką powierzchnię bez płaszczyzny zamykającej obiekt od dołu. Po włączeniu opcji Graded Solid bryła zostanie zamknięta dodatkową ścianką od dołu. W przypadku opcji Layered Solid każdy poziom wysokości będzie miał postać wytłoczonej pionowo, płaskiej powierzchni. Opcja Stitch Border (zszyj brzeg) domyka niezamknięty splajn dodatkową krawędzią i konstruuje na niej wielokąty. Opcja Retriangulate optymalizuje podział wielokątów w celu lepszego odzwierciedlenia konturów terenu. Opcje w polu Display decydują o tym, jak obiekt ma być wyświetlany w oknach widokowych — albo jako trójwymiarowa siatka terenu (Terrain), albo przy użyciu pierwotnych poziomic (Contour), albo z uwzględnieniem obu możliwości (Both). Możesz też określić

798

Część VI  Modelowanie zaawansowane

sposób uaktualniania obiektu: automatyczny (Always), podczas renderingu (When Rendering) lub ręczny (Manually), wymagający używania przycisku Update. W rolecie Simplification możesz zmodyfikować strukturę powierzchni, zmieniając uwzględnioną w niej liczbę punktów i linii (parametry Horizontal i Vertical). Do wyboru masz opcję wykorzystania wszystkich punktów (bez upraszczania), połowy lub czwartej części, podwojenia, a także czterokrotnego powiększenia ich liczby.

Kolorowanie wzniesień W rolecie Color by Elevation, przedstawionej na rysunku 27.8, wyświetlane są wartości parametrów Maximum Elev i Minimum Elev, które odpowiadają najwyższemu i najniższemu punktowi terenu. Pomiędzy nimi możesz ulokować poziom Reference Elev — odpowiadający poziomowi morza. Po ustaleniu wartości w polu Reference Elev kliknij przycisk Create Defaults, aby automatycznie wygenerować kolory terenu. Przy użyciu przycisków Modify Zone, Add Zone i Delete Zone możesz zmodyfikować kolor poziomu, dodać nowy poziom lub usunąć jeden z istniejących. Rysunek 27.8. Roleta Color by Elevation pozwala nadawać różne kolory poszczególnym poziomom terenu

Kolory stref można wybierać z listy. Aby zmienić kolor danej strefy, zaznacz ją i kliknij próbkę koloru. Możesz tu również wybrać opcję mieszania koloru z kolorem powyżej (Blend to Color Above) lub zachowania jego jednolitości aż do samej górnej krawędzi strefy (Solid to Top of Zone).

Ćwiczenie: Modelowanie wyspy przy użyciu obiektu złożonego Terrain W ćwiczeniu zajmiesz się utworzeniem prostego modelu wyspy. Ustawienia w rolecie Color by Elevation pomogą wyznaczyć linię zetknięcia się lądu z wodą. Aby utworzyć model wyspy, korzystając z obiektu Terrain, wykonaj poniższe instrukcje.

Rozdział 27.  Obiekty złożone

799

1. Wybierz polecenie Create/Shapes/Ellipse i, kilkakrotnie przeciągając myszą w oknie widokowym Top, utwórz koncentryczne elipsy o różnych rozmiarach, reprezentujące kontury wyspy. Pierwsza elipsa powinna być największa, a kolejne stopniowo coraz mniejsze. 2. W oknie widokowym Left kolejno zaznacz i rozsuń elipsy w górę lub w dół, umieszczając największą na samym dole, zaś najmniejszą na szczycie. Gdy umieścisz dwie małe elipsy na tym samym poziomie, możesz utworzyć dwa niewielkie pagórki. Jeśli utworzyłeś elipsy we właściwej kolejności, od największej do najmniejszej, możesz je zaznaczyć za pomocą polecenia Select All (zaznacz wszystko). W przeciwnym razie musisz je zaznaczyć w takiej kolejności, aby po kliknięciu przycisku Terrain zostały połączone od góry do dołu.

3. Wybierz polecenie Edit/Select All (Ctrl+A), by zaznaczyć wszystkie elipsy, a następnie użyj polecenia Create/Compound/Terrain. Elipsy zostaną połączone automatycznie, formując wyspę. 4. W rolecie Color by Elevation ustaw wartość wysokości odniesienia (Reference Elevation) na 5 i kliknij przycisk Create Defaults. W ten sposób zostaną automatycznie utworzone strefy kolorów. Wysokość każdej strefy wyświetlana jest na liście w rolecie Color by Elevation. Wybranie danej wartości powoduje wyświetlenie przypisanej jej próbki koloru. 5. Zaznacz kolejno każdą wysokość i dla wszystkich, oprócz strefy o kolorze jasnoniebieskim, włącz opcję Blend to Color Above. Dzięki temu linia podziału między powierzchnią morza i wyspą będzie bardzo wyraźna. Na rysunku 27.9 przedstawiono gotowy model. W przykładzie opisanym nieco dalej zastosujesz obiekt złożony Scatter, za jego pomocą zalesisz powierzchnię wyspy.

Korzystanie z obiektu Mesher Obiekt złożony typu Mesher pozwala podczas animacji konwertować obiekty w siatki. Jest to użyteczne np. w przypadku systemów cząstek (Particle Systems). Gdy przekonwertujesz cząstki w obiekt siatkowy, możesz poddawać je działaniu wielu niedostępnych wcześniej modyfikatorów, takich jak np. Optimize czy UVW Map. Inną zaletą obiektu Mesher jest to, że modyfikator przypisany systemowi cząstek działa na wszystkie cząstki i nie musisz przypisywać modyfikatorów każdej cząstce z osobna. W rolecie Parameters obiektu Mesher znajduje się przycisk Pick Object. Włącz ten przycisk i kliknij w oknie widokowym obiekt, aby utworzyć jego klon włączony do obiektu Mesher. Akcja ta nie usunie pierwotnego obiektu, jednak jego klon zostanie ustawiony

800

Część VI  Modelowanie zaawansowane

Rysunek 27.9. Wyspa utworzona przy użyciu obiektu złożonego Terrain

w orientacji zgodnej z lokalnym układem współrzędnych obiektu Mesher. Na przycisku Pick Object wyświetlana będzie nazwa wybranego obiektu. W dowolnej chwili możesz zmienić ten obiekt na inny, włączając ponownie przycisk Pick Object i klikając w oknie widokowym. Nie usuwaj ze sceny oryginalnego obiektu, ponieważ spowoduje to zniknięcie również jego klonu z obiektu Mesher. Jeśli chcesz widzieć tylko klon, zaznacz oryginał i ukryj go, wybierając polecenie Tools/Display Floater i używając przycisku Selected w polu Hide.

Parametr Time Offset określa w klatkach przesunięcie czasowe animacji klonu względem oryginalnego obiektu (może być ujemne). Jeśli włączona jest opcja Build Only at Render Time, klon będzie widoczny dopiero po wyrenderowaniu sceny. Przyciskiem Update możesz uaktualniać ustawienia klonu, jeśli w oryginalnym obiekcie zmodyfikowałeś jakiekolwiek parametry lub opcje. Gdy do tworzenia klonu emitera cząstek używasz obiektu Mesher, prostopadłościan otaczający (bounding box) klonu może być bardzo rozciągnięty w jedną stronę, co wiąże się z przemieszczaniem cząstek na dużą odległość podczas animacji. Sprawia to kłopoty w korzystaniu z niektórych modyfikatorów. Aby ich uniknąć, możesz pobrać rozmiary prostopadłościanu otaczającego z dowolnego obiektu sceny o odpowiadających Ci rozmiarach. W tym celu włącz opcję Custom Bounding Box i włącz przycisk Pick Bounding Box, po czym kliknij obiekt w oknie widokowym. Gdy zaznaczasz obiekt Mesher, prostopadłościan otaczający klon jest wyświetlany na pomarańczowo, niezależnie od swojego położenia. Pod przyciskiem Pick Bounding Box znajduje się informacja o położeniu

Rozdział 27.  Obiekty złożone

801

wierzchołków prostopadłościanu. Obiekty Mesher można też stosować jako elementy systemu Particle Flow, korzystając z przycisków Add i Remove, znajdujących się u dołu rolety Parameters. W rozdziale 41., „Cząsteczki i system Particle Flow”, zostanie szerzej omówiony temat stosowania systemów cząstek.

Praca z obiektami BlobMesh Obiekty BlobMesh są kulami. Pojedynczo nie są interesujące, ale gdy tylko znajdą się w grupie, wzajemnie się przyciągają niczym krople rtęci. Cecha ta czyni je obiektami idealnymi do modelowania płynów czy też miękkich form organicznych. Obiekty BlobMesh stosuje się raczej w grupach, a nie jako obiekty indywidualne. Jeśli klikniesz przycisk BlobMesh w podkategorii Compound Objects, po czym utworzysz BlobMesh w którymś z okien widokowych, obiekt pojawi się jako kula, o promieniu określonym ustawieniem Size. Rzeczywiste korzyści zauważysz dopiero, korzystając z przycisków Pick lub Add, widocznych poniżej listy Blob Objects, i zaznaczając obiekt w scenie. Przyciski Pick, Add oraz Remove są aktywne wyłącznie w panelu Modify.

Wyselekcjonowany obiekt dołączy do listy Blob Objects, a do każdego jego wierzchołka zostanie dodany obiekt BlobMesh. Jeśli elementy BlobMesh są na tyle duże, by się wzajemnie pokrywać, wówczas łączą się, formując płynną masę cząsteczek.

Ustawianie parametrów BlobMesh Parametr Size decyduje o wielkości promienia obiektu BlobMesh. Jego zwiększenie skutkuje pokryciem większej liczby obiektów wokół. W przypadku systemów cząsteczkowych parametr Size jest ignorowany, zaś rozmiar obiektu BlobMesh determinowany jest wielkością cząsteczek. Parametr Tension określa, jak luźna lub jak zwarta ma być powierzchnia obiektu BlobMesh. Niskie wartości tego parametru sprawiają, że obiekty stają się bardziej płynne. Ustawienie Evaluation Coarseness decyduje o gęstości obiektów BlobMesh. Włączenie opcji Relative Coarseness skutkuje tym, że gęstość obiektów zmienia się wraz z ich wielkością. Wartość Evaluation Coarseness można ustawiać niezależnie dla okien widokowych i renderingu. Gdy obiekt BlobMesh zastosujemy w stosunku do innego obiektu, do wszystkich wierzchołków doklejany jest nowy obiekt. Jeśli jednak na wybrany obiekt nałożysz modyfikator selekcji, np. Mesh Select, wówczas BlobMesh zostanie doklejony tylko do wyselekcjonowanych podobiektów. Podczas zaznaczania podobiektów możesz użyć miękkiej selekcji, która pozwoli Ci objąć zaznaczeniem także podobiekty sąsiednie. Wartość Minimum Size określa minimalną wielkość obiektu BlobMesh, jaką może on mieć po włączeniu opcji Soft Selection.

802

Część VI  Modelowanie zaawansowane

Opcja Large Data Optimization znacznie przyspiesza i podnosi wydajność renderowania dużych zbiorów obiektów BlobMesh. Korzyści ze stosowania tej funkcji stają się widoczne, gdy liczba renderowanych obiektów BlobMesh przekracza 2000. Jeśli odświeżanie obrazu w oknie widokowym odbywa się bardzo ślamazarnie, co wynika z dużej liczby przetwarzanych obiektów BlobMesh, wtedy możesz wyłączyć ich wyświetlanie, wybierając opcję Off in Viewport. Obiekty BlobMesh nałożone na system cząstek można wykorzystać jako elementy systemu Particle Flow. Roleta Particle Flow zawiera listę zdarzeń, jakie można przypisać obiektom BlobMesh. Przepływ cząsteczkowy będzie jednym z tematów rozdziału 41., „Cząsteczki i system Particle Flow”.

Ćwiczenie: Modelowanie bryły lodu przy użyciu obiektu BlobMesh Obiekty BlobMesh można połączyć z geometrią innego obiektu, tworząc efekt jego zamrożenia wewnątrz bryły lodu. Korzystając z funkcji Pick obiektu BlobMesh, możesz zaznaczyć obiekt geometryczny, co spowoduje doklejenie elementów BlobMesh do każdego z jego wierzchołków. Zalecam jednak wybieranie obiektów o względnie małej liczbie wierzchołków. Aby utworzyć efekt zamrożenia obiektu wewnątrz bryły lodu, wykonaj następujące czynności. 1. Otwórz plik Icy sled.max, który umieszczony został w folderze Chap 27 na płycie dołączonej do książki. W pliku tym znajdziesz model sanek przygotowany przez Viewpoint Datalabs. 2. Zaznacz sanki, wybierz polecenie Create/Compound/BlobMesh i utwórz prosty obiekt BlobMesh w oknie widokowym Top. Wartość Size ustaw na 6.0. Następnie kliknij przycisk Pick w rolecie Parameters i zaznacz model sanek. 3. Wciśnij klawisz M, aby otworzyć edytor materiałów, i zaznacz pierwszą próbkę. Zmień kolor światła rozpraszanego (Diffuse) na jasnoniebieski, zaś współczynnik krycia (Opacity) ustaw na 20. Zwiększ poziom odbijania (Specular Level) do 90, a połyskliwość (Glossiness) do 40. Następnie nałóż materiał na obiekt BlobMesh. 4. Wyrenderuj widok perspektywiczny, aby zobaczyć ostateczny rezultat. Sanki powinny być uwięzione w bryle lodu. Sanki wymagające rozmrożenia przedstawione są na rysunku 27.10.

Tworzenie obiektów typu Scatter Obiekt typu Scatter rozmieszcza losowo wiele kopii wybranego obiektu w zadanym wycinku przestrzeni lub na powierzchni określonej siatką innego obiektu. Obiekt, który jest kopiowany, nazywamy rozpraszanym (Source), natomiast obiekt wyznaczający wspomnianą powierzchnię nazywamy rozpraszającym (Distribution).

Rozdział 27.  Obiekty złożone

803

Rysunek 27.10. Obiekty BlobMesh można wykorzystać do tworzenia efektów pokrycia innych obiektów lodem Systemy cząstek, które zostaną omówione w rozdziale 41., „Cząsteczki i system Particle Flow”, również mogą tworzyć wiele kopii obiektów. Jednak użycie obiektu Scatter zapewnia większą kontrolę nad sposobem ich rozmieszczenia.

Aby utworzyć obiekt Scatter, zaznacz obiekt, który ma być obiektem rozpraszanym, i wybierz polecenie Create/Compound/Scatter. W panelu bocznym pojawi się roleta, która umożliwi Ci wskazanie obiektu rozpraszającego oraz dokonanie rozmaitych transformacji. W rolecie Scatter Objects wyświetlane są nazwy obiektów rozpraszanego i rozpraszającego. W polach Source Name i Distribution Name możesz te nazwy zmieniać. Przycisk Extract Operand staje się dostępny dopiero po przejściu do bocznego panelu Modify — pozwala on utworzyć kopię lub klon obiektu Source bądź Distribution. Położenie obiektu rozpraszanego na obiekcie rozpraszającym określa środek obrotu obiektu rozpraszanego.

Obiekty rozpraszane (Source) Obiekt Source jest wielokrotnie kopiowany i rozmieszczany na powierzchni obiektu Distribution (lub w określonym fragmencie przestrzeni). Na rysunku 27.11 pokazano walec (Cylinder), którego 500 kopii zostało rozstawionych na powierzchni sfery. Użyto tu opcji ustawiania prostopadłego (Perpendicular) i równomiernego rozmieszczania kopii (Distribute Using Even).

804

Część VI  Modelowanie zaawansowane

Rysunek 27.11. Obiekt Scatter utworzony z obiektu parametrycznego Cylinder i rozrzucony na powierzchni kuli

W rolecie Scatter Objects znajdują się parametry i opcje związane z rozkładem obiektu rozpraszanego na powierzchni obiektu rozpraszającego. Sekcja Source Object Parameters zawiera parametr Duplicates, który wyznacza liczbę kopii obiektu Source. Możesz też określić współczynnik skalowania kopii obiektu rozpraszanego (Base Scale) oraz losowy sposób przemieszczeń wierzchołków w poszczególnych kopiach (Vertex Chaos). Parametr Animation Offset określa przesunięcie czasowe animacji poszczególnych kopii obiektu Source względem oryginału. Gdy przyjrzysz się obiektowi Scatter w cieniowanym oknie widokowym, zobaczysz, że zarówno obiekt rozpraszający, jak i rozpraszany posiadają ten sam kolor. Jeśli chcesz zróżnicować ich kolory, użyj materiału złożonego typu Multi/Sub-Object.

Obiekty rozpraszające (Distribution) Aby wybrać w scenie obiekt rozpraszający, włącz przycisk Pick Distribution Object i kliknij w oknie widokowym odpowiednią siatkę (upewnij się przy tym, że w rolecie Scatter Objects włączona jest opcja Use Distribution Objects). Możesz też wybrać opcję kopiowania (Copy), klonowania (Instance), tworzenia odnośnika (Reference) lub przesunięcia (Move) oryginalnego obiektu. W sekcji Distribution Object Parameters dostępne są opcje, które sterują rozmieszczeniem obiektu rozpraszanego na powierzchni obiektu rozpraszającego. Włączona opcja Perpendicular sprawia, że obiekt rozpraszany jest zawsze ustawiany prostopadle do ścianek

Rozdział 27.  Obiekty złożone

805

obiektu rozpraszającego. Jeśli wyłączysz tę opcję, orientacja wszystkich kopii obiektu Source pozostanie taka jak w pierwotnym obiekcie. Na rysunku 27.12 zaprezentowano ten sam obiekt Scatter, co na poprzednim rysunku, ale tym razem z różnymi opcjami. Rysunek 27.12. Obiekt Scatter po zmianie ustawień: Base Scale na 20%, Vertex Chaos na 2.0, po wyłączeniu opcji Perpendicular oraz z ustawieniem Duplicates na 100

Opcja Use Selected Faces Only pozwala rozmieszczać kopie obiektu rozpraszanego tylko na tych ściankach w obiekcie rozpraszającym, które zostały wyselekcjonowane przed utworzeniem obiektu Scatter. Selekcji takiej można dokonywać np. przy użyciu modyfikatora Mesh Select. Opcje w polu Distribution określają sposób, w jaki wyznaczane jest położenie każdej kopii obiektu Source: Area, Even, Skip N, Random Faces, Along Edges, All Vertices, All Edge Midpoints, All Face Centers i Volume. Opcja Area rozmieszcza obiekty z zachowaniem równomiernych odstępów pomiędzy poszczególnymi kopiami na całej powierzchni. Z kolei opcja Even uwzględnia liczbę ścianek w obiekcie rozpraszającym. W przypadku opcji Skip N możesz zdecydować o tym, na co której ściance obiektu rozpraszającego mają być rozmieszczane kopie. Po włączeniu opcji Random Face lub Along Edges kopie są rozmieszczane w sposób losowy na ściankach obiektu rozpraszającego. Opcje All Vertices, All Edge Midpoint i All Face Centers sprawiają, że ustawienie liczby kopii Duplicates jest ignorowane i program rozmieszcza kopie obiektu rozpraszanego — odpowiednio — na wszystkich wierzchołkach, środkach krawędzi lub środkach ścianek obiektu rozpraszającego. Na rysunku 27.13 zademonstrowano użycie niektórych opcji.

Rysunek 27.13. Obiekt Scatter z różnymi opcjami rozpraszania: Area, Skip N, gdzie N = 7, Random Faces, All Verices oraz All Face Centers

Wszystkie wymienione wyżej opcje rozmieszczają kopie na zewnętrznej powierzchni obiektu Distribution, jeśli natomiast włączysz opcję Volume, kopie będą rozmieszczane wewnątrz tego obiektu.

Transformacje kopii obiektu rozpraszanego Roleta Transforms pozwala transformować poszczególne kopie w określonym zakresie. Jeśli np. zdefiniujesz w polu Rotation dla osi Z wartość 90°, kopie zostaną losowo poobracane o kąty z zakresu od –90° do +90° wokół osi Z.

806

Część VI  Modelowanie zaawansowane

Transformacje mogą być dokonywane na obiektach rozmieszczonych na powierzchni obiektu rozpraszającego, ale mogą też służyć do rozmieszczania obiektów w określonym fragmencie sceny bez użycia obiektu rozpraszającego — jeśli włączona jest opcja Use Transforms Only w rolecie Scatter Objects. Włączenie opcji Use Maximum Range sprawia, że dana transformacja jest wykonywana w takim samym zakresie dla wszystkich trzech osi. Opcja Lock Aspect Ratio pozwala zachować proporcje obiektu podczas skalowania.

Przyspieszanie wyświetlania za pomocą obiektów zastępczych (Proxy) Praca z dużą liczbą kopii obiektu rozpraszanego może znacznie spowolnić odświeżanie widoku sceny. Aby pozbyć się tej uciążliwości, włącz w rolecie Display opcję Proxy. Opcja ta zamiast każdej kopii wyświetli prostą bryłę o kilku ściankach, dopasowaną z grubsza kształtem i rozmiarem do pierwowzoru. Jeśli np. użyłeś obiektu Scatter do rozmieszczenia wielu modeli postaci ludzkich na chodniku, opcja Proxy zamiast każdej z siatek wyświetli bryłę mającą zazwyczaj kształt walca. Innym sposobem na przyspieszenie wyświetlania sceny jest użycie spinera Display. Możesz nim określić, jaka część (procentowo) kopii obiektu rozpraszanego będzie wyświetlana podczas pracy w oknach widokowych. Jednak po wyrenderowaniu sceny wciąż będzie widać docelową liczbę kopii, ustawioną wcześniej w rolecie Scatter Object. Jeżeli włączysz opcję Hide Distribution Object, obiekt rozpraszający zostanie ukryty. Parametr Seed inicjalizuje generator liczb pseudolosowych używany do wyznaczania współrzędnych obiektów.

Zapisywanie i wczytywanie ustawień Parametry danego obiektu Scatter można zapisać na dysku i wykorzystać je później w innym obiekcie. Służą do tego przyciski SAVE i LOAD w rolecie Load/Save Presets. W polu Preset Name wprowadzasz nazwę zapisywanego zestawu parametrów, a przyciskiem DELETE możesz usunąć niepotrzebny zestaw.

Ćwiczenie: Zalesienie wyspy Program pozwala łączyć różnego typu obiekty złożone, w wyniku czego można uzyskać ciekawe efekty. W ćwiczeniu tym użyjesz obiektu Scatter, umieszczając nieco drzew na modelu wyspy (obiekcie typu Terrain), który utworzyłeś wcześniej. Aby, korzystając z obiektu Scatter, umieścić drzewa na wyspie, wykonaj następujące czynności. 1. Otwórz plik Island terrain with trees.max. Znajdziesz go w folderze Chap 27 na płycie dołączonej do książki. Plik zawiera model wyspy podobny do tego, który utworzyłeś w jednym z poprzednich ćwiczeń, ale z dodanym prostym modelem drzewa. 2. Zaznacz obiekt drzewa, po czym wybierz polecenie Create/Compound/Scatter.

Rozdział 27.  Obiekty złożone

807

3. Kliknij przycisk Pick Distribution Object i wskaż model wyspy. Liczbę Duplicates ustaw na 100, wyłączając przy tym opcję Perpendicular. Wszystkie drzewa zostaną ustawione pionowo. 4. Włącz opcję Random Faces. Drzewa zostaną rozmieszczone gęściej w okolicach wzgórz, gdzie znajduje się więcej ścianek. Zalesioną wyspę przedstawiono na rysunku 27.14.

Rysunek 27.14. Wyspa została pokryta drzewami przy użyciu obiektu Scatter

Tworzenie obiektów typu Connect Obiekt Connect pozwala automatycznie utworzyć powierzchnię łączącą dwa odrębne obiekty. Każdy obiekt składowy musi posiadać otwarte krawędzie na brzegu lub otwór pośrodku siatki — program wygeneruje dodatkowe ścianki w taki sposób, aby połączyć ze sobą odpowiednie krawędzie obu siatek. Aby użyć obiektu Connect, usuń leżące naprzeciwko siebie ścianki w dwóch obiektach typu Editable Mesh. W razie potrzeby obróć obie bryły tak, aby otwory były ustawione na wprost siebie. Zaznacz jeden z obiektów i wybierz polecenie Create/Compound/Connect. Następnie włącz przycisk Pick Operand i kliknij drugi obiekt w oknie widokowym. Max utworzy powierzchnię łączącą otwarte krawędzie obu obiektów.

808

Część VI  Modelowanie zaawansowane

Wypełnianie otworów w obiekcie Jeśli w obiektach znajduje się po kilka otworów, algorytm obiektu Connect spróbuje dopasować je do siebie i utworzy więcej dodatkowych ścianek. Możliwe jest też wielokrotne łączenie danego obiektu z innymi obiektami. Obiekt Connect nie najlepiej radzi sobie z łączeniem obiektów typu NURBS (niejednorodne wymierne krzywe B-sklejane).

W rolecie Parameters znajduje się lista wszystkich połączonych ze sobą obiektów. Po wybraniu nazwy obiektu z listy możesz go usunąć przyciskiem Delete Operand. Przycisk Extract Operand pozwala oddzielić dany element od obiektu złożonego Connect. W polu Interpolation możesz zmienić wartość parametru Segments, czyli liczbę segmentów powierzchni łączącej obiekty. Za pomocą parametru Tension określasz krzywiznę tej powierzchni, która wykorzystywana jest podczas wygładzania powierzchni łączącej. Opcja Bridge w polu Smoothing wygładza nową powierzchnię, natomiast opcja Ends wygładza miejsca łączenia tej powierzchni z pierwotnymi obiektami.

Ćwiczenie: Ławka parkowa Jednym z popularniejszych zastosowań obiektu Connect jest łączenie dwóch symetrycznych kopii jednego obiektu, np. mostu lub stołu. W ćwiczeniu utworzymy w ten sposób ławkę parkową. Jakkolwiek obiekt złożony Connect wywiązuje się ze swych zadań bardzo efektywnie, jednak wymaga, by oba łączone otwory miały równą liczbę wierzchołków. Znacznie wydajniejszym rozwiązaniem jest funkcja Bridge obiektów Editable Poly.

Aby połączyć dwa końce ławki parkowej, wykonaj następujące czynności. 1. Otwórz plik Park bench.max z folderu Chap 27 na płycie dołączonej do książki. W pliku znajdują się dwa boczne elementy ławki. Pierwszy z nich powstał przez wytłoczenie splajnu (modyfikator Extrude), a następnie wycięcie otworów splajnem przy użyciu obiektu złożonego ShapeMerge. Za pomocą polecenia Mirror utworzono drugi element — lustrzaną kopię pierwszego. 2. Zaznacz jeden z bocznych elementów i wybierz polecenie Create/Compound/ Connect. 3. W rolecie Pick Operand użyj przycisku Pick Operand, włącz opcję Move i kliknij przeciwny element ławki. Oba obiekty powinny zostać połączone. 4. W dole rolety Parameters włącz opcję Smoothing: Bridge, wygładzając za jej pomocą siedzisko ławki.

Rozdział 27.  Obiekty złożone

809

Gotową ławkę przedstawiono na rysunku 27.15.

Rysunek 27.15. Obiekt złożony Connect pozwala łączyć otwory w oddzielnych obiektach

Obiekty typu Loft Termin „lofting” został zapożyczony z technologii stosowanej w przemyśle stoczniowym. Budowanie kadłuba statku rozpoczyna się od utworzenia szkieletu wyznaczającego przekroje kadłuba, a następnie szkielet ten pokrywany jest poszyciem. W obiektach typu Loft musimy wykorzystać przynajmniej dwa kształty (mające postać krzywych sklejanych, czyli splajnów): jeden z nich wyznacza ścieżkę wytłoczenia (w przypadku statku byłaby to oś kadłuba) natomiast drugi (i pozostałe, jeśli istnieją) wyznacza przekroje obiektu rozmieszczone wzdłuż ścieżki. Po utworzeniu kształtów należy wybrać polecenie Create/Compound/Loft. Przed przystąpieniem do wytłaczania należy zwrócić uwagę na orientację kształtów stanowiących przekroje i ścieżki, wzdłuż której wytłaczanie ma nastąpić. Przekroje są zawsze ustawiane tak, aby ich lokalne osie Z były zgodne z osią Y ścieżki. Dopilnowanie właściwego zorientowania wszystkich tych obiektów pozwoli Ci uniknąć bólu głowy z powodu niepożądanych rezultatów wytłaczania. Jeśli stwierdzisz niewłaściwe ustawienie któregoś przekroju lub ścieżki, dokonaj odpowiedniej transformacji środka obrotu (pivot point) tego obiektu.

810

Część VI  Modelowanie zaawansowane

Przyciski Get Shape i Get Path Po zaznaczeniu jednego ze splajnów i włączeniu przycisku Loft w rolecie Creation Method wyświetlane są przyciski Get Path i Get Shape, których możesz użyć do określenia, który splajn ma być ścieżką wytłaczania (Path), a który przekrojem bryły (Shape). Aby dokonać wyboru, zaznacz jeden ze splajnów i kliknij odpowiedni przycisk. Jeśli klikniesz przycisk Get Path, zaznaczony splajn stanie się przekrojem, a splajn zaznaczony w następnej kolejności będzie ścieżką. Jeśli natomiast klikniesz przycisk Get Shape, zaznaczony wcześniej splajn stanie się ścieżką, natomiast przekrojem będzie splajn, który zaznaczysz po kliknięciu przycisku. Pomimo że program nie blokuje automatycznie takiej możliwości, nie wszystkie splajny mogą być wykorzystane jako ścieżki lub przekroje w obiektach Loft. Jeśli np. splajn zawiera dwie zamknięte i rozdzielone krzywe (jak w przypadku kształtów typu Donut), nie możesz użyć go w charakterze ścieżki wytłoczenia.

Gdy wybierasz kształt lub ścieżkę za pomocą przycisków Get Shape i Get Path, możesz zdecydować, czy pierwotny splajn ma być przemieszczony (Move), czy też ma być utworzona jego kopia (Copy) lub klon (Instance). W przypadku opcji Instance masz możliwość późniejszego modyfikowania obiektu Loft poprzez operacje wykonywane na klonie ścieżki lub przekroju. Gdy wprowadzisz jakieś zmiany w klonie, obiekt Loft zostanie uaktualniony automatycznie. W splajnie tworzącym ścieżkę ważna jest kolejność wierzchołków. Powierzchnia obiektu Loft będzie tworzona, począwszy od wierzchołka oznaczonego numerem 1. Z numeracją wierzchołków możesz zapoznać się po włączeniu opcji Vertex Numbering w rolecie Selection splajnu typu Editable Spline. Ponadto pierwszy wierzchołek jest wyróżniany kolorem żółtym.

Główne parametry powierzchni W panelu z ustawieniami obiektu Loft znajduje się roleta Surface Parameters. Umieszczono w niej dwie opcje wygładzania powierzchni obiektu: Smooth Length (wygładza segmenty wzdłuż ścieżki) i Smooth Width (wygładza segmenty poprzeczne). W polu Mapping określasz sposób mapowania powierzchni materiałem (wymaga to włączenia opcji Apply Mapping). Parametr Length Repeat decyduje o liczbie powtórzeń mapy wzdłuż ścieżki, natomiast parametr Width Repeat wpływa na liczbę powtórzeń mapy na obwodzie przekroju poprzecznego bryły. Opcja Normalize definiuje współrzędne mapowania proporcjonalnie do odstępów pomiędzy wierzchołkami krzywych. Dzięki opcjom w polu Materials możesz zadecydować o automatycznym wygenerowaniu numerów ID materiału (Generate Material IDs) i o tym, czy numeracja ta ma opierać się na numeracji zdefiniowanej dla splajnów przed utworzeniem obiektu Loft. Możesz także wybrać, czy w rezultacie utworzenia obiektu Loft ma powstać siatka (Mesh), czy łata (Patch).

Parametry ścieżki Roleta Path Parameters, zaprezentowana na rysunku 27.16, pozwala rozmieścić wzdłuż ścieżki więcej przekrojów, które mogą różnić się pomiędzy sobą kształtem i wymiarami. Parametr Path określa (procentowo lub w jednostkach odległości) pozycję danego przekroju

Rozdział 27.  Obiekty złożone

811

Rysunek 27.16. Rolety obiektu złożonego Loft

na ścieżce. Po włączeniu opcji Snap On przekroje będą przesuwane wzdłuż ścieżki w określonych odstępach. Parametr Path Steps zwiększa lub zmniejsza szczegółowość obiektu wzdłuż ścieżki. Zazwyczaj dla każdej ścieżki definiuje się inną wartość tego parametru, stosownie do stopnia jej skomplikowania. W oknach widokowych w miejscu wstawiania nowego przekroju wyświetlany jest mały znacznik przypominający literę X. W dole rolety Path Parameters znajdują się trzy przyciski, których działanie opisane zostało w tabeli 27.1. Tabela 27.1. Przyciski w rolecie Path Parameters Przycisk

Nazwa

Opis

Pick Shape

Wstawienie nowego splajnu jako przekroju w określonym miejscu ścieżki.

Previous Shape

Przejście do poprzedniego przekroju na ścieżce wytłaczania.

Next Shape

Przejście do następnego przekroju na ścieżce wytłaczania.

Dodatkowe parametry powierzchni W rolecie Skin Parameters znajduje się wiele ustawień mających wpływ na stopień złożoności powierzchni obiektu Loft. Przede wszystkim masz możliwość utworzenia ścianek domykających obiekt na początku (Cap Start) i na końcu ścieżki (Cap End). Ścianki te mogą mieć postać zwykłych wieloboków (Morph) lub siatki (Grid). Oprócz tego roleta Skin Parameters zawiera opcje związane z powierzchnią rozpinaną na przekrojach obiektu Loft. Oto one. 

Shape Steps i Path Steps — określają liczbę segmentów siatki tworzonych w poprzek i wzdłuż ścieżki obiektu. Jeśli ścieżka zawiera prostoliniowe odcinki, możesz, używając opcji Optimize Path, wyłączyć segmentację wzdłuż ścieżki na tych odcinkach.

812

Część VI  Modelowanie zaawansowane 

Optimize Shapes i Optimize Path — automatycznie usuwają niepotrzebne segmenty na liniowych odcinkach przekrojów i ścieżki.



Adaptive Path Steps — automatycznie wyznacza segmentację ścieżki w celu zachowania jej gładkich krzywizn.



Contour — opcja ta, jeśli jest włączona, obraca przekroje w taki sposób, aby zawsze były prostopadłe do ścieżki. Jeśli ją wyłączysz, wszystkie przekroje zachowają swoją pierwotną orientację, niezależnie od kształtu ścieżki.



Banking — obraca przekroje wokół osi ścieżki na jej zakrętach.



Constant Cross-Section — skaluje przekroje w celu zachowania jednolitej grubości obiektu w miejscach wygięć ścieżki. Jeśli wyłączysz tę opcję, w miejscach najostrzejszych krzywizn pojawią się mocne wybrzuszenia.



Linear Interpolation — tworzy prostoliniowe segmenty pomiędzy różniącymi się od siebie przekrojami. Po wyłączeniu tej opcji segmenty będą zawierały krzywizny wygładzające kształt siatki pomiędzy przekrojami.



Flip Normals — używana do korygowania niewłaściwej orientacji normalnych siatki. Czasami normalne obiektu Loft są zwrócone do wewnątrz bryły i należy je odwrócić za pomocą opcji Flip Normals.



Quad Sides — jeśli włączona, ścianki w segmentach siatki są prostokątne. W przeciwnym razie siatka jest dzielona na trójkąty.



Transform Degrade — ukrywa siatkę obiektu Loft, gdy wykonujemy transformację podobiektów. Często pomaga to podczas modyfikowania kształtu ścieżki lub przekrojów.

Opcje wyświetlania (Display) w dole rolety Skin Parameters pozwalają określić sposób reprezentacji siatki obiektu Loft w oknach widokowych. Opcja Skin włącza wyświetlanie siatki we wszystkich oknach, natomiast opcja Skin in Shaded włącza widok siatki wyłącznie dla okien z cieniowanym trybem wyświetlania.

Ćwiczenie: Projektowanie wieszaka Jako przykład wykorzystania obiektu z różnymi przekrojami ustawionymi wzdłuż ścieżki opracujemy model wieszaka na ubrania. Górna część obiektu będzie posiadała zaokrąglony przekrój, natomiast w części dolnej użyjemy przekroju z ostrzejszymi krawędziami, które mają zabezpieczać ubrania przed spadaniem. Aby utworzyć model Loft wieszaka o zróżnicowanych przekrojach, wykonaj poniższe czynności. 1. Otwórz plik Lofted slip-proof hanger.max z folderu Chap 27 na płycie dołączonej do książki. Plik zawiera splajn odpowiadający kształtem wieszakowi oraz dwa proste kształty. 2. Zaznacz splajn wieszaka i wybierz polecenie Create/Compound/Loft.

Rozdział 27.  Obiekty złożone

813

3. W rolecie Creation Method włącz przycisk Get Shape i kliknij kształt małego kółka (upewnij się, że opcja Copy jest włączona). W ten sposób wytłoczysz cały wieszak, nadając mu okrągły przekrój. 4. Włącz opcję Path Steps w rolecie Path Parameters. Pojawi się wówczas okno ostrzegawcze, informujące o ryzyku przesunięcia kształtów. Kliknij przycisk Yes, by kontynuować pracę. Zwiększ wartość Path tak, by żółty znacznik X widoczny w oknie widokowym ustawiony został na początku dolnej poprzeczki wieszaka (w tym konkretnym ćwiczeniu wartość ta powinna wynosić 53). Ponownie kliknij przycisk Get Shape i jeszcze raz wskaż mały, kolisty kształt. Tym sposobem rozciągniesz kołowy przekrój od segmentu zerowego (Step 0) do 53. (Step 53). 5. Zwiększ wartość Path o jedną jednostkę, do 54, kliknij przycisk Get Shape i zaznacz kształt gwiazdy. Spowoduje to nadanie przekroju gwiazdy pozostałym elementom wieszaka. Jeszcze raz zwiększ wartość Path, tak by sięgnąć końca poprzeczki (przy Step 60), naciśnij przycisk Get Shape i ponownie wyselekcjonuj kształt gwiazdy, by dokończyć gwiaździsty przekrój. Jeśli pomylisz się i nie wstawisz odpowiedniego przekroju na początku i końcu każdego fragmentu ścieżki, program wygeneruje płynne przejście pomiędzy pierwszym i drugim przekrojem.

6. Ostatni raz zwiększ parametr Path, wpisując w jego polu wartość 61. Naciśnij przycisk Get Shape i kliknij okrągły splajn. Naciśnij przycisk oznaczony ikoną Pick Shape u dołu okna dialogowego Path Parameters, zmieniając przekrój wieszaka do samego końca ścieżki. Kliknij prawym przyciskiem myszy w oknie widokowym, aby wyłączyć tryb Get Shape. Na rysunku 27.17 zaprezentowano ukończony projekt wieszaka.

Deformacje obiektów wytłaczanych Gdy zaznaczysz utworzony wcześniej obiekt typu Loft i przejdziesz do panelu Modify, znajdziesz w nim roletę Deformations. Zawiera ona pięć przycisków, które włączają deformacje skalowania (Scale), skręcenia (Twist), przechyłu (Teeter), fazowania (Bevel) i dopasowania (Fit) przekrojów rozmieszczanych na ścieżce. Każdy z przycisków otwiera podobne okno, w którym wyświetlana jest krzywa sterująca deformacją i narzędzia pozwalające na jej edycję. Obok przycisków znajdują się ikony żarówek, które pozwalają włączyć lub wyłączyć daną deformację.

Okno deformacji Każdą deformacją steruje się przy użyciu tego samego okna oraz kontrolek. Linie pionowe w tym oknie prezentują wierzchołki ścieżki wytłoczenia. Przykład tego okna dla deformacji skalowania, czyli Scale Deformation, przedstawiono na rysunku 27.18. Przeciągając punkty kontrolne wykresu, zmieniasz intensywność deformacji w określonym punkcie na ścieżce. W dowolnych miejscach krzywej możesz wstawiać nowe punkty

814

Część VI  Modelowanie zaawansowane

Rysunek 27.17. Wieszak wytłoczony przy użyciu dwóch różnych przekrojów Rysunek 27.18. Okno Deformation pozwala określać stopień deformacji obiektu na różnych odcinkach ścieżki

kontrolne. Punkty te mogą być w jednym z trzech następujących typów: Corner, Bezier Corner i Bezier Smooth. Punkty typu Bezier posiadają specjalne uchwyty, przy użyciu których możesz zmieniać promień krzywizny i nachylenie wykresu w sąsiedztwie punktu. Jeśli chcesz zmienić typ wybranego punktu kontrolnego na inny, kliknij ten punkt prawym przyciskiem myszy i wybierz odpowiadający Ci typ z menu podręcznego. Punkty na końcach krzywej muszą być typu Bezier Corner lub Corner. Aby przesunąć zaznaczony punkt kontrolny, przeciągnij go po włączeniu ikony Move Control Point lub wprowadź nowe współrzędne punktu w polach numerycznych znajdujących się w dole okna. W tabeli 27.2 opisano poszczególne ikony narzędzi w oknie Deformation.

Rozdział 27.  Obiekty złożone

815

Tabela 27.2. Przyciski w oknie dialogowym Deformation Ikona

Nazwa

Opis

Make Symmetrical

Sprzęga ze sobą dwie krzywe w taki sposób, że zmiany w jednej krzywej będą identyczne ze zmianami w drugiej.

Display X-Axis

Włącza wyświetlanie tylko krzywej deformacji względem osi X.

Display Y-Axis

Włącza wyświetlanie tylko krzywej deformacji względem osi Y.

Display XY axes

Włącza wyświetlanie krzywych dla obu osi.

Swap Deform Curves

Zamienia miejscami krzywe deformacji obu osi.

Move Control Point

Pozwala przemieszczać punkty kontrolne. Z rozwijanej listy możesz też wybrać narzędzie przesuwania tylko w pionie lub tylko w poziomie.

Scale Control Point

Skaluje zaznaczone punkty kontrolne.

Insert Corner Point, Insert Bezier Point

Wstawia nowy punkt kontrolny określonego typu w wybranym miejscu krzywej.

Delete Control Point

Usuwa zaznaczony punkt kontrolny.

Reset Curve

Przywraca krzywym kształt domyślny.

Pan

Pozwala przesuwać kursorem widok w oknie Deformation.

Zoom Extents

Dopasowuje widok w oknie do rozmiarów krzywych.

Zoom Horizontal Extents

Dopasowuje widok w oknie do osi poziomej.

Zoom Vertical Extents

Dopasowuje widok w oknie do zakresu wartości na pionowej osi.

Zoom Horizontally

Pozwala skalować kursorem widok w poziomie.

Zoom Vertically

Pozwala skalować kursorem widok w pionie.

Zoom

Powiększa i pomniejsza widok podczas przeciągania kursorem.

Zoom Region

Powiększa zadany obszar okna.

Niektóre narzędzia nie są dostępne dla deformacji Twist i Bevel, ponieważ deformacje te uwzględniają tylko jedną krzywą kontrolną.

816

Część VI  Modelowanie zaawansowane

W dole okna Deformation znajdują się dwa pola numeryczne. Wartości w nich widoczne odpowiadają współrzędnym zaznaczonego punktu kontrolnego na wykresie — możesz je odczytać i w razie potrzeby zmodyfikować. Ikony nawigacyjne w prawym dolnym rogu okna umożliwiają wygodne dopasowanie widoku krzywej do rozmiarów okna. Na rysunkach 27.19 oraz 27.20 przedstawiono działanie różnych deformacji na przykładzie wytłaczanej kolumny. Rysunek 27.19. Wytłaczana kolumna zdeformowana przy użyciu opcji Scale, Twist oraz Teeter

Rysunek 27.20. Ta sama kolumna zdeformowana przy użyciu opcji Bevel i Fit

Deformacja skali (Scale) Deformacja ta skaluje kolejne przekroje obiektu Loft we współrzędnych X i Y. Współrzędnym w oknie Scale Deformation odpowiadają dwie krzywe — czerwona (dla osi X) i zielona (dla osi Y). Domyślnie obie linie utrzymują wartości 100% na całej długości wykresu. Określając wartość większą niż 100%, powiększamy przekroje, natomiast dla wartości poniżej 100% przekroje są pomniejszane.

Deformacja skręcenia (Twist) W przypadku tej deformacji przekroje są obracane wokół osi ścieżki i można w ten sposób uzyskać różnego rodzaju spiralne powierzchnie. Rezultat może być podobny do efektu związanego z opcją Banking w rolecie Skin Parameters, jednak tutaj masz o wiele większe możliwości w zakresie precyzyjnego obracania przekrojów. Deformacja Twist jest sterowana kształtem tylko jednej krzywej kontrolnej, która reprezentuje wartości kąta obrotu przekrojów. Domyślnie cały wykres przebiega na wartości 0.

Rozdział 27.  Obiekty złożone

817

Dodatnie wartości dadzą w rezultacie obrót w kierunku przeciwnym do ruchu wskazówek zegara, natomiast ujemne wartości spowodują obrót w kierunku zgodnym z ruchem wskazówek.

Deformacja przechyłu (Teeter) Deformacja Teeter obraca przekroje wokół ich lokalnych osi X lub Y. Rezultat może być w niektórych przypadkach podobny do efektu uzyskiwanego przy włączeniu lub wyłączeniu opcji Contour. Działanie deformacji Teeter jest definiowane za pomocą dwóch krzywych kontrolnych — zielonej (dla obrotu względem osi X) i czerwonej (dla obrotu wokół osi Y). Domyślnie obie współrzędne mają dla całej długości obiektu wartość 0. Wartości dodatnie powodują obrót przeciwny do ruchu wskazówek zegara, a wartości ujemne — zgodny z ruchem wskazówek.

Deformacja fazowania (Bevel) Deformacja Bevel polega na fazowaniu przekrojów i jest określana przez tylko jedną krzywą kontrolną. Domyślnie jest ona wyświetlana w kolorze czerwonym i ustawiana na wartości 0. Należy pamiętać, że wartości dodatnie dają w efekcie silniejsze fazowanie i pomniejszają przekroje, natomiast wartości ujemne mają odwrotne działanie. W oknie Bevel Deformation można, korzystając z rozwijanej grupy przycisków na pasku narzędziowym, wybrać jedną z trzech opcji fazowania: Normal, Adaptive Linear i Adaptive Cubic. Opcje te zostały opisane w tabeli 27.3. Tabela 27.3. Przyciski deformacji fazowania Ikona

Nazwa

Opis

Normal Bevel

Krawędzie fazowania są równoległe, niezależnie od kąta zakrzywienia ścieżki.

Adaptive (Linear)

Fazowanie liniowe, zgodne z kątem zakrzywienia ścieżki.

Adaptive (Cubic)

Fazowanie w oparciu o funkcję trzeciego stopnia, zgodne z kątem zakrzywienia ścieżki.

Deformacja dopasowania (Fit) W oknie deformacji dopasowania (Fit Deformation), przedstawionym na rysunku 27.21, możesz określić profile, do których skalowane będą przekroje podczas wytłaczania wzdłuż ścieżki. Deformacja jest sterowana dwiema krzywymi — czerwoną (względem osi X) i zieloną (względem osi Y). Domyślnie obie krzywe utrzymują stałą wartość 100%. Wartości powyżej 100% powiększają, natomiast wartości poniżej tej granicy dają przeciwny efekt. Stosując deformację dopasowania, nie można sprawić, aby powierzchnia obiektu cofała się wzdłuż ścieżki.

818

Część VI  Modelowanie zaawansowane

Rysunek 27.21. Deformacja Fit nakładana na obiekt Loft

Na listwie narzędziowej okna Fit Deformation znajduje się dziesięć przycisków, z których większość nie występuje w oknach pozostałych deformacji. Narzędzia te opisano w tabeli 27.4. Tabela 27.4. Przyciski w oknie dialogowym Fit Deformation Ikona

Nazwa

Opis

Mirror Horizontally

Lustrzane odbicie krzywej w poziomie.

Mirror Vertically

Lustrzane odbicie krzywej w pionie.

Rotate 90 CCW

Obrót krzywej o 90° w kierunku przeciwnym do ruchu wskazówek zegara.

Rotate 90 CW

Obrót krzywej o 90° w kierunku zgodnym z ruchem wskazówek zegara.

Delete Control Point

Usunięcie zaznaczonego punktu kontrolnego.

Reset Curve

Przywrócenie domyślnych ustawień deformacji.

Delete Curve

Usunięcie wybranej krzywej.

Get Shape

Skopiowanie kształtu krzywej ze splajnu znajdującego się w scenie.

Generate Path

Zastąpienie bieżącej ścieżki obiektu Loft linią prostą.

Lock Aspect

Zachowanie proporcji między wysokością a szerokością.

Edycja struktury obiektów typu Loft Po zaznaczeniu obiektu Loft możesz pracować na poziomie jego podobiektów w panelu Modify. Dostępne są tutaj dwa poziomy edycji — ścieżka (Path) i kształty (Shape). Gdy przejdziesz na poziom Path, wyświetlana jest roleta Path Commands. Znajduje się w niej

Rozdział 27.  Obiekty złożone

819

tylko jeden przycisk — Put, który pozwala utworzyć kopię ścieżki wytłaczania. Jeśli użyjesz tego przycisku, otwarte zostanie okno Put To Scene, w którym możesz określić nazwę docelowego obiektu i zdecydować, czy ma być to zwykła kopia (Copy), czy klon (Instance). Jeżeli użyjesz opcji Instance, będziesz mógł modyfikować splajn i w ten sposób wpływać na kształt ścieżki wytłoczenia. Skalowanie lub przemieszczanie przekroju poprzecznego nie ma wpływu na obiekt wytłaczany, bo nie ma sposobu na przekazania takich informacji. Ale jeśli zastosujesz modyfikator XForm, będziesz mógł sterować transformacjami przekroju również po jego wytłoczeniu.

Przechodząc na poziom Shape, wyświetlasz roletę Shape Commands. Tutaj również znajduje się przycisk Put, ale oprócz niego dostępne są jeszcze inne narzędzia. Parametr Path Level określa położenie wybranego przekroju na ścieżce. Przycisk Compare otwiera okno służące do porównywania kształtów (przeczytasz o nim w następnym podrozdziale). Przyciskiem Reset przywracamy wcześniejszy stan przekroju, jeśli nieopatrznie wykonaliśmy niewłaściwą jego transformację, natomiast przy użyciu przycisku Delete usuwamy dany przekrój z obiektu. Jeśli obiekt Loft zawiera tylko jeden przekrój, nie można go usunąć.

W polu Align znajduje się sześć przycisków, które umożliwiają wyrównywanie przekroju względem ścieżki na kilka sposobów: do środka (Center), domyślnie (Default), do lewej (Left), do prawej (Right), do góry (Top) i do dołu (Bottom). Wyrównywanie jest wykonywane wzdłuż osi X (Left i Right) lub Y (Top i Bottom) lokalnego układu współrzędnych.

Porównywanie kształtów na ścieżce W oknie Compare masz możliwość obejrzenia wybranych przekrojów obiektu, wyświetlanych jeden na drugim, co pozwala m.in. ocenić ich wzajemne wyrównanie i dopasowanie kształtów. Po włączeniu w lewym górnym rogu okna ikony Pick Shape możesz kolejnymi kliknięciami w scenie wstawiać do okna Compare różne przekroje. Ikona, która znajduje się na prawo od niej (Reset), usuwa przekrój z okna Compare. Na rysunku 27.22 pokazano okno Compare wyświetlające dwa przekroje przykładowego modelu kolumny. Zwróć uwagę na to, że pierwszy wierzchołek w jednym przekroju (wyróżniony małym kwadratem) jest przesunięty względem pierwszego wierzchołka w drugim przekroju. Może to powodować pewne zniekształcenie bocznej powierzchni obiektu — jej skręcanie. Wierzchołki w tych przekrojach można wyrównać, dzieląc splajn kwadratowy przy użyciu modyfikatora Edit Spline i używając przycisku Make First po zaznaczeniu nowego wierzchołka.

W czasie gdy okno Compare jest otwarte, możesz korzystać z przycisków wyrównywania przekrojów w sekcji Align rolety Shape Commands. Pierwszy wierzchołek każdego przekroju jest wyróżniony niewielkim kwadratem. Jeśli wierzchołek ten w jednym splajnie będzie przesunięty względem jego odpowiednika w innym przekroju, w rezultacie mogą powstać zniekształcenia powierzchni obiektu Loft. Ikony w prawym dolnym rogu okna

820

Część VI  Modelowanie zaawansowane

Rysunek 27.22. Za pomocą okna dialogowego Compare możesz porównać przekroje wykorzystane w obiekcie Loft

Compare służą do dopasowywania widoku do okna: View Extents skaluje widok do rozmiarów okna, Pan pozwala przesuwać go kursorem, Zoom powiększa i pomniejsza widok, natomiast Zoom Region powiększa obszar widoku zaznaczony ramką.

Edycja ścieżek Splajny wykorzystane do utworzenia obiektu Loft można modyfikować podczas późniejszej pracy nad obiektem. Jeżeli odpowiednio sklonujesz splajny przed utworzeniem obiektu lub po tej operacji, przeprowadzone w nich zmiany wpłyną na kształt siatki w obiekcie Loft. Kształty, jeśli nie są widoczne, można zaznaczać przy użyciu przycisku Select by Name. Zachowują one swoje podstawowe parametry i można je przekształcać w obiekty Editable Spline.

Ćwiczenie: Drapowanie kotary Modelowanie różnych elementów wyposażenia wnętrz mieszkalnych jest chlebem powszednim dla rzesz profesjonalnych architektów i projektantów. Jednym z zadań wymagających pewnego sprytu jest modelowanie różnego rodzaju tkanin. W tym ćwiczeniu, wykorzystując obiekt typu Loft, utworzymy model drapowanej kotary. Aby zrealizować to zadanie, wykonaj następujące czynności. 1. Otwórz plik Lofted drapes.max zapisany w folderze Chap 27 na płycie dołączonej do książki. W pliku znajdują się dwa splajny, które wykorzystamy do utworzenia modelu. 2. Zaznacz prostoliniowy splajn i wybierz polecenie Create/Compound/Loft. W rolecie Creation Method kliknij przycisk Get Shape i kliknij splajn przekroju. 3. Otwórz panel Modify i wyłącz opcje Contour oraz Banking w rolecie Skin Parameters. 4. W rolecie Deformations kliknij przycisk Scale. W oknie Scale Deformation włącz przycisk Insert Corner Point i wstaw nowy punkt kontrolny dla mniej więcej 75% długości ścieżki. Włącz przycisk Move Control Point i przeciągnij nowy punkt w dół, aby ściągnąć fałdy kotary tak jak na rysunku 27.23.

Rozdział 27.  Obiekty złożone

821

Rysunek 27.23. Drapowana kotara — powstała jako obiekt typu Loft

Obiekty Loft a narzędzia do edycji powierzchni Obiekty złożone typu Loft można tworzyć od podstaw z dwuwymiarowych splajnów: jeden otwarty splajn wykorzystywany jest zwykle jako ścieżka wytłaczania, zaś pozostałe, zamknięte splajny, jako przekroje. Podczas wytłaczania można zastosować szereg różnych przekrojów, płynnie zmieniając je na całej długości ścieżki. Przekroje mogą się przy tym różnić liczbą wierzchołków. Możesz je też modyfikować, skalując i obracając, za pomocą opcji dostępnych w rolecie Deformations. Więcej informacji na temat narzędzi do edycji powierzchni znajdziesz w dodatku G, „Praca z obiektami NURBS”.

Narzędzia do edycji powierzchni, wśród których wyliczyć można modyfikatory CrossSection oraz Surface, pozwalają modelować obiekty w sposób podobny do wytłaczania metodą Loft. Modyfikator CrossSection pobiera zbiór przekrojów, po czym łączy ich wierzchołki dodatkowymi splajnami, tworząc z nich szkielet, który można pokryć powierzchnią za pomocą modyfikatora Surface. Choć podobne z natury, obiekty Loft różnią się nieco od narzędzi powierzchniowych, ale i jedne, i drugie mają swoje mocne strony. Jedna z różnic polega na tym, że modyfikator CrossSection łączy splajny przekrojów zgodnie z ich uporządkowaniem. Jeśli jest ono nieprawidłowe, rezultaty mogą być bardzo dziwaczne. Wytłaczanie Loft zawsze przebiega wzdłuż ścieżki, w związku z czym uporządkowanie przekrojów nie stanowi problemu.

822

Część VI  Modelowanie zaawansowane

Kolejna różnica tkwi w zakresie kontroli modelowania powierzchni, która w przypadku narzędzi powierzchniowych jest nieco szersza. Ponieważ szkielet obiektu składa się ze splajnów, dodawanie nowych odgałęzień nie przysparza większych trudności. Obiekty Loft mogą sprawiać ich znacznie więcej. Ogólnie rzecz biorąc, obiekty Loft są lepiej przystosowane do modelowania obiektów o zwartej budowie i względnie jednolitych przekrojach. Z kolei narzędzia powierzchniowe lepiej nadają się do tworzenia modeli różnego typu obiektów organicznych.

Obiekty ProBoolean i ProCutter Pierwotne obiekty boolowskie spisywały się dobrze w zakresie dodawania, odejmowania i wydzielania części wspólnej obiektów, ale miały też swoje ograniczenia, które zostały usunięte w nowych obiektach typu ProBoolean i ProCutter. Tamte obiekty mogły wykonywać operacje logiczne tylko na dwóch obiektach naraz, a nowe mogą to robić z wieloma obiektami. Obiekty ProBoolean mogą także dzielić obiekt wynikowy na czworokątne ścianki, a poza tym obiekt wynikowy jest teraz klarowniejszy i dokładniejszy. Pierwotne obiekty boolowskie są nadal dostępne ze względu na konieczność zachowania zgodności z poprzednimi wersjami programu, ale do przeprowadzania nowych operacji powinno się już używać obiektów proboolowskich.

Stosowanie obiektów proboolowskich Gdy siatki dwóch obiektów wzajemnie na siebie zachodzą, możesz wykonać na nich operacje logiczne (operacje boolowskie), tworząc na ich podstawie jeden obiekt. Operacje proboolowskie to dodawanie obiektów (Union), wyznaczanie części wspólnej (Intersection), odejmowanie (Subtraction), przyłączanie (Merge), dołączanie (Attach) i wstawianie (Insert). Dostępne są przy tym dwie dodatkowe opcje: Imprint (odciskanie) i Cookie (wycinanie). W przypadku operacji dodawania program tworzy nową siatkę składającą się z widocznych elementów siatek składowych. Operacja odejmowania wycina z jednego obiektu część wspólną z innym obiektem. W operacji wyznaczania części wspólnej pozostają jedynie te części obiektów, które wzajemnie się przenikały. Przyłączanie polega na łączeniu obiektów bez usuwania wewnętrznych ścianek i dodaniu krawędzi tam, gdzie obiekty wzajemnie się przenikają. Na rysunku 27.24 zaprezentowano efekty działania czterech operatorów proboolowskich. W odróżnieniu od wielu programów CAD, w których operacje boolowskie są stosowane na pełnych bryłach, Max wykonuje te operacje na powierzchniach, więc jeśli powierzchnie dwóch obiektów nie przecinają się, wykonanie operacji boolowskiej (oprócz Union) nie daje żadnych widocznych skutków.

Operacja dołączania (Attach) działa podobnie jak dodawanie (Union), ale pozostawia łączone obiekty jako oddzielne elementy tego samego obiektu złożonego. Jeśli zajrzysz do wnętrza obiektu utworzonego na zasadzie dodawania, nie zobaczysz tam żadnych wewnętrznych ścianek. Natomiast wewnątrz obiektu będącego rezultatem dołączania znajdziesz wszystkie ścianki obiektów składowych.

Rozdział 27.  Obiekty złożone

823

Rysunek 27.24. Obiekty przed i po wykonaniu operacji proboolowskich: Union, Intersection, Subtraction i Merge z włączoną opcją Imprint

Operacja wstawiania (Insert) polega na odejmowaniu drugiego obiektu od pierwszego, a następnie łączeniu ich w jedną całość. Jeśli w wyniku odejmowania powstanie w pierwszym obiekcie zagłębienie lub dziura, efekt ten pozostanie również po połączeniu obu obiektów, ale pod warunkiem, że drugi obiekt nie jest dziurawy w miejscu połączenia. Na rysunku 27.25 pokazane są obiekty typu rura (Tube) pokrywające się częściowo z prostopadłościanem. Rura po lewej jest zamknięta od dołu, a ta po prawej — nie. Po zastosowaniu operacji Insert rura z denkiem wycięła w prostopadłościanie otwór, a rura otwarta nie zdołała tego uczynić.

Rysunek 27.25. Operacja Insert zachowuje efekty odejmowania tylko w zamkniętej objętości

824

Część VI  Modelowanie zaawansowane

Opcja Cookie sprawia, że w wyniku operacji logicznej do siatki obiektu oryginalnego nie są dodawane żadne ścianki z innych obiektów. Opcja Imprint pozostawia na obiekcie oryginalnym kontur wyznaczający miejsce przecięcia z innym obiektem. Wszystkie operacje boolowskie są warstwowo układane na stosie w rolecie Parameters. Pozwala to w dowolnej chwili cofnąć się do każdej z nich i dokonać modyfikacji. Przykładowo, jeśli zaznaczysz na tym stosie operację odejmowania (Subtraction) i zmienisz ją na dodawanie (Union), a następnie klikniesz przycisk Change Operation, odejmowanie zostanie zamienione na dodawanie. Po zaznaczeniu operacji na stosie można powrócić do obiektu oryginalnego, klikając przycisk Extract Selected. Można przy tym wybrać jedną z następujących opcji: Remove (usuń), Copy (kopiuj) lub Instance (utwórz klon). Kolejność operacji ma duży wpływ na ostateczny rezultat. Aby ją zmienić, zaznacz operację na stosie, wpisz jej nową pozycję w polu obok przycisku Reorder Ops i kliknij ten przycisk. Operacje boolowskie można przeprowadzać także na kształtach, korzystając z operatorów Boolean dostępnych dla obiektów Editable Spline w rolecie Geometry. Te dwuwymiarowe operatory boolowskie zostały opisane w rozdziale 12., „Rysowanie i edycja dwuwymiarowych splajnów i kształtów”.

Dla nowych ścianek powstających w wyniku operacji boolowskich można wybrać materiał obiektu będącego operandem (opcja Apply Operand Material) lub pozostawić materiał obiektu oryginalnego (Retain Original Material)1. Jeśli dla operacji odejmowania wybierzesz opcję Apply Operand Material, powierzchnia stykająca się z obiektem wskazanym jako operand przejmie materiał od niego, a reszta obiektu zachowa materiał oryginalny. Jeśli zaś wybierzesz opcję Retain Original Material, cały obiekt będący rezultatem operacji odejmowania przejmie materiał od obiektu oryginalnego. W rolecie Advanced Options znajdują się opcje związane z uaktualnianiem wyglądu obiektów boolowskich oraz obniżaniem ich rozdzielczości. Parametr Decimation (dziesiątkowanie) określa, jaki procent krawędzi ma być usunięty z obiektu wynikowego. Jeśli planujesz wygładzać obiekt wynikowy lub konwertować go do postaci Editable Poly, włącz opcję Make Quadrilaterals, która zmniejsza liczbę wielokątów przez likwidację trójkątów na rzecz czworokątów. Można również określić rozmiar tych czworokątów (Quad Size), a także ustalić sposób traktowania krawędzi współpłaszczyznowych (sekcja Planar Edge Removal). Jeśli planujesz deformować siatkę jako skórę nakładaną na szkielet lub w ramach symulacji dynamiki tkaniny, wynikowa siatka musi być klarowna. W przeciwnym przypadku deformacje mogą być problematyczne.

Ćwiczenie: Wycinanie dziurki od klucza Co zobaczyła Alicja, gdy spojrzała przez dziurkę od klucza? Do wycinania takich dziurek doskonale nadają się obiekty typu ProBoolean. Aby utworzyć dziurkę od klucza, wykonaj następujące czynności. 1

Termin obiekt oryginalny oznacza tutaj obiekt wskazany jako pierwszy podczas przeprowadzania operacji logicznych. Obiekty wskazane w dalszej kolejności to operandy — przyp. tłum.

Rozdział 27.  Obiekty złożone

825

1. Otwórz plik Doorknob.max, który znajdziesz w folderze Chap 27 na płycie dołączonej do książki. 2. Zaznacz szyld drzwiowy, w którym będzie wycinany otwór, i wybierz polecenie Create/Compound/ProBoolean. W rolecie Parameters zaznacz opcję Subtraction. 3. W rolecie Pick Boolean kliknij przycisk Start Picking i zaznacz obiekty Box oraz Cylinder ustawione w miejscu, w którym powinna powstać dziurka. Gotowa dziurka została pokazana na rysunku 27.26.

Rysunek 27.26. Dziurka od klucza wykonana przy użyciu obiektu ProBoolean

Obiekt ProCutter Dawne obiekty boolowskie zawierały opcję Cut. Obecnie tę funkcję realizuje obiekt typu ProCutter o znacznie większych możliwościach. Teraz obiekty, zwane wsadem (Stock Objects), mogą być rozcinane wieloma obiektami tnącymi (Cutter Objects) jednocześnie. W rolecie Cutter Picking Parameters znajdują się przyciski umożliwiające wskazywanie zarówno obiektów wsadowych, jak i tnących. Dla jednych i drugich można wybrać opcję tworzenia odnośników (Reference), przemieszczania (Move), kopiowania (Copy) lub klonowania (Instance). Tryb Auto Extract Mesh automatycznie zastępuje obiekt wsadowy obiektem wynikowym. Jeśli ten tryb jest włączony, opcja Explode By Elements dodatkowo zamienia odcięte fragmenty w samodzielne obiekty.

826

Część VI  Modelowanie zaawansowane

Roleta Cutter Parameters oferuje trzy opcje cięcia (Cutting Options). Pierwsza z nich, Stock Outside Cutter, pozostawia po cięciu tę część obiektu wsadowego, która leży na zewnątrz obiektu tnącego. Opcja Stock Inside Cutter działa na odwrót — pozostawia tę część wsadu, która leży wewnątrz obiektu tnącego. Z kolei opcja Cutter Outside Stock pozostawia te części obiektów tnących, które leżą poza obiektem wsadowym. Nazwy wszystkich obiektów wsadowych i tnących są wyświetlane na liście w rolecie Cutter Parameters. Za pomocą przycisku Extract Selected można wyodrębnić w pierwotnej postaci dowolny obiekt zaznaczony na tej liście. Można przy tym wybrać, czy ma się to odbyć przez usunięcie danego obiektu z obiektu ProCutter (opcja Move), skopiowanie go (Copy) lub sklonowanie (Inst). Opcje związane z materiałami i upraszczaniem siatki (Decimation) działają podobnie jak w przypadku obiektów ProBoolean. Obiekty ProCutter są pomocne przy animowaniu eksplozji połączonych z rozpadaniem się obiektów na kawałki.

Ćwiczenie: Tworzenie puzzli Obiekty rozcinane (ProCutter) można wykorzystywać w scenach destrukcyjnych, z rozbijaniem szkła lub burzeniem budynków, ale nie tylko. Równie dobrze można ich używać konstruktywnie do tworzenia obiektów przez rozcinanie innych, tak jak dzieje się to w przypadku puzzli. Aby utworzyć puzzle przez pocięcie obiektu na przystające kawałki, wykonaj następujące czynności. 1. Otwórz plik ProCutter puzzle.max, który znajdziesz w folderze Chap 27 na płycie dołączonej do książki. Plik ten zawiera obiekt typu Box z nałożonym obrazkiem i kilka wytłoczonych splajnów wyznaczających krawędzie puzzli. 2. Zaznacz jeden z wytłoczonych splajnów (będzie to obiekt tnący — cutter) i wybierz polecenie Create/Compound/ProCutter. 3. Następnie kliknij przycisk Pick Cutter Objects i zaznacz pozostałe obiekty tnące. W rolecie Cutter Parameters włącz opcje Stock Outside Cutter i Stock Inside Cutter. Zaznacz również opcję Retain Original Material. 4. W rolecie Cutter Picking Parameters włącz opcje Auto Extract Mesh i Explode By Elements. Następnie kliknij przycisk Pick Stock Objects i w oknie widokowym zaznacz obiekt Box. 5. Otwórz edytor materiałów i przeciągnij pierwszą próbkę z materiałem na każdy kawałek puzzli. Jeśli drażni Cię widok linii cięcia, zaznacz je i ukryj.

Na rysunku 27.27 przedstawiono gotowe puzzle z jednym elementem odsuniętym od pozostałych.

Rozdział 27.  Obiekty złożone

827

Rysunek 27.27. Cięcie puzzli przy użyciu obiektu złożonego ProCutter

Podsumowanie Obiekty złożone dają dostęp do dodatkowych metod modelowania. Obiekty morfowane i skomplikowane, deformowane obiekty wytłaczane możesz wykorzystywać do tworzenia wielu rozmaitych modeli. W rozdziale tym omówione zostały następujące zagadnienia: 

typy obiektów złożonych,



morfowanie obiektów o równej liczbie wierzchołków,



tworzenie obiektów Conform o zróżnicowanej liczbie wierzchołków,



wykorzystanie splajnów i obiektów siatkowych do tworzenia obiektów typu ShapeMerge,



tworzenie obiektów Terrain przy użyciu splajnów,



obiekty typu Mesher,



symulowanie przepływu cieczy przy użyciu obiektów BlobMesh,



tworzenie obiektów typu Scatter,



tworzenie obiektów Connect łączących dwa inne obiekty,



tworzenie obiektów typu Loft,



sterowanie parametrami wytłaczania typu Loft,

828

Część VI  Modelowanie zaawansowane 

deformacje obiektów Loft,



modyfikowanie podobiektów Loft,



porównanie obiektów wytłaczanych z narzędziami do edycji powierzchni,



modelowanie przy użyciu obiektów ProBoolean i ProCutter.

W Maksie podstawowym tworzywem modelarskim są obiekty siatkowe i złożone z wielokątów, natomiast w aplikacjach CAD są to pełne bryły. Ogniwem łączącym oba typy jest opisany w następnym rozdziale obiekt o nazwie Body.

Rozdział 28.

Praca z bryłami, czyli obiektami pełnymi W tym rozdziale: 

Importowanie obiektów CAD



Konwertowanie obiektów Maksa do postaci Body



Praca z obiektami typu Body



Eksportowanie obiektów Body

A teraz mały eksperyment. Utwórz w Maksie jakiś obiekt podstawowy i umieść w jego wnętrzu inny obiekt, niech to będzie mały sześcian w większym sześcianie. Następnie za pomocą narzędzia ProBoolean odejmij obiekt wewnętrzny od zewnętrznego. Co otrzymałeś? Nic, absolutnie nic. Rezultat jest taki, a nie inny, ponieważ obiekty Maksa składają się wyłącznie z samej powierzchni i jeśli powierzchnie obiektów nie przecinają się, operacja odejmowania nie daje żadnych rezultatów. Inaczej jest w świecie kreowanym za pomocą programów CAD. Tam obiekty są pełnymi bryłami i opisany wyżej eksperyment miałby sens. W firmie Autodesk dużą wagę przywiązuje się do rozwiązań mających ułatwiać pracę ludziom projektującym rzeczywiste przedmioty i dlatego postanowiono wprowadzić również w Maksie możliwość operowania bryłami. W ten sposób przerzucono most między światem Maksa a światem aplikacji typu CAD. Bryły, czyli obiekty pełne, otrzymały w Maksie nazwę Body Objects. Stają się nimi obiekty importowane z pakietów CAD, ale można też konwertować do takiej postaci zwykłe obiekty Maksa. Body Objects można eksportować do programów CAD, ale też można je poddawać operacjom boolowskim — w wyniku opisanego wyżej eksperymentu otrzymałbyś duży sześcian z wyciętym w środku mniejszym sześcianem.

830

Część VI  Modelowanie zaawansowane

Importowanie obiektów CAD Jeśli spędziłeś dużo czasu nad opracowaniem projektu w aplikacji CAD i przed zbliżającą się prezentacją chcesz go przenieść do Maksa, aby dodać elementy animowane, musisz zacząć od zaimportowania obiektów w formacie ACIS SAT. Max obsługuje także pliki WIRE generowane przez Autodesk Alias Studio. Możliwość importowania obiektów zapisanych w plikach WIRE jest nowością w 3ds Max 2012.

Okno dialogowe z opcjami importu pliku SAT pokazane jest na rysunku 28.1. Domyślnie włączona jest tu opcja Standard – No Welding (standardowo, bez spawania) i w większości przypadków właśnie ona daje najlepsze rezultaty. Każdy obiekt jest wtedy importowany oddzielnie i można obiektami niezależnie manipulować. Rysunek 28.1. Okno dialogowe SAT Import zawiera opcje importowania obiektów CAD

Opcje Single Body umożliwiają zaimportowanie całej zawartości pliku jako jeden obiekt. Jeśli poszczególne obiekty nie zostaną zespawane (Single Body – No Welding), będziesz mógł je zaznaczać i przesuwać, pracując w trybie Elements. Jeśli zostaną zespawane (Single Body – Weld Trimmed Surfaces), będą stanowiły jedną całość bez podziału na elementy. Opcja taka może być przydatna, gdy importowane są składniki tła lub podłoża sceny. Ostatnia opcja (Each Trimmed Surface in Separate Body) importuje każdą przyciętą powierzchnię jako odrębny obiekt. Opcje z sekcji Viewport Body Mesh Quality decydują o wyglądzie (gęstości siatki) zaimportowanego obiektu w oknach widokowych. O precyzji przycinania importowanych obiektów decydują opcje z sekcji 3D Trimming Tolerance. Najlepiej zacząć od niskiej tolerancji i podwyższać ją dopiero wtedy, gdy pojawią się problemy, na przykład w postaci brakujących ścianek. Pliki SAT mają często duże rozmiary i należy uważać przy wyborze ustawień typu Fine (dobry).

Włączenie opcji Automatic Face Flipping (automatyczne odwracanie ścianek) zmusza procedurę importującą do podejmowania prób korygowania złego ustawienia normalnych.

Rozdział 28.  Praca z bryłami, czyli obiektami pełnymi

831

W wielu aplikacjach CAD stosowany jest układ współrzędnych zorientowany inaczej niż w Maksie — w górę skierowana jest oś Y, a nie Z. Importując obiekty z takich aplikacji, należy włączyć opcję Convert SAT Y Axis to Z Axis. Przycisk Select Additional SAT Files for Import otwiera okno dialogowe, w którym można wskazać kolejne pliki, jakie mają być zaimportowane przy tych samych ustawieniach. Importowanie plików SAT jest dosyć czasochłonne, więc dobrym pomysłem jest importowanie kilku naraz.

Konwertowanie obiektów Maksa do postaci Body Obiekty zaimportowane z plików SAT lub WIRE są traktowane w Maksie jako Body Objects, co łatwo sprawdzić, zaglądając do panelu Modify. Obiekty Maksa można konwertować do typu Body za pomocą przycisku Body Object dostępnego w panelu Create po wybraniu podkategorii Body Objects. Wystarczy zaznaczyć obiekt przeznaczony do konwersji i kliknąć przycisk. Rezultat konwersji jest najlepszy wtedy, gdy poddajemy jej obiekt najprostszy. Jeśli musisz przekonwertować jakąś skomplikowaną siatkę, spróbuj najpierw uczynić z niej powierzchnię NURBS, a dopiero potem zastosuj konwersję do typu Body. Obiekty Maksa skonwertowane do postaci Body są nadal tylko powłokami, a nie prawdziwymi bryłami.

Do konwertowania wielu obiektów naraz służy przycisk Body Utylity, który również znajduje się w panelu Create. Za jego pomocą można także zmieniać właściwości wielu obiektów typu Body jednocześnie.

Praca z obiektami typu Body Jeśli zaznaczysz obiekt Body, w panelu Modify dostępne będą trzy tryby podobiektów: krawędź (Edge), ścianka (Face) i element (Element), a na stosie modyfikatorów będziesz mógł wybrać jeszcze tryb operandu (Operand) umożliwiający manipulowanie obiektami biorącymi udział w operacjach boolowskich. Gdy obiekt Maksa zmienia się w obiekt typu Body, zmieniają się również jego podobiekty. Na przykład ścianka zaznaczona na rysunku 28.2 ma długość połowy obwodu torusa. Tak właśnie wyglądają ścianki obiektów CAD. Zwróć również uwagę na fakt, że wraz z włączeniem jakiegokolwiek trybu podobiektowego wyłączane są narzędzia transformacyjne.

Edycja obiektów typu Body Krawędzie obiektów typu Body różnią się od krawędzi wielokątów przede wszystkim tym, że zazwyczaj ukazują tylko kontury obiektu. Gdy takie obiekty przecinają się wzajemnie, powstaje otwarta krawędź (open edge). Otwarte krawędzie mają kolor niebieski i nie są

832

Część VI  Modelowanie zaawansowane

Rysunek 28.2. Podobiekty typu Body wyglądają inaczej niż w pozostałych typach obiektów

połączone z powierzchnią obiektu — po prostu wyznaczają brzegi wyciętych otworów. Aby połączyć taką krawędź z powierzchnią obiektu, należy użyć przycisku Weld Selected (zespawaj zaznaczone) lub Weld All (zespawaj wszystko). Jest również przycisk Welding (spawanie), który rozwija roletę z dodatkowymi opcjami spawania. Krawędzie zaznaczone mają kolor czerwony, a zespawane przyjmują barwę białą. Operacją odwrotną do spawania krawędzi i łączenia ścianek jest ich rozdzielanie. Można rozdzielić tylko zaznaczone krawędzie lub ścianki (przycisk Explode Selected) albo wszystkie (Explode All). Przycisk Face Flip (odwracanie ścianki) umożliwia poprzez specjalną roletę Face Flipping/Visibility ukrywanie wybranych ścianek i odwracanie ich normalnych.

Działanie modyfikatorami na obiekty Body Jednym z obszarów, w których ujawnia się wyższość Maksa nad aplikacjami CAD, jest modelowanie przy użyciu licznych modyfikatorów. Modyfikatory szybko zmieniają obiekt bez naruszania jego natury parametrycznej, ale niektóre wymuszają zmianę typu obiektu.

Obiekty Body a operacje boolowskie W rolecie Object Parameters znajduje się przycisk Pick Object, który umożliwia wskazanie obiektu nienależącego do bieżącego zaznaczenia i połączenie go z tym zaznaczeniem na kilka różnych sposobów. Konkretną metodę połączenia wybieramy za pomocą następujących przycisków:

Rozdział 28.  Praca z bryłami, czyli obiektami pełnymi

833



Attach — przyłącza wskazany obiekt do zaznaczenia jako element i spawa krawędzie.



Detach — odłącza zaznaczony obiekt od obiektu nadrzędnego i tworzy z niego odrębny obiekt Body. Krawędzie nie są spawane.



Merge — łączy wskazany obiekt z bieżącym zaznaczeniem, tworząc jeden obiekt.



Project — rzutuje krzywą na powierzchnię obiektu w celu utworzenia nowych krawędzi. Kierunek rzutowania wyznacza normalna zaznaczonej ścianki.



3-D Cut — tworzy nowe krawędzie na aktywnym obiekcie w miejscach przecięcia z obiektem wskazanym po kliknięciu przycisku Pick Object.



View Cut — tworzy nowe krawędzie na obiekcie Body, rzutując na niego wskazany kontur równolegle do kierunku patrzenia w aktywnym oknie widokowym. Przy włączonej opcji Cut Selected Only nowe krawędzie są tworzone tylko na podobiektach zaznaczonych.

Na rysunku 28.3 pokazano sześcian typu Body, który pocięto, stosując metody 3-D Cut i View Cut. W metodzie 3-D Cut użyto torusa, który potem odsunięto, aby pokazać okrąg powstały w miejscu przecięcia się torusa z sześcianem. W metodzie View Cut zrzutowane zostały krawędzie walca.

Rysunek 28.3. Obiekty typu Body można ciąć, stosując metody 3-D Cut i View Cut

834

Część VI  Modelowanie zaawansowane

Obiekty Join Bodies i Body Cutter Jeśli zaznaczysz co najmniej dwa obiekty, możesz z nich utworzyć jeden obiekt typu Body, klikając przycisk Join Bodies (połącz bryły) w podkategorii Body Objects w panelu Create. Parametry takiej konwersji możesz ustalić w rolecie Conversion Parameters, która wtedy się otworzy. Do wyboru masz następujące opcje: Weld Edges Only (spawaj tylko krawędzie), Weld Into Solid (zespawaj w jedną bryłę), Weld Edges To Surfaces (przyspawaj krawędzie do powierzchni), Do Nothing (nie rób nic), Intersect + Merge Faces (przecinaj i łącz ścianki) i Boolean Union (połącz logicznie). Obiekty zaznaczone przed kliknięciem przycisku Join Bodies nie muszą być bryłami.

Uzyskany w ten sposób obiekt jest typu Join Bodies, który zezwala na dostęp do obiektów składowych zwanych operandami — można je wybierać w rolecie Operator Parameters. Gdy już wszystko jest ustawione prawidłowo, możesz kliknąć przycisk Body Object, aby nadać obiektowi typ Body. Przycisk Body Cutter (rozcinacz brył) uruchamia narzędzie działające podobnie jak ProCutter. Za jego pomocą można odciąć kawałek bryły, używając innego obiektu w charakterze elementu tnącego. Zacznij od zaznaczenia obiektu, który ma być elementem tnącym (nie musi być typu Body). Następnie kliknij przycisk Body Cutter w panelu Create. Zaznaczony obiekt stanie się obiektem typu Body Cutter, a w panelu pojawią się dodatkowe rolety. W rolecie o nazwie Body Cutter Parameters kliknij przycisk Pick Stocks (wskaż wsad) i wskaż obiekt bazowy (czyli ten, którego fragmenty mają być odcinane). Korzystając z przycisku Pick Cutters, możesz wskazać dodatkowe obiekty tnące. Po wykonaniu cięcia możesz zdecydować, które elementy mają być widoczne — odpowiednie opcje znajdziesz w sekcji Cutting Options. Dostępne są różne kombinacje następujących możliwości: Stock Outside Cutters (wsad poza obiektami tnącymi), Stock Inside Cutters (wsad wewnątrz obiektów tnących) i Cutters Outside Stocks (obiekty tnące poza wsadem). Na rysunku 28.4 pokazany jest sześcian z dziurą wyciętą za pomocą walca.

Ustalanie parametrów wyświetlania i renderingu Parametry renderowania obiektów typu Body i wyświetlania ich w oknach widokowych można ustalać niezależnie od innych obiektów. Opcje renderowania są dostępne w rolecie Rendering Approximation. Najłatwiej jest wybrać jedno z ustawień predefiniowanych: Draft (robocze), Good (dobre) lub Production (produkcyjne) — w zależności od tego, jaką jakość chcemy uzyskać i jak długo możemy czekać na wyrenderowanie sceny. Oczywiście w każdym z tych ustawień można zmienić poziom aproksymacji ścianek, krawędzi i cięciw. Wiele z tych ustawień jest dostępne także w rolecie Viewport Display Settings, ale tutaj mają one wpływ na wygląd obiektów w oknach widokowych.

Rozdział 28.  Praca z bryłami, czyli obiektami pełnymi

835

Rysunek 28.4. Funkcja Body Cutter działa podobnie jak narzędzie ProCutter

Eksportowanie obiektów Body Jeśli chcesz przenieść obiekt Body z powrotem do aplikacji CAD, musisz go wyeksportować w formacie ACIS SAT. Polecenie Export jest dostępne w menu aplikacji. W oknie dialogowym SAT Eksport, pokazanym na rysunku 28.5, można przywrócić typowe dla aplikacji CAD ustawienie układu współrzędnych oraz dołączyć do eksportowanego pliku inne rodzaje obiektów — mogą to być proste obiekty podstawowe, NURBS i siatki. Rysunek 28.5. W oknie SAT Export można ustalić, jakie typy obiektów mają być eksportowane

Jeśli eksportujesz obiekt z przypisanymi modyfikatorami, włącz opcję Export Mesh Objects. Pamiętaj jednak, że stos modyfikatorów zostanie scalony.

836

Część VI  Modelowanie zaawansowane

Podsumowanie Obiekty typu Body stanowią swego rodzaju pomost między Maksem a aplikacjami CAD. Można je importować w formacie SAT, ale można także konwertować do tego formatu zwykłe obiekty Maksa. Body Objects można łączyć w oparciu o rozmaite funkcje boolowskie i można je z powrotem eksportować do aplikacji CAD. W rozdziale tym omówione zostały następujące zagadnienia: 

importowanie obiektów CAD,



konwertowanie obiektów Maksa do postaci Body,



łączenie obiektów Body przy użyciu operacji boolowskich,



stosowanie narzędzi Join Bodies i Body Cutters,



eksportowanie obiektów Body.



W następnym rozdziale zajmiemy się obiektami bardziej zwiewnymi, takimi jak włosy, futra i tkaniny.

Rozdział 29.

Tworzenie i układanie włosów, futer oraz tkanin W tym rozdziale: 

Podstawy modelowania włosów



Tworzenie włosów i ustawianie ich parametrów



Stylizacja włosów



System tkanin



Tworzenie części garderoby za pomocą modyfikatora Garment Maker



Stosowanie modyfikatora Cloth

Chciałem zacząć ten rozdział od stwierdzenia, że „łyse jest piękne”. Wzięło się ono stąd, że jeden z moich bliskich krewnych, gdy zauważył u siebie oznaki łysienia, zdecydował się ogolić głowę całkowicie na łyso. Jednak po obejrzeniu wielu modeli, które z powodu braku w Maksie odpowiedniego modułu dodatkowego, modelującego fryzury pozostały łyse, mogę powiedzieć też, że „łyse jest nudne”. Obecnie Max oferuje możliwość modelowania fryzur i futer. Spodziewam się więc, że dzięki temu prace korzystających z niego artystów, w tym moje, nabiorą realizmu. Modelowanie tkanin nie jest trudne. Prawdę mówiąc, ze zwykłej, parametrycznej płaszczyzny można bez trudu stworzyć idealnie prosty koc, ręcznik czy flagę. Jednakże animowanie tkanin jest bardzo trudnym zadaniem i dlatego powierza się je systemom dynamiki, takim jak reactor. Choć ruchy tkanin można animować przy użyciu reactora, Max wyposażono w odrębny, samodzielny system symulacyjny Cloth; za jego pomocą można nie tylko modelować, ale i animować odkształcenia tkaniny.

838

Część VI  Modelowanie zaawansowane Systemy włosów i tkanin, z jakimi mamy do czynienia w Maksie, należą do systemów dynamicznych, co oznacza, że uwzględniają siły występujące w scenie, takie jak wiatr i grawitacja. Dynamiczne właściwości włosów i tkanin są opisane w rozdziale 44., „Animowanie włosów i tkanin”.

Podstawy modelowania włosów Choć tytuł tego podrozdziału brzmi jak cytat z przewodnika dla fryzjerów, to jednak chodzi tu o unikalne zdolności Maksa w zakresie modelowania fryzur, które wymagają pewnych wyjaśnień. Włosy, podobnie jak systemy cząsteczkowe, to zbiory tysięcy małych elementów, które pozbawione należytego sterowania byłyby w stanie zmusić do poddania się nawet najpotężniejszy komputer. W Maksie włosy nie występują jako obiekty geometryczne, ale nakładane są na obiekty w scenie jako oddzielny modyfikator. Taki poziom oddzielenia pozwala modelowanym fryzurom zachować niezależność w zakresie geometrii oraz umożliwia bardzo łatwe ich usuwanie, oprócz tego zapobiega problemom z wyświetlaniem sceny w oknach widokowych. Modyfikator Hair and Fur jest modyfikatorem typu World-Space (WSM), co oznacza, że nakładany jest przy użyciu współrzędnych globalnych sceny, a nie lokalnych. Drugi element systemu Hair and Fur to specjalny efekt renderingu, który umożliwia renderowanie włosów. Efekt ów nakładany jest i konfigurowany automatycznie, po nałożeniu modyfikatora na obiekt. To powoduje, że scena, w której go zastosowano, jest renderowana w dwóch fazach. Najpierw renderingowi podlega geometria wszystkich obiektów pozbawionych włosów, a później same włosy. Włosy mogą być renderowane tylko wtedy, gdy wybrany został widok perspektywiczny lub z kamery. Nie są renderowane w żadnym widoku ortogonalnym.

Inne podobieństwo do systemów cząsteczkowych polega na tym, że w charakterze włosów można stosować klonowane obiekty geometryczne. Dzięki temu możliwe jest np. utworzenie modelu głowy, z której wyrastać będą patyki zamiast włosów. Stosowanie klonowanych obiektów geometrycznych z systemem Hair and Fur jest doskonałym sposobem na tworzenie i rozmieszczanie roślin oraz pokrycia gruntu.

Materiały nakładane na włosy definiuje się w rolecie Material Parameters panelu Modify, a nie w edytorze materiałów. Wielu parametrom mającym wpływ na wygląd włosów towarzyszy kwadratowy przycisk, za pomocą którego można danemu parametrowi przypisać mapę. Gdy dowolnemu obiektowi w scenie jest przypisywany modyfikator Hair and Fur, wówczas dostępny staje się element renderingu Hair and Fur, który można wykorzystać do wyrenderowania samych włosów potrzebnych np. do skomponowania jakiegoś obrazu.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

839

Opracowywanie włosów Nałożenie włosów na obiekt jest bardzo proste i ogranicza się do wybrania modyfikatora Hair and Fur poleceniem Modifiers/Hair and Fur/Hair and Fur (WSM). Po nałożeniu modyfikatora na obiekt możesz zmieniać właściwości włosów, modyfikując odpowiednie parametry na panelu Modify.

Pokrywanie włosami Włosy mogą porastać dowolne powierzchnie geometryczne, w tym splajny. Wystarczy przypisać obiektowi modyfikator Hair and Fur (WSM). Po jego pierwszym nałożeniu włosami pokrywana jest cała powierzchnia wyselekcjonowanego obiektu. Jeśli ten obiekt składa się z zestawu splajnów, włosy występują między pierwszym i ostatnim splajnem. Jeśli zechcesz zdecydować dokładnie, które miejsca obiektu mają pokrywać włosy, możesz użyć techniki selekcji podobiektów, korzystając z kontrolek w rolecie Selection. Dostępnymi typami podobiektów są ścianki (Face), wielokąty (Polygon), elementy (Element) oraz prowadnice (Guides). Po zaznaczeniu podobiektu należy kliknąć przycisk Update Selection (uaktualnij zaznaczenie), by ograniczyć obszar pokrycia włosami. Na rysunku 29.1 zaprezentowano brodę wymodelowaną na twarzy mężczyzny.

Rysunek 29.1. Zaznaczając podobiekty, możesz precyzyjnie wyznaczać miejsca, które mają być pokryte włosami

840

Część VI  Modelowanie zaawansowane Po wykonaniu pracochłonnego zaznaczenia warto je zachować w postaci zestawu wyboru, aby w przyszłości można było z niego skorzystać.

Nałożenie „owłosienia” na pojedynczy splajn nie powoduje pojawienia się na nim włosów. Jeśli jednak modyfikator zostanie nałożony na kilka splajnów, będących częściami tego samego obiektu Editable Spline, wówczas powierzchnia owłosienia jest interpolowana pomiędzy poszczególnymi splajnami w takiej kolejności, w jakiej splajny były przyłączane. W ten sposób można tworzyć rozmaite kosmyki i pukle.

Określanie właściwości włosów Wygląd włosów można zmieniać za pomocą kilku rolet. Roleta General Parameters, pokazana na rysunku 29.2, obejmuje ustawienia liczby włosów (Hair Count), liczby segmentów pojedynczego włosa (Hair Segments), liczby przejść renderowania (Hair Passes), gęstości (Density), skali (Scale), długości przycięcia (Cut Length), skalowania losowego (Rand. Scale), grubości podstawy (Root Thick) i grubości czubka (Tip Thick) oraz odsunięcia (Displacement). Wartość Hair Count określa całkowitą liczbę włosów wymodelowanych dla danej geometrii. Wyższe wartości wydłużają czas renderingu, ale tworzą bardziej realistyczne rezultaty. Parametr Hair Passes wyznacza liczbę przebiegów renderingu, co ma na celu ustalenie przezroczystości włosów. Im jego wartość jest wyższa, tym włosy wyglądają na cieńsze. Wartość Rand Scale czyni wygląd włosów bardziej naturalnym poprzez losowe skalowanie określonego ich odsetka. Parametr Displacement ustala odsunięcie włosów od powierzchni obiektu źródłowego, przy czym może przyjmować także wartości ujemne. Rysunek 29.2. Właściwości włosów można zmieniać za pomocą parametrów dostępnych na roletach General Parameters i Material Parameters

Parametr Hair Count może przyjmować bardzo duże wartości, jednak duża liczba elementów tworzących model fryzury wydłuża czas renderingu i może znacząco spowolnić działanie systemu.

Przyciski widoczne z prawej strony kontrolek parametrów pozwalają przypisywać poszczególnym właściwościom mapy, dzięki czemu możemy sterować tymi właściwościami za pomocą obrazów w skali szarości. Na rysunku 29.3 pokazany został prosty, płaski obiekt pokryty włosami, których gęstość zdefiniowano właśnie za pomocą mapy. Tam, gdzie mapa jest czarna, włosów praktycznie nie ma, a w obszarach białych ich gęstość jest maksymalna. Jest to kolejny sposób na określanie miejsc, w których włosy mają być widoczne.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

841

Rysunek 29.3. Wiele właściwości włosów można określić przy użyciu odpowiednich map

Roleta Material Parameters, również pokazana na rysunku 29.2, obejmuje ustawienia blokowania światła otaczającego (Occluded Amb.), kolorów na czubkach (Tip Color) i u nasady włosów (Root Color). Dostępne są tu również kontrolki odchyleń barwy (Hue Variation) i wartości (Value Variation), a także dodawania włosów zmutowanych i określania odblasków oraz połyskliwości włosów. Wartość Occluded Amb. ustala kontrast oświetlenia włosów. Niższe wartości dają silniejszy kontrast, a przy wyższych obraz włosów staje się bardziej wyblakły. Kontrolki Hue Variation i Value Variation pozwalają określać procentowe odchylenia barwy włosów od wybranego koloru, co umożliwia uzyskanie bardziej naturalnych efektów. Kontrolka procentowego współczynnika mutacji (Mutant %) wyznacza odsetek włosów odbarwionych, np. siwych. Właściwość Occluded Amb. jest przypisywania jako efekt, który naprawdę jest ustalany podczas obliczeń oświetlenia globalnego.

Opcja Tip Fade sprawia, że włosy stają się coraz bardziej przezroczyste w kierunku swych końców. Próbka Specular Tint określa kolor odblasków. Opcje Tip Fade i Specular Tint mają zastosowanie tylko w odniesieniu do włosów renderowanych za pomocą renderera mental ray. Parametr Self Shadow ustala, jak silne cienie rzuca pojedynczy włos na inne włosy, a Geom. Shadow decyduje o stopniu, w jakim włosy przyjmują cienie rzucane przez inne obiekty geometryczne. Geometryczny identyfikator materiału (Geom. Mat. ID) służy do przypisywania materiałów włosom renderowanym jako obiekt geometryczny. Wiele parametrów z rolety Material Parameters może być również kontrolowanych za pomocą map — do ich przypisywania służą przyciski umieszczone po prawej stronie. Kolory mapy są mnożone przez kolor bazowy. A zatem, jeśli stosujesz mapy, ustawiaj zawsze kolory bazowe jako białe.

Dostępne są także rolety sterujące falowaniem (Frizz) i skręceniem (Kink) włosów oraz tworzeniem wielowłosowych kępek (Multi-Strand). Ustawienia Frizz sprawiają, że włosy wyginają się na czubkach bądź u nasady, a parametry Kink nadają włosom kształt

842

Część VI  Modelowanie zaawansowane

zygzakowaty. Z kolei za pomocą kontrolek Multi-Strand można łączyć włosy w grupy przypominające kępy trawy. Na rysunku 29.4 przedstawiono cztery obszary, z których pierwszy pokryty jest włosami z normalnymi ustawieniami, zaś w trzech pozostałych przypadkach zmienione zostały parametry Frizz, Kink oraz Multi-Strand. Rysunek 29.4. Zmiana właściwości włosów może w bardzo dużym stopniu wpłynąć na ich wygląd (od lewej: włosy normalne, pofalowane, skręcone i kępkowe)

Ćwiczenie: Dodawanie frędzli do narzuty Narzuty powinny sprawiać wrażenie miękkich, puszystych i na pewno wiotkie frędzle na obrzeżach takie wrażenie potęgują. Poza tym ułatwiają ściąganie narzuty. Aby narzutę wyposażyć we włoskowate frędzle, wykonaj następujące czynności. 1. Otwórz plik Patch quilt.max, znajdujący się w folderze Chap 29 na płycie dołączonej do książki. 2. Wybierz polecenie Create/Shapes/Line i w oknie widokowym Top narysuj po dwa proste splajny wychodzące pod kątem prostym z każdego narożnika narzuty. Splajny te zostaną użyte jako początkowe i końcowe splajny dla tworzonych kosmyków włosów, które będą pełnić rolę frędzli. Rozpocznij od dowolnego narożnika i postępując w kierunku zgodnym z ruchem wskazówek zegara, dodaj w każdym narożniku po dwa splajny. 3. Zaznacz pierwszy splajn i korzystając z czteroczęściowego menu kontekstowego, przekonwertuj go do postaci Editable Spline. Następnie kliknij przycisk Attach i zaznacz pozostałe splajny w takiej kolejności, w jakiej zostały utworzone. 4. Po zaznaczeniu wszystkich splajnów wybierz polecenie Modifiers/Hair and Fur/Hair and Fur (WSM), aby uruchomić system tworzenia włosów. 5. Otwórz panel Modify, w rolecie General Parameters ustaw Hair Count na 2500, Rand. Scale na 10, a Root Thick i Tip Thick na 5,0. Następnie rozwiń roletę Material Parameters i zmień kolory Tip oraz Root na białe.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

843

Na rysunku 29.5 widać narzutę z frędzlami, ciepłą i miękką.

Rysunek 95. Włosy można dodawać zarówno do całych obiektów, jak też do wyselekcjonowanych podobiektów

Stylizowanie włosów Nie wszystkie nałożone włosy są widoczne w oknach widokowych, ale, korzystając z parametrów dostępnych w rolecie Display, możesz określić, jaki ich odsetek ma być wyświetlany, a także włączyć wyświetlanie prowadnic włosów (Guides). Aby zobaczyć wszystkie włosy, należy zrenderować scenę. Zarówno dla włosów, jak i prowadnic możesz wybrać dowolny kolor. Opcja Override wymusza wyświetlanie włosów w kolorze próbki, a nie w kolorze, w jakim są renderowane. Wartość Percentage określa procentowo liczbę włosów wyświetlanych w oknach widokowych w odniesieniu do całkowitej ich liczby. Jednak liczba wyświetlanych włosów nie może przekroczyć wartości określonej w polu Max. Hairs. Włączenie As Geometry sprawia, że włosy stają się obiektami geometrycznymi zamiast liniami. Prowadnice wyznaczają położenie otaczających je włosów. Prowadnice wyprowadzane są z każdego wierzchołka obiektu i domyślnie mają kolor żółty. Domyślnym kolorem włosów prezentowanych w oknie widokowym jest czerwony. Kolory te można zmienić w rolecie Display. Prowadnice ułatwiają układanie, czesanie i szczotkowanie włosów. Regulując ułożenie prowadnic, możesz decydować o wyglądzie fryzury.

844

Część VI  Modelowanie zaawansowane Gdy modyfikator Hair and Fur jest nałożony na zbiór splajnów, wówczas żadne prowadnice nie są tworzone, albowiem ich funkcję pełnią same splajny.

Korzystanie z interfejsu Style Wygląd włosów można modyfikować nie tylko za pomocą kontrolek w roletach właściwości, ale też przy użyciu rozmaitych narzędzi stylizujących. Narzędzia te dostępne są w rolecie Styling. Przycisk Style Hair uaktywnia interaktywny tryb stylizacji włosów w oknach widokowych, gdzie można przeprowadzać czesanie, szczotkowanie i układanie nawet pojedynczych włosów. Wspomniany przycisk jest włączany automatycznie po wybraniu trybu edycji prowadnic. Roleta Styling zawiera szereg przycisków oznaczonych ikonami. Ich działanie opisane jest w tabeli 29.1. Rozmiar szczotki (Hair Brush) można ustawiać interaktywnie, wciskając klawisze Ctrl+Shift i przeciągając myszą w oknie widokowym. Ten sam skutek przynosi przeciąganie suwaka umieszczonego poniżej opcji Ignore Back Hairs (pomiń włosy na tylnych ściankach). Opcja Distance Fade odpowiada za słabnięcie efektu czesania w miarę zbliżania się do czubków włosów, co powoduje, że efekt zyskuje bardziej naturalny wygląd. Tabela 29.1. Kontrolki rolety Styling Przycisk

Nazwa

Opis

Select Hair by Ends (Ctrl+1)

Zaznacza końcowe wierzchołki w chwili przeciągania myszą nad włosami.

Select Whole Guide (Ctrl+2)

Zaznacza wszystkie wierzchołki prowadnic w chwili przeciągania myszą.

Select Guide Vertices (Ctrl+3)

Zaznacza wskazane wierzchołki prowadnic.

Select Guide by Root (Ctrl+4)

Zaznacza całe prowadnice, gdy zaznaczane są wierzchołki u ich nasady.

Lista rozwijana markerów

Zawiera opcje wyświetlania zaznaczonych wierzchołków. Mogą to być markery w kształcie sześcianików (Box), znaków plus, znaków X i kropek (Dot).

Invert Selection (Shift+Ctrl+N)

Zaznacza niezaznaczone wierzchołki i na odwrót.

Rotate Selection (Shift+Ctrl+R)

Cyklicznie przesuwa istniejące zaznaczenie.

Expand Selection (Shift+Ctrl+E)

Stopniowo powiększa istniejące zaznaczenie.

Hide Selected (Shift+Ctrl+H)

Ukrywa zaznaczone prowadnice.

Show Hidden (Shift+Ctrl+W)

Przywraca wyświetlanie ukrytych prowadnic.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

845

Tabela 29.1. Kontrolki rolety Styling — ciąg dalszy Przycisk

Nazwa

Opis

Hair Brush (Ctrl+B)

Przesuwa zaznaczone wierzchołki w kierunku ruchu szczotki. Opuszczenie tego trybu następuje po naciśnięciu klawisza Esc.

Hair Cut (Ctrl+C)

Przycina prowadnice, skracając je.

Select (Ctrl+S)

Włącza tryb zaznaczania prowadnic lub ich wierzchołków.

Opcja Distance Fade (Shift+Ctrl+F)

Wprowadza stopniowe zanikanie efektu szczotkowania. Dostępna tylko w trybie Hair Brush.

Opcja Ignore Back Hairs (Shift+Ctrl+B)

Wyłącza spod wpływu narzędzi prowadnice skierowane od kamery.

Suwak Brush Size (Ctrl+Shift +przeciągnięcie myszą)

Zmienia rozmiar aktualnie wybranego narzędzia.

Translate (Shift+Ctrl+1, Ctrl+T)

Przesuwa wszystkie prowadnice w kierunku ruchu szczotki.

Stand (Shift+Ctrl+2, Ctrl+N)

Ustawia zaznaczone prowadnice prostopadle do powierzchni obiektu.

Puff Roots (Shift+Ctrl+3, Ctrl+P)

Wprowadza niewielkie odchylenia u nasad zaznaczonych prowadnic.

Clump (Shift+Ctrl+4, Ctrl+M)

Skupia zaznaczone prowadnice (ruch szczotki w lewo) lub je rozchyla (ruch szczotki w prawo).

Rotate (Shift+Ctrl+5, Ctrl+R)

Obraca i skręca zaznaczone prowadnice wokół środka szczotki.

Scale (Shift+Ctrl+6, Ctrl+E)

Zmienia skalę zaznaczonych włosów odpowiednio do ruchów szczotki (w prawo wydłuża, w lewo skraca).

Attenuate (Shift+Ctrl+A)

Skaluje włosy odpowiednio do wielkości wielokąta.

Pop Selected (Shift+Ctrl+P)

Wydłuża wszystkie zaznaczone włosy wzdłuż wektorów normalnych powierzchni.

Pop Zero-Sized (Shift+Ctrl+Z)

Wydłuża wszystkie włosy o zerowej długości wzdłuż wektorów normalnych powierzchni.

Recomb (Shift+Ctrl+M)

Układa włosy równolegle do powierzchni obiektu.

Reset Rest (Shift+Ctrl+T)

Rozluźnia włosy, uśredniając ich wzajemne położenie.

846

Część VI  Modelowanie zaawansowane

Tabela 29.1. Kontrolki rolety Styling — ciąg dalszy Przycisk

Nazwa

Opis

Toggle Collisions (Shift+Ctrl+C)

Włącza włosy do systemu kolizji.

Toggle Hair (Shift+Ctrl+I)

Włącza i wyłącza wyświetlanie włosów (ale nie prowadnic) w oknach widokowych.

Lock (Shift+Ctrl+L)

Blokuje zaznaczone wierzchołki, w efekcie czego nie można ich przesuwać żadnym narzędziem.

Unlock (Shift+Ctrl+U)

Odblokowuje zablokowane wierzchołki.

Undo (Ctrl+Z)

Cofa ostatnią operację.

Split Selected Hair Groups (Shift+Ctrl+–)

Dzieli zaznaczone grupy włosów.

Merge Selected Hair Groups (Shift+Ctrl+=) Łączy zaznaczone grupy włosów.

Aby wyjść z trybu stylizowania włosów, kliknij przycisk Finish Styling1 w rolecie Styling.

Ćwiczenie: Tworzenie włochatych kości do gry Włochata kość do gry — czy może być coś bardziej odlotowego? Aby wystylizować włosy nałożone na kość do gry, wykonaj następujące czynności. 1. Otwórz plik Fuzzy dice.max, znajdujący się w folderze Chap 29 na płycie dołączonej do książki. 2. Zaznacz jedną z kości i wybierz polecenie Modifiers/Hair and Fur/Hair and Fur (WSM). Zaznaczona kość pokryje się włosami. 3. Rozwiń roletę General Parameters i ustaw Hair Count na 20000, a Scale na 50. Następnie rozwiń roletę Material Parameters i zmień kolor czubka (Tip Color) na biały, a kolor nasady (Root Color) na czerwony. Rozwiń także roletę Frizz Parameters i ustaw parametry Frizz Root oraz Frizz Tip na 0. To sprawi, że włosy będą proste i czerwone. 4. Rozwiń roletę Styling i kliknij przycisk Style Hair. W sekcji Utilities kliknij przycisk Pop Selected, aby włosy stały się sterczące. Następnie włącz przycisk Hair Brush i przeciągnij w oknie widokowym z góry na dół w pobliżu prowadnic wystających z górnych narożników kości. Gdy skończysz, kliknij przycisk Finish Styling. 5. Przeciągnij modyfikator Hair and Fur (WSM) ze stosu modyfikatorów na niezaznaczoną kość. 1

Taką nazwę przyjmuje włączony przycisk Style Hair — przyp. tłum.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

847

Końcowy rezultat w postaci pary owłosionych kości został pokazany na rysunku 29.6.

Rysunek 29.6. Włosy można wystylizować przez odpowiednie ukierunkowanie i ukształtowanie ich prowadnic

Korzystanie z ustawień predefiniowanych Jeśli dysponujesz specyficznymi ustawieniami parametrów, tworzącymi unikalną fryzurę, która bardzo przypadła Ci do gustu, wówczas możesz je zachować, klikając przycisk Save Presets w rolecie Tools. Predefiniowane ustawienia fryzur są zapisywane wraz z wyrenderowanymi próbkami, wyświetlanymi w oknie dialogowym Hair and Fur presets, zaprezentowanym na rysunku 29.7. Aby zastosować wybrane ustawienie do bieżącego obiektu, wystarczy dwukrotnie kliknąć odpowiednią próbkę. Można też, oprócz ustawień predefiniowanych, wykorzystywać fryzury utworzone przez stylizowanie włosów, kopiując je i wklejając na inne obiekty pokryte włosami. Jeśli uzyskana fryzura nie spełnia Twoich oczekiwań, możesz kliknąć przycisk Regrow Hair w rolecie Tools. W ten sposób przywrócisz włosy do stanu, w jakim były tuż po utworzeniu.

Klonowanie włosów Domyślne modele włosów wyglądają świetnie, jeśli jednak zechcesz zastąpić splajny sklonowanymi obiektami geometrycznymi, możesz to zrobić za pomocą przycisku Pick w sekcji Instance Node rolety Tools. Przycisk X widniejący z prawej strony przycisku Pick

848

Część VI  Modelowanie zaawansowane

Rysunek 29.7. Okno dialogowe Hair and Fur presets zawiera miniaturki dostępnych ustawień

służy do usuwania klonu. Na rysunku 29.8 zaprezentowano śmieszny model głowy, pokryty zapałkami jako klonami włosów. Rysunek 29.8. Wszystkie włosy na głowie pana Zapałczanego zostały zastąpione klonami obiektu zapałki

Przed zaznaczeniem klonowanego obiektu należy sprawdzić ustawienie wartości Hair Count. Złożone obiekty należy klonować tylko w ilościach zapewniających utrzymanie kontroli nad sceną.

Renderowanie włosów Ustawienia renderingu włosów można zmienić w panelu Effects okna dialogowego Environment and Effects, do którego dostęp uzyskamy przez wybranie polecenia Rendering/ Effects. Szybki dostęp do panelu Effects daje także przycisk Render Settings w rolecie Tools. Dostępna w tym panelu roleta Hair and Fur zawiera opcje renderowania włosów i ich oświetlenia.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

849

Dla włosów istnieją trzy metody renderowania. Metoda buffer renderuje każdy włos oddzielnie. Oszczędnie wykorzystuje pamięć komputera. Po wybraniu tej metody możesz włączyć dodatkowo opcję Raytrace the Reflections/Refractions w celu poprawienia jakości renderingu. Metoda geometry przekształca każdy włos w obiekt geometryczny i renderuje go jak każdy inny obiekt. Metoda mr prim renderuje włosy za pomocą renderera mental ray. Dla tej metody możesz określić stopień podziału fryzury na elementy objętościowe (mr Voxel Resolution). Więcej informacji na temat renderera mental ray znajdziesz w rozdziale 47., „Renderery mental ray i iray”.

Parametry z sekcji Motion Blur służą do sterowania rozmyciem poruszających się włosów. Ustawienie Oversampling wpływa na poziom wygładzania (antyaliasing) włosów. Dostępne tutaj opcje to: draft (zgrubne), low (słabe), med. (średnie), high (wysokie) i maximum (maksymalne). Dostępność pozostałych opcji — metody łączenia (Composite Method), zasłaniania włosów przez inne obiekty (Occlusion Objects) i gęstości cienia (Shadow Density) — jest zależna od wybranej metody renderingu. Domyślnie wszystkie rodzaje świateł (poza światłami ukierunkowanymi i systemami słonecznymi) są używane do oświetlania włosów, ale jeśli w scenie znajduje się reflektor (spotlight), możesz go zaznaczyć, a następnie kliknąć przycisk Add Hair Properties w dolnej części rolety Hair and Fur. Spowoduje to dodanie rolety Hair Light Attributes do panelu Modify, gdzie możesz ustalić rozdzielczość (Resolution) i rozmazanie (Fuzz) mapy cienia rzucanego przez włosy oświetlone zaznaczonym reflektorem.

Istota tkanin Jeśli rzucisz koszulkę na krzesło, w jaki sposób się ułoży? Poskłada się i wybrzuszy, dostosowując do kształtu twardego obiektu. Pomyśl, jak zachowa się w takiej sytuacji płachta z jedwabiu, a jak ręcznik frotté? Możliwość dokładnego symulowania interakcji różnych tkanin z obiektami w scenie i siłami to kolejny, krytyczny czynnik, który może w znacznym stopniu wpływać na ostateczny wygląd sceny. Tkaninę w Maksie tworzymy za pomocą modyfikatora. Taki modyfikator może z każdego obiektu uczynić tkaninę, a jeśli będzie to modyfikator Garment Maker, możesz tworzyć także rozmaite części garderoby. Gdy obiekt jest zamieniany w tkaninę, jego powierzchnia jest dzielona na wiele ścianek przy użyciu rozmaitych metod zwiększania rozdzielczości siatki obiektu. Dzięki temu siatka może być deformowana z większą precyzją. Obiekty będące tkaniną są wyposażane we właściwości, które pozwalają im reagować na zewnętrzne siły, takie jak grawitacja, wiatr czy zderzenia z innymi obiektami. Po umieszczeniu w scenie wszystkich obiektów, sił i tkanin możesz przystąpić do animowania ruchu tych ostatnich pod wpływem zdefiniowanych sił i pozostałych obiektów. W tym rozdziale skoncentrujemy się na tworzeniu i określaniu właściwości tkanin. Dynamiką tych obiektów zajmiemy się w rozdziale 44., „Animowanie włosów i tkanin”.

850

Część VI  Modelowanie zaawansowane

Modelowanie tkanin Przystępując do modelowania płachty tkaniny, pamiętaj, że siatka musi mieć wystarczająco dużą rozdzielczość, która pozwoli na wielokrotne fałdowanie się powierzchni. Jeśli rozdzielczość siatki jest niewystarczająca, wówczas załamania materiału wyglądają nierealistycznie. W systemie dynamiki tkanin siły działające na tkaninę deformują ją, ale ona sama nie oddziałuje na deformujące ją obiekty. Coś takiego można zrealizować za pomocą modułu reactor. Dobrym przykładem takiej tkaniny może być batut reagujący na odkształcenie wywoływane przez inny obiekt.

Rozdzielczość modelu można zwiększyć na kilka sposobów. Można to zrobić za pomocą parametrów modyfikatora Garment Maker lub użyć modyfikatora HSDS. Do tworzenia tkanin nie używaj obiektu typu Box, lecz raczej jednostronnego obiektu typu Plane. Obiekt Box niepotrzebnie podwaja liczbę użytych wielokątów.

Modelowanie ubiorów przy użyciu modyfikatora Garment Maker Modele ubiorów można tworzyć w podobny sposób, w jaki powstają one w rzeczywistości. Każda część ubioru, zwana tutaj panelem, jest obrysowana liniami bądź splajnami w oknie widokowym Top. Można także importować gotowe wykroje. Każdy narożnik panelu należy przerwać, gdyż w przeciwnym razie modyfikator go zaokrągli. Po utworzeniu wszystkich niezbędnych paneli przekonwertuj jeden z nich na obiekt Editable Spline i dołącz do niego pozostałe panele, aby zespolić je w jeden obiekt. Do takiego obiektu możesz zastosować modyfikator Modifiers/Cloth/Garment Maker. Najłatwiejszy sposób tworzenia paneli polega na narysowaniu całego wykroju i użyciu polecenia Break Vertex w trybie podobiektu Vertex w celu przerwania wszystkich narożników.

Gdy modyfikator Garment Maker jest stosowany po raz pierwszy, kontury panelu zamieniane są w obiekt siatkowy o gęstości ustalanej przez algorytm Delaunaya, co zostało pokazane na rysunku 29.9. Algorytm ten stosuje losowy podział na trójkąty, tak aby powstająca siatka nie tworzyła regularnych wzorów. To zapobiega załamywaniu się tkaniny wzdłuż linii, które w przypadku takich wzorów mogłyby powstać. Gęstość siatki (liczbę wielokątów) można ustalać za pomocą parametru Density. Jeśli opcja Auto Mesh jest wyłączona, po zmianie parametru Density należy uaktualnić siatkę za pomocą przycisku Mesh It. Opcja Preserve pozwala zachować trójwymiarowy kształt panelu. Jeśli ją wyłączysz, panel stanie się płaski. Kolejnym krokiem jest ułożenie paneli wokół modelu, który ma być ubrany. Obiekt ubierany możesz wskazać po kliknięciu przycisku Figure w rolecie Main Parameters. Gdy już to zrobisz, kliknij przycisk Mark Points on Figure. To spowoduje wyświetlenie małej sylwetki w lewym górnym rogu okna widokowego. Sylwetka ta składa się z prostych elementów reprezentujących tułów, szyję, miednicę, nogi, barki i ręce. Przeciągając kursor wzdłuż ubieranego modelu, zaznaczasz na nim miejsca odpowiadające tym elementom, które aktualnie są wyróżnione na sylwetce.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

851

Rysunek 29.9. Modyfikator Garment Maker tworzy siatkę dla tkaniny, wykorzystując algorytm Delaunaya

Po zaznaczeniu odpowiedniej części ciała na modelu, możesz zaznaczyć panel i za pomocą przycisków Panel Position w rolecie Panels ustawić go w odpowiednim położeniu względem modelu. Wśród tych przycisków znajdziesz takie jak: Front Center (na środku z przodu), Front Right (z przodu po prawej), Back Center (na środku z tyłu), Right Arm (na prawym ramieniu) itp. Możesz również układać panele ręcznie. Modyfikator Garment Maker operuje na trzech rodzajach podobiektów: krzywych (Curves), panelach (Panels) i szwach (Seams). Po rozmieszczeniu paneli możesz je pozszywać, wykorzystując w przypadku płaskich paneli tryb podobiektu Curves, a w przypadku tych, które zostały ułożone na modelu, tryb Seams. Zszywane krawędzie powinny być mniej więcej tej samej długości. Dopuszczalne rozbieżności określa parametr Seam tolerance. Dla każdego szwu można określić kąt załamania (Crease angle) i sztywność (Crease Strength). Parametr Sewing Stiffness określa siłę, z jaką zszywane panele są do siebie przyciągane. Po zdefiniowaniu wszystkich szwów można zastosować modyfikator Modifiers/Cloth/ Cloth, który połączy panele i umożliwi symulację ruchu materiału.

Tworzenie elementów ubrań z obiektów geometrycznych W obiekt tkaninowy można przekształcić dowolny obiekt geometryczny, korzystając w tym celu z modyfikatora Cloth, nakładanego po wybraniu polecenia Modifiers/Cloth/Cloth. Modyfikator nałożony na obiekt jest jednak domyślnie nieaktywny. Aby go uaktywnić,

852

Część VI  Modelowanie zaawansowane

należy otworzyć okno dialogowe właściwości obiektu (Object Properties), pokazane na rysunku 29.10. Rysunek 29.10. Okno dialogowe Object Properties zawiera parametry obiektów tkaninowych i kolizyjnych

Pole widoczne z lewej strony okna prezentuje listę wszystkich obiektów uczestniczących w symulacji tkaniny. Dzięki przyciskowi Add Objects można do niej dodawać nowe obiekty. Każdy obiekt może być oznaczony jako nieaktywny (Inactive), tkanina (Cloth) lub też obiekt kolizyjny (Collision Object). Poszczególne typy mają określone parametry. W przypadku tkanin są to m.in.: wygięcie (Bend), rozciągnięcie (Stretch), ścięcie (Shear), gęstość (Density), grubość (Thickness), tarcie (Friction) oraz skala (Scale). Zdefiniowane ustawienia tkaniny można zapisywać i przywoływać. Pliki tych właściwości zapisywane są z rozszerzeniem .STI. Max udostępnia listę predefiniowanych ustawień różnego typu materiałów, takich jak juta (Burlap), kaszmir (Cashmere), bawełna (Cotton), flanela (Flannel), guma (Rubber), satyna (Satin), jedwab (Silk), frotté (Terrycloth) i wełna (Wool). Oprócz obiektów umieszczonych w scenie symulacja tkaniny może uwzględniać także rozmaite siły. Przycisk Cloth Forces w rolecie Object otwiera proste okno dialogowe, w którym możesz wskazać dodatkowe siły biorące udział w symulacji. Grawitacja (Gravity) jest włączana domyślnie, ale roleta Simulation Propperties umożliwia zmianę jej siły. Ta sama roleta zawiera także szereg innych parametrów, np. numery klatek: początkowej (Start Frame) i końcowej (End Frame).

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

853

Po dodaniu wszystkich obiektów i sił kliknij przycisk Simulate Local, aby ustalić warunki początkowe symulacji tkaniny. To spowoduje ułożenie się tkaniny na obiektach sceny i połączenie wszystkich szwów zdefiniowanych przez modyfikator Garment Maker. Czasami funkcja Simulate Local łączy panele zbyt szybko, wówczas można zastosować funkcję Simulate Local (damped), która wprowadza określone tłumienie do całej symulacji i sprawia, że ruchy paneli stają się wolniejsze.

Ćwiczenie: Ubieranie trójwymiarowej postaci Jeśli marzyłeś o karierze projektanta mody, teraz możesz te marzenia zrealizować. Za pomocą modyfikatorów Garment Maker i Cloth ubierzesz modelkę we własnoręcznie przygotowaną kreację (następnej wiosny na pewno będzie dostępna we wszystkich sklepach z modną odzieżą). Postać modelki została opracowana w Zygote Media. Aby utworzyć kompletny strój i nałożyć go na trójwymiarową postać, wykonaj następujące czynności. 1. Otwórz plik Zygote woman with clothes.max, znajdujący się w folderze Chap 29 na płycie dołączonej do książki. 2. Wybierz polecenie Create/Shapes/Line i w oknie widokowym Top narysuj kontury prostego bezrękawnika i spódnicy. Zadbaj, aby wszystkie panele były zamkniętymi splajnami. 3. Za pomocą polecenia Tools/Mirror utwórz zwierciadlane kopie paneli. Będą one stanowiły tylne części ubrania. Następnie przekonwertuj jeden z paneli na obiekt typu Editable Spline i dołącz (Attach) do niego pozostałe, aby powstał z nich jeden obiekt. W trybie edycji wierzchołków (Vertex) zaznacz wszystkie wierzchołki narożne i kliknij przycisk Break. 4. Po upewnieniu się, że ubranie jest zaznaczone, wybierz polecenie Modifiers/Cloth/ Garment Maker. To spowoduje automatyczny podział wszystkich paneli na wiele małych trójkątów. 5. W rolecie Main Parameters kliknij przycisk Figure i zaznacz obiekt modelki. Następnie kliknij przycisk Mark Points on Figure. W lewym górnym rogu każdego okna widokowego pojawi się mała sylwetka postaci z zaznaczoną na czerwono górną częścią klatki piersiowej. Przeciągnij kursor wzdłuż postaci modelki, aż zlokalizujesz górną część klatki piersiowej, i kliknij. To samo powtórz dla pozostałych miejsc wyróżnianych kolejno na sylwetce. Po oznaczeniu w ten sposób wszystkich charakterystycznych punktów kliknij ponownie przycisk Mark Points on Figure, aby wyjść z tego trybu. 6. W panelu Modify wybierz tryb edycji paneli (Panels) i zaznacz przedni panel bezrękawnika. Włącz opcję Top at neck i kliknij przycisk Front Center. Przedni panel bezrękawnika zostanie ustawiony przed modelką. W analogiczny sposób ustaw pozostałe panele. Jeżeli ułożenie któregoś panelu wydaje Ci się niewłaściwe, możesz je poprawić ręcznie, tak aby odpowiednie części ubioru znalazły się z przodu i z tyłu modelki (patrz rysunek 29.11). 7. W panelu Modify wybierz tryb edycji szwów (Seams). W oknie widokowym Front zaznacz dwie krawędzie, które powinny zostać połączone, i kliknij przycisk Create

854

Część VI  Modelowanie zaawansowane

Rysunek 29.11. Znaczniki sylwetki pomagają ustalić położenie paneli ubioru względem postaci

Seam. W ten sposób zszyj wszystkie boki spódnicy i bezrękawnika oraz ramiączka. Między łączonymi częściami pojawią się linie symbolizujące nici szwu. Jeśli te nici się krzyżują, kliknij przycisk Reverse Seam. 8. Po zdefiniowaniu szwów wybierz polecenie Modifiers/Cloth/Cloth, aby zastosować modyfikator Cloth. W rolecie Object kliknij przycisk Object Properties. W otwartym w ten sposób oknie właściwości obiektu zaznacz obiekt ubioru i włącz opcję Cloth. Następnie kliknij przycisk Add Objects, zaznacz siatkę modelu i oznacz ją jako obiekt kolizyjny (Collision Object). Ustaw wartość parametru Offset na 0,3 i zamknij okno Object Properties. 9. Kliknij przycisk Simulate Local. Elementy zszywane zostaną połączone, a całość stroju ułoży się na powierzchni modelu. Ubraną modelkę możesz zobaczyć na rysunku 29.12.

Podsumowanie Modyfikator Hair and Fur pozwala pokrywać obiekty włosami. Modyfikując rozmaite parametry w roletach, możesz definiować typ i wygląd włosów. Modyfikator Cloth włącza system dynamiki tkanin, który pozwala symulować złożony ruch tkaniny w chwili jej interakcji z obiektami i siłami obecnymi w scenie.

Rozdział 29.  Tworzenie i układanie włosów, futer oraz tkanin

855

Rysunek 29.12. Przycisk Simulate Local sprawia, że ubranie przylega do ciała

W rozdziale tym omówione zostały następujące tematy: 

porastanie włosami i ustawianie właściwości włosów,



stylizowanie włosów i korzystanie z ustawień predefiniowanych,



zasady działania systemów tkanin,



stosowanie modyfikatora Garment Maker,



modelowanie tkanin w oparciu o obiekty geometryczne, za pomocą modyfikatora Cloth.

Część VII, „Materiały w ujęciu zaawansowanym”, jest kolejną częścią tej książki. W jej pierwszym rozdziale poznasz wyspecjalizowane typy materiałów.

856

Część VI  Modelowanie zaawansowane

Część VII

Materiały w ujęciu zaawansowanym W tej części: Rozdział 30. „Stosowanie materiałów specjalnych” Rozdział 31. „Proceduralne tekstury substancyjne” Rozdział 32. „Malowanie w oknach widokowych i renderowanie map powierzchni” Rozdział 33. „Rozwijanie współrzędnych UV i mapowanie tekstur” Rozdział 34. „Tworzenie wypiekanych tekstur i map normalnych”

Rozdział 30.

Stosowanie materiałów specjalnych W tym rozdziale: 

Stosowanie materiałów typu Matte/Shadow



Używanie materiałów typu Ink ’n’ Paint



Praca z materiałami architektonicznymi



Materiał DirectX Shader



Specjalne materiały typu mental ray

Podczas lektury rozdziału poświęconego materiałom złożonym zauważyłeś zapewne, że w oknie Material/Map Browser jest szereg materiałów o intrygujących nazwach, które nie zostały omówione. Te typy materiałów są ważne, ale nie można ich zaliczyć do złożonych. Z tymi materiałami jest jak z gofrownicą — sięgasz po nie dopiero wtedy, gdy są niezbędne. Zazwyczaj nie smażysz jajek na gofrownicy, prawda? Do materiałów specjalnych zaliczamy materiały, takie jak Matte/Shadow, Ink ’n’ Paint, Architectural i DirectX Shader. Dzięki nim możesz sprawić, że obiekty będą niewidoczne, możesz renderować scenę w formie kreskówki, imitować materiały stosowane w budownictwie i nadawać obiektom taki wygląd, jaki miałyby w grze komputerowej. Jeszcze więcej wyspecjalizowanych materiałów jest dostępnych po włączeniu renderera mental ray. Specjalizacja materiałów jest już tak wysoka, że do ich wygenerowania potrzebna jest zmiana mechanizmu renderującego. Wśród materiałów tego typu znajdziemy zestaw nowych materiałów architektonicznych, materiał Car Paint i kilka materiałów z rozpraszaniem podpowierzchniowym. Stosując te wyspecjalizowane materiały, możesz tworzyć niezwykle realistycznie wyglądające sceny. Niestety, nie da się za ich pomocą upiec gofrów.

860

Część VII  Materiały w ujęciu zaawansowanym

Materiał Matte/Shadow Materiały typu Matte/Shadow (maska/cień) możesz nakładać na obiekty, aby uczynić ich fragmenty niewidocznymi. Dzięki temu obraz stanowiący tło sceny może być widoczny poprzez obiekt. To z kolei umożliwia wkomponowywanie obiektów trójwymiarowych w tło. Obiekty z nałożonym materiałem Matte/Shadow mogą również rzucać cienie i je przyjmować. Wpływ tych materiałów jest widoczny dopiero po wyrenderowaniu obiektu. Przy włączonym rendererze mental ray materiał Matte/Shadow jest niedostępny.

Roleta Matte/Shadow Basic Parameters Materiał Matte/Shadow możesz zastosować, klikając dwukrotnie pozycję Matte/Shadow w panelu Material/Map Browser. Materiały tego typu mają tylko jedną roletę — Matte/ Shadow Basic Parameters. Opcja Opaque Alpha powoduje pojawienie się w kanale alfa materiału maskującego. W zasadzie jest to przełącznik do włączania i wyłączania obiektów maskujących (matte objects). Na materiały typu Matte/Shadow możesz nałożyć efekty pogodowe, takie jak mgła i światło wolumetryczne. Opcja At Background Depth nakłada mgłę na obraz tła, natomiast opcja At Object Depth nakłada mgłę z uwzględnieniem trójwymiarowości obiektu, któremu przypisano materiał. O efektach pogodowych przeczytasz więcej w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Opcja Receive Shadows umożliwia rzucanie cieni na obiekty maskujące. Możesz również określić jasność cienia (Shadow Brightness) i jego kolor. Opcja Increasing Shadow Brightness powoduje większą przezroczystość cienia. Opcja Affect Alpha powoduje, iż cienie stają się częścią kanału alfa. Na obiektach maskujących można też wprowadzić odbicia — Reflections. Za pomocą regulacji wartości Amount możesz ustawić stopień odbicia, a przycisk Map otwiera okno Material/Map Browser.

Ćwiczenie: Dodawanie trójwymiarowych obiektów do obrazu w tle Popularnym zastosowaniem materiału Matte/Shadow jest wkomponowywanie obiektów trójwymiarowych w obraz stanowiący tło sceny. Jeśli np. umieścisz w scenie obiekt typu Plane z materiałem Matte/Shadow i dopasujesz go do płaszczyzny podłoża w obrazie, w jego miejscu widoczne będzie podłoże, ale jednocześnie będzie przyjmował cienie rzucane przez inne obiekty sceny. Daje to złudzenie obecności tych obiektów w scenerii obrazu.

Rozdział 30.  Stosowanie materiałów specjalnych

861

Aby materiał Matte/Shadow wykorzystać w celu dodania obiektu do obrazu tła, wykonaj następujące czynności. 1. Otwórz plik Xylophone on shadow matte.max z folderu Chap 30 znajdującego się na płycie dołączonej do książki. Plik ten zawiera obraz stanowiący tło sceny. Przedstawia posąg krowy, który stoi przed budynkiem Convention Center w Bostonie. Scena zawiera także ksylofon ustawiony na obiekcie typu Plane. Ten ostatni został przeskalowany z mnożnikiem o wartości 4, aby podczas renderingu stanowił pełne podłoże dla całej sceny. 2. Otwórz edytor materiałów, wciskając klawisz M. W przeglądarce materiałów kliknij dwukrotnie pozycję Matte/Shadow. Nadaj nowemu materiałowi nazwę Shadow plane (płaszczyzna cienia), a następnie przypisz go płaszczyźnie podłoża w oknie widokowym Perspective. 3. Wybierz polecenie Create/Lights/Standard Lights/Omni i kliknij w oknie widokowym Top, aby utworzyć światło. W sekcji Shadows rolety General Parameters włącz opcję On. W rolecie Shadow Parameters kliknij próbkę koloru. W otwartym w ten sposób oknie Color Selector wybierz narzędzie kroplomierza (przycisk Sample Screen Color) i za jego pomocą pobierz kolor cienia rzucanego przez posąg krowy. Następnie ustaw parametr Density na 0,7, aby uczynić cień lekko przezroczystym. 4. Kliknij etykietę cieniowania w oknie Perspective i wybierz najpierw Lighting and Shadows/Enable Hardware Shading, a potem Lighting and Shadows/Enable Shadows1. To sprawi, że w oknie widokowym będą widoczne cienie rzucane na obiekt Plane. 5. Przesuń źródło światła Omni w oknach Left i Top tak, aby tworzone przezeń cienie były rzucane w tym samym kierunku, co cienie na fotografii. Jednym ze sposobów wyrównywania cieni jest ich ujednolicenie dla obiektów wzajemnie równoległych. W tym przypadku może to być pionowy element podstawy ksylofonu i noga krowy.

6. Aby zobaczyć ostateczny rezultat, musisz wyrenderować obraz. W tym celu wybierz z menu polecenie Rendering/Render Setup (lub wciśnij F10), aby otworzyć okno dialogowe Render Setup. Kliknij przycisk Render na dole okna dialogowego (lub wciśnij F9), a obraz zostanie wyrenderowany w oknie Rendered Frame Window. Na rysunku 30.1 możesz zobaczyć wyrenderowany obraz.

1

Podane tu polecenia są dostępne, gdy korzystamy ze sterownika grafiki Direct3D. Przy włączonym sterowniku Nitrous należy wybrać polecenia Lighting and Shadows/Illuminate with Scene Lights i Lighting and Shadows/ Shadows — przyp. tłum.

862

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 30.1. Wyrenderowany ksylofon wkomponował się w obraz dzięki cieniom rzucanym na obiekt podłoża z nałożonym materiałem Matte/Shadow

Materiał Ink ’n’ Paint Chociaż może się to wydawać dziwne, niektóre studia wykorzystują program 3ds Max do tworzenia dwuwymiarowych filmów animowanych. Można tego dokonać za pomocą materiału typu Ink ’n’ Paint (tusz i farba). Do niedawna kreskówki były tworzone ręcznie, na papierze. Okazało się jednak, iż o wiele łatwiej wypełniać kontury narysowanej postaci przy użyciu oprogramowania komputerowego. Co więcej, używanie programu do grafiki 3D (np. Maksa) z możliwością animowania przy użyciu klatek kluczowych ułatwia całe zadanie jeszcze bardziej. To, czy w rezultacie powstanie obraz dwu- czy trójwymiarowy, zależy od sposobu jego renderowania, a o tym decyduje materiał Ink ’n’ Paint. Po wybraniu tego materiału pojawia się kilka rolet, włącznie z Basic Material Extensions. Zawiera ona opcje, które pozwalają tworzyć materiał typu 2-Sided (dwustronny), włączyć mapę ścianki (Face Map) i podzielić materiał na ścianki (Faceted). Inne dostępne opcje powodują zamglenie tła, gdy nie wypełniamy konturów farbą, i sprawiają, że kanał alfa staje się nieprzezroczysty. Dostępne są też mapy typu Bump i Displacement.

Ustawienia farby i tuszu Roleta Paint Controls zawiera ustawienia nakładania farby (czyli kolorów wewnątrz konturów wyznaczonych tuszem). Możesz wybrać kolory: Lighted, Shaded i Highlight. Kolor Lighted jest używany dla fragmentów materiału, które są wystawione na działania świateł sceny, kolor Shaded jest stosowany dla fragmentów zacienionych, a kolor Highlight służy do określania odblasków. Dla każdego koloru możesz również wybrać mapę określającą stosowne wartości. Współczynnik Paint Levels określa liczbę odcieni kolorów użytych do zabarwienia materiału. Wartość Glossiness ustawia rozmiar odblasków. Na rysunku 30.2 przedstawiono materiały ze współczynnikiem Paint Level od 2 do 6.

Rozdział 30.  Stosowanie materiałów specjalnych

863

Rysunek 30.2. Użyj wartości Paint Level, aby określić liczbę odcieni kolorów wykorzystanych w danym materiale

Roleta Ink Controls zawiera opcję Ink, dzięki której możesz całkowicie wyłączyć kontury. Możesz także ustawić wartość Ink Quality pomiędzy 1 a 3. Im wyższa jakość, tym lepsze odwzorowanie krawędzi, ale to wymaga dłuższego czasu. Szerokość pociągnięć tuszem (Ink Width) może być zmienna (Variable Width) lub ograniczona (Clamped Width). Dla każdej z tych opcji możesz wybrać Minimum, a jeśli włączona jest opcja Variable Width, możesz również wybrać Maximum. Przy włączonej tej opcji kreska zmienia się tak, że w jasnych obszarach ma wartości minimalne, a w ciemnych — maksymalne. Pomaga to zaakcentować oświetlenie. Możesz również nałożyć szerokość tuszu jako mapę. Na rysunku 30.3 przedstawiono materiał typu Ink ’n’ Paint nałożony na sześcian. Pierwszy obraz pokazuje materiał w wersji standardowej; drugi — z wyłączoną opcją Ink. Na trzech kolejnych obrazach wartość Width jest ustawiona na 1, 10 i 30. Rysunek 30.3. Materiał Ink ’n’ Paint z różnymi ustawieniami konturów Doskonałym sposobem na uzyskanie efektu odręcznej kreski jest zastosowanie mapy typu Noise dla parametru Ink Width.

Pozostałe opcje dostępne w rolecie Ink Controls służą do nadzorowania miejsc nakładania tuszu na obiekt. Do wyboru mamy: Outline (kontury zewnętrzne), Overlap (kontury części przednich), Underlap (kontury części tylnych), Smoothing Group (kontury grup wygładzania) i Material ID (kontury obszarów o takich samych identyfikatorach materiału). Dla każdej z tych opcji (z wyjątkiem Smoothing Group) możesz ustawić wartość Bias, która wpływa na odwzorowywanie przecinających się krawędzi. Każda z tych opcji może zostać zdefiniowana w formie mapy.

Ćwiczenie: Żółw rodem z kreskówki Jako przykład zastosowania materiału typu Ink ’n’ Paint wyrenderujemy model żółwia utworzony przez Zygote Media jako rysunek godzien kolorowego dodatku do naszego ulubionego dziennika. Aby na model żółwia nałożyć materiał typu Ink ’n’ Paint, wykonaj następujące czynności. 1. Otwórz plik Cartoon turtle.max z folderu Chap 30 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prosty model żółwia. 2. Po zaznaczeniu modelu żółwia otwórz edytor materiałów, wybierając z menu polecenie Rendering/Material Editor/Slate Material Editor (lub wciskając klawisz M). Otwórz w panelu węzłów wszystkie materiały z rolety Scene Materials.

864

Część VII  Materiały w ujęciu zaawansowanym

3. W panelu Utilities wybierz przycisk Color Clipboard, a w rolecie Color Clipboard kliknij przycisk New Floater. Otworzy się okno z próbkami kolorów (Color Clipboard). Przeciągnij kolory Diffuse z każdego z aktualnie wybranych materiałów do okna Color Clipboard jako oddzielną próbkę. Max zapyta, czy chcesz zamienić kolory (Swap), utworzyć kopię (Copy) lub zrezygnować z operacji (Cancel). Wskaż opcję Copy. Nie zamykaj okna Color Clipboard. 4. Uaktywnij podwójnym kliknięciem pierwszy materiał, po czym w przeglądarce materiałów i map kliknij dwukrotnie materiał Ink ’n’ Paint. Uaktywnij ten materiał w panelu węzłów, a następnie przeciągnij odpowiedni kolor z okna Color Clipboard do próbki koloru Lighted w rolecie Paint Controls. Powtórz to dla każdego z pięciu materiałów. 5. Otwórz okno dialogowe Render Setup i wyrenderuj okno widokowe Perspective. Na rysunku 30.4 widać końcowy efekt. Rysunek 30.4. Tworzenie kreskówek stało się łatwe dzięki materiałom typu Ink ’n’ Paint

Materiały architektoniczne Jeśli przyjrzysz się dokładnie zawartości panelu Material/Map Browser, zauważysz pewnie materiał typu Architectural, który został zaprojektowany specjalnie z myślą o realistycznych materiałach, które można zastosować w scenach z architekturą w roli głównej. Wykorzystuje on predefiniowane szablony, dzięki którym możesz utworzyć praktycznie dowolny typ materiału, jaki zazwyczaj występuje w każdym budynku, łącznie z ceramiką, materiałami konstrukcyjnymi, metalem, szkłem, kamieniem, drewnem i wodą. Największą zaletą materiałów architektonicznych jest ich interakcja ze światłem. W połączeniu z oświetleniem fotometrycznym lub realizowanym metodą energetyczną (Radiosity) tworzą naprawdę realistyczne efekty. Dom pokazany na rysunku 30.5 zawiera kilka spośród tego typu materiałów. Zwróć uwagę na spójny wygląd pokrycia dachu.

Rozdział 30.  Stosowanie materiałów specjalnych

865

Rysunek 30.5. Dzięki materiałom architektonicznym nakładanie tekstur na modele budynków stało się bardzo proste

Po wybraniu renderera mental ray dostępny staje się materiał Arch & Design. Można wtedy używać także materiałów profesjonalnych. Jest to zestaw jeszcze bardziej rozbudowanych i udoskonalonych materiałów architektonicznych. O tych i innych materiałach mental ray będzie jeszcze mowa w dalszej części rozdziału.

Materiały DirectX Shader i MetaSL Edytor materiałów obsługuje shadery DirectX 9 i 10 przy użyciu materiału typu DirectX Shader. Shadery te są zapisywane jako pliki formatu .fx i są dostępne jedynie przy włączonym sterowniku grafiki Direct3D. Są to pliki tekstowe zawierające dane zapisane w języku High Level Shading Language (HLSL). Materiał DirectX Shader obsługuje także shadery zapisane w plikach CgFX (format opracowany przez NVidia) i XMSL (format MetaSL opracowany przez mental images). Materiał DirectX Shader jest dostępny tylko wtedy, gdy używanym sterownikiem grafiki jest Direct3D.

W folderze maps/fx, gdzie zainstalowany jest Max, znajdziesz kilka przykładów shaderów DirectX. Możesz je wczytać, używając przycisku w rolecie DirectX Shader. Parametry dla każdego typu shaderów są inne. Na rysunku 30.6 pokazano kilka karabinów z zastosowanymi różnymi shaderami FX. Shadery FX są powszechnie używane w grach komputerowych i stosowanie ich umożliwia wyświetlanie obiektów w oknach widokowych w ostatecznej postaci. Jednakże jeśli w rolecie Software Render Style nie określisz materiału, który ma być renderowany, po zrenderowaniu obiektu z shaderem FX będzie on widoczny w kolorze szarym. Renderery Quicksilver Hardware i mental ray umożliwiają oglądanie w oknach widokowych także materiałów z shaderami MetaSL, których kilka znajdziesz w rolecie Maps/ MetaSL w przeglądarce materiałów i map. Ponieważ są dostępne wyłącznie w postaci

866

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 30.6. Zastosowanie materiału DirectX pozwala oglądać elementy gry komputerowej w oknach widokowych

map, trzeba użyć dodatkowego węzła Map to Material Conversion, aby stały się widoczne w oknach widokowych. Konieczne jest także włączenie w tych oknach cieniowania sprzętowego. Materiały MetaSL można eksportować za pomocą polecenia Material/Export As XMSL File dostępnego w edytorze rozszerzonym. Shadery MetaSL można tworzyć za pomocą aplikacji mental mill, którą w wersji Artist Edition można pobrać z witryny internetowej firmy Autodesk.

Materiały i shadery mental ray Jeśli włączysz renderer mental ray, iray lub Quicksilver Hardware, w panelu Material/ Map Browser pojawi się wiele dodatkowych materiałów i map. Dostępna stanie się także biblioteka o nazwie Autodesk Material Library z setkami rozmaitych materiałów pogrupowanych w liczne kategorie i podkategorie (patrz rysunek 30.7). Renderer mental ray można włączyć w rolecie Assign Renderer znajdującej się na samym dole panelu Common okna dialogowego Render Setup. Jeśli w przeglądarce materiałów i map włączysz opcję Incompatybile, będziesz mógł przejrzeć listę materiałów mental ray nawet bez włączania ich renderera.

O rendererze mental ray możesz przeczytać w rozdziale 47., „Renderery mental ray i iray”.

Rozdział 30.  Stosowanie materiałów specjalnych

867

Rysunek 30.7. Przeglądarka materiałów i map udostępnia mnóstwo dodatkowych materiałów z biblioteki Autodesk Material Library

Czym są shadery? Shader to algorytm określający kolory wszystkich pikseli w scenie. Shadery Surface uwzględniają w swych obliczeniach takie czynniki jak szczegóły tekstury, odbicia i załamania światła oraz efekty atmosferyczne; shadery typu Atmospheric zmieniają właściwości światła przechodzącego przez obszar atmosferyczny. Mogą być zaprogramowane i przypisane do obiektów i scen, a renderery, takie jak mental ray, renderują scenę w oparciu o te właśnie shadery.

Stosowanie materiałów i shaderów mental ray Przy wybranym rendererze mental ray (lub Quicksilver) wszystkie materiały nie należące do typu mental ray zawierają dodatkową roletę, o nazwie mental ray Connection. Roleta ta, pokazana na rysunku 30.8, dostępna jest tylko wtedy, gdy włączone są rozszerzenia mental ray Extentions w panelu mental ray okna dialogowego Preference Settings. Rozszerzenia pozwalają zastąpić istniejące shadery używane przez renderer Scanline i uaktywnić dodatkowe shadery, z których korzystał będzie mental ray. Rysunek 30.8. Roleta mental ray Connection w edytorze materiałów pozwala zastąpić domyślne shadery

868

Część VII  Materiały w ujęciu zaawansowanym

Shadery, przy których znajdują się ikony kłódek, są domyślnie używane przez renderer Scanline. Aby wybrać nowy shader, odblokowujemy te shadery, klikając przycisk z kłódką. Jeśli materiał jest nieprzezroczysty, możemy przyspieszyć proces renderingu, oznaczając go jako Opaque za pomocą opcji u dołu rolety. Materiały typu mental ray umożliwiają wykorzystanie wszystkich shaderów wymienionych w rolecie mental ray Connection.

Biblioteka Autodesk Material Library i materiały Arch & Design Biblioteka Autodesk Material Library i materiały Arch & Design stanowią zestaw zaawansowanych materiałów typu mental ray przygotowanych z myślą o architektach tworzących wizualizacje swoich projektów. Każdy z materiałów uwzględnia prawa optyki mające zastosowanie w typowych warunkach oświetleniowych. Przykładowo szablon Satin Varnished Wood (drewno lakierowane bez połysku) zawiera lekko rozmyte odbicia i umiarkowaną połyskliwość, co daje bardzo realistyczny efekt. Materiały zebrane w bibliotece Autodesk Material Library są podzielone na liczne kategorie i podkategorie. Każdy z nich ma parametry umożliwiające zmianę koloru, połyskliwości, przezroczystości itp. Dostępność tych parametrów zależy od tego, jaki materiał zostanie wybrany. Wiele materiałów Arch & Design zostało zdefiniowanych w formie szablonów dostępnych w rolecie Templates. Lista tych szablonów obejmuje m.in. Pearl Finish (wykończenie perłowe), Satin Varnished Wood (drewno lakierowane bez połysku), Glazed Ceramic (ceramika glazurowana), Glossy Plastic (błyszczący plastik), Masonry (wyroby kamieniarskie), Leather (skóra), Frosted Glass (mrożone szkło), Translucent Plastic Film (przezroczysta folia), Brushed Metal (metal szczotkowany) i Patterned Copper (miedź wzorkowana). Dla każdego szablonu dostępne są rolety z parametrami określającymi własności rozpraszania, odbijania, załamywania i przepuszczania światła, a także anizotropię, odbicia Fresnela, nierówności i samoświecenie. Oczywiście, większości parametrów można przypisać mapy. Kilka próbek materiałów pokazano na rysunku 30.9. W rolecie Special Effects znajdują się dwie istotne opcje mające wpływ na realizm końcowego renderingu. Ambient Occlusion (zasłanianie światła otaczającego) oświetla scenę z uwzględnieniem stopnia, w jakim światło może docierać do poszczególnych obiektów. Więcej zależy tutaj od shadera danego materiału niż od samego światła. Powierzchnie zwrócone do ściany lub zasłonięte przez inne obiekty pozostają w cieniu. Powierzchnie zwrócone w stronę światła są mocniej rozjaśniane. Za pomocą parametrów Samples (próbki) i Max Distance (maksymalna odległość) można wpływać na kontrastowość ostatecznego obrazu. Domyślnie opcja Ambient Occlusion wykorzystuje ciemne odcienie szarości dla obszarów zasłoniętych, ale jeśli włączysz opcję Use Color From Other Materials (Exact AO), w obszarach tych pojawi się kolor Diffuse sąsiednich obiektów. Przykład wykorzystania opcji Ambient Occlusion został pokazany na rysunku 30.10.

Rozdział 30.  Stosowanie materiałów specjalnych

869

Rysunek 30.9. Materiały z kolekcji Arch & Design mają szeroki zestaw właściwości fizycznych

Rysunek 30.10. Opcja Ambient Occlusion pozwala sterować jasnością sceny przez wpływanie na ilość światła rozproszonego

Efekty działania opcji Ambient Occlusion można podziwiać w oknach widokowych, jeśli włączony jest sterownik Nitrous.

Drugą użyteczną opcją jest Round Corners. Pozwala ona zaokrąglać krawędzie obiektów bez wpływania na ich geometrię. Łagodne krawędzie można zatem uzyskać bez większego nakładu pracy i konieczności zwiększania liczby ścianek. Korzystając z ustawień zawartych w rolecie Self Illumination (Glow), można uzyskać materiał zachowujący się jak źródło światła. Znajdziesz tu także szereg predefiniowanych ustawień dla rozmaitych rzeczywistych źródeł światła.

870

Część VII  Materiały w ujęciu zaawansowanym

Materiał Car Paint W fabryce samochody malowane są dwuwarstwowo w celu uzyskania określonego wyglądu. Spodnia warstwa lakieru (z płatkami metalu — Flakes) prześwituje przez górną. Materiał Car Paint zawiera ustawienia umożliwiające zdefiniowanie obu tych warstw2. Samochód z rysunku 30.11 został pokryty takim właśnie materiałem. Rysunek 30.11. Samochody renderowane przy użyciu shadera Car Paint mają dwie warstwy lakieru, tak samo jak prawdziwe

Materiały z rozpraszaniem podpowierzchniowym Cztery materiały typu mental ray, których nazwy rozpoczynają się od słów Subsurface Scattering, są materiałami z rozpraszaniem podpowierzchniowym. Najczęściej są używane do imitowania ludzkiej skóry. Skóra człowieka ma ciekawą właściwość — częściowo przepuszcza światło. Można to zauważyć przykładowo na uszach — gdy je mocno oświetlimy, możemy zobaczyć ich budowę wewnętrzną. Podobne właściwości ma wiele innych obiektów organicznych, np. liście, guma, mleko itp. Im też można przypisywać tego typu materiały. Jeśli chcesz dowiedzieć się więcej o rendererze mental ray, zajrzyj do rozdziału 47., „Renderery mental ray i iray”.

Podsumowanie Rozdział ten stanowił wprowadzenie w świat materiałów wyspecjalizowanych umożliwiających osiąganie określonych efektów wizualnych. Omówione zostały materiały Matte/ Shadow, Ink ’n’ Paint, DirectX Shader oraz materiały mental ray, takie jak Arch & Design, Car Paint i Subsurface Scattering. 2

Możliwe jest nawet zdefiniowanie najbardziej zewnętrznej warstwy imitującej brud (roleta Dirty Layer Lambertian) — przyp. tłum.

Rozdział 30.  Stosowanie materiałów specjalnych

871

W tym rozdziale zostały opisane następujące tematy: 

używanie materiału Matte/Shadow do wkomponowywania obiektów w obraz tła,



tworzenie kreskówek przez renderowanie scen z materiałami Ink ’n’ Paint,



wyświetlanie elementów gier z materiałami DirectX Shader,



stosowanie materiałów Arch & Design i ProMaterials,



stosowanie wielowarstwowego materiału Car Paint,



stosowanie materiałów z rozpraszaniem podpowierzchniowym.

W następnym rozdziale zobaczysz, jak można tworzyć materiały imitujące rozmaite substancje przy użyciu tekstur proceduralnych, a nie bitmapowych.

872

Część VII  Materiały w ujęciu zaawansowanym

Rozdział 31.

Proceduralne tekstury substancyjne W tym rozdziale: 

Stosowanie tekstur substancyjnych



Losowe różnicowanie tekstur proceduralnych

Materiały substancyjne można tworzyć na bazie mapy typu Substance dostępnej w edytorze materiałów. Swoim wyglądem materiały te nie odbiegają od materiałów innych typów, ale mają zupełnie inną naturę. Większość materiałów o dużym stopniu szczegółowości wymaga tekstur bitmapowych (im bardziej szczegółowy materiał, tym większa bitmapa), które nawet po skompresowaniu nierzadko zajmują po kilka megabajtów. Natomiast tekstury substancyjne, jako że są zapisywane w postaci wykonywalnych procedur, mieszczą się w plikach o objętości mierzonej w kilobajtach. Podstawową korzyścią ze stosowania tekstur proceduralnych jest więc to, że można z niewielkiego pliku uzyskać bardzo dobrej jakości materiał. Niebagatelne znaczenie ma też fakt, że takie tekstury można łatwo modyfikować przez wprowadzanie do ich kodu odpowiednich danych. Aby zastosować inny wariant takiej tekstury, nie trzeba obciążać pamięci operacyjnej kolejną bitmapą — wystarczy zmienić wartości odpowiednich parametrów. W pewnych sytuacjach — na przykład przy opracowywaniu trójwymiarowych grafik na potrzeby internetowe lub dla gier komputerowych — jest to niezwykle korzystne.

Posługiwanie się teksturami substancyjnymi Tekstury substancyjne nie wymagają specjalnego silnika renderującego ani dodatkowego interfejsu. Wręcz przeciwnie, można ich używać bez problemów w edytorze materiałów wraz z tradycyjnymi materiałami, a co więcej, są z nimi tak zintegrowane, że nawet łatwo je przeoczyć. Są dostępne w panelu Material/Map Browser w kategorii map (roleta Maps) pod postacią mapy Substance i można ich używać jako składników zwykłych materiałów.

874

Część VII  Materiały w ujęciu zaawansowanym Proceduralne tekstury substancyjne są nowością w 3ds Max 2012.

Węzeł mapy Substance ma gniazda wyjściowe dla następujących atrybutów: Diffuse (kolor podstawowy), Specular (odblaski), Normal (mapa normalnych dla nierówności), Bump (mapa drobnych nierówności), Displacement (mapa większych przemieszczeń), Height (wysokość) i Glossiness (połyskliwość)1. Na rysunku 31.1 pokazany jest graf materiału, w którym mapa substancyjna steruje kanałami Diffuse i Bump materiału typu Standard.

Rysunek 31.1. Tekstury substancyjne są dostępne poprzez węzeł mapy Substance

Po prawidłowym połączeniu wszystkich składników materiału można go nałożyć na obiekt w zwykły sposób, czyli przez zaznaczenie obiektu i kliknięcie przycisku Assign Material to Selection lub przez przeciągnięcie gniazda wyjściowego węzła materiału Standard na wybrany obiekt. Materiał taki jest renderowany tak jak każdy inny. Na rysunku 31.2 pokazano wyrenderowany prostopadłościan z nałożonym materiałem substancyjnym o nazwie Old Painted Planks (stare malowane deski).

Wczytywanie substancyjnych tekstur Standardowo dostępne są tylko te tekstury substancyjne, które są dostarczane wraz z Maksem, ale w rolecie Substance Package Browser edytora parametrów znajduje się przycisk Get Substance From Marketplace, za pomocą którego można zdobyć dodatkowe zestawy tekstur. Kliknięcie tego przycisku otwiera w przeglądarce internetowej witrynę Allegorithmic, gdzie można dokonać stosownego zakupu. To właśnie w firmie Allegorithmic są tworzone tekstury substancyjne.

1

Niektóre tekstury mogą mieć również węzły wyjściowe Opacity (krycie) lub Emissive (świecenie) — przyp. tłum.

Rozdział 31.  Proceduralne tekstury substancyjne

875

Rysunek 31.2. Materiały substancyjne mimo skromnych rozmiarów są niezwykle bogate w szczegóły

Wraz z Maksem instalowanych jest ponad 80 takich tekstur. Aby wybrać jedną z nich, należy kliknąć przycisk Load Substance w rolecie Substance Package Browser. To spowoduje otwarcie okna dialogowego Browse for Substances z dostępem do zawartości folderu Maps\Substance znajdującego się w folderze instalacyjnym Maksa. Wszystkie tekstury zostały tutaj rozlokowane w dwóch podfolderach: noises (szumy) i textures (tekstury).

Łączenie substancyjnych map Ponieważ tekstury substancyjne są dostępne tylko poprzez węzły map, trzeba je połączyć z materiałami, aby mogły być przypisane obiektom. Oto krótki opis całej procedury. Najpierw utwórz w panelu węzłów dwa węzły: jeden dla mapy Substance, a drugi dla materiału bazowego — może być typu Standard. Przypominam, że węzły tworzymy, klikając dwukrotnie odpowiednie pozycje w przeglądarce materiałów i map. Następnie uaktywnij węzeł mapy i kliknij przycisk Load Substance w rolecie Substance Package Browser, aby załadować konkretny typ tekstury. Potem przeciągnij gniazdo wyjściowe kanału Diffuse z węzła Substance na gniazdo wejściowe kanału Diffuse w węźle Standard. Do grafu materiałowego dodany zostanie automatycznie węzeł Map Output pośredniczący między węzłami Substance i Standard. Pozostałe kanały mapy — Normal, Bump czy Displacement — również można połączyć z kanałami materiału. W celu połączenia kanału Normal mapy Substance z kanałem Bump materiału należy zastosować dodatkowy węzeł pośredniczący z mapą Normal Bump. Każdą teksturę substancyjną mającą kanał Displacement można połączyć bezpośrednio z kanałem Displacement materiału standardowego. Z kanałem materiałowym Displacement można połączyć także kanał Height mapy. Kanał Height łączy w sobie informacje z kanałów Bump i Displacement. Jeśli kanały Bump i Displacement mapy połączysz z odpowiadającymi im kanałami materiału, będziesz mógł sterować zrównoważeniem tych kanałów za pomocą parametru Relief Balance w rolecie Parameters.

876

Część VII  Materiały w ujęciu zaawansowanym

Niektóre tekstury substancyjne, na przykład Fencing (ogrodzenie), mają kanał Opacity, który po połączeniu z odpowiadającym mu kanałem materiału powoduje, że oka siatki ogrodzeniowej stają się przezroczyste. Kanał Opacity ma również tekstura Autumn Leaves (jesienne liście); efekt nałożenia jej na teksturę trawy pokazano na rysunku 31.3. Rysunek 31.3. Niektóre tekstury używają kanału Opacity, aby pokazać to, co znajduje się pod nimi

Kilka tekstur dysponuje kanałem Emissive, który po połączeniu z kanałem materiałowym Self-Illumination wywołuje efekt poświaty. Po wykonaniu odpowiednich połączeń między węzłem mapy Substance a węzłem materiału możesz ten ostatni przypisać obiektowi i wyrenderować scenę, aby zobaczyć ostateczny rezultat.

Różnicowanie tekstur substancyjnych Dla węzła Substance dostępne są zawsze takie rolety jak Texture Size (rozmiar tekstury), Coordinates (współrzędne) i Noise (szum), a poza tym każda konkretna tekstura dodaje własną roletę ze specyficznymi dla siebie parametrami. Za pomocą tych parametrów można kreować rozmaite wersje danej tekstury. Przykładowo tekstura Crumpled Paper (zmięty papier) ma roletę Crumpled_Paper Parameters, gdzie można modyfikować takie parametry jak Crumple (zmięcie), Dirt (brud), Paper Color (kolor papieru) itd. Niemal wszystkie tekstury substancyjne mają też parametr o nazwie Random Seed (zalążek losowości), który wprowadza do ich wyglądu element przypadkowości. Zmieniając jego wartość, można różnicować tekstury i czynić je niepowtarzalnymi nawet wtedy, gdy pozostałe parametry pozostają bez zmian. Z drugiej strony, dwie tekstury tego samego typu i z tą samą wartością parametru Random Seed zawsze będą wyglądały bardzo podobnie. Na rysunku 31.4 pokazano dwa przykłady tekstury Cracked Plaster (odpadający tynk) różniące się tylko wartościami Random Seed.

Rozdział 31.  Proceduralne tekstury substancyjne

877

Rysunek 31.4. Tekstury substancyjne można różnicować za pomocą parametru Random Seed

Ćwiczenie: Stosowanie tekstur substancyjnych Tekstury substancyjne nadają się szczególnie do imitowania materiałów starych i zniszczonych. Bardzo łatwo na przykład utworzyć imitację rdzy i innych skutków korozji. Spróbujmy więc, korzystając z różnych tekstur substancyjnych, wygenerować scenę ukazującą fragment opuszczonego miasta. Aby wykreować taką scenę, wykonaj następujące czynności. 1. Otwórz plik Wall and crates.max z folderu Chap 31 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prostą scenę złożoną z kilku obiektów podstawowych. 2. Zaznacz płaszczyznę stanowiącą podłoże sceny i otwórz rozszerzony edytor materiałów — wybierz polecenie Rendering/Material Editor/Slate Material Editor lub wciśnij klawisz M. 3. W panelu Material/Map Browser kliknij dwukrotnie materiał Standard, a następnie odszukaj i kliknij dwukrotnie mapy Substance i Normal Bump. W panelu z widokiem węzłów kliknij dwukrotnie węzeł Substance, po czym kliknij przycisk Load Substance w edytorze parametrów i z folderu textures wybierz plik o nazwie Dry Ground 02 (sucha ziemia). 4. Połącz kanał Diffusse węzła Substance z jego odpowiednikiem w węźle Standard. Następnie połącz kanał Normal węzła Substance z takim samym kanałem węzła Normal Bump, a wyjście tego ostatniego połącz z kanałem Bump węzła Standard. Max automatycznie utworzy węzły pośrednie Map Outout. Kliknij dwukrotnie węzeł Standard, aby go uaktywnić, a następnie kliknij przycisk Assign Material to Selection na pasku narzędziowym edytora. 5. W oknie widokowym zaznacz płaszczyznę stanowiącą fragment ściany, a następnie powtórz czynności z punktów 3. i 4., wybierając tym razem teksturę o nazwie Brick Wall 03 (ściana z cegły). 6. Zaznacz skrzynkę ustawioną na dwóch pozostałych i powtórz czynności z punktów 3. i 4., wybierając teksturę Aircraft Metal (metal samolotu).

878

Część VII  Materiały w ujęciu zaawansowanym

7. Postępując tak samo jak w poprzednim punkcie, przypisz teksturę Aircraft Metal pozostałym skrzynkom. Gotową scenę możesz obejrzeć na rysunku 31.5. Rysunek 31.5. Tekstury substancyjne mogą znacznie zwiększyć szczegółowość sceny

Podsumowanie W tym rozdziale zapoznałeś się z podstawami tworzenia niezwykle szczegółowych tekstur przy użyciu węzła mapy Substance. Tekstury te zajmują niewiele miejsca i można ich używać w grach komputerowych — odpowiednie narzędzia są dostępne na stronach internetowych firmy Allegorithmic. W tym rozdziale zostały opisane następujące tematy: 

zestawianie materiałów substancyjnych i przypisywanie ich obiektom w scenie,



różnicowanie tekstur substancyjnych przez modyfikowanie ustawień w rolecie Parameters.

W następnym rozdziale zobaczysz, że obiekty można malować bezpośrednio w oknie widokowym. Dowiesz się również o renderowaniu map powierzchniowych.

Rozdział 32.

Malowanie w oknach widokowych i renderowanie map powierzchni W tym rozdziale: 

Korzystanie z funkcji Viewport Canvas



Stosowanie modyfikatora Vertex Paint



Renderowanie map powierzchni

Max jest programem przeznaczonym do grafiki trójwymiarowej i jego funkcje różnią się od tych, z którymi mamy do czynienia w tradycyjnych aplikacjach malarskich. Zapewne czasami, gdy pracujesz nad jakąś sceną, a zwłaszcza gdy opracowujesz dla niej tekstury, odczuwasz brak typowych narzędzi malarskich. Na szczęście Max umożliwia malowanie w sposób znany z owych starych programów graficznych. W trybie malowania, zwanym Viewport Canvas (płótno okna widokowego), cała powierzchnia aktywnego okna widokowego zmienia się w dwuwymiarową płaszczyznę, po której możesz malować, ale najlepsze jest to, że gdy skończysz malowanie, Twoje dzieło jest automatycznie przenoszone w formie tekstury na aktywny obiekt. Jeśli możliwości malarskie Maksa wydadzą Ci się zbyt skromne, lub uznasz, że malowanie w oknie widokowym nie jest najlepszym rozwiązaniem, na pewno ucieszy Cię fakt, że możesz wyrenderować mapę powierzchni obiektu i użyć jej w Photoshopie lub innym programie malarskim jako szablonu dla tworzonej tekstury.

880

Część VII  Materiały w ujęciu zaawansowanym

Korzystanie z funkcji Viewport Canvas Funkcja Viewport Canvas umożliwia szybkie nakładanie malowanej tekstury na zaznaczony obiekt. Podczas takiego tworzenia tekstury możemy korzystać nie tylko ze standardowego, konfigurowalnego pędzla malarskiego, ale także z narzędzia o nazwie Clone, za pomocą którego można kopiować dowolne fragmenty okna widokowego, oraz z kilku innych pędzli. Aby uaktywnić tę funkcję, wystarczy wybrać polecenie Tools/Viewport Canvas. To spowoduje otwarcie panelu Viewport Canvas pokazanego na rysunku 32.1. Rysunek 32.1. Panel Viewport Canvas zamienia okno widokowe w płótno malarskie

Panel Viewport Canvas można zadokować przy lewej lub prawej krawędzi okna programu. Aby to zrobić, należy kliknąć prawym przyciskiem myszy pasek tytułowy panelu i z menu kontekstowego wybrać jedno z dwóch dostępnych miejsc dokowania.

Rozdział 32.  Malowanie w oknach widokowych

881

Przygotowanie obiektu do malowania Zanim przystąpisz do malowania, musisz poczynić pewne przygotowania. Funkcję Viewport Canvas można stosować w odniesieniu do każdego obiektu z przypisanymi współrzędnymi mapowania. Obiektom podstawowym można takie współrzędne przypisać przez włączenie opcji Generate Mapping Coordinates w panelu poleceń albo przez zastosowanie modyfikatora UVW Map lub Unwrap UVW. Po zaznaczeniu obiektu wybierz jedno z narzędzi malarskich dostępnych w panelu Viewport Canvas; jeśli obiekt ma przypisany materiał z bitmapą, możesz od razu przystąpić do malowania. Jeśli obiekt nie ma przypisanego żadnego materiału ani tekstury, wyświetlane jest okno dialogowe Assign Material pokazane na rysunku 32.2. Rysunek 32.2. Okno dialogowe Assign Material umożliwia przypisanie obiektowi materiału, na którym będzie można malować

Przycisk Assign Standard Material rozwija listę możliwych do wykorzystania kanałów w ramach materiału typu Standard. Przycisk Browse Material To Assign otwiera przeglądarkę materiałów i map, gdzie możesz wybrać inny typ materiału. Lista dostępnych kanałów obejmuje Ambient Color, Diffusse Color, Specular Color, Specular Level, Glossiness, Self-Illumination, Opacity, Filter Color, Bump, Reflection, Refraction i Displacement. Gdy wybierzesz kanał tekstury, otworzy się okno dialogowe Create Texture pokazane na rysunku 32.3. W oknie tym możesz określić wymiary tekstury i wskazać miejsce, gdzie powinna być zapisana. Jeśli ma być utworzona nowa tekstura, musisz podać ścieżkę do folderu, w którym ma być zapisana, i nazwę pliku. Tekstura zostanie automatycznie przypisana do wskazanego wcześniej kanału. Pole Color służy do wybierania początkowego koloru tła dla nowej tekstury. Rysunek 32.3. Okno dialogowe Create Texture automatyzuje proces przypisywania materiału z teksturą

Posługiwanie się narzędziami malarskimi Po ustanowieniu tekstury możesz przystąpić do malowania — kliknij ikonę pędzla i przeciągnij myszą w oknie widokowym po zaznaczonym obiekcie. Za pomocą kontrolek rozmieszczonych poniżej narzędzi malarskich ustalisz następujące właściwości pędzla:

882

Część VII  Materiały w ujęciu zaawansowanym

kolor, rozmiar (Radius), przezroczystość (Opacity), twardość (Hardness), odstępy (Spacing), rozrzut (Scatter) i rozmycie/ostrość (Blur/Sharpen), przy czym właściwości te zmieniają się w zależności od wybranego narzędzia. Ikona wybranego narzędzia jest wyróżniona w panelu Viewport Canvas, a samo narzędzie pozostaje aktywne, dopóki nie wybierzesz innego lub nie klikniesz prawym przyciskiem myszy w oknie widokowym. Wszystkie dostępne narzędzia zostały zebrane w tabeli 32.1. Tabela 32.1. Narzędzia do malowania w oknach widokowych Przycisk

Nazwa

Opis

Paint

Służy do nakładania wybranego koloru lub obrazu.

Erase

Wymazuje bieżącą warstwę, ale pod warunkiem że nie jest to warstwa tła.

Clone

Nakłada teksturę skopiowaną z innego miejsca, które należy wcześniej wskazać kliknięciem przy wciśniętym klawiszu Alt. Miejsce to jest oznaczane zielonym punktem. W rolecie Paint Behavior można ustalić, czy źródłem klonowania ma być bieżąca warstwa (Current Layer), wszystkie warstwy (All Layers), okno widokowe (Viewport), czy ekran (Screen).

Fill

Wypełnia całą teksturę wybranym kolorem lub obrazem. Jeśli jest to obraz, można go układać jak kafelki (opcja Tile w rolecie Paint Behavior) lub owinąć wokół obiektu (3D Wrap).

Gradient

Umożliwia nakładanie gradientu na powierzchnię obiektu. Pełny kolor (lub obraz) jest nakładany w miejscu pierwszego kliknięcia, a pełna przezroczystość pojawia się tam, gdzie przycisk myszy jest zwalniany. Orientację gradientu wyznacza kierunek przeciągania myszy.

Blur

Wprowadza rozmycie obrazu w zamalowywanych fragmentach.

Sharpen

Wyostrza zamalowywane fragmenty.

Contrast

Zwiększa kontrast obrazu w zamalowywanych fragmentach.

Dodge

Rozjaśnia zamalowywane fragmenty.

Burn

Przyciemnia zamalowywane fragmenty.

Smudge

Rozmazuje zamalowywane fragmenty.

Move Layer

Umożliwia przesuwanie bieżącej warstwy.

Rotate Layer

Umożliwia obracanie bieżącej warstwy wokół środka tekstury.

Scale Layer

Umożliwia skalowanie bieżącej warstwy względem środka tekstury.

Rozdział 32.  Malowanie w oknach widokowych

883

Możliwość klonowania tekstury z dowolnego miejsca na ekranie jest nowością w 3DS Max 2012. Warstwa tła (Background) nie może być przesuwana, obracana ani skalowana.

Gdy wybrane jest narzędzie Paint, można tymczasowo włączyć narzędzie Erase przez wciśnięcie i przytrzymanie klawisza Shift. Przytrzymanie wciśniętego klawisza Ctrl umożliwia wybranie koloru z bieżącej tekstury, przytrzymanie wciśniętego klawisza spacji wymusza rysowanie linii prostej od ostatniego śladu pędzla do jego bieżącej pozycji. Klawisz spacji działa tak samo, gdy włączone jest narzędzie Erase. Przez przeciąganie myszą przy wciśniętych klawiszach Ctrl+Shift można zmienić rozmiar używanego pędzla w sposób interaktywny. Użyte w ten sam sposób klawisze Alt+Shift umożliwiają zmianę parametru Opacity (krycie), a kombinacja Alt+Ctrl pozwala zmienić twardość pędzla (Hardness). Kliknięcie próbki koloru otwiera okno dialogowe Color Selector, gdzie można wybrać nowy kolor. Można także skorzystać z przygotowanej wcześniej palety kolorów — aby ją otworzyć, należy kliknąć przycisk Open Color Palette. Do szybkiego przełączania się między kolorami czarnym i białym służą dwa pola z próbkami tych kolorów. Podczas malowania w każdej chwili można obiekt obrócić i kontynuować malowanie z innej strony. Jeśli uzyskany rezultat jest niezadowalający, można kliknąć przycisk Undo Scene Operation na pasku szybkiego dostępu w głównym interfejsie programu i cofnąć ostatnie zmiany.

Malowanie obrazami W rolecie Brush Images znajdują się dwa pola służące do wybierania obrazu, który ma być nakładany, i maski modyfikującej kształt pędzla. Kliknięcie któregokolwiek z tych pól otwiera paletę z zestawem gotowych obrazków i masek (patrz rysunek 32.4). Przycisk Browse Custom Maps Directory otwiera w systemowej przeglądarce folder ViewportCanvas znajdujący się w jednym z folderów instalacyjnych Maksa. Folder ten zawiera wszystkie obrazki i maski dostępne w palecie. Rysunek 32.4. W rolecie Custom Maps można umieszczać własne obrazki i maski

884

Część VII  Materiały w ujęciu zaawansowanym

Każdy obraz (z kanałem alfa dla maski) umieszczony w tym folderze będzie dostępny w palecie z predefiniowanymi obrazkami i będzie można go użyć podczas malowania1. Przycisk Reload Custom Maps służy do zaktualizowania zawartości palety po każdej zmianie zawartości folderu. Aby wykorzystać obrazek lub maskę, należy włączyć opcję Use (użyj) obok właściwego pola. Poniżej znajdują się następujące opcje obrotu pędzla: None (bez obrotu), Random (losowo) i Follow Stroke (zgodnie z pociągnięciem). Działanie każdej z nich ilustruje rysunek 32.5. Lewe oko wykonano z włączoną opcją None i dlatego wszystkie gwiazdki są ustawione jednakowo. Przed narysowaniem drugiego oka włączono opcję Random i tutaj każda gwiazdka jest skierowana inaczej. Linię ust namalowano przy włączonej opcji Follow Stroke — gwiazdki ustawiły się zgodnie z kierunkiem rysowanej linii.

Rysunek 32.5. O ustawieniu gwiazdek zdecydowały opcje obrotu pędzla

Roleta Brush Image Settings zawiera kilka opcji mających wpływ na to, jak malowana tekstura jest rzutowana na obiekt. Hit Normal (wzdłuż normalnej) rzutuje ślady pędzla zgodnie z kierunkiem prostopadłym do powierzchni obiektu. Przy włączonej opcji From Screen (z ekranu) rzutowanie odbywa się w kierunku prostopadłym do ekranu. Pozostałe opcje dopasowują obrazek do rozmiarów pędzla (Fit To Brush) i sterują jego kafelkowaniem w obrębie pędzla — None (bez kafelkowania), Tile (z kafelkowaniem) i Across Screen (kafelkowanie na ekranie). 1

Ściśle rzecz biorąc, przygotowany przez siebie obrazek należy umieścić w folderze Custom Brushes, a poza tym obrazek, który ma być maską, wcale nie musi mieć kanału alfa. Z reguły maski tworzy się w skali szarości, ale w tej roli może być użyty nawet obraz kolorowy, bo dla celów maskowania funkcja Viewport Canvas i tak wykorzysta tylko informacje o poziomach jasności — przyp. tłum.

Rozdział 32.  Malowanie w oknach widokowych

885

Malowanie na warstwach Funkcja Viewport Canvas umożliwia malowanie na warstwach, zupełnie tak samo jak w Photoshopie. Aby otworzyć paletę z narzędziami do obsługi warstw, należy w panelu Viewport Canvas kliknąć przycisk Layers Dialog. Na rysunku 32.6 pokazana jest paleta Layers (warstwy) z kilkoma warstwami ułożonymi w stos. Warstwy mają swoje nazwy i są ułożone na powierzchni obiektu jedna na drugiej. Dla każdej z nich (z wyjątkiem warstwy tła) można ustalić tryb mieszania i poziom krycia (Opacity). Przyciski w dolnej części palety służą do kopiowania, dodawania i usuwania warstw. Za pomocą małej ikony w kształcie żarówki widocznej na lewo od miniatury warstwy można wybraną warstwę włączyć lub wyłączyć. Rysunek 32.6. Do manipulowania warstwami malowanej tekstury służy paleta Layers

Gdy aktywna jest warstwa inna niż Background (tło), można ją przesuwać, obracać i skalować za pomocą narzędzi dostępnych w górnej części panelu Viewport Canvas. Zawartość warstwy Background nie może być wymazywana za pomocą narzędzia Erase.

Paleta Layers ma też pasek menu, gdzie można znaleźć wiele poleceń takich samych jak w Photoshopie. Przykładowo w menu Layer (warstwa) znajdziesz polecenia Add Layer Mask (dodaj maskę warstwy), Merge Down (scal w dół), Flip Horizontal (odbij w poziomie), Flip Vertical (odbij w pionie) oraz Flatten Visible Layers (spłaszcz warstwy widoczne). Menu Adjust (korekta) zawiera polecenia umożliwiające regulowanie takich parametrów obrazu jak Brightness (jasność), Contrast (kontrast), Hue (barwa), Saturation (nasycenie), Levels (poziomy) i Color Balance (balans kolorów). Jest tu także możliwość automatycznego wyregulowania poziomów tonalnych (Auto Levels). W menu Filter zgromadzono

886

Część VII  Materiały w ujęciu zaawansowanym

następujące filtry: Blur (rozmycie), Sharpen (wyostrzenie), Find Edges (wykrywanie krawędzi), Median (mediana), Threshold (próg), High Pass (filtr górnoprzepustowy) i Distort (zniekształcenie). Jeśli chcesz zachować warstwy po zakończeniu malowania, zapisz teksturę w formacie obsługującym warstwy, na przykład w PSD.

Jeśli po dodaniu choćby jednej warstwy skończysz malowanie tekstury, otworzy się okno dialogowe Save Texture Layers (zapisz warstwy tekstury) pokazane na rysunku 32.7. Możesz tutaj wybrać kontynuowanie malowania, zapisanie tekstury w pliku PSD z zachowaniem wszystkich warstw, scalenie wszystkich warstw i zapisanie tekstury, zapisanie pliku PSD i zastąpienie nim bieżącej tekstury materiału, zapisanie pliku PSD, a potem scalenie wszystkich warstw i zapisanie tekstury jednowarstwowej, ale możesz też zrezygnować z zapisywania wprowadzonych zmian. Jeśli zamierzasz w przyszłości modyfikować poszczególne warstwy, zapisz teksturę w pliku PSD, a jeśli uważasz, że uzyskany efekt jest bardzo dobry, możesz scalić wszystkie warstwy i zapisać obraz w postaci jednowarstwowej. Rysunek 32.7. Okno dialogowe Save Texture Layers umożliwia zapisanie tekstury z wszystkimi warstwami

Malowanie w dwóch wymiarach Malowanie wprost na obiekcie trójwymiarowym ma swoje zalety, ale gdy obiekt ma mocno zróżnicowaną powierzchnię, rezultaty mogą być, delikatnie mówiąc, odmienne od oczekiwanych. W takich sytuacjach lepszym rozwiązaniem jest namalowanie tekstury na płaszczyźnie, a następnie zrzutowanie jej na powierzchnię obiektu. Możliwość taką daje znajdujący się w panelu Viewport Canvas przycisk 2D View, wyświetlający bieżącą teksturę w prostokątnym oknie, gdzie można ją swobodnie edytować. Przydaje się to szczególnie przy opracowywaniu tekstur z napisami. Okno otwierane za pomocą przycisku 2D View pokazane jest na rysunku 32.8. Widoczne u góry przyciski służą do wyświetlania lub ukrywania siatki współrzędnych UV, dopasowywania tekstury do rozmiarów okna i wyświetlania jej w skali 1:1. Każda modyfikacja tekstury wprowadzona w tym oknie jest natychmiast przenoszona na powierzchnię zaznaczonego obiektu2.

2

Okno 2D Paint jest widoczne tylko w aktywnym oknie widokowym; jest po prostu na nie nałożone. Jeśli nie jest widoczne w całości, należy zmaksymalizować okno widokowe — przyp. tłum.

Rozdział 32.  Malowanie w oknach widokowych

887

Rysunek 32.8. W oknie 2D Paint można edytować teksturę niezniekształconą przez perspektywę widoku

Ponowne kliknięcie przycisku 2D View wyłącza tryb malowania w dwóch wymiarach i zamyka okno 2D Paint.

Opcje malowania Do omówienia pozostało nam jeszcze kilka rolet panelu Viewport Canvas, w których zawarto opcje mające wpływ na rozmaite pędzle i tekstury. W rolecie Options można wybrać typ mapy, która ma być malowana, i kanał, do którego mapa ma być przypisana. Jest tu także opcja Save Texture (zapisz teksturę); jeśli jest włączona, tekstura jest zapisywana przy każdym dezaktywowaniu narzędzia malarskiego. Na czas prób i eksperymentów lepiej ją wyłączyć, aby nie zniszczyć pierwotnej zawartości pliku. Przed czymś takim zabezpieczyć można się również przez malowanie na nowej warstwie, którą po zakończeniu prób wystarczy usunąć. Opcja Brush Preview (podgląd pędzla) odpowiada za wyświetlanie nakładanego obrazka w obrębie kolistego konturu pędzla. W rolecie Paint Behavior pierwsze dwie opcje decydują, czy pędzel ma oddziaływać wyłącznie w obrębie sfery wyznaczonej przez jego promień (opcja Spherical Radius), czy też w obrębie walca przenikającego przez cały obiekt (opcja Depth). Opcje z sekcji Mirroring (odbicie lustrzane) umożliwiają tworzenie odbić lustrzanych względem osi X, Y lub Z. Roleta Randomize, pokazana na rysunku 32.9, umożliwia określenie wartości minimalnych i maksymalnych dla niektórych parametrów narzędzi malarskich. Wśród tych parametrów są Brush Radius, Opacity, Spacing, Scatter i Color.

888

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 32.9. Korzystając z rolety Randomize, można dodać do tekstury trochę różnorodności

W rolecie Table Pressure można wybrać, które atrybuty narzędzia mają być uzależnione od siły nacisku piórka tabletu graficznego. Wybrać można dowolną kombinację następujących atrybutów: Brush Radius, Opacity, Hardness i Scatter. Roleta Load/Save Settings zawiera przyciski służące do wczytywania (Load) i zapisywania (Save) ustawień dla funkcji Viewport Canvas. Ustawienia te są zapisywane w zwykłych plikach tekstowych. Przycisk Set Current Settings As Default nadaje ustawieniom bieżącym status domyślnych.

Ćwiczenie: Malowanie twarzy Aby zobaczyć w praktyce działanie funkcji Viewport Canvas, pomalujemy model głowy kobiety. Posłużymy się modelem wykonanym w Zygote Media. Nawiasem mówiąc, jest to znakomity model o wysokiej rozdzielczości. Aby pomalować twarz kobiety za pomocą narzędzi Viewport Canvas, wykonaj następujące czynności: 1. Otwórz plik Face painting.max z folderu Chap 32 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model kobiecej głowy opracowany w Zygote Media. 2. Obróć model tak, aby dobrze widzieć policzek; zastosuj modyfikator UVW Map, aby mieć pewność, że obiekt ma przypisane współrzędne mapowania planarnego, i kliknij przycisk View Align w panelu poleceń. 3. Za pomocą polecenia Tools/Viewport Canvas otwórz panel Viewport Canvas. 4. Zaznacz model, w panelu Viewport Canvas kliknij ikonę narzędzia Paint i z rozwiniętego w ten sposób menu wybierz opcję Diffuse color. W oknie Create Texture wybierz ustawienie 512×512 i kliknij przycisk po prawej stronie pola edycyjnego Save New Texture To. Zapisz plik pod nazwą Face Painting texture.tif, po czym kliknij przycisk OK. 5. Rozmiar pędzla (Radius) ustaw na 32, krycie (Opacity) zwiększ do 100 i wybierz jasnoczerwony kolor. Następnie narysuj serce na policzku kobiety. Na koniec kliknij ponownie przycisk Paint, aby nałożyć teksturę na obiekt. Ostateczny rezultat możesz obejrzeć na rysunku 32.10.

Rozdział 32.  Malowanie w oknach widokowych

889

Rysunek 32.10. Funkcja Viewport Canvas umożliwia malowanie bezpośrednio na modelu

Kolorowanie wierzchołków Obiekty można malować nie tylko przy użyciu narzędzi z panelu Viewport Canvas, ale także za pomocą modyfikatora Vertex Paint (malowanie wierzchołków). Modyfikator ten umożliwia kolorowanie modeli bez obciążania ich teksturami. Przy tworzeniu modeli na potrzeby gier rozmiary tekstur mogą stanowić poważne ograniczenie. Przecież model, który „waży” 16 kB lub mniej, chyba nie będzie się cieszył z noszenia 2 MB tekstury? Rozwiązanie, które zastosowano w przeważającej części gier 3D, polega na zdefiniowaniu odpowiednich kolorów dla wierzchołków siatki. „Zmuszenie” każdego z wierzchołków do zapamiętania informacji o kolorze (lub nawet kilku różnych kolorach) wymaga stosunkowo niewielkiej ilości dodatkowych danych i umożliwia uzyskanie dobrego cieniowania siatek. Kolory są później interpolowane na ściankach pomiędzy kolejnymi wierzchołkami. Rezultaty nie są może tak wyraziste i szczegółowe jak przy stosowaniu tekstur, ale dzięki małym rozmiarom plików wynikowych kolorowanie wierzchołków jest techniką wartą uwagi.

Przypisywanie kolorów wierzchołkom W przypadku obiektów typu Editable Mesh i Editable Patch kolory wierzchołków można określać w rolecie Surface Properties, a w przypadku obiektów Editable Poly można to robić w rolecie Vertex Properties. Przypisywanie wierzchołkom kolorów możliwe jest

890

Część VII  Materiały w ujęciu zaawansowanym

nawet w trybach edycji Face, Polygon i Element — dla obiektów typu Editable Poly dostępna jest wówczas roleta Polygon: Vertex Colors. Oprócz kolorów wierzchołkom można także przypisywać oświetlenie (Illumination) i przezroczystość (Alpha).

Malowanie wierzchołków przy użyciu modyfikatora Vertex Paint Innym, bardziej interaktywnym sposobem na kolorowanie wierzchołków jest używanie modyfikatora Vertex Paint. Pozwala on na malowanie obiektu poprzez określanie koloru dla każdego z jego wierzchołków. Jeśli sąsiadujące wierzchołki różnią się kolorem, na ściance powstaje gradient. Korzyści płynące z zastosowania tej metody to większa efektywność i znikome zapotrzebowanie na pamięć. Modyfikator Vertex Paint pozwala na wybranie barwy i malowanie bezpośrednio na powierzchni obiektu. Kolor nakładany jest za pomocą kursora w kształcie pędzla. Modyfikator może być stosowany wielokrotnie, co pozwala na zmieszanie kilku różnych warstw kolorów wierzchołków. Dostępny jest w podmenu Modifiers/Mesh Editing. Po zastosowaniu modyfikatora Vertex Paint związane z nim okno dialogowe pojawia się automatycznie za każdym razem, gdy dany obiekt zostanie zaznaczony.

Wybranie tego modyfikatora otwiera okno dialogowe VertexPaint zwane pudełkiem z farbami (paintbox), widoczne na rysunku 32.11. U góry okna znajdują się cztery ikony, za pomocą których można sterować wyświetlaniem rezultatów malowania w oknach widokowych. Dostępne opcje to wyświetlanie kolorów wierzchołków bez cieniowania (Vertex color display — unshaded), z cieniowaniem (Vertex color display — shaded), niewyświetlanie kolorów wierzchołków (Disable vertex color display) i przełączanie wyświetlania tekstury (Toggle texture display on/off). Rozwijana grupa ikon Vertex Colors pozwala na pracę z kanałami Vertex Color, Illumination, Alpha lub dowolnym z 99 dostępnych kanałów mapowania. Ikona zablokowania powoduje ograniczenie wyświetlania do wybranego kanału3; jeżeli ją wyłączysz, możesz oglądać kanały inne niż ten, który malujesz. Duże przyciski Paint i Erase służą do włączania trybu nakładania koloru określonego w polu próbki i trybu wymazywania nałożonego koloru. Nakładany kolor można pobrać z obiektów widocznych w oknach widokowych przy użyciu kroplomierza. Można też ustalić stopień krycia danym kolorem (Opacity). Wartość Size określa rozmiar pędzla używanego do malowania. Max obsługuje czułe na nacisk urządzenia, takie jak tablet graficzny. Opcje pędzla możesz ustawić w oknie dialogowym Painter Options, otwieranym za pomocą przycisku Brush Options. Kiedy malujesz powierzchnię obiektu, pojawia się niebieska linia wektora normalnego. Dzięki niej możesz być pewny, że malowanie odbywa się w obrębie właściwej powierzchni.

3

Włączenie tej ikony ustawia automatycznie ten kanał wyświetlania, który jest wybrany w panelu Modify (sekcja Channel rolety Parameters) — przyp. tłum.

Rozdział 32.  Malowanie w oknach widokowych

891

Rysunek 32.11. Okno dialogowe modyfikatora Vertex Paint oferuje bogactwo opcji

Okno dialogowe Painter Options jest również wykorzystywane przez modyfikator Skin i narzędzie Paint Deformation. Okno to jest bardziej szczegółowo opisane w rozdziale 26., „Stosowanie modyfikatorów siatkowych i deformowanie powierzchni”.

Poniżej przycisku Brush Options znajduje się przycisk Palette, który otwiera okno Color Palette, pokazane na rysunku 32.12. W palecie tej możemy przechowywać zdefiniowane przez siebie kolory, aby później móc kopiować je na różne pola próbek. Zestawy kolorów mogą być zapisywane po kliknięciu prawym przyciskiem myszy w oknie palety i wybraniu polecenia Save As. Zestawy takie są zapisywane jako pliki typu Color Clipboard z rozszerzeniem .ccb. Okno VertexPaint zawiera również trzy ikony wyboru trybu zaznaczania podobiektów. Można ich używać do zaznaczania określonych wierzchołków (Vertex), ścianek (Face) lub elementów (Element) do malowania. Pozwalają one na ograniczenie procesu malowania jedynie do wybranych podobiektów. Możesz tu także włączyć opcję ignorowania podobiektów zwróconych w stronę przeciwną (Ignore Backfacing) i skorzystać z trybu miękkiego zaznaczania (Soft Selection). Przycisk Blur Brush umożliwia rozmywanie kolorów po wielokątach przy użyciu pędzla, takiego samego jak w trybach Paint (malowanie) i Erase (wymazywanie). Przycisk Adjust Color otwiera okno dialogowe, które pozwala na zmianę wszystkich nałożonych na obiekt kolorów przy użyciu suwaków HSV lub RGB. Opcja Preview (podgląd)

892

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 32.12. Paleta kolorów może wyświetlać barwy jako listę lub zbiór próbek

wyświetla zmianę kolorów w oknach widokowych. Nad przyciskiem Adjust Color znajduje się przycisk Blur All, który powoduje rozmycie wszystkich kolorów wierzchołków z siłą określoną przez parametr Strength. Kolory mogą być nakładane warstwami przy użyciu różnych trybów mieszania. Kliknięcie przycisku New Layer dodaje do stosu modyfikatorów nową pozycję w postaci kolejnego modyfikatora Vertex Paint. Przycisk Delete Layer działa dokładnie na odwrót. Kliknięcie przycisku Condense to a Single Layer powoduje połączenie wszystkich następujących po sobie modyfikatorów Vertex Paint w jedną pozycję z uwzględnieniem wybranego trybu mieszania.

Ćwiczenie: Oznaczanie naprężenia mięśni serca W ramach przykładu zastosowania modyfikatora Vertex Paint wyobraź sobie lekarza, który ma trójwymiarowy model ludzkiego serca. Podczas omawiania rezultatów ostatnich badań z pacjentem może kolorować części modelu, aby graficznie przedstawić sytuację. Aby pokolorować ludzkie serce, wykorzystując modyfikator Vertex Paint, wykonaj następujące czynności. 1. Otwórz plik Vertex paint on heart.max z folderu Chap 32 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model ludzkiego serca opracowany przez Viewpoint Datalabs. 2. Zaznacz fragment modelu serca i zastosuj wobec niego modyfikator Vertex Paint. W ty celu wybierz z menu polecenie Modifiers/Mesh Editing/Vertex Paint. 3. W górze okna dialogowego, które się otworzy, włącz przycisk Vertex color display-shaded, wybierz kolor czerwony i kliknij przycisk Paint. Następnie przeciągnij kursorem po powierzchni serca w widoku Perspective. Na rysunku 32.13 przedstawiono pokolorowane serce.

Rozdział 32.  Malowanie w oknach widokowych

893

Rysunek 32.13. Modyfikator Vertex Paint pozwala pomalować obiekt przez przypisanie kolorów wierzchołkom siatki

Narzędzie Assign Vertex Color Narzędzie Assign Vertex Color działa trochę inaczej. Zamienia istniejące kolory materiału w kolory wierzchołków. Aby użyć tego narzędzia, musisz wybrać je z listy Utilities, która pojawia się po kliknięciu przycisku More w panelu Utilities. Następnie należy zaznaczyć obiekt, wybrać kanał, określić model światła — do wyboru masz oświetlenie i kolor materiału (Lighting + Diffuse), samo oświetlenie (Lighting Only) lub sam kolor (Diffuse Only) — a na samym końcu kliknąć przycisk Assign to Selected.

Renderowanie map powierzchni Max może tworzyć mapy w oparciu o geometrię obiektu. Przykładowo mapa zagłębień (Cavity) odzwierciedla wszelkie wklęsłości modelu. Jest to obraz w skali szarości, gdzie kolor biały odpowiada wypukłościom, a czarny — zagłębieniom. Taki obraz można wykorzystać na przykład jako mapę podmateriału odwzorowującego zabrudzenia powierzchni obiektu. Na starych, zniszczonych przedmiotach brud gromadzi się głównie w zagłębieniach i żeby to należycie zobrazować, potrzebna jest odpowiednia mapa tych zagłębień. Funkcja Render Surface Map (renderowanie mapy powierzchni) ma następujące opcje:

894

Część VII  Materiały w ujęciu zaawansowanym 

Cavity Map (mapa zagłębień) — tworzy obraz w skali szarości, gdzie kolor biały oznacza wypukłości, a czarny — zagłębienia. Parametr Contrast służy do zwiększania różnic między najjaśniejszymi i najciemniejszymi obszarami mapy.



Density Map (mapa gęstości) — odwzorowuje gęstość rozmieszczenia wierzchołków obiektu. Tam, gdzie wierzchołki leżą blisko siebie, obraz jest biały, a tam, gdzie odległości między nimi są duże — czarny.



Dust Map (mapa pyłu) — wygenerowany obraz przyjmuje barwę białą tam, gdzie powierzchnia obiektu zwrócona jest do góry, a czarną tam, gdzie powierzchnia zwrócona jest w bok lub w dół. Gdyby na obiekcie osiadał pył, najwięcej zgromadziłoby się go w miejscach najjaśniejszych.



SubSurface Map (mapa grubości) — tworzy obraz biały tam, gdzie obiekt jest cienki, a czarny tam, gdzie obiekt jest gruby. Uzyskana mapa może być przydatna do symulacji przenikania światła przez obiekt. Parametr Blur służy do rozmywania wygenerowanego obrazu.



Occlusion Map (mapa przysłaniania) — generuje mapę w skali szarości obrazującą poziom przysłaniania jednych części obiektu przez inne jego części. Mapa taka nie zależy od oświetlenia sceny.



SelectionToBitmap (obraz z zaznaczenia) — służy do identyfikowania zaznaczonych podobiektów. Każdy zaznaczony wierzchołek jest tu reprezentowany przez biały punkt.



Texture Wrap (owinięcie teksturą) — nakłada na obiekt teksturę wczytaną za pomocą przycisku Pick Texture. Tekstura jest nakładana w sposób eliminujący wszelkie szwy. Jest to szczególnie istotne, gdy tą teksturą jest na przykład skóra lub kora drzewa. Parametr Tile określa liczbę powtórzeń tekstury na powierzchni obiektu.



Bitmap Select (zaznaczenie z obrazu) — zaznacza podobiekty w oparciu o kolor występujący w zastosowanym obrazie. Przykładowo, jeśli wczytasz obraz zawierający białe linie, funkcja ta zaznaczy wszystkie ścianki stykające się z tymi liniami.

Aby otworzyć panel Render Surface Map, pokazany na rysunku 32.14, wybierz polecenie Rendering/Render Surface Map. Funkcja renderowania map powierzchni działa tylko w odniesieniu do obiektów Editable Poly z przypisanymi współrzędnymi mapowania. Jeśli któryś z tych warunków nie jest spełniony, kliknięcie któregokolwiek przycisku we wspomnianym panelu powoduje wyświetlenie okna z ostrzeżeniem. Wartości Width (szerokość) i Height (wysokość) określają rozdzielczość renderowanej mapy. Pewne standardowe rozdzielczości można wybrać z rozwijanej listy Size. Spiner Map Channel służy do ustalania kanału mapowania, a Seam Bleed pozwala określić szerokość zalewek wzdłuż szwów. Gdy klikniesz przycisk z typem mapy, rozpocznie się jej generowanie, a efekt końcowy zostanie wyświetlony w oknie Rendered Frame. Na rysunku 32.15 pokazany jest przykład mapy zagłębień dla modelu krokodyla. Jak widać, sterczące pionowo do góry płetwy są tu w kolorze białym, ponieważ tworzą wyraźne wypukłości na powierzchni obiektu.

Rozdział 32.  Malowanie w oknach widokowych Rysunek 32.14. Za pomocą panelu Render Surface Map można tworzyć rozmaite typy map

Rysunek 32.15. Mapa Cavity pokazuje miejsca wypukłe i wklęsłe

895

896

Część VII  Materiały w ujęciu zaawansowanym

Podsumowanie W tym rozdziale poznałeś kilka ważnych funkcji związanych z nakładaniem materiałów na obiekty. Funkcja Viewport Canvas przenosi obraz namalowany w oknie widokowym bezpośrednio na zaznaczony obiekt. Renderowanie map powierzchni umożliwia uzyskiwanie obrazów zawierających rozmaite informacje o powierzchni modelu. W tym rozdziale omówiliśmy następujące tematy: 

malowanie obiektów przy użyciu funkcji Viewport Canvas,



malowanie obiektów przez kolorowanie ich wierzchołków,



renderowanie rozmaitych map powierzchni.

W następnym rozdziale dowiesz się, jak za pomocą modyfikatora Unwrap UVW można dopasować współrzędne mapowania dla danego obiektu. Przyjrzymy się również dokładniej jednemu ze specyficznych typów mapowania. Mapowanie skóry pozwala dzielić i rozwijać skomplikowane modele przez zastosowanie szwów.

Rozdział 33.

Rozwijanie współrzędnych UV i mapowanie tekstur W tym rozdziale: 

Modyfikatory mapowania



Nakładanie kalkomanii przy użyciu modyfikatora UVW Map



Używanie modyfikatora Unwrap UVW i okna Edit UVWs



Tworzenie szwów



Mapowanie skórkowe

W rozdziale poświęconym modelowaniu, gdy tworzyliśmy nowe obiekty, opcja Generate Mapping Coordinates (generuj współrzędne mapowania) pojawiała się praktycznie przy każdym z nich. W końcu będziesz miał okazję dowiedzieć się, czym są współrzędne mapowania i jak ich używać. Współrzędne mapowania wykorzystywane są do określenia sposobu dopasowania mapy względem obiektu. Oznacza się je trzema literami: U — poziome, V — pionowe i W — głębokości. Kiedy dla nowych obiektów włączasz opcję Generate Mapping Coordinates, Max automatycznie próbuje dopasować te współrzędne w najlepszy możliwy sposób. Przykładowo prosta bryła podstawowa, jaką jest sześcian (Box), ma tak zdefiniowane współrzędne mapowania, że tekstura jest nakładana na każdą ze ścian. Działa to nieźle w niektórych przypadkach, ale prędzej czy później zapragniesz zmienić współrzędne. Zarządzanie nimi polega na wykorzystaniu wielu różnych modyfikatorów z Unwrap UVW na czele. Mapowanie skórkowe i łupinowe to dwie kolejne metody mapowania dostępne w ramach modyfikatora Unwrap UVW, które umożliwiają rozciąganie i wygładzanie siatki wielokątów na płaskiej powierzchni. Uzyskasz do nich dostęp z poziomu rolety Peel.

898

Część VII  Materiały w ujęciu zaawansowanym

Modyfikatory mapowania Wśród wielu modyfikatorów w menu Modifiers znajdują się takie, które stosowane są wyłącznie w odniesieniu do map materiałów. Znajdują się one głównie w podmenu UV Coordinates, a ich zastosowanie to pozycjonowanie map materiałów. Należą do nich: UVW Map, UVW Mapping Add, UVW Mapping Clear, UVW XForm, MapScaler (WSM), Projection, Unwrap UVW, Camera Map (WSM) i Camera Map. Modyfikator Projection stosuje się do tworzenia map normalnych. Jest on dokładniej opisany w rozdziale 34., „Tworzenie wypiekanych tekstur i map normalnych”.

Modyfikator UVW Map Modyfikator UVW Map pozwala na określenie współrzędnych mapowania dla danego obiektu. Bryły podstawowe (Primitives), obiekty wytłoczone (Loft) i typu NURBS mogą generować własne współrzędne mapowania, ale w przypadku obiektów siatkowych i łat musisz to zrobić własnoręcznie za pomocą odpowiedniego modyfikatora. Obiekty, które samodzielnie tworzą współrzędne mapowania, stosują je w pierwszym kanale mapy (Map Channel 1). Jeśli zastosujesz modyfikator UVW Map względem pierwszego kanału mapy obiektu, który już ma współrzędne mapowania, nowe współrzędne zastąpią dotychczasowe.

Modyfikatora UVW Map możesz użyć dla różnych kanałów map. Gdy wybierzesz ten modyfikator, na obiekcie pojawi się gizmo, które można przesuwać, skalować lub obracać. Aby przekształcić gizmo modyfikatora UVW Map, musisz wybrać je z listy podobiektów. Gizma, które mają skalę mniejszą od obiektu, mogą być kafelkowane. Istnieje wiele różnych typów mapowania, a roleta parametrów tego modyfikatora pozwala wybrać te, które chcesz użyć. Wartości Length, Width i Height określają wymiary gizma modyfikatora UVW Map. Możesz również ustawić wartości kafelkowania w każdym z kierunków. Kafelkowanie można ustalić za pomocą modyfikatora UVW Map lub w edytorze materiałów. Lepszym wyborem jest modyfikator, bo modyfikuje tylko wybrany obiekt, a zmiany wprowadzone w edytorze materiałów odnoszą się do wszystkich obiektów, którym przypisano dany materiał.

Sekcja Alignment zawiera osiem przycisków pozwalających dopasować gizmo. Przycisk Fit dopasowuje gizmo do obrysu obiektu. Przycisk Center umieszcza środek gizma w środku obiektu. Bitmap Fit otwiera okno dialogowe wyboru plików, gdzie możesz dopasować gizmo do rozdzielczości wybranej bitmapy. Normal Align umożliwia przeciąganie po powierzchni obiektu, a po zwolnieniu przycisku myszy położenie gizma jest wyrównywane względem normalnej. View Align układa gizmo zgodnie z aktualnie wybranym oknem widokowym. Region Fit pozwala wskazać region w oknie widokowym i dopasować do niego gizmo. Reset przywraca pierwotne położenie gizma. Acquire układa gizmo według współrzędnych mapowania pobranych z innego obiektu. Na rysunku 33.1 przedstawiono mapę cegieł nałożoną na parasol przy użyciu mapowania sferycznego.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

899

Rysunek 33.1. Modyfikator UVW Map pozwala wybrać rozmaite sposoby nakładania map materiałów

Ćwiczenie: Używanie modyfikatora UVW Map do nakładania kalkomanii Po nałożeniu współrzędnych mapowania (czy to automatycznie, czy też przy użyciu modyfikatora UVW Map) możesz je przemieszczać, obracać i skalować przy użyciu modyfikatora UVW XForm. Większość obiektów może automatycznie generować współrzędne mapowania — z wyjątkiem siatek (meshes). W ich przypadku musisz użyć modyfikatora UVW Map. Zawiera on siedem różnych opcji mapowania. Każda z nich powoduje owinięcie mapy w inny sposób. Do wyboru masz: Planar (płaskie), Cylindrical (cylindryczne), Spherical (sferyczne), Shrink Wrap (celofanowe), Box (prostopadłościenne), Face (ściankowe) i XYZ to UVW (XYZ na UVW). W tym ćwiczeniu użyjemy modyfikatora UVW Map, aby nałożyć kalkomanię (decal) na model rakiety przygotowany przez Zygote Media. Aby użyć modyfikatora UVW Map, wykonaj następujące czynności. 1. Otwórz plik Nasa decal on rocket.max z folderu Chap 33 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model rakiety z nałożonymi odpowiednimi materiałami. Folder Chap 33 zawiera również obraz o rozdzielczości 300×600 pikseli przedstawiający skrót „NASA” napisany dużymi czarnymi literami na białym tle. Kolor tła tego obrazu został ustawiony jako przezroczysty, a format obrazu to .gif.

900

Część VII  Materiały w ujęciu zaawansowanym Format GIF, zazwyczaj używany przy tworzeniu grafiki na potrzeby stron internetowych, w prosty sposób zapisuje informacje o przezroczystości konkretnych obszarów obrazu. Po wczytaniu do Maksa obrazu w tym formacie obszary te stają się kanałem alfa.

2. Otwórz edytor materiałów (lub wciśnij klawisz M) i kliknij dwukrotnie materiał Standard w przeglądarce materiałów i map. Nazwij materiał Logo NASA. Kliknij próbkę koloru Diffuse i wybierz biel. Następnie kliknij dwukrotnie pozycję Bitmap w rolecie Maps przeglądarki materiałów i map. Znajdź obraz wymieniony w punkcie 1. w folderze Chap 33 na płycie dołączonej do książki i kliknij przycisk Otwórz, po czym połącz węzeł mapy z kanałem Diffuse materiału Standard. Kliknij dwukrotnie węzeł mapy, aby wyświetlić jej parametry w roletach. W rolecie Coordinates wpisz w polu W Angle wartość –90. Litery zostaną ustawione pionowo. Następnie w rolecie Bitmap Parameters zaznacz opcję Image Alpha. 3. Zaznacz w oknie widokowym niższą, białą część rakiety i otwórz panel Modify. U góry panelu kliknij Modifier List i wybierz modyfikator UVW Map. Włącz opcję Cylindrical Mapping, ale nie włączaj opcji Cap w rolecie Parameters. 4. Pozostaw zaznaczony fragment rakiety i uaktywnij ponownie edytor materiałów. Zaznacz węzeł materiału i kliknij przycisk Assign Material to Selection lub przeciągnij gniazdo wyjściowe materiału na zaznaczoną część rakiety. Aby zobaczyć logo na korpusie rakiety, włącz w głównym menu opcję Views/ Show Materials in Viewport As/Shaded Materials with Maps (lub Realistic Materials with Maps). Kiedy bitmapa jest nakładana na obiekt przy użyciu modyfikatora UVW Map, możesz zmieniać jej długość, szerokość i kafelkowanie za pomocą manipulatora UVW Map. Jeśli włączysz przycisk Select and Manipulate na głównym pasku narzędziowym, manipulator będzie widoczny jako zielone linie. Kiedy przesuniesz mysz nad jedną z nich, kolor zmieni się na czerwony, co oznacza możliwość przeciągania jej w celu zmiany rozmiarów mapy. Do zmiany wartości kafelkowania użyj małych zielonych kółek na krawędziach mapy. Jeśli w trakcie korzystania z manipulatora masz włączoną opcję Show Map in Viewport w edytorze materiałów, mapa jest aktualizowana w oknach widokowych w czasie rzeczywistym.

Na rysunku 33.2 przedstawiono gotowy, wyrenderowany obraz.

Modyfikatory UVW Mapping Add i Clear Modyfikatory UVW Mapping Add i UVW Mapping Clear zostaną dodane do stosu modyfikatorów, jeśli przy użyciu narzędzia Channel Info dodasz kanał lub wyczyścisz go. Więcej na temat tego narzędzia znajdziesz w rozdziale 34., „Tworzenie wypiekanych tekstur i map normalnych”.

Modyfikator UVW XForm Modyfikator UVW XForm pozwala na zmianę współrzędnych mapowania. Może być zastosowany względem współrzędnych mapowania tworzonych automatycznie lub przy użyciu modyfikatora UVW Map. Roleta parametrów zawiera wartości UVW Tile (kafelkowanie UVW) i UVW Offsets (przesunięcia UVW). Możesz także wybrać kanał mapy (Map Channel), z którego będziesz korzystał.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

901

Rysunek 33.2. Do nakładania kalkomanii na obiekty możesz użyć modyfikatora UVW Map

Modyfikator Map Scaler Modyfikator Map Scaler jest dostępny w dwóch wersjach — jako modyfikator ObjectSpace (działa w przestrzeni obiektu) i modyfikator World-Space (działa w przestrzeni globalnej). Druga wersja zachowuje rozmiar wszystkich map nałożonych na obiekt, kiedy ten zmienia swoje rozmiary. W wersji obiektowej mapa jest przywiązana do obiektu, tak więc zmienia rozmiar razem z nim. Opcja Wrap Texture zawija teksturę na obiekcie, powtarzając ją wystarczającą ilość razy, by pokryć cały obiekt.

Modyfikator Camera Map Modyfikator Camera Map tworzy płaskie współrzędne mapowania w oparciu o położenie kamery. Jest stosowany w dwóch wersjach — Object-Space i World-Space. Jedynym parametrem tego modyfikatora jest Pick Camera (wskaż kamerę). Aby go użyć, kliknij przycisk Pick Camera i wybierz kamerę. Współrzędne mapowania są nakładane na obiekt.

Używanie modyfikatora Unwrap UVW Modyfikator Unwrap UVW pozwala kontrolować nakładanie mapy na wybrany zestaw podobiektów. Może być także wykorzystany do rozwinięcia istniejących współrzędnych mapowania na obiekcie. Dzięki temu możesz zmieniać je według potrzeb. Wszystko sprowadza się do przypisania obiektowi określonej tekstury, a następnie układania jego ścianek na tej teksturze w edytorze współrzędnych UVW. Wyobraź sobie na przykład teksturę obrazującą poszczególne ścianki kości do gry. W edytorze współrzędnych UVW możesz tak poustawiać współrzędne mapowania, aby każda ścianka dopasowała się do właściwego fragmentu tekstury.

902

Część VII  Materiały w ujęciu zaawansowanym Edytor współrzędnych UVW (okno Edit UVWs) został gruntownie przebudowany w 3ds Max 2012. Większość poleceń jest teraz dostępna poprzez ikony. Są też nowe funkcje, takie jak mapowanie metodą obierania łupin czy grupowanie klastrów.

Modyfikator Unwrap UVW możesz także zastosować do nakładania na obiekt wielu płaskich map. Osiągniesz to przez utworzenie dla poszczególnych stron obiektu płaskich map i edycję współrzędnych mapowania w oknie Edit UVWs.

Zaznaczanie podobiektów Modyfikator Unwrap UVW pozwala na precyzyjne nakładanie mapy na obiekt. Masz w nim dostęp do trzech trybów podobiektu: Vertex (wierzchołek), Edge (krawędź) i Face (ścianka). Wybór któregokolwiek z tych trybów jest automatycznie przenoszony do okna Edit UVWs (i vice versa). Ta synchronizacja między oknem Edit UVWs a oknami widokowymi pozwala mieć pewność, że cały czas pracujemy nad tymi samymi podobiektami. Roleta Selection, pokazana na rysunku 33.3, zawiera przyciski ze znakami plus i minus, które umożliwiają rozszerzanie lub zawężanie istniejącego zaznaczenia. Przy zaznaczaniu podobiektów typu Edge dostępne stają się przyciski Ring (pierścień), Loop (pętla) i Point-to-Point Edge selection (zaznaczanie krawędzi metodą od punktu do punktu). Ten ostatni jest niezwykle przydatny podczas wyznaczania szwów — wystarczy wskazać dwa wierzchołki, a łączące je krawędzie zostaną zaznaczone automatycznie. Rysunek 33.3. Roleta Selection modyfikatora Unwrap UVW umożliwia pracę z wierzchołkami, krawędziami lub ściankami

W trybie Face dostępne stają się przyciski Select by Material ID (zaznaczaj wg identyfikatora materiału) i Select by Smoothing Group (zaznaczaj wg grupy wygładzania). Przycisk Select by Element (zaznaczaj wg elementów) powoduje zaznaczenie wszystkich podobiektów wybranego typu w obrębie wskazanego elementu. Jest to łatwy sposób na szybkie zaznaczenie określonych podobiektów w całym elemencie. Można także wybrać opcje Ignore Backfacing (ignoruj podobiekty zwrócone do tyłu) i Select by Planar Angle (zaznaczaj wg współpłaszczyznowości). Za pomocą poleceń z menu Select można konwertować zaznaczenie z jednego trybu podobiektowego do innego. Są tam również polecenia służące do zaznaczania wszystkich odwróconych (inverted) lub nakładających się (overlapped) ścianek.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

903

Otwieranie edytora współrzędnych UVW Roleta Edit UVs zawiera przycisk o nazwie Open UV Editor. Otwiera on okno Edit UVWs, w którym możemy dowolnie manipulować współrzędnymi mapowania, a podobiekty zaznaczone w oknie widokowym są zaznaczone również tutaj. W oknie edytora można wyświetlić także zastosowaną teksturę, a efekt jej mapowania jest widoczny w oknach widokowych.

Poprawianie mapowania w oknie widokowym W rolecie Edit UVs znajduje się także przycisk Tweak In View (popraw w oknie widokowym). Gdy jest włączony, można w oknie widokowym przeciągać pojedyncze wierzchołki w celu zmodyfikowania mapowania. Rzeczywiste wierzchołki obiektu nie zmieniają swoich położeń, ale zmienia się rozkład współrzędnych mapowania tekstury. Aby zabieg miał charakter interaktywny, tekstura musi być widoczna w oknie widokowym, a zatem wcześniej trzeba włączyć w głównym menu opcję Views/Show Materials in Viewport As/ Shaded Materials with Maps (lub Realistic Materials with Maps).

Szybkie mapowanie planarne Jedna z najprostszych metod wyizolowania mapowanych powierzchni polega na użyciu przycisku Quick Planar Map znajdującego się w rolecie Edit UVs poniżej przycisku Tweak In View. Jeśli w oknie widokowym lub w oknie Edit UVWs zaznaczysz grupę ścianek, a następnie klikniesz wspomniany przycisk, płaska mapa bazująca na współrzędnych X, Y, Z lub uśrednionych wektorach normalnych (Averaged Normals) jest automatycznie wydzielana, a zaznaczony obszar jest oznaczany szwem mapy. Przycisk Display Quick Planar Map służy do włączania gizma mapowania. Użycie funkcji Quick Planar Map jest jednym z najłatwiejszych sposobów zaznaczania, ustawiania i grupowania mapowanych obszarów.

Zapisywanie i wczytywanie współrzędnych mapowania Przy użyciu przycisków Save i Load z rolety Channel możesz także zapisywać i wczytywać edytowane współrzędne mapowania. Przycisk Reset UVWs przywraca wszystkie współrzędne mapowania do stanu pierwotnego. Pliki współrzędnych mapowania mają rozszerzenie .uvw. Zapisane w nich współrzędne można ponownie wczytać i wykorzystać w odniesieniu do innego obiektu, a nawet w innej scenie. Załóżmy na przykład, że w opracowywanej grze mamy użyć pokrytych teksturą pudełek. Jeśli utworzymy odpowiednią teksturę i zmapujemy ją na wszystkie ścianki jednego prostopadłościanu, możemy zapisać współrzędne tego mapowania i potem wykorzystać je przy nakładaniu tekstury na pozostałe pudełka. Każdy obiekt może korzystać z maksymalnie 99 kanałów mapowania, które można wybierać za pomocą opcji Map Channel. Jeśli temu samemu obiektowi przypiszesz kilka egzemplarzy modyfikatora Unwrap UVW, to w każdym z nich możesz ustawić inny kanał mapowania. W grach komputerowych kanały wykorzystuje się między innymi

904

Część VII  Materiały w ujęciu zaawansowanym

do wzbogacania tekstur o elementy wskazujące na zwiększone zużycie obiektów w miarę upływu czasu. Jako kanał mapowania można wybrać także kanał koloru wierzchołka, a umożliwia to opcja Vertex Color Channel. Opcje zawarte w rolecie Configure pozwalają na ustawienie sposobu wyświetlania krawędzi map płaskich. Dostępne opcje to Map Seams (szwy mapy), Peel Seems (szwy łupin) oraz ich warianty — Thick (grube) i Thin (cienkie). Ustawiając szwy jako widoczne, możesz w łatwy sposób stwierdzić, gdzie tekstury nie pasują do kantów obiektu.

Okno Edit UVWs Niektóre funkcje związane ze współrzędnymi UVW są dostępne w rozmaitych panelach głównego interfejsu Maksa, ale najlepszym miejscem do manipulowania nimi jest okno Edit UVWs, pokazane na rysunku 33.4. Wszystkie zmiany wprowadzone w tym oknie są automatycznie przenoszone do okien widokowych. Rysunek 33.4. Okno Edit UVWs pozwala na sterowanie ustawieniem map płaskich względem modelu

Okno Edit UVWs zostało wyposażone w mnóstwo rozmaitych ikon i przycisków rozlokowanych wzdłuż niemal wszystkich krawędzi. U góry znajdują się przyciski służące do zaznaczania i przekształcania podobiektów. Funkcje tych przycisków są opisane w tabeli 33.1. Gizmo to prosta prostokątna ramka otaczająca bieżące zaznaczenie. Przesuwasz zaznaczony element, klikając gizmo i przeciągając je. Przeciąganie z wciśniętym klawiszem Shift

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

905

Tabela 33.1. Górne przyciski okna Edit UVWs Przyciski

Nazwa

Opis

Move Selected Subobject

Przesuwają zaznaczone podobiekty w dowolnym kierunku, tylko poziomo lub tylko pionowo.

Rotate Selected Subobjects

Obraca zaznaczone podobiekty przy przeciąganiu.

Scale Selected Subobjects

Skalują zaznaczone podobiekty w dowolnym kierunku, tylko w poziomie lub tylko w pionie.

Freeform Mode

Wyświetla gizmo, za pomocą którego można przekształcać zaznaczone podobiekty.

Mirror Selected Subobjects

Odbijają lustrzanie lub odwracają zaznaczone podobiekty względem środka zaznaczenia.

Show Map

Włącza wyświetlanie mapy w oknie dialogowym.

Coordinates

Wyświetla współrzędne UV, VW lub UW.

Show Options

Otwiera okno dialogowe Options.

Rozwijana lista Pick Texture

Wyświetla rozwijaną listę wszystkich map nałożonych na obiekt. Możesz wyświetlać nowe mapy przy użyciu opcji Pick Texture.

ogranicza ruch do kierunku poziomego lub pionowego. Znak plus pośrodku gizma oznacza punkt środkowy obrotów i skalowania. Aby przeskalować zaznaczenie, przeciągaj narożne uchwyty gizma. Przeciąganie ich z wciśniętym klawiszem Ctrl zachowuje współczynnik proporcji zaznaczenia. Przeciąganie uchwytów środkowych obraca zaznaczenie. Przeciąganie z wciśniętym klawiszem Ctrl powoduje obrót ze skokiem o 5 stopni, a z wciśniętym klawiszem Alt — ze skokiem o 1 stopień. W obrębie rozwijanej listy Pick Texture znajduje się opcja Checker Pattern, która nakłada mapę szachownicy na kształt bez potrzeby przypisywania materiału. Szachownica ułatwia wyszukiwanie tych fragmentów modelu, gdzie mapa ulega niewłaściwym deformacjom. Lista zawiera także wszystkie tekstury przypisane do obiektu. Tekstura wybrana z tej listy jest wyświetlana jako tło dla siatki współrzędnych.

Zaznaczanie podobiektów w edytorze W dolnej części okna Edit UVWs znajduje się pasek z narzędziami służącymi do zaznaczania rozmaitych podobiektów. Opis tych narzędzi zawiera tabela 33.2. W edytorze współrzędnych mapowania dostępne są trzy tryby zaznaczania podobiektów: Vertex (wierzchołki), Edge (krawędzie) i Polygon (wielokąty). Przyciski do przełączania tych trybów znajdują się na pasku z narzędziami do zaznaczania. Podobiekty zaznaczone są wyróżniane kolorem czerwonym. Przy użyciu przycisków + i – możesz poszerzyć lub zawęzić aktualne zaznaczenie. Ikona pędzla włącza tryb zaznaczania podobiektów metodą

906

Część VII  Materiały w ujęciu zaawansowanym

Tabela 33.2. Narzędzia do zaznaczania Przycisk

Nazwa

Opis

Vertex

Włącza tryb zaznaczania wierzchołków.

Edge

Włącza tryb zaznaczania krawędzi.

Polygon

Włącza tryb zaznaczania wielokątów.

Select By Element

Zaznacza wszystkie podobiekty w obrębie wskazanego elementu.

Grow Selection

Poszerza bieżące zaznaczenie o sąsiednie podobiekty.

Shrink Selection

Zawęża bieżące zaznaczenie, usuwając z niego podobiekty zewnętrzne.

Loop

Zaznacza pętlę podobiektów.

Grow Loop

Wydłuża pętlę, jeśli jest to tylko możliwe.

Shrink Loop

Skraca pętlę, odejmując jej końce.

Ring

Zaznacza pierścień podobiektów.

Grow Ring

Wydłuża pierścień, jeśli jest to tylko możliwe.

Shrink Ring

Skraca pierścień, odejmując jego końce.

Paint Selection

Umożliwia zaznaczanie podobiektów przez przeciąganie po nich pędzlem.

Enlarge Brush Size Zwiększa promień pędzla służącego do zaznaczania. Shrink Brush Size

Zmniejsza promień pędzla służącego do zaznaczania.

malowania, a małe przyciski + i – tuż obok niej służą do zwiększania i zmniejszania rozmiaru pędzla. Przycisk Select By Element zaznacza wszystkie podobiekty w danym klastrze. Ma to miejsce jedynie wtedy, gdy włączony jest tryb zaznaczania wielokątów. Przycisk Loop (pętla) automatycznie zaznacza wszystkie krawędzie, które wraz z zaznaczonymi już krawędziami tworzą pętlę, czyli ciąg kolejnych krawędzi. Za pomocą przycisku Ring (pierścień) można szybko zaznaczyć krawędzie tworzące pierścień (kierunek pierścienia jest prostopadły do zaznaczonych krawędzi). Przyciski Grow i Shrink widoczne obok przycisków Loop i Ring służą do dodawania lub odejmowania krawędzi na końcach pętli bądź pierścienia. Na prawo od przycisków zaznaczania znajduje się kilka kontrolek służących do włączania i konfigurowania trybu miękkiej selekcji. Ich opis znajdziesz w tabeli 33.3.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

907

Tabela 33.3. Przyciski miękkiej selekcji Przycisk

Nazwa

Opis

Soft Selection

Włącza lub wyłącza tryb miękkiej selekcji.

Wartość parametru Falloff

Określa zasięg działania miękkiej selekcji.

Soft Selection Falloff Type

Umożliwiają wybór typu zanikania selekcji. Może być liniowe, gładkie, powolne lub szybkie.

Soft Selection Falloff Space

Umożliwiają wybór przestrzeni dla określenia wartości parametru Falloff.

Limit Soft Selection By Edges Włącza tryb ograniczania zasięgu miękkiej selekcji do określonej liczby krawędzi. Liczba krawędzi

Pozwala na ustalenie liczby krawędzi określającej zasięg miękkiej selekcji.

Z przycisków Loop i Ring można korzystać także w trybach zaznaczania wierzchołków i wielokątów, pod warunkiem że najpierw zaznaczymy co najmniej dwa sąsiadujące ze sobą podobiekty.

Za pomocą tych kontrolek można włączyć tryb miękkiej selekcji i określić jej zasięg (Falloff). Opcje UV i XY umożliwiają określanie zasięgu w przestrzeni obiektu (XY) lub w przestrzeni tekstury (UV). W polu edycyjnym obok przycisku Limit Soft Selection By Edges można określić zasięg miękkiej selekcji przez podanie liczby krawędzi zamiast zwykłej odległości. Można także wybrać profil tego zasięgu — jako gładki, liniowy, powolny lub szybki.

Nawigowanie w obszarze roboczym edytora Bezpośrednio przy dolnej krawędzi okna Edit UVWs znajdują się kontrolki służące do wyświetlania współrzędnych, zmieniania opcji wyświetlania i do nawigowania w obszarze roboczym. Kontrolki te zebrano i opisano w tabeli 33.4. Przyciski w prawym dolnym rogu okna dialogowego Edit UVWs działają dokładnie tak, jak przyciski nawigacyjne okien widokowych opisane we wcześniejszych rozdziałach, łącznie z przyciskami przyciągania do siatki i przyciągania do piksela. Do nawigowania w tym oknie można także wykorzystać rolkę myszy — obracając nią, można zmieniać skalę widoku, a za pomocą przeciągania myszy z wciśniętą rolką można ten widok przesuwać.

Narzędzia z rolety Quick Transform Jedną z pierwszych czynności przy rozwijaniu siatki obiektu jest wyodrębnienie grup wielokątów o podobnych współrzędnych UV. W nomenklaturze edytora współrzędnych każda taka grupa nazywana jest klastrem. Przykładowo, jeśli weźmiesz model samochodu i jego teksturę, to piastom wszystkich kół możesz przypisać dokładnie ten sam fragment mapy bitowej. Musisz tylko wyodrębnić klastry poszczególnych piast, a potem ułożyć je

908

Część VII  Materiały w ujęciu zaawansowanym

Tabela 33.4. Kontrolki z dolnego paska narzędziowego Przycisk

Nazwa

Opis

Absolute/Relative Type Ins

Umożliwia podawanie współrzędnych U, V i W w wartościach względnych lub bezwzględnych.

Wartości współrzędnych U, V i W

Tutaj wyświetlane są współrzędne zaznaczonego wierzchołka. Zmieniając te wartości, można zmieniać położenie wierzchołka.

Locked Selected Subobjects

Wyłącza funkcję zaznaczania, ale zachowuje istniejące zaznaczenie.

Display Only Selected Faces

Wyświetla tylko wielokąty, które zaznaczono w trybie Polygon.

Hide Selected Subobjects

Służą do wyświetlania lub ukrywania zaznaczonych podobiektów.

Reeze Selected Subobjects

Służą do zamrażania i odmrażania zaznaczonych podobiektów.

Rozwijana lista All IDs

Filtruje wybrane identyfikatory materiałów.

Pan View

Umożliwia przesuwanie widoku za pomocą myszy.

Zoom View

Umożliwia zmianę skali widoku przez przeciąganie myszą.

Zoom To Region

Umożliwia powiększenie wybranego obszaru.

Zoom Extents View

Pokazują w zbliżeniu całą siatkę współrzędnych, zaznaczone podobiekty lub klastry z zaznaczonymi podobiektami.

Snap

Włączają przyciąganie do najbliższego rogu piksela lub najbliższego punktu przecięcia siatki.

jeden na drugim w odpowiednim miejscu mapy. Tak samo możesz postąpić z bocznymi płatami karoserii, z tym że klastry po jednej stronie trzeba odwrócić względem osi poziomej. W takich właśnie sytuacjach pomocne stają się narzędzia z rolety Quick Transform (szybkie przekształcanie). Za ich pomocą możesz szybko zaznaczać i przekształcać klastry. Roleta Quick Transform, pokazana na rysunku 33.5, znajduje się w oknie edit UVWs i zawiera narzędzia do wyrównywania, obracania i rozmieszczania podobiektów. Przycisk Set Pivot (ustal środek obrotu) jest tylko jednym z pięciu przycisków stanowiących rozwijaną grupę. Za ich pomocą można umieścić środek obrotu zaznaczenia w centrum lub w jednym z narożników prostokąta otaczającego zaznaczenie. Jeśli na górnym pasku narzędziowym włączony jest tryb przekształceń dowolnych (Freeform Mode), wówczas

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

909

Rysunek 33.5. Roleta Quick Transform zawiera narzędzia do wyrównywania, obracania i rozmieszczania podobiektów

można środek obrotu przeciągać w dowolne położenie. Sam środek obrotu oznaczony jest krzyżykiem w kolorze pomarańczowym i poza obrotami wykorzystywany jest także przez funkcję skalowania. Funkcja Align umożliwia zrównywanie zaznaczonych wierzchołków lub krawędzi z aktualnym środkiem obrotu lub z ich uśrednionym położeniem. W rozwijanych grupach przycisków Align Horizontal i Align Vertical domyślnie aktywne są te, które ustawiają zaznaczone wierzchołki lub krawędzie w jednej linii ze środkiem obrotu (Align to Pivot). Wyrównywanie do średniego położenia dostępne jest po rozwinięciu grupy. Jeśli dodatkowo wciśniesz klawisz Shift, wyrównana zostanie cała pętla krawędzi. W przypadku pierścienia nastąpi takie przeorientowanie krawędzi, aby wszystkie były idealnie równoległe. Przycisk Linear Align ustawia wierzchołki lub krawędzie wzdłuż linii prostej łączącej skrajne wierzchołki zaznaczenia. Align to Edge jest dostępny tylko w trybie zaznaczania krawędzi i obraca cały klaster, aby ustawić zaznaczoną krawędź pionowo lub poziomo. Funkcje wyrównywania odnoszą się głównie do wierzchołków i krawędzi, chociaż można je stosować również w odniesieniu do ścianek. Jednak w tym przypadku może to prowadzić do całkowitego zwinięcia ścianki, bo ostatecznie wyrównane zostaną jej wierzchołki.

Przyciski Rotate 90 around Pivot i Rotate –90 around Pivot obracają zaznaczone podobiekty o 90 stopni w oknie Edit UVWs. Obrót odbywa się wokół ustalonego środka obrotu. Przyciski Space Horizontal i Space Vertical rozmieszczają zaznaczone wierzchołki lub krawędzie w równych odległościach w kierunku poziomym lub pionowym. Klawisz Shift rozszerza ich działanie na całe pętle krawędzi. Przyciski Set Pivot, Align to Pivot, Linear Align i Align to Edge w rolecie Quick Transform okna Edit UVWs są nowością w 3ds Max 2012.

Prostowanie i rozluźnianie klastrów W rolecie Reshape Elements znajdują się trzy przyciski, za pomocą których można kształtować zaznaczone klastry współrzędnych UV. Pierwszy z nich, Straighten Selection (prostuj zaznaczenie), jest dostępny tylko w trybie Polygon i zaznaczone wielokąty ustawia poziomo bądź pionowo, tworząc z nich regularną prostokątną siatkę. Jeśli współrzędne mapowania stają się zbyt zagęszczone i trudno nimi operować, możesz użyć funkcji Relax, aby równomiernie rozsunąć wierzchołki. Drugi przycisk w rolecie

910

Część VII  Materiały w ujęciu zaawansowanym

Reshape Elements nosi nazwę Relax Until Flat (rozluźnij aż do spłaszczenia) i przesuwa wierzchołki klastra w taki sposób, aby maksymalnie zrównać rozmiary wszystkich wielokątów. Rozluźnienie takie usuwa wszelkie naprężenia powierzchni i znacznie ułatwia mapowanie tekstury. Przyciski Straighten Selection i Relax Until Flat w rolecie Reshape Elements okna Edit UVWs są nowością w 3ds Max 2012.

Jeśli działanie funkcji Relax Until Flat prowadzi do zbytniej deformacji klastra, możesz skorzystać z przycisku trzeciego, Relax: Custom, który pozwala na sterowanie procesem rozluźniania. Aby otworzyć okno Relax Tool z opcjami tego procesu, należy wybrać przycisk ukryty pod przyciskiem Relax: Custom albo skorzystać z polecenia Tools/Relax. Narzędzie to działa jak modyfikator Relax, odpychając wierzchołki zbliżone do siebie i przyciągając oddalone. W oknie Relax Tool, pokazanym na rysunku 33.6, można wskazać jedną z trzech metod: Relax By Face Angles (rozluźnianie według kątów między ściankami), Relax By Edge Angles (rozluźnianie według kątów między krawędziami) i Relax By Centers (rozluźnianie według środków). Wartość Iterations określa ilość powtórzeń zastosowania algorytmu rozluźniania1. Wartość Amount ustala siłę jego działania, a wartość Stretch — zakres ruchu wierzchołków. Możesz również skorzystać z opcji Keep Boundary Points Fixed (zachowaj położenia punktów brzegowych) i Save Outer Corners (zachowaj położenie zewnętrznych narożników). Rysunek 33.6. Okno dialogowe Relax Tool umożliwia sterowanie procesem rozluźniania współrzędnych UV

Zszywanie i spawanie Jeśli w oknie Edit UVWs zaznaczysz kilka wielokątów i odsuniesz je od pozostałych, okaże się, że obie grupy nadal połączone są krawędziami. Za pomocą narzędzi z rolet Stitch i Explode, pokazanych na rysunku 33.7, możesz te połączenia przerwać, a potem możesz zszyć podzielony klaster w jedną całość. Funkcja Stitch (zszyj) jest używana w trybie Vertex2 i służy do zszywania klastrów tekstury przez łączenie zaznaczonych wierzchołków brzegowych z ich odpowiednikami na drugim brzegu. Kliknięcie któregokolwiek przycisku ze słowem Stitch w nazwie przesuwa łączone podobiekty do nowego położenia zależnego od użytego przycisku. Przycisk Stitch To Target (zszyj u celu) przysuwa podobiekty zaznaczone do ich odpowiedników. Stitch To Average

1

Parametr Iterations ma znaczenie, gdy używamy przycisku Apply (zastosuj), a jest ignorowany, jeśli korzystamy z przycisku Start Relax, bo wtedy sami decydujemy, jak długo ma trwać cały proces — aby go zakończyć, klikamy ten sam przycisk ponownie (ma on wtedy nazwę Stop Relax) — przyp. tłum.

2

Zszywanie jest wykonalne także w trybie Edge — przyp. tłum.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

911

Rysunek 33.7. Rolety Stitch i Explode zawierają narzędzia rozdzielania, spawania i zszywania wierzchołków

(zszyj na średniej) przesuwa jedne i drugie podobiekty do miejsca położonego w połowie drogi między nimi, a przycisk Stitch To Source (zszyj u źródła) przysuwa odpowiedniki do podobiektów zaznaczonych. Jeśli w menu Display włączysz opcję Show Shared Sub-Objects (pokaż odpowiedniki), podobiekty odpowiadające zaznaczonym będą wyróżnione kolorem niebieskim. Dzięki temu będziesz mógł dokładnie określić, gdzie podobiekty zostaną przesunięte podczas zszywania. Przycisk Stitch: Custom przesuwa podobiekty zgodnie z ustawieniami określonymi w oknie Stitch Tool, pokazanym na rysunku 33.8. Dostęp do tego okna można uzyskać, wybierając drugi przycisk z rozwijanej grupy Stitch: Custom. Można też wybrać polecenie Tools/ Stitch Selected w oknie edytora. Okno Stitch Tool zawiera opcje wyrównywania i skalowania zszywanych klastrów oraz parametr Bias (przesunięcie), który określa proporcje między przesunięciem podobiektów zaznaczonych a przesunięciem ich odpowiedników. Gdy jego wartość wynosi 0, podobiekty zaznaczone pozostają na swoich miejscach i do nich dosuwane są ich odpowiedniki, a gdy ma wartość 1, sytuacja jest dokładnie odwrotna. Rysunek 33.8. Parametr Bias w oknie Stitch Tool określa, w jakim stopniu mają być przesuwane podobiekty zaznaczone

Przycisk Break (przerwij) w rolecie Explode oddziela zaznaczone podobiekty od otaczających je wielokątów, dzięki czemu mogą być przesuwane bez rozciągania przyległych krawędzi. Najlepszy efekt uzyskuje się, używając tego narzędzia przed przesunięciem zaznaczonych podobiektów. Jeśli pracujesz w trybie wierzchołków lub krawędzi, narzędzie Break utworzy w miejscu podziału kopie istniejących tam wierzchołków lub krawędzi. Kopie są niezależne od oryginałów i mogą być względem nich swobodnie przemieszczane. W trybie wielokątów tworzony jest nowy klaster. Przeciwieństwem przerywania jest spawanie (Weld). Roleta Explode oferuje kilka metod spawania podobiektów. Przycisk Target Weld włącza tryb, w którym można łączyć wierzchołki lub krawędzie metodą „przeciągnij i upuść”. Gdy w trakcie przeciągania kursor

912

Część VII  Materiały w ujęciu zaawansowanym

przyjmie postać pogrubionego krzyża, będzie to oznaczało, że znajduje się nad podobiektem, z którym podobiekt przeciągany może być zespawany. Za pomocą przycisku Weld Selected Subobject (spawaj zaznaczony podobiekt) można spawać zaznaczone podobiekty, jeśli tylko odległość między nimi nie przekracza wartości progowej (Weld Threshold), którą można ustalić w oknie Unwrap Options otwieranym za pomocą polecenia Options/Preferences. Jeśli zaznaczysz krawędź brzegową klastra, jej odpowiedniczka w sąsiednim klastrze przyjmie kolor niebieski. Kliknij wtedy przycisk Weld All Selected Seams (spawaj wszystkie zaznaczone szwy), a krawędź niebieska zostanie automatycznie zaznaczona. Mając obie krawędzie zaznaczone, kliknij ponownie przycisk Weld All Selected Seams, aby je zespawać. Połączenie nastąpi w połowie odległości między nimi. Przycisk Weld Any Match with Selected (spawaj ze wszystkim, co pasuje) łączy zaznaczony podobiekt z jego odpowiednikiem w drugim klastrze bez wymagania, aby oba podobiekty były zaznaczone. Można go używać we wszystkich trybach podobiektowych. Menu Edit zawiera polecenia Copy, Paste i Paste Weld. Pierwsze dwa pozwalają skopiować mapowanie i wkleić je do innego zestawu ścianek. Ostatnie spaja wierzchołki przy wklejaniu mapowania.

Dzielenie na klastry przez spłaszczanie Roleta Explode oferuje także narzędzia do automatycznego dzielenia siatki tekstury na klastry. Proces ten nazywany jest spłaszczaniem (flattening). Przycisk Flatten by Face Angle (spłaszcz wg kąta) dzieli wielokąty tekstury w zależności od kąta między odpowiadającymi im ściankami obiektu. Jeśli normalne sąsiednich ścianek tworzą między sobą kąt większy niż 60 stopni, odpowiadające tym ściankom wielokąty tekstury są rozdzielane wzdłuż wspólnej krawędzi. W ten sposób można szybko podzielić siatkę prostopadłościanu na sześć odrębnych klastrów. Siatkę tekstury można dzielić również w oparciu o numery grup wygładzania (przycisk Flatten by Smoothing Group) lub identyfikatory materiału (Flatten by Material ID). Obie metody są użyteczne, pod warunkiem że obiekt ma przypisane grupy wygładzania i identyfikatory materiałów. Ostatni przycisk, Flatten: Custom (spłaszcz wg ustawień), dokonuje podziału w oparciu o ustawienia określone w oknie dialogowym Flatten Mapping. Okno to można otworzyć, wybierając drugi przycisk z grupy Flatten: Custom lub polecenie Flatten Mapping z menu Mapping. Przyciski Flatten by Smoothing Group i Weld Any Match with Selected są nowością w 3ds Max 2012.

Okno Flatten Mapping, pokazane na rysunku 33.9, umożliwia podzielenie siatki na klastry w oparciu o kąt między sąsiadującymi ze sobą ściankami obiektu (parametr Face Angle Threshold). Rozwiązanie takie zdaje egzamin w przypadku obiektów kanciastych, takich jak roboty i maszyny. Parametr Spacing (odstępy) określa odległość, na jaką klastry mają być rozsunięte. Na rysunku 33.10 pokazano współrzędne UV dla łyżki koparki, podzielone na klastry metodą Flatten Mapping. Wszystkie klastry zostały automatycznie rozmieszczone w kwa-

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

913

Rysunek 33.9. Parametr Face Angle Threshold w oknie Flatten Mapping decyduje o tym, czy sąsiadujące ze sobą wielokąty mogą należeć do tego samego klastra

Rysunek 33.10. Siatka łyżki koparki została podzielona na klastry przy użyciu metody Flatten Mapping

dratowym obszarze tekstury — jak widać, w celu maksymalnego wykorzystania dostępnej przestrzeni niektóre małe elementy zostały umieszczone w otworach wyciętych w dużych klastrach. Mapowanie automatyczne można realizować nie tylko za pomocą funkcji spłaszczania dostępnych w rolecie Explode, ale także za pomocą poleceń Mapping/Normal Mapping i Mapping/Unfold Mapping. Mapowanie typu Normal (zwykłe) pozwala na wybranie mapowania siatki przy użyciu określonych widoków. Do wyboru są następujące opcje: Top/Bottom (góra/dół), Front/Back (przód/tył), Left/Right (lewo/prawo), Box (prostopadłościan), Box No Top (prostopadłościan bez góry) i Diamond (romb). Widoki te są oparte na kierunku normalnych ścianek siatki. Mapowanie tego typu przydaje się przy cienkich modelach, takich jak skrzydła motyla lub moneta.

914

Część VII  Materiały w ujęciu zaawansowanym

Mapowanie typu Unfold (rozwijające) jest wyjątkowe, ponieważ rozpoczyna się na jednej ze ścianek i powoli rozwija wszystkie sąsiednie ścianki w pojedynczy segment, jeśli to możliwe. Na rysunku 33.11przedstawiono prosty walec, który został rozwinięty przy użyciu tej metody. Jej zaletą jest mapa bez jakichkolwiek zniekształceń. Dostępne są dwie opcje: Walk to Closest Face (przejdź do najbliższej ścianki) i Walk to Farthest Face (przejdź do najdalszej ścianki). Prawie zawsze będziesz korzystał z pierwszej z nich. Rysunek 33.11. Mapowanie rozwijające (Unfold) dzieli model wzdłuż sąsiadujących ścianek i rozwija go w pojedynczy segment

W obrębie jednej siatki można zastosować kilka metod mapowania. I tak dla koła samochodu najodpowiedniejsze będzie mapowanie cylindryczne, a dla maski silnika — płaskie. Także zaznaczenia na poziomie podobiektów mogą używać różnych metod mapowania.

Układanie i grupowanie klastrów W obszarze roboczym okna Edit UVWs znajduje się kwadratowe pole reprezentujące bitmapę tekstury. W procesie mapowania ważne jest, aby powierzchnię tego pola wykorzystać w sposób optymalny, bo tylko wtedy ilość szczegółów zastosowanej tekstury widocznych na powierzchni obiektu będzie największa. W osiągnięciu tego celu pomocne mogą być narzędzia z rolety Arrange Elements. Po wyodrębnieniu klastrów można zastosować funkcję Pack: Custom, która upakuje je wszystkie w obszarze tekstury, a zrobi to z uwzględnieniem ustawień zawartych w oknie Pack, pokazanym na rysunku 33.12. Okno to można otworzyć, wybierając drugi przycisk z grupy Pack: Custom lub polecenie Pack UVs z menu Tools.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

915

Rysunek 33.12. Okno dialogowe Pack zawiera ustawienia mające wpływ na sposób rozmieszczenia klastrów w obszarze tekstury

Funkcja Pack UVs umożliwia spakowanie współrzędnych UV na mniejszej przestrzeni. Spakowane współrzędne są łatwiejsze do przesunięcia i obróbki, ponieważ używają bitmapy o niższej rozdzielczości. W oknie dialogowym Pack dostępne są dwie metody pakowania. Metoda Linear Packing jest szybka, ale niezbyt skuteczna. Natomiast metoda Recusive Packing jest efektywniejsza, ale bardziej czasochłonna. Wartość Spacing ustala odstępy pomiędzy segmentami, a opcja Normalize Clusters skaluje ostateczny układ klastrów, aby dopasować go do obszaru tekstury. Opcja Rotate Clusters pozwala na obracanie segmentów, by je lepiej dopasować, natomiast opcja Fill Holes umieszcza mniejsze klastry wewnątrz większych, otwartych klastrów. Roleta Arrange Elements zawiera także przycisk Rescale Elements, za pomocą którego można przeskalować wszystkie klastry, zachowując ich wzajemne proporcje. Przycisk Pack Together upycha wszystkie klastry na obszarze tekstury, nie stosując normalizacji. Pack Normalize robi to samo, ale przeprowadza normalizację. Dodatkowo można też włączyć lub wyłączyć obracanie (opcja Rotate) i skalowanie (Rescale) klastrów oraz określić odstępy między nimi (Padding). W rolecie Element Properties znajdują się przyciski służące do łączenia klastrów w grupy (Group Selected), zaznaczania istniejących grup (Select Group) i rozbijania ich na poszczególne klastry (Ungroup Selected). Dla każdej grupy można określić tzw. priorytet skalowania (Rescale Priority) określający, w jakim stopniu klastry mają być skalowane podczas pakowania. Aby utworzyć grupę, włącz tryb wielokątów, zaznacz przynajmniej po jednym wielokącie w klastrach, które chcesz zgrupować, a następnie kliknij przycisk Group Selected. Na dole rolety, obok etykiety Selected groups wyświetlane są numery grup aktualnie zaznaczonych. Możliwość łączenia klastrów w grupy jest nowością w 3ds Max 2012.

Opcje edytora współrzędnych UV Polecenie Options/Preferences (Ctrl+O) otwiera okno dialogowe Unwrap Options, pokazane na rysunku 33.13, gdzie możesz ustawić kolory linii (Line Color) i zaznaczenia (Selection Colors), jak również określić ustawienia samego edytora, czyli okna dialogowego Edit UVWs. Możesz załadować i pokafelkować obrazy tła przy określonej rozdzielczości mapy lub przeskalować je, włączając opcję Use Custom Bitmap Size. Dostępne jest również ustawienie progu spawania (Weld Threshold), opcje ciągłego aktualizowania zawartości okien widokowych (Constant Update In Viewports) i przyciągania do środków pikseli tła. W sekcji Display Preferences możesz ustawić dokładne rozmiary załadowanej bitmapy, z tym że dotyczy to tylko sposobu jej wyświetlania w oknie edytora i nie powoduje zmiany

916

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.13. W oknie dialogowym Unwrap Options możesz zdefiniować ustawienia okna dialogowego Edit UVWs

wymiarów rzeczywistych. Opcja Tile Bitmap (kafelkuj bitmapę) wymusza powtarzanie bitmapy od środka we wszystkie strony tyle razy, ile wynosi wartość parametru Tiles. Włączenie opcji Constant Update In Viewports sprawia, że każda zmiana w mapowaniu tekstury jest na bieżąco uwidaczniana w oknach widokowych. Za pomocą opcji Show Hidden Edges możesz włączyć lub wyłączyć wyświetlanie krawędzi ukrytych. Jeśli włączysz opcję Center Pixel Snap, spowodujesz, że znajdujący się w prawym dolnym rogu edytora przycisk Pixel Snap będzie włączał przyciąganie do środków pikseli tła, a nie do ich krawędzi.

Ćwiczenie: Sterowanie mapowaniem wozu z plandeką Model wozu z plandeką utworzony przez Viewpoint Datalabs jest dość wytrzymały, by przewieźć pionierów przez równiny, ale możesz przecież przy użyciu modyfikatora Unwrap UVW dodać motywujący ich slogan. W tym ćwiczeniu przy użyciu modyfikatora Unwrap UVW dodamy i zmienimy współrzędne mapowania dla wozu z plandeką. Aby sterować nakładaniem płaskich map na bokach wozu, wykonaj następujące czynności. 1. Otwórz plik Covered wagon.max z folderu Chap 33 znajdującego się na płycie dołączonej do książki. Plik zawiera model wozu z plandeką. W tym samym folderze umieszczono również obraz wielkości 256×256 pikseli przedstawiający napis, jaki chcemy umieścić z boku wozu, utworzony w programie Photoshop. Jest on zapisany jako Oregon or bust.tif (napis w pliku różni się pisownią). 2. Zaznacz plandekę i wybierz z menu Modifiers/UV Coordinates/Unwrap UVW. W rolecie Edit UVs kliknij przycisk Open UV Editor.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

917

Otworzy się okno Edit UVWs. Na stosie modyfikatorów zaznacz tryb podobiektu Face. 3. W oknie Edit UVWs wybierz polecenie Mapping/Normal Mapping. W oknie dialogowym Normal Mapping wybierz opcję Left/Right Mapping z rozwijanej listy i kliknij OK. Wyświetlony zostanie widok góry wozu z lewej i prawej strony. 4. Z rozwijanej listy u góry okna wybierz opcję Pick Texture. Otworzy się przeglądarka materiałów i map. Kliknij dwukrotnie opcję Bitmap i wybierz plik obrazu Oregon or bust.tif z folderu Chap 33 znajdującego się na płycie dołączonej do książki. Tekstura pojawi się w oknie edytora. 5. Przeciągnij myszą przez ścianki dolnej połowy plandeki wozu i wybierz polecenie Tools/Flip Horizontal, aby odwrócić współrzędne UV w celu dopasowania ich do współrzędnych w górnej, niezaznaczonej części. Następnie przeciągnij zaznaczone współrzędne nad niezaznaczone. Dzięki dopasowaniu współrzędnych UV w obu tych częściach, możesz zastosować tę samą teksturę po obu stronach plandeki. 6. Następnie zaznacz wszystkie ścianki UV i za pomocą narzędzia Move przeciągnij je do środka okna Edit UVWs. Kliknij i przytrzymaj klawisz myszy nad narzędziem Scale, a potem wybierz narzędzie Vertical Scale. Następnie przeciągnij pionowo w obszarze roboczym i przeskaluj wierzchołki tak, żeby pokrywały się z teksturą. Potem przeskaluj poziomo wierzchołki tak, aby tekstura tła pokrywała się z górą wozu. Na rysunku 33.14 widoczna jest plandeka z wozu z prawidłowo zmapowaną teksturą. 7. Otwórz kompaktowy edytor materiałów. Kliknij przycisk mapowania obok koloru Diffuse, po czym dwukrotnie kliknij opcję Bitmap w przeglądarce materiałów i map. Następnie wybierz plik Oregon or bust.tif z folderu Chap 33 znajdującego się na płycie dołączonej do książki. Nałóż materiał na górę plandeki wozu. Kliknij przycisk Show Map in Viewport (ikona małego sześcianu w szachownicę), aby zobaczyć mapę na wozie. Na rysunku 33.15 widoczny jest wynik wprowadzenia nowych współrzędnych mapowania.

Renderowanie szablonów UV Po udanym zdefiniowaniu wszystkich współrzędnych UV modelu możesz utworzyć odpowiednie tekstury w zewnętrznym programie (np. w Photoshopie), by wczytać je w oknie Edit UVWs i dopasować do odpowiednich współrzędnych UV. Przy użyciu polecenia Tools/Render UVW Template utworzysz szablon, który możesz zapisać i wczytać do Photoshopa, aby dokładnie zobaczyć, gdzie znajdują się granice współrzędnych UV. Polecenie Tools/Render UVW Template otwiera okno dialogowe Render UVs, pokazane na rysunku 33.16. Możesz w nim ustawić wymiary szablonu, kolory wypełnienia (Fill) i konturów (Edge), a także wyświetlić nakładki i szwy. Wypełnienie może być None (żadne), Solid (jednolite), Normal (normalne) lub Shaded (cieniowane). To ostatnie udostępnia więcej informacji o obiekcie.

918

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.14. Okno Edit UVWs pozwala na przekształcenie współrzędnych mapowania przez przesuwanie wierzchołków

Rysunek 33.15. Położenie mapy tekstury nałożonej na wóz z plandeką zostało ustalone za pomocą modyfikatora Unwrap UVW

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

919

Rysunek 33.16. Okno dialogowe Render UVs pozwala na renderowanie i zapisanie szablonu do malowania tekstur

Kliknięcie przycisku Render UV Template renderuje szablon w oknie Rendered Frame, gdzie możesz go zapisać w pożądanym formacie graficznym. Potem w Photoshopie możesz taki szablon umieścić na odrębnej warstwie i wykorzystać jako podkład podczas malowania rzeczywistej tekstury.

Mapowanie wielu obiektów Jeśli model składa się z kilku różnych części, masz szczęście, bo Max pozwala na stosowanie modyfikatora Unwrap UVW do wielu obiektów na raz. Po załadowaniu do okna Edit UVWs siatki wszystkich elementów są wyświetlane w ich własnych kolorach, co ułatwia ich identyfikację.

Ćwiczenie: Mapowanie modelu samolotu W ostatnim przykładzie zastosowania modyfikatora Unwrap UVW umieścimy na modelu myśliwca P-28 Trojan znak marynarki wojennej. Model samolotu został opracowany w Viewpoint Datalabs. Logo zapisano w formacie PNG, który pozwolił na uczynienie tła przezroczystym. Dzięki temu połyskujący, metaliczny materiał samolotu nie zostanie zasłonięty. W tym ćwiczeniu umieścimy znak tylko na jednym skrzydle. Utrudnieniem, jakie nie występowało w ćwiczeniu z rakietą, jest tutaj fakt, że lotki są odrębnymi elementami w stosunku do skrzydeł — dzięki temu mogą być niezależnie animowane. Zdaję sobie sprawę, że każdy miłośnik lotnictwa doskonale wie, że znak przynależności do określonych sił zbrojnych powinien znajdować się na kadłubie samolotu, ale w naszym modelu kadłub nie został podzielony na odrębne części, tak jak skrzydła. Mam nadzieję, że znawcy tematu wybaczą mi to odstępstwo od ustalonych reguł.

Aby nałożyć teksturę na kilka części samolotu, wykonaj następujące czynności. 1. Otwórz plik T-28 Trojan plane.max z folderu Chap 33 znajdującego się na płycie dołączonej do książki.

920

Część VII  Materiały w ujęciu zaawansowanym

2. W oknie widokowym Perspective zaznacz skrzydła (wings), lotki (ailerons) i klapy (flaps). Nie zaznaczaj elementów łączących lotkę ze skrzydłem. 3. Wybierz polecenie Modifiers/UV Coordinates/Unwrap UVW. Modyfikator zostanie zastosowany do wszystkich zaznaczonych elementów. Następnie kliknij przycisk Open UV Editor w rolecie Selection, aby otworzyć okno Edit UVWs. 4. Z listy rozwijanej w prawym górnym rogu okna Edit UVWs wybierz pozycję Pick Texture. Otworzy się okno Material/Map Browser. W polu Search by Name wpisz Bitmap, po czym kliknij dwukrotnie pozycję Bitmap i wybierz plik T-28 Trojan logo.png z folderu Chap 33 na płycie. Aby skoncentrować się na właściwym logo, wyłącz opcję Tile Bitmap w oknie Edit UVWs. Tekstura pojawi się w oknie Edit UVWs. 5. W stosie modyfikatorów zaznacz tryb podobiektu Face i w oknie widokowym kliknij centralną część prawego skrzydła. Następnie kliknij przycisk Grow Selection (ze znakiem plus) w dolnej części okna Edit UVWs, aby poszerzyć zaznaczenie. Klikaj ten przycisk dotąd, aż całe skrzydło zostanie zaznaczone. Teraz wybierz polecenie Tools/Break, zwiększ skalę widoku w oknie Edit UVWs i odsuń skrzydło w górę, tak aby nie zachodziło na żaden inny element samolotu. Zaznaczone współrzędne UV prawego skrzydła zostały oddzielone od reszty obiektu wings, który obejmuje oba skrzydła. Zaznaczenie niezbędnych ścianek można byłoby wykonać również za pomocą opcji Planar Angle z odpowiednią wartością. W ten sposób zaznaczone zostałyby wszystkie ścianki po jednej stronie skrzydła.

6. Zaznacz środek lotki prawego skrzydła i za pomocą przycisku Grow Selection rozszerz zaznaczenie na całą lotkę. Następnie w bocznym panelu kliknij przycisk Planar Map znajdujący się w rolecie Projection, aby uzyskać właściwe ustawienie lotki względem skrzydła. Przesuń lotkę w górę okna Edit UVWs, obok umieszczonego tam wcześniej skrzydła. To samo powtórz dla prawej klapy. 7. Aby zaznaczać całe elementy jednym kliknięciem, włącz opcję Select By Element w dolnej części okna Edit UVWs. Następnie włącz tryb swobodnej transformacji (Freeform Mode) i przesuń oraz wyskaluj lotkę i klapę, aby pasowały do skrzydła. Jeśli potrzebujesz dopasować wzajemnie dwie części, tak aby połączenie nie było widoczne, możesz przejść do trybu edycji wierzchołków i zastosować funkcję spawania (Weld) w celu zespolenia brzegowych wierzchołków obu części.

8. Zaznacz pozostałe współrzędne UV i przesuń je w dół na tyle, by nie zachodziły na logo. Następnie zaznacz współrzędne skrzydła, lotki i klapy, po czym kliknij przycisk Rotate –90 around Pivot, aby nadać im właściwą orientację względem logo. Całość przenieś na obraz logo, przeskaluj i ustaw tak, jak na rysunku 33.17. Zamknij okno Edit UVWs. 9. Otwórz kompaktowy edytor materiałów. Kliknij przycisk mapowania obok próbki koloru Diffuse i w oknie Material/Map Browser kliknij dwukrotnie pozycję Bitmap. W oknie wyboru plików wybierz ponownie T-28 Trojan logo.png z folderu Chap 33

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

921

Rysunek 33.17. Współrzędne UV zostały dopasowane do obrazu logo

na płycie dołączonej do książki i nałóż tak zdefiniowany materiał na skrzydło, lotkę i klapę. Aby zobaczyć mapę w oknie widokowym, włącz w edytorze materiałów przycisk Show Map in Viewport (z małą kostką pokrytą szachownicą). Ostateczny rezultat mapowania widać na rysunku 33.18. Teraz, gdy mapa została nałożona i widać ją w oknie widokowym, możesz ponownie otworzyć okno Edit UVWs i w trybie interaktywnym skorygować ewentualne niedociągnięcia mapowania.

Mapowanie krzywoliniowe Do mapowania krzywoliniowego wykorzystywany jest splajn i układane wzdłuż niego przekroje poprzeczne. Mapowanie obiektów o kształtach cylindrycznych, tworzonych za pomocą takich narzędzi jak Loft lub Sweep, jest na ogół trudne, jeśli stosuje się tradycyjne metody. Ze względu na dużą liczbę wielokątów, z jakich obiekty te zazwyczaj się składają, z trudem poddają się również mapowaniu przez rozwijanie siatki (unwrap) lub mapowanie skóry (pelt mapping). Problemy związane z mapowaniem takich obiektów rozwiązuje metoda krzywoliniowa (spline mapping), która umożliwia mapowanie obiektów o przekroju kołowym (circular) lub płaskich (planar). Możliwe jest także określenie różnych przekrojów wzdłuż splajnu, jeśli kształt obiektu tego wymaga. Mapowanie krzywoliniowe jest dostępne w panelu bocznym w rolecie Wrap.

922

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.18. Mapa logo nałożona na skrzydło rozciąga się także na lotkę i klapę, mimo że są to odrębne części

Ćwiczenie: Mapowanie węża Mapowanie krzywoliniowe doskonale spisuje się w przypadku takich obiektów jak kończyny zwierząt i ludzi czy mocno poskręcane liny. W ćwiczeniu wykorzystamy tę metodę do mapowania zwiniętego w spiralę węża. Aby ułożyć teksturę na całej długości węża, wykonaj następujące czynności. 1. Otwórz plik Snake.max z folderu Chap 33 znajdującego się na płycie dołączonej do książki. Zawarty w nim obiekt został wykonany przy użyciu modyfikatora Sweep i składa się z dużej liczby wielokątów. Przed skonwertowaniem go do postaci Editable Poly i uformowaniem głowy skopiowałem splajn definiujący kształt węża, dzięki czemu splajn ten jest obecny w scenie. 2. Zaznacz węża, a następnie wybierz polecenie Modifiers/UV Coordinates/Unwrap UVW. Zwróć uwagę na zniekształcenia tekstury (czarno-biała szachownica) w okolicach głowy i szyi węża. 3. W panelu Modify włącz tryb podobiektu Face i w oknie widokowym przeciągnij myszą nad wszystkimi wielokątami, aby je zaznaczyć (możesz też po prostu wcisnąć klawisze Crl+A). W rolecie Wrap kliknij przycisk mapowania krzywoliniowego (Spline Mapping). W otwartym w ten sposób oknie Spline Map Parameters kliknij przycisk Pick Spline, a następnie w oknie widokowym wskaż splajn biegnący przez

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

923

środek ciała węża. Zauważ, że mapowanie zostało natychmiast zmodyfikowane i tekstura w postaci szachownicy ułożyła się gładko na całej długości węża (patrz rysunek 33.19).

Rysunek 33.19. Mapowanie krzywoliniowe umożliwia nakładanie mapowanych tekstur wzdłuż wybranego splajn

Rozwijanie pasów z pętli Roleta Wrap zawiera jeszcze jedno przydatne narzędzie — o nazwie Unfold Strip from Loop (rozwiń pas z pętli). Jest dostępne w trybie Edge i najlepiej sprawdza się, gdy jest używane w odniesieniu do całej pętli krawędzi. Jeśli po zaznaczeniu pętli uaktywnisz to narzędzie, wielokąty przylegające do pętli zostaną odłączone od pozostałych i ustawione w długich prostoliniowych rzędach, co znakomicie ułatwia malowanie tekstury. Pas utworzony za pomocą narzędzia Unfold Strip from Loop otrzymuje nieproporcjonalnie duże współrzędne mapowania, ale wystarczy użyć funkcji Pack, aby wszystko wróciło do normy.

Na rysunku 33.20 pokazano rezultat zastosowania narzędzia Unfold Strip from Loop w odniesieniu do pętli zaznaczonej na powierzchni węża z poprzedniego ćwiczenia. Wielokąty biegnące wzdłuż węża zostały uszeregowane w odrębnym pasie.

924

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.20. Całe pasy wielokątów można oddzielać od pozostałej części siatki za pomocą narzędzia Unfold Strip from Loop

Mapowanie łupinowe i skórkowe Poznane do tej pory metody mapowania — przez spłaszczanie lub rozwijanie siatek — nie są jedynymi, jakie ma do zaoferowania modyfikator Unwrap UVW. Udostępnia on również dwa niezwykle wyrafinowane sposoby automatycznego rozwijania siatek UV nazywane mapowaniem łupinowym (peel mapping) i mapowaniem skórkowym (pelt mapping). Jednak zanim przejdę do ich omawiania, musisz zapoznać się bliżej z zagadnieniem dzielenia siatki za pomocą szwów. Szwy to nic innego, jak brzegi poszczególnych klastrów. Mogą występować na granicy między ściankami o różnych grupach wygładzania lub identyfikatorach materiałów albo na ostrych krawędziach obiektu.

Wyznaczanie szwów Szwy powinny być umieszczane w miejscach, w których nie będą widoczne. Przykładowo na głowie możemy je umieścić u góry i z tyłu, bo te obszary i tak najczęściej będziemy pokrywać włosami. Wyznaczenie szwu przez środek twarzy oznaczałoby olbrzymie trudności z dopasowaniem połówek ust i nosa leżących na przeciwnych końcach mapy. Narzędzia do ręcznego wyznaczania szwów znajdziesz w panelu poleceń w rolecie Peel.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

925

Niektóre szwy są tworzone automatycznie w chwili przypisywania obiektowi modyfikatora Unwrap UVW. Takie domyślne szwy przebiegają wzdłuż granic elementów stanowiących części składowe siatki. W oknach widokowych szwy oznaczone są grubymi zielonymi liniami3. Do edytowania szwów służy narzędzie Edit Seams dostępne w rolecie Peel. Nowe szwy można tworzyć także przy użyciu narzędzi Point-to-Point Seams (szwy od punktu do punktu) i Convert Edge Selection To Seams (przekształć zaznaczone krawędzie w szwy). Wszystkie otwarte brzegi siatki są automatycznie definiowane jako szwy.

Przycisk Edit Seams, znajdujący się w dolnej części rolety Peel, pozwala na wyznaczanie szwów przez klikanie wybranych krawędzi. Może to trwać dość długo szczególnie wtedy, gdy pracujesz nad skomplikowaną siatką. Przycisk Point-to-Point Seams pozwala na wyznaczanie szwu za pomocą kliknięcia punktu początkowego, a potem końcowego. Szew jest tworzony między tymi dwoma punktami w najkrótszy możliwy sposób. Po wskazaniu punktu kursor łączy się z nim linią prostą, która ułatwia wytyczanie punktów pośrednich szwu. Kliknięcie prawym przyciskiem myszy powoduje wyjście z tego trybu i pozwala wybrać kolejny punkt początkowy. Przykład szwów widać na rysunku 33.21. Przy wyznaczaniu szwów dla mapowania skórkowego staraj się umieszczać je w mało widocznych miejscach — pod rękami i nogami lub na plecach wzdłuż kręgosłupa.

Przycisk Convert Edge Selection To Seams zmienia istniejące zaznaczenie krawędzi w szew. Natomiast przycisk Expand Face Selection To Seams rozszerza istniejące zaznaczenie na wszystkie ścianki otoczone szwem, co znacznie ułatwia zaznaczanie wszystkich wielokątów tworzących klaster. Roleta Configure zawiera opcje wyświetlania szwów mapowych (Map Seams) i łupinowych (Peel Seams). Jeśli opcje te są włączone, szwy są wyraźnie widoczne. Możesz również ustawić rozmiar szwów na cienkie (Thin) lub grube (Thick).

Mapowanie łupinowe Mapowanie łupinowe (peel mapping) jest nową metodą rozwijania siatki UV w oparciu o algorytm LSCM (Least Square Conformal Maps). Dostępne narzędzia umożliwiają zaznaczanie i rozszerzanie różnych obszarów klastra przez odciąganie wierzchołków od jego środka. Wygląda to jak rozciąganie kawałka gliny w taki sposób, że wszystkie jego części rozciągają się w jednakowym stopniu. Narzędzia do mapowania łupinowego są nowością w 3ds Max 2012.

Najlepiej jest zdefiniować szwy przed użyciem narzędzi do mapowania łupinowego, ale możliwa jest również praca z wyłączeniem trybu Peel. Po zaznaczeniu jednego wielokąta

3

Kolor zielony otrzymują szwy mapowe oznaczające brzegi klastrów. Szwy tworzone za pomocą narzędzi z rolety Peel mają kolor niebieski — przyp. tłum.

926

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.21. Szwy wyznaczają linie podziału siatki

w klastrze, nad którym chcesz pracować, użyj narzędzia Expand Face Selection To Seams w interfejsie głównym lub włącz opcję Select By Element w oknie Edit UVWs i zaznacz pozostałe wielokąty w tym klastrze. Następnie kliknij jeden z przycisków Quick Peel albo Peel Mode w rolecie Peel. Pierwszy z nich samodzielnie rozwija zaznaczony klaster, a drugi umożliwia zaznaczanie i przesuwanie poszczególnych wierzchołków w celu rozciągnięcia klastra. Na rysunku 33.22 pokazano rozwinięcie głowy lwa wykonane przy użyciu narzędzia Quick Peel. Jeśli masz zastrzeżenia do rezultatu uzyskanego za pomocą narzędzia Quick Peel, włącz przycisk Peel Mode, uaktywnij tryb Vertex i poprzeciągaj wierzchołki w kierunku od środka klastra. Gdy będziesz przeciągał poszczególne wierzchołki, pozostała część klastra również będzie się przesuwać. Gdy już ustawisz wierzchołek we właściwym miejscu, możesz go tam unieruchomić za pomocą wirtualnej pinezki. Nie przeszkadza to w ruchach pozostałych części klastra przy przesuwaniu innych wierzchołków. W rolecie Peel należącej do okna Edit UVWs znajdziesz przyciski służące do przypinania zaznaczonych wierzchołków (Pin Selected), odpinania ich (Unpin Selected), automatycznego przypinania przesuwanych wierzchołków (Auto-Pin Moved Vertices) i zaznaczania tych wszystkich, które są przypięte (Select Pinned Verts). Na rysunku 33.23 pokazano jeszcze raz klaster głowy lwa, ale po przesunięciu i przypięciu kilku wierzchołków. Zauważ, że teraz obszar tekstury jest lepiej wykorzystany i pootwierały się miejsca, w których siatka była mocno zagęszczona.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

927

Rysunek 33.22. Klaster obejmujący głowę lwa rozwinięty za pomocą narzędzia Quick Peel

Jeśli przesuwanie wierzchołków nic nie daje, zawsze możesz kliknąć przycisk Reset Peel i wrócić do punktu wyjścia. Wszystkie pinezki zostaną usunięte, a klaster odzyska swój pierwotny układ.

Mapowanie skórkowe Mapowanie skórkowe (pelt mapping) kojarzy mi się z czasami, kiedy traperzy polowali na dzikie zwierzęta, np. lisy lub wilki, i obdzierali je ze skór, które potem przechowywali rozciągnięte na kolistych ramach. Takie skóry były cennym towarem, który traper mógł wymienić na potrzebne mu rzeczy. Rynek handlu skórami zmniejszył się znacznie od tamtych czasów, ale sam pomysł rozpinania ich na ramie doskonale nadaje się na metodę mapowania tekstur na obiektach trójwymiarowych w wirtualnym świecie. Mapowanie skórkowe jest kolejną metodą automatycznego mapowania dostępną w rolecie Peel — tej w panelu bocznym głównego interfejsu. Rozważmy mapowanie tak skomplikowanej siatki, jaką jest model ludzkiej głowy. Stosując tradycyjne techniki, podzielilibyśmy ją na sekcje nadające się do mapowania planarnego, tak jak na rysunku 33.24. Współrzędne UV dla tej głowy obejmują płaskie widoki z przodu i z tyłu. Takie mapowanie jest dobre dla tych powierzchni, które są prostopadłe do kierunku rzutowania, ale elementy takie jak uszy czy boczne powierzchnie nosa wypadają w nim źle. Moglibyśmy wprawdzie wydzielić kolejne sekcje dla rzutowania z czterech stron głowy i jeszcze od dołu dla podbródka, ale wtedy musielibyśmy borykać się z problemami powstającymi w miejscach łączenia tych sekcji.

928

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.23. Klaster głowy lwa po przesunięciu i przypięciu niektórych wierzchołków Rysunek 33.24. Mapowanie płaskie nie jest najlepszym rozwiązaniem w przypadku tak skomplikowanej siatki

Mapowanie skórkowe rozwiązuje te problemy, pozwalając nam z góry wyznaczyć przebieg szwów łączących poszczególne sekcje. Można je ulokować wzdłuż granic między

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

929

materiałami lub na brzegach siatki. Wierzchołki znajdujące się na tych szwach są następnie przyczepiane do okręgu zwanego napinaczem (Stretcher) i rozciągane, tak aby siatka UV stała się płaska. W ten sposób otrzymujemy przejrzyste, płaskie współrzędne UV dla mapowanego fragmentu, co znacznie ułatwia malowanie i nakładanie tekstur. Po zdefiniowaniu szwów zaznacz wszystkie ścianki, które mają być mapowane, i kliknij przycisk Pelt Map w rolecie Peel w panelu poleceń. Zostanie otwarte okno Edit UVWs oraz panel Pelt Map pokazany na rysunku 33.25. Rysunek 33.25. Panel Pelt Map zawiera m.in. ustawienia napinacza

Okno Edit UVWs otwiera się, wyświetlając rzut przedni, na którym wszystkie punkty szwów są umieszczone na okręgu wokół zaznaczonych ścianek, co widać na rysunku 33.26. Okrąg ten nazywany jest napinaczem (Stretcher), a linie łączące punkty napinacza z wybranymi ściankami to sprężyny (Springs). Przycisk Start Pelt powoduje naciąganie skóry przez sprężyny, które pociągają za wybrane ścianki UV i ściągają je w kierunku napinacza, wykorzystując ustawione właściwości sprężyn. Naciąganie będzie kontynuowane, dopóki nie klikniesz przycisku Stop Pelt. Jeśli włączysz opcję Show Local Distortion, silne zniekształcenia będą zaznaczane kolorem czerwonym. Na rysunku 33.27 pokazano ścianki UV po naciągnięciu. Roleta Pelt Options zawiera ustawienia zmieniające położenie napinacza. Przyciski Select Stretcher i Select Pelt UVs pozwalają na zaznaczanie i manipulowanie wybranymi ściankami oraz punktami napinacza. Możesz również nadać napinaczowi kształt wielokąta (Straighten Stretcher) i lustrzanie odbić napinacz (Mirror Stretcher) lub sprawić, że punkty napinacza zostaną przyciągnięte do szwu (Snap To Seams). Ten ostatni przycisk jest szczególnie przydatny w przypadku obiektów, które mogą się zwijać, tak jak dłoń zaciskana w pięść. Kliknięcie przycisku Snap To Seams przed naciąganiem skóry spowoduje, że napinacz przyjmie kształt określony przez szwy.

930

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.26. Mapowanie skórkowe układa wszystkie punkty szwów na okręgu wokół zaznaczonych ścianek

Rysunek 33.27. Po rozciągnięciu ścianki UV są ułożone dość porządnie

Jeśli przestaniesz panować nad sytuacją, przycisk Reset przywróci początkową pozycję mapowania. Przyciski z sekcji Relax mogą być używane do dalszego przemieszczania współrzędnych UV, aby pozbyć się wszelkich napięć w mapowaniu.

Rozdział 33.  Rozwijanie współrzędnych UV i mapowanie tekstur

931

Aby mapowanie skórkowe dało optymalne rezultaty, należy przez obracanie napinacza zminimalizować długości sprężyn.

Ćwiczenie: Zastosowanie mapowania skórkowego Mapowanie skórkowe jest szczególnie przydatne przy opracowywaniu postaci, ponieważ mają one nieregularne szwy i powierzchnie. Metoda ta działa dobrze również przy wygładzaniu tekstur postaci. Aby użyć mapowania skóry na twarzy postaci, wykonaj następujące czynności. 1. Otwórz plik Lion toy face.max z folderu Chap 33 znajdującego się na płycie dołączonej do książki. Plik ten zawiera samą twarz modelu lwa maskotki. 2. Zaznacz siatkę twarzy i wybierz Modifiers/UV Coordinates/Unwrap UVW. Wybierz tryb podobiektu Face i zaznacz wszystkie ścianki w siatce twarzy. 3. W rolecie Peel kliknij przycisk Pelt Map. 4. Pojawi się okno dialogowe Edit UVWs ze szwami rozciągniętymi na napinaczu. Korzystając z przycisku Select Stretcher, zaznacz wszystkie punkty napinacza4, a następnie obróć je o ok. 10 stopni zgodnie z kierunkiem ruchu wskazówek zegara, aby skóra była naciągana równomiernie we wszystkie strony. Na koniec włącz przycisk Start Pelt i przytrzymaj go na tyle długo, aby skóra została dostatecznie naciągnięta (patrz rysunek 33.28).

Podsumowanie W rozdziale tym poruszyliśmy mnóstwo nowych zagadnień, bo też dużo jest rozmaitych metod mapowania tekstur. Jeśli dobrze opanujesz te metody, zauważysz znaczną poprawę w poziomie realizmu Twoich materiałów. W tym rozdziale omówiliśmy następujące tematy:

4



podstawy mapowania,



używanie modyfikatorów mapowania,



nakładanie etykiet przy użyciu modyfikatora UVW Map,



kontrolowanie współrzędnych mapowania przy użyciu modyfikatora Unwrap UVW,



renderowanie szablonów UV,



edytowanie szwów,



mapowanie łupinowe i skórkowe.

Najprościej można to uzyskać przez zaznaczenie całej zawartości okna Edit UVWs, a następnie kliknięcie przycisku Select Stretcher — przyp. tłum.

932

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 33.28. Przy użyciu mapowania skórkowego możesz rozciągnąć współrzędne UV siatki

W następnym rozdziale poznasz okno Render to Texture służące do wypiekania tekstur. Zajmiemy się również tworzeniem map normalnych.

Rozdział 34.

Tworzenie wypiekanych tekstur i map normalnych W tym rozdziale: 

Używanie kanałów



Używanie okna Render to Texture



Tworzenie map wektorów normalnych

Gry 3D stawiają przed ich twórcami ciekawy do rozwiązania problem — jak utworzyć interaktywny świat wyświetlany w czasie rzeczywistym przy zachowaniu najwyższej jakości grafiki. Aby sobie z tym poradzić, twórcy gier stosują wiele różnych sztuczek, które przyspieszają proces renderowania. Jedną z nich jest prerenderowanie tekstur i nakładanie ich jako map. Pozwala to na stosowanie zaawansowanych systemów oświetlenia bez straty czasu na renderowanie ich efektów. Przekształcanie efektów renderingu w prerenderowane tekstury nazywane jest wypiekaniem tekstur. Samo renderowanie tekstur jest ważną częścią całego procesu renderowania, a wypiekanie nie oznacza, że można z tego etapu zrezygnować. Pozwala ono jednak silnikowi gry na pominięcie w trakcie renderingu pewnych dość czasochłonnych obliczeń. Inną popularną sztuczką dotyczącą wydajności w grach 3D jest tworzenie map wektorów normalnych (w skrócie: map normalnych). Mapa normalnych zawiera wyniki obliczeń oświetlenia szczegółów powierzchni. Po nałożeniu takiej mapy na uproszczoną wersję obiektu można te szczegóły szybko odtworzyć. Jest to prosty sposób na symulowanie istnienia rozmaitych detali bez zwiększania liczby wielokątów w scenie. Dzięki temu, że do odtwarzania takich elementów jak śruby czy nity, nie trzeba generować dodatkowych ścianek, animacja obiektu może być płynniejsza, a mimo to jego wygląd nie straci na jakości. W tym rozdziale znajdziesz informacje o niektórych opcjach Maksa pozwalających na osiągnięcie wspaniałych efektów graficznych, często spotykanych w najnowszych grach renderowanych w czasie rzeczywistym.

934

Część VII  Materiały w ujęciu zaawansowanym

Używanie kanałów Kiedy w grze stosowane są trójwymiarowe modele, dane określające ich kolor i materiał, z którego zostały zbudowane, są zapisywane w kanałach informacji przechowywanych przez siatkę. Silnik gry rozpoznaje np. potrzebę zmiany barwy wierzchołków z powodu eksplozji w grze, sprawdza odpowiedni kanał, znajduje potrzebne wierzchołki, zmienia ich kolor i kontynuuje renderowanie środowiska gry. Stosowanie kanałów jest bardzo wydajnym sposobem na korzystanie z silnika gry, ale istnieje też niebezpieczeństwo, że nieudolny twórca wprowadzi do gry model z całą masą niepotrzebnych lub błędnie zdefiniowanych kanałów. Jeśli tak się stanie, silnik może zignorować dodatkowe kanały lub pobrać błędne dane, przez co bohater w grze ruszy do walki bez broni. Co gorsza, może to też prowadzić do zawieszenia pracy systemu. Aby zapobiec potencjalnym problemom i kontrolować ilość kanałów w modelach używanych w grach, Max ma wbudowany edytor o nazwie Map Channel Info, który pozwala na edycję danych w kanałach. Edytor ten, widoczny na rysunku 34.1, można otworzyć za pomocą polecenia Tools/Channel Info. Rysunek 34.1. Okno dialogowe Map Channel Info pozwala na zmianę danych przechowywanych w kanałach

Korzystanie z okna Map Channel Info W oknie dialogowym Map Channel Info zawarto bardzo dużo informacji, m.in. nazwę obiektu, identyfikator (typ) kanału, nazwę kanału, liczbę wierzchołków, liczbę ścianek, liczbę nieużywanych wierzchołków i rozmiar w kilobajtach. Za pomocą tych danych możesz łatwo określić, które kanały zajmują najwięcej miejsca, i pozbyć się ich. Wszystkie obiekty zawierają domyślne kanały: mesh — przechowujący dane o geometrii; vsel — przechowujący zaznaczone wierzchołki; –2:Alpha — przechowujący dane o kanale alfa; –1:Illum — przechowujący wartości iluminacji wierzchołków; 0:vc — przechowujący dane o kolorze wierzchołków. Obiekty zawierają również przynajmniej jeden domyślny kanał mapowania (nawet wtedy, jeśli jest on pusty). Kanały te nie mogą zostać usunięte. O kolorowaniu wierzchołków i malowaniu obiektów możesz przeczytać w rozdziale 18., „Materiały złożone i modyfikatory materiałów”.

Edytor pozwala na kopiowanie i wklejanie wybranych kanałów. Możesz nazwać każdy z kanałów za pomocą przycisku Name. Pod przyciskiem Copy pojawia się tekst informujący o danych skopiowanych aktualnie do bufora kopiowania. Informacje mogą być przenoszone metodą kopiowania jedynie pomiędzy kanałami mającymi taką samą ilość wierzchołków.

Rozdział 34.  Tworzenie wypiekanych tekstur i map normalnych

935

Przycisk Clear czyści zawartość wybranych kanałów. Nie można wyczyścić kanału mapowania, jeśli nad nim znajduje się inny kanał tego typu. Przycisk Add dodaje nowy kanał mapowania do obiektu. Obiekty mogą zawierać do 99 kanałów. Przyciski Clear i Add wstawiają modyfikatory UVW Mapping Clear i UVW Mapping Add do stosu modyfikatorów. Przycisk Paste również dodaje modyfikator. Modyfikatory są wygodne w użyciu, ponieważ można je łatwo usunąć lub uporządkować w stosie. Jeśli dokonano zmian w stosie modyfikatorów, w oknie dialogowym Map Channel Info dostępny staje się przycisk uaktualnienia (Update). Przycisk SubComp wyświetla składowe kanału, o ile istnieją. Przykładowo kanały mapowania mogą być opisane przez składowe X, Y i Z, zaś inne kanały (np. alfa) mają składowe R, G i B. Przycisk Lock powoduje zablokowanie aktualnych kanałów nawet wtedy, gdy zostanie wybrany inny obiekt.

Modyfikator Select by Channel Po utworzeniu nowych kanałów możesz przywołać je w dowolnej chwili, używając modyfikatora Select by Channel. Służy do tego polecenie Modifiers/Selection/Select By Channel. Przy jego użyciu możesz zastąpić (Replace) dany kanał, dodać (Add) lub odjąć (Subtract) go z zaznaczenia. Dostępne kanały możesz wybrać z rozwijanej listy, na której są uporządkowane według nazw.

Renderowanie do tekstury Twórcy gier zawsze poszukują sposobów zwiększenia wydajności i ilości szczegółów obiektów w grze. Jednym ze znanych sposobów na przyspieszenie obliczeń w grze jest prerenderowanie tekstur używanych w grze i zapisanie ich jako map. Mapa tekstury zajmuje więcej pamięci po zapisaniu, ale może wydatnie przyspieszyć renderowanie gry. Proces prerenderowania tekstury nazywa się wypiekaniem (baking). Jeśli wypieczesz teksturę na obiekcie, a potem wyrenderujesz go wraz z całą sceną, otrzyma on podwójną dawkę światła.

Wypiekanie tekstury może być przeprowadzone za pomocą polecenia Rendering/Render To Texture (skrót klawiszowy: 0), co spowoduje otwarcie okna dialogowego Render To Texture, widocznego na rysunku 34.2. Przypomina ono okno dialogowe Render Setup, między innymi dlatego, że również w dolnej części zawiera przycisk Render. Aby utworzyć wypieczoną teksturę, wybierz element tekstury z rolety Output i kliknij przycisk Render. Dzięki temu dla zaznaczonego obiektu uzyskasz wypaloną teksturę, która zostanie zapisana w folderze określonym w rolecie General Settings. Ponadto do stosu modyfikatorów zostanie dodany modyfikator Automatic Flatten UVs, a na obiekt zostanie nałożony materiał typu Shell. Powłoka (Shell) zawiera pierwotny materiał obiektu wraz z nowo wypaloną teksturą. Możesz wybrać, który z materiałów będzie wyświetlany w oknie widokowym, a także to, który będzie renderowany, do czego służą opcje znajdujące się u dołu po prawej stronie okna dialogowego Render To Texture.

936

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 34.2. Roleta General Settings w oknie Render To Texture zawiera ustawienia dla wszystkich obiektów

Aby określić współrzędne mapowania, możesz skorzystać z opcji Use Existing Channel. Jest to lepszy wybór niż Use Automatic Unwrap, bo daje lepszą kontrolę nad tym, które współrzędne mają być zastosowane. Poza tym ta druga opcja nie zawsze dobrze radzi sobie z rozwijaniem siatki obiektu.

Okno zawiera również przycisk Unwrap Only (rozwiń tylko). Możesz go użyć, aby spłaszczyć współrzędne UVW dla wybranych obiektów i automatycznie utworzyć nowy kanał mapowania.

Roleta General Settings Roleta General Settings zawiera ścieżkę, która określa miejsce zapisywania wypalonej tekstury. Plik jest domyślnie zapamiętywany w formacie Targa. Opcja Skip Existing Files renderuje tylko te elementy, które w określonym folderze jeszcze nie istnieją. Opcja Rendered Frame Window wyświetla rezultat wypalania w oknie Rendered Frame, jednocześnie zapisując obraz jako plik. Możesz również wybrać, jakie ustawienia renderingu mają być wykorzystane w fazie renderowania, włącznie z silnikiem renderującym mental ray. Przycisk Setup otwiera okno Render Setup, gdzie możesz zmienić ustawienia renderowania.

Wybieranie obiektów do wypiekania W rolecie Objects to Bake, widocznej na rysunku 34.3, znajduje się lista wyświetlająca dokładnie, które obiekty, podobiekty i kanały będą włączone do renderowanej tekstury. Wartość Edge Padding określa w pikselach wielkość zakładek tekstury. Jest tu także lista z ustawieniami predefiniowanymi, które można zapisywać i wczytywać. Sekcja Projection Mapping pozwala włączyć tworzenie mapy normalnych przy użyciu modyfikatora projekcji (Projection Modifier). Ustawienia te są szczegółowo opisane w podrozdziale „Tworzenie map normalnych”, który znajduje się w dalszej części rozdziału. Sekcja Mapping Coordinates pozwala wybrać współrzędne mapowania wybranego obiektu (Object) lub podobiektów (Sub-Objects), zawarte w określonym kanale. Możesz także włączyć opcję Use Automatic Unwrap, która automatycznie rozwija współrzędne mapowania. Jeśli opcja Use Automatic Unwrap jest włączona, możesz w rolecie Automatic Mapping

Rozdział 34.  Tworzenie wypiekanych tekstur i map normalnych

937

Rysunek 34.3. Roleta Objects to Bake w oknie Render To Texture pozwala wskazać obiekty, które mają uczestniczyć w wypiekaniu tekstury

ustawić opcje mapowania automatycznego. Domyślnie automatyczne mapowanie korzysta z kanału trzeciego, ale to ustawienie można zmienić. Jeśli inne mapowanie korzysta z kanału trzeciego i nie zmienisz tego ustawienia, nowe mapowanie zastąpi starsze. Przycisk Clear Unwrappers usuwa ze stosu obiektu wszelkie istniejące modyfikatory Unwrap UVW. Możesz wybrać wypieczenie pojedynczego obiektu (Individual), wszystkich wybranych (All Selected) lub wszystkich przygotowanych obiektów (All Prepared), czyli wszystkich obiektów z przynajmniej jednym elementem tekstury.

Ustawienia wyjściowe (Output) Roleta Output, widoczna na rysunku 34.4, zawiera listę elementów tekstury, które mają być wypiekane. Opcja Enable może być stosowana do wyłączenia renderingu wybranego elementu. Do usuwania elementów z listy służy przycisk Delete. Kliknięcie przycisku Add pozwala wybrać rodzaj komponentów tekstury, które będą renderowane. Zależnie od przeznaczenia mapy, będziesz używał różnych jej rodzajów, możesz też przeprowadzać rendering kilku map naraz. Dostępne opcje to kompletna mapa (CompleteMap), mapa odblasków (SpecularMap), mapa koloru (DiffuseMap), mapa cieni (ShadowsMap), mapa świateł (LightingMap), mapa normalnych (NormalsMap), mapa mieszania (BlendMap), mapa przezroczystości (AlphaMap) i mapa wysokości (HeightMap). Możesz także wybrać rozmiar mapy lub użyć opcji Automatic Map Size, która określa rozmiar mapy według rozmiaru obiektu. Niektóre komponenty zawierają listę dodatkowych składników, które mają zostać uwzględnione podczas wypiekania. Są one dostępne w postaci opcji w polu Selected Element Unique Settings. Jeśli wybrany jest renderer mental ray, do listy dostępnych elementów tekstury dodawana jest pozycja Ambient Occlusion. Opcja ta tworzy mapę, która odtwarza efekty powstałe w wyniku odbijania się światła od obiektów otoczenia.

938

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 34.4. Roleta Output w oknie Render to Texture pozwala wybrać wypiekane komponenty tekstury

Wypiekany materiał i mapowanie automatyczne Rolety Baked Material i Automatic Mapping, pokazane na rysunku 34.5, pozwalają na zachowanie istniejącego materiału obiektu w ramach złożonego materiału typu Shell (powłoka). Opcja Clear Shell Materials powoduje usunięcie materiałów powłoki z wypiekanych obiektów i przywraca im ich pierwotne materiały. Rysunek 34.5. Ostatnie dwie rolety w oknie Render To Texture zawierają ustawienia dotyczące finalnej obróbki wypiekanego materiału i sposobu mapowania tekstury

W rolecie Automatic Mapping możesz ustawić sposób generowania współrzędnych mapowania. Jeśli włączona jest opcja Use Automatic Unwrap w rolecie Objects to Bake, obiekt będzie wypiekany z zastosowaniem modyfikatora Automatic Flatten UVs. Dla tego rodzaju obiektów możesz ustawić wartość Threshold Angle — jest to kąt pomiędzy normalnymi sąsiadujących ze sobą ścianek. Jeśli ten kąt jest większy niż wartość Threshold Angle, między ściankami tworzona jest ostra krawędź. Możesz także ustawić wartość odstępu pomiędzy poszczególnymi fragmentami mapy (Spacing), a także określić, czy fragmenty mapy mogą zostać obrócone (Rotate Clusters) i wykorzystane do zapełniania otworów w większych fragmentach map (Fill Holes).

Rozdział 34.  Tworzenie wypiekanych tekstur i map normalnych

939

Rozmiar mapy tekstury zależy od rozmiaru obiektu, ale możesz ustawić wartość skalowania (Scale) dla większych rozdzielczości, a także wartości minimalnego i maksymalnego rozmiaru (Min i Max), aby wielkość mapy mieściła się w granicach rozsądku. Domyślnie mapy są zapisywane w folderze /images, ale możesz wybrać inny folder. Opcja Nearest Power of 2 (najbliższa potęga 2) optymalizuje mapę pod względem zużycia pamięci, skalując ją do kwadratów o bokach równych kolejnym potęgom dwójki, np. 8×8, 16×16, 32×32 lub 64×64. Większość silników gier komputerowych wymaga tekstur kwadratowych, bo takie efektywniej wykorzystują pamięć komputera. Główne obiekty mogą mieć tekstury o wymiarach 1024×1024, a nawet 2048×2048, ale dla obiektów drugoplanowych i tych, które tworzą tło, zwykle wystarczą tekstury o rozmiarach 256×256 lub 512×512.

Ćwiczenie: Wypiekanie tekstur dla modelu psa Aby przećwiczyć wypiekanie tekstur, wypalimy kompletną mapę dla modelu psa. Aby wypalić teksturę głowy psa, wykonaj następujące czynności. 1. Otwórz plik Doberman.max z folderu Chap 34 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model psa, który powstał w Viewpoint Datalabs. 2. Wybierz z menu Rendering/Render To Texture (lub wciśnij klawisz 0), aby otworzyć okno dialogowe Render To Texture. 3. Zaznacz siatkę — ciało psa. W oknie dialogowym Render To Texture, w rolecie Automatic Mapping ustaw wartość Threshold Angle na 75. Upewnij się, że w rolecie General Settings włączona jest opcja Rendered Frame Window. W rolecie Output kliknij przycisk Add, a następnie kliknij dwukrotnie opcję CompleteMap. Ustaw wartość Map Size na 512, a opcję Diffuse Color na wartość Target Map Slot, po czym kliknij przycisk Render. Na rysunku 34.6 przedstawiono otrzymaną mapę tekstury. Jeśli spojrzysz na panel Modify, zauważysz, że do obiektu został dodany modyfikator Automatic Flatten UVs. Materiał obiektu został zamieniony w materiał typu Shell.

Tworzenie map normalnych Mapy normalnych stają się w grach coraz popularniejsze, ponieważ dzięki nim można optycznie zwiększyć szczegółowość geometrii modelu poprzez mapowanie informacji o strukturze złożonego obiektu na modelu o niskiej rozdzielczości. Mapy te tworzy się za pomocą okna Render To Texture, a nakłada na obiekt, wybierając w edytorze materiałów mapę typu Normal Bump. Zazwyczaj są one stosowane jako mapy nierówności (Bump) w rolecie Maps. W rolecie z parametrami mapy normalnych mamy specjalny przycisk Additional Bump, widoczny na rysunku 34.7, który pozwala nałożyć dodatkową mapę nierówności.

940

Część VII  Materiały w ujęciu zaawansowanym

Rysunek 34.6. Mapa tekstury utworzona przy użyciu okna Render To Texture

Rysunek 34.7. Mapy normalnych są nakładane na obiekt przy użyciu edytora materiałów, chociaż do ich generowania wykorzystujemy okno Render To Texture

Mapy normalnych mogą być wyświetlane w oknach widokowych tylko w przypadku korzystania ze sterownika DirectX.

Używanie modyfikatora Projection W procesie generowania map normalnych jest stosowany modyfikator Projection (rzutowanie). Nakładamy go na obiekt o niskiej rozdzielczości i wskazujemy przy tym podobny obiekt o wysokiej rozdzielczości. Modyfikator otacza obiekt o niskiej rozdzielczości specjalną klatką, którą można dopasowywać tak, aby zawierała wszystkie szczegóły geometrii obiektu o wysokiej rozdzielczości. Do przypisywania modyfikatora Projection służy polecenie Modifiers/UV Coordinates/Projection.

Rozdział 34.  Tworzenie wypiekanych tekstur i map normalnych

941

W stosie modyfikatorów dla modyfikatora Projection mamy dostępne trzy tryby podobiektów: klatkę (Cage), ściankę (Face) i element (Element). Roleta Geometry Selection zawiera listę obiektów o wysokiej rozdzielczości oraz przyciski Pick i Pick List, które służą do dołączania tych obiektów do listy. Roleta Cage zawiera ustawienia dotyczące wyświetlania i przemieszczania klatki w stosunku do powierzchni obiektu o niskiej rozdzielczości. Opcja Tolerance reguluje sposób owijania klatki wokół powierzchni. Roleta Selection Check pozwala sprawdzić, czy identyfikatory materiałów i ścianki geometrii nie pokrywają się ze sobą.

Ustawienia Projection Mapping Przy zastosowanym modyfikatorze Projection możesz w rolecie Objects to Bake, znajdującej się w oknie dialogowym Render To Texture, włączyć opcję Projection Mapping. Obiekt może zawierać kilka modyfikatorów Projection, które wybierasz z rozwijanej listy. Możesz także skorzystać z przycisku Pick, aby w oknie widokowym wybrać docelowy obiekt. Przycisk Options w oknie Render To Texture otwiera okno dialogowe Projection Options, pokazane na rysunku 34.8. Przy jego użyciu możesz ustawić metodę rzutowania, określić sposób rozstrzygania trafień i zdefiniować przestrzeń mapy — Map Space. Rysunek 34.8. Okno dialogowe opcji rzutowania pozwala wybrać parametry projekcji siatki o wysokiej rozdzielczości na siatkę o niskiej rozdzielczości

U góry okna dialogowego Projection Options znajduje się obiekt Source. Przycisk Synch All włącza dla każdego obiektu używanie przy rzutowaniu jego aktywnego źródła. Dostępne metody rzutowania to Raytrace, która śledzi każdą normalną od źródła do celu, i UV Match, działająca na zasadzie dopasowywania współrzędnych UV pomiędzy obiektem źródłowym (o wysokiej rozdzielczości) i docelowym (o niskiej rozdzielczości). W obiektach przezroczystych ten sam promień rzutowania może trafić w kilka punktów. Opcja Resolve Hit pozwala ustawić, który z nich będzie wybrany — najbliższy (Closest) lub najdalszy (Furthest). Większość rzutowań używa przestrzeni mapy stycznej (Tangent Map Space), ale możesz zmienić ustawienia na przestrzeń globalną (World), ekranu (Screen) lub lokalną (Local).

942

Część VII  Materiały w ujęciu zaawansowanym Przed zastosowaniem modyfikatora Projection należy oba obiekty (wysokiej i niskiej rozdzielczości) ustawić w tym samym miejscu.

Ćwiczenie: Tworzenie mapy normalnych dla zoptymalizowanego aligatora Na potrzeby tego przykładu wykorzystamy zoptymalizowany model aligatora prezentowany już przy okazji omawiania modyfikatorów siatkowych. Za pomocą modyfikatora ProOptimizer zredukowano w tym modelu o wysokiej rozdzielczości liczbę ścianek z 34 000 do mniej niż 1000. Oczywiście odbiło się to na jego jakości, ale z drugiej strony pozwoliło przyśpieszyć jego oświetlenie w trakcie gry. Większość szczegółów powierzchniowych można jednak odtworzyć za pomocą mapy normalnych. Aby utworzyć mapę normalnych dla zoptymalizowanego modelu aligatora, wykonaj następujące czynności. 1. Otwórz plik ProOptimized gator.max z folderu Chap 34 znajdującego się na płycie dołączonej do książki. 2. W oknie widokowym Top zaznacz i przesuń zoptymalizowany model aligatora na model o wysokiej rozdzielczości. 3. Zachowując zaznaczenie modelu uproszczonego, otwórz okno dialogowe Render to Texture, wybierając z menu polecenie Rendering/Render to Texture (lub wciskając klawisz 0). W sekcji Render Settings rolety General Settings wybierz opcję 3dsmax.scanline.no.advanced lighting. W oknie dialogowym Select Preset Categories, które się pojawi, kliknij przycisk Load. 4. W rolecie Objects to Bake kliknij przycisk Pick. W oknie dialogowym Add Targets, które się otworzy, zaznacz obiekt gator1 i kliknij przycisk Add. Następnie w sekcji Projection Mapping włącz opcję Enabled. 5. W rolecie Output kliknij przycisk Add i wybierz mapę NormalsMap. Z rozwijanej listy Target Map Slot wybierz opcję Bump. Kliknij przycisk 512×512, aby ustawić rozmiar mapy, i włącz opcję Output into Normal Bump. 6. Kliknij przycisk Render u dołu okna dialogowego Render to Texture. 7. Przeciągnij model uproszczony z dala od modelu szczegółowego. 8. Aby zobaczyć zrenderowaną mapę normalnych, otwórz edytor materiałów i za pomocą polecenia Material/Get All Scene Materials załaduj wszystkie węzły materiałowe łącznie z mapą normalnych. Skóra, oczy i łapy mają odrębne materiały. Odszukaj i uaktywnij materiał green z podłączoną do jego kanału Bump mapą normalnych. W edytorze parametrów rozwiń roletę Maps, odszukaj w niej mapę Bump i zwiększ dla niej parametr Amount do 100. Następnie przeciągnij gniazdo wyjściowe materiału green na uproszczony model aligatora. 9. Wyrenderuj oba aligatory jeden obok drugiego.

Rozdział 34.  Tworzenie wypiekanych tekstur i map normalnych

943

Na rysunku 34.9 po prawej widoczna jest mapa normalnych wyrenderowana na prostym modelu aligatora. Rysunek 34.9. Mapa normalnych aligatora może być wykorzystana jako mapa nierówności w celu odtworzenia szczegółów widocznych na modelu w wysokiej rozdzielczości

Podsumowanie Jeśli zajmujesz się tworzeniem gier komputerowych, na pewno będziesz chciał używać tych narzędzi, aby Twoje modele były małe i ruchliwe. Rozdział ten zawiera omówienie następujących tematów: 

kanały informacji przechowywanych w siatkach modeli,



wypiekanie tekstur,



tworzenie map normalnych przy użyciu modyfikatora Projection.

W następnej części powrócimy do zagadnień związanych z animacją i na początek przyjrzymy się modyfikatorom animacji.

944

Część VII  Materiały w ujęciu zaawansowanym

Część VIII

Zaawansowane techniki animowania W tej części: Rozdział 35. „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów” Rozdział 36. „Animowanie przy użyciu kontrolera Expression i wiązania parametrów” Rozdział 37. „Praca z krzywymi funkcyjnymi w oknie Track View”

Rozdział 35.

Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów W tym rozdziale: 

Korzystanie z warstw animacji



Zapisywanie i wczytywanie plików animacji



Modyfikator Point Cache



Stosowanie modyfikatora Morpher



Dodawanie drugiej animacji za pomocą modyfikatora Flex



Animowanie deformacji geometrycznych



Używanie innych modyfikatorów animacji



Przegląd kontrolerów złożonych

Na warstwach można grupować obiekty, ale nie tylko. Można na nich umieszczać również animowane ruchy. Jest to znaczne ułatwienie w organizowaniu złożonych animacji. Jeśli wykonałeś w Maksie animację jakiegokolwiek obiektu i jesteś zadowolony z rezultatów swojej pracy, możesz ją zapisać, by wykorzystać ponownie. Możesz również zmiksować kilka różnych animacji, tworząc całkowicie nową. Modyfikatory stosuje się do wprowadzania w zautomatyzowany sposób zmian w geometrii obiektów, ale można ich użyć także do modyfikowania innych aspektów sceny, także tych, które mogą być animowane. Jednym z ważniejszych modyfikatorów w obszarze animacji jest Point Cache. Jego działanie polega na rejestrowaniu zmian, jakim poddawane są wszystkie wierzchołki w scenie, i zapisywaniu tych informacji w specjalnym pliku, z którego mogą być szybko przywołane i wykorzystane do równoczesnego animowania wielu obiektów.

948

Część VIII  Zaawansowane techniki animowania

Menu Modifiers zawiera podmenu Animation, w którym znajduje się wiele modyfikatorów dotyczących właśnie animacji. Są one wyjątkowe, ponieważ rezultat działania każdego z nich ulega zmianom w miarę upływu czasu animacji. Możesz je zastosować jako alternatywę dla kontrolerów animacji, ale rezultaty osiągane dzięki nim są dość specyficzne. W podmenu znajdziesz takie modyfikatory jak Morpher, który pozwala obiektowi na przejście przez kilka wcześniej zdefiniowanych określonych kształtów, i Flex, używany do symulowania dynamiki ciał odkształcalnych. Znajdziesz tam również modyfikatory do roztapiania obiektów (Melt), deformowania ścieżek (PathDeform) i wiele innych. W tym rozdziale poznasz także te kontrolery, których do tej pory nie omawialiśmy. Są one bardziej złożone i umożliwiają sterowanie szerszym zakresem ruchów.

Posługiwanie się narzędziami z paska Animation Layers Warstwy animacji wprowadzają do sceny kilka nowych kontrolerów, których ścieżki są widoczne w panelu Motion oraz w oknie Track View, jednak głównym interfejsem służącym do ich obsługi jest prosty pasek narzędziowy Animation Layers, pokazany na rysunku 35.1. Pod wieloma względami jest on podobny do paska Layers. Rysunek 35.1. Pasek narzędziowy Animation Layers umożliwia m.in. definiowanie i łączenie warstw Pasek narzędziowy Layers został opisany w rozdziale 6., „Zaznaczanie obiektów i ustawianie ich właściwości”.

Aby otworzyć pasek z narzędziami warstw animacji, kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędziowego i z menu podręcznego wybierz opcję Animation Layers. Poszczególne kontrolki paska zostały zebrane i opisane w tabeli 35.1. Gdy tworzysz nową warstwę animacji za pomocą przycisku Add Anim Layer, do listy Layer Selection dodawana jest nowa pozycja. Otrzymuje ona domyślną nazwę AnimLayer z kolejnym numerem. Warstwa podstawowa ma nazwę Base Layer. Na lewo od nazwy warstwy znajduje się ikona żarówki sygnalizująca, czy dana warstwa jest aktywna, czy nieaktywna. Nazwy warstwy animacji nie można zmienić1.

Każdej warstwie animacji można przypisać określoną wagę (Weight), która decyduje o wpływie danej warstwy na całą animację. Wartości tych wag również mogą być animo-

1

Nie jest to prawda. Domyślną nazwę warstwy można zmienić już na etapie jej tworzenia, a później można to zrobić w oknie dialogowym Layer Controller — przyp. tłum.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

949

Tabela 35.1. Kontrolki paska narzędziowego Animation Layers Kontrolka

Nazwa

Opis

Enable Anim Layers

Włącza system warstw animacji.

Select Active Layer Objects

Zaznacza w oknach widokowych obiekty leżące na aktywnej warstwie animacji.

Lista rozwijana Layer Selection

Umożliwia uaktywnianie warstw wybranych spośród wszystkich dostępnych.

Spiner Animation Layer Weight

Służy do wyświetlania i ustawiania wagi bieżącej warstwy animacyjnej.

Anim Layer Properties

Otwiera okno dialogowe z właściwościami warstwy.

Add Anim Layer

Dodaje nową warstwę animacji.

Delete Anim Layer

Usuwa bieżącą warstwę animacji.

Copy Anim Layer

Kopiuje bieżącą warstwę animacji.

Paste Active Anim Layer

Wkleja klucze z bieżącej warstwy animacji do zaznaczonego obiektu.

Paste New Layer

Wkleja klucze ze skopiowanej warstwy animacji do nowej warstwy.

Collapse Anim Layer

Scala aktywną warstwę animacji z warstwą leżącą niżej.

Disable Anim Layer

Wyłącza bieżącą warstwę animacji.

wane. Przykładowo, jeśli animacja samochodu polega na przemieszczeniu go o 100 metrów w 50 klatkach, to po przypisaniu tej warstwie wagi o wartości 30 samochód przesunie się podczas tych 50 klatek o 30 metrów.

Praca z warstwami animacji Warstwy animacji umożliwiają nie tylko dzielenie ruchów na zestawy, które można łatwo włączać i wyłączać, ale także na łączenie tych zestawów w celu uzyskania zupełnie nowych ruchów. Animację można podzielić na ruchy główne i drugorzędne. Ruch główny to animacja obiektu jako całości, a ruchy drugorzędne są animacjami poszczególnych jego części. Posługując się warstwami, możesz oddzielić ruch główny od drugorzędnych, np. ruch postaci wzdłuż określonej ścieżki od ruchów jej ramion, i modyfikować je niezależnie.

950

Część VIII  Zaawansowane techniki animowania

Włączanie systemu warstw animacji Pierwszym przyciskiem na pasku narzędziowym Animation Layers jest przycisk Enable Anim Layers (włącz warstwy animacji). Kliknięcie go otwiera okno dialogowe, pokazane na rysunku 35.2, służące do określania, jakie klucze animacyjne mają być umieszczane na warstwie. Rysunek 35.2. Okno dialogowe Enable Anim Layers pozwala wybrać typy kluczy, jakie będą umieszczane na warstwach

Warstwę podstawową (Base Layer) można wyłączyć przyciskiem Disable Anim Layer, ale po wcześniejszym scaleniu wszystkich warstw; w przeciwnym przypadku przycisk ten jest niedostępny. Wyłączenie warstwy zostanie zasygnalizowane zmianą ikony żarówki. Jeśli obiekt, którego animacja jest wczytywana do miksera ruchu, ma włączone warstwy animacji, wyświetlane jest okno dialogowe z pytaniem, czy dla tej animacji ma być tworzony nowy plik mapowania.

Ustawianie właściwości warstw animacji Przycisk znajdujący się na prawo od spinera określającego wagi warstw otwiera okno dialogowe Layer Properties pokazane na rysunku 35.3. W nim możesz określić typ kontrolera, jaki ma powstać w wyniku scalenia warstw animacji. Do wyboru masz następujące opcje: Bezier or Euler (pierwszy dla położenia i skali, a drugi dla obrotu), Linear or TCB i Default (domyślny). Rysunek 35.3. Okno dialogowe Layer Properties umożliwia wybranie typu kontrolera powstającego w wyniku scalenia warstw

Scalanie warstw animacji Scalanie warstw animacji polega na łączeniu kluczy obu warstw w jeden zestaw definiujący wszystkie ruchy zawarte w tych warstwach. Do tej operacji należy podchodzić ostrożnie, bo czasami jej skutki mogą być nieprzewidywalne. Do jej przeprowadzania służy przycisk Collapse Anim Layer.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

951

Ćwiczenie: Animowanie startu samolotu z użyciem warstw animacji Czy byłeś kiedyś na małym lotnisku i obserwowałeś start małych samolotów kursujących na krótkich liniach? Czasami odrywają się one od ziemi po to, by po chwili na nią powrócić i dopiero wtedy rozpoczynają swój lot. Wygląda to tak, jakby szukały dobrego punktu odbicia w celu pokonania grawitacji. Jest to doskonały przykład sytuacji, w której warstwy animacji okazują się przydatne. Aby wykonać animację startu samolotu, wykonaj następujące czynności. 1. Otwórz plik Mig take-off.max zamieszczony w folderze Chap 35 na płycie dołączonej do książki. Plik zawiera szczegółowy model odrzutowca Mig-29 opracowany w Viewpoint Datalabs. 2. Zaznacz model samolotu, a następnie kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędzi i w menu podręcznym włącz wyświetlanie paska narzędziowego Animation Layers. 3. Kliknij przycisk Enable Anim Layers i w oknie wyboru kluczy pozostaw włączoną tylko opcję Position. Na liście warstw pojawi się pozycja o nazwie Base Layer. 4. W głównym oknie programu kliknij przycisk Auto Key, przeciągnij suwak czasu do klatki o numerze 100 i przesuń samolot do samego końca pasa startowego. Wyłącz przycisk Auto Key. W pasku narzędziowym Animation Layers ustaw wagę dla bieżącej warstwy na 0. 5. W tym samym pasku kliknij przycisk Add Anim Layer, aby utworzyć nową warstwę animacji. W oknie Create New Animation Layer, które się otworzy, zaznacz opcję Duplicate the Active Controller Type i kliknij OK. Do listy warstw zostanie dodana nowa pozycja o nazwie AnimLayer01. 6. Ponownie kliknij przycisk Auto Key, upewnij się, że suwak czasu jest w klatce 100., a następnie przesuń samolot nieco w górę nad pas startowy. Wyłącz przycisk Auto Key. 7. Z listy warstw na pasku Animation Layers wybierz warstwę Base Layer i ustaw jej wagę na 100. Teraz przeciągnij suwak czasu i zaobserwuj, jak samolot wznosi się stopniowo ku górze. 8. Kliknij jeszcze raz przycisk Auto Key, przeciągnij suwak czasu do klatki zerowej i ustaw wagę warstwy AnimLayer01 na 0. Przeciągnij suwak czasu do klatki 30. i ustaw wagę (Weight) na 60. W klatce 50. ustaw wagę ponownie na 0, a na koniec przejdź do klatki 80. i ustaw wagę na poziomie 80. Wyłącz tryb Auto Key. Na rysunku 35.4 pokazano jedną klatkę animacji samolotu, który podczas startu odbija się od ziemi.

952

Część VIII  Zaawansowane techniki animowania

Rysunek 35.4. Dzięki zastosowaniu warstw animacji wysokością samolotu można sterować za pomocą jednego parametru

Zapisywanie plików animacji Zanim będziesz mógł przeprowadzić montaż animacji w mikserze, musisz je zapisać. Wprawdzie mikser ruchu pozwala w prosty sposób wczytać dowolną animację z aktualnie otwartego pliku, ale zapisanie sekwencji na lokalny dysk twardy pozwala z nich korzystać podczas tworzenia kolejnych scen. Mikser ruchu otwieramy za pomocą polecenia Motion Mixer z menu Graph Editors. Więcej informacji na jego temat znajdziesz w dodatku L na końcu książki.

Zapisywanie zwykłych animacji Animacje obiektów można zapisywać, wykorzystując format XML Animation File (XAF). Aby zapisać animację wybranego obiektu, otwórz okno dialogowe Save XML Animation File, widoczne na rysunku 35.5. Zrobisz to przy użyciu polecenia Animation/Save Animation. Dla zwyczajnych animacji możesz wybrać załączenie do pliku ścieżek, ograniczników, ścieżek z kluczami i wybranego zakresu. Pola User Data (dane użytkownika) pozwalają na wprowadzenie dodatkowych informacji na temat animacji lub danych wykorzystywanych przez moduły dodatkowe.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

953

Rysunek 35.5. Okno dialogowe Save XML Animation File pozwala zapisać animację wybranego obiektu

Wczytywanie plików animacji Okno dialogowe Load XML Animation File, pokazane na rysunku 35.6, otwieramy za pomocą polecenia Animation/Load Animation. Przypomina standardowe okno dialogowe wyboru plików, jednak posiada kilka dodatkowych opcji. Podczas animowania postaci w rolecie Character Assembly dostępny jest przycisk Save Animation. Użycie go zapisuje animację postaci z wykorzystaniem formatu plików ANM, które nie mogą być otwierane poleceniem Animation/Load Animation.

Opcje Relative (względnie) i Absolute (bezwzględnie) określają, czy załadowana animacja rozpocznie się od aktualnych wartości parametrów zaznaczonych obiektów, czy też przypisze tym parametrom wartości takie, z jakimi ją zapisano. Opcje Replace (zastąp) i Insert (wstaw) pozwalają nowej animacji zastąpić istniejące klucze lub przesunąć je w celu wstawienia nowych. Możemy nawet wybrać klatkę, do której nowe klucze mają zostać załadowane. Przycisk Load Motion (wczytaj ruch) pozwala załadować istniejący plik mapowania o nazwie zgodnej z nazwą animacji (o ile taki istnieje), lub też utworzyć nowy. Polecenia Animation/Load Animation i Animation/Save Animation są dostępne tylko wtedy, kiedy jakiś obiekt jest zaznaczony.

Pliki mapowania znajdują się na rozwijanej liście, aby można było łatwo je wybrać. Możemy też skorzystać z przycisku Get Mapping, aby wybrać do załadowania inny plik

954

Część VIII  Zaawansowane techniki animowania

Rysunek 35.6. Okno dialogowe Load XML Animation File pozwala wczytać pliki animacji z jednej sceny i zastosować je w innej

mapowania. Pliki mapowania zapisywane są z rozszerzeniem .xmm. Przycisk Edit Mapping w oknie dialogowym Load XML Animation File otwiera okno dialogowe Map Animation, gdzie łatwo zdefiniować mapowanie obiektów między dwiema scenami.

Mapowanie animowanych obiektów Pliki mapowania określają zależność między obiektami w pliku animacji a obiektami bieżącej sceny Maksa. Zależności te pozwalają na przeniesienie kluczy animacji z jednego obiektu na inny.

Korzystanie z okna Map Animation Okno dialogowe Map Animation, pokazane na rysunku 35.7, ma kilka rolet. Roleta Motion Mapping Parameters zawiera opcje pozwalające Maksowi na wybór najlepszego mapowania obiektów. Jeśli dwie sceny są podobne, opcja ta powinna doskonale spełnić swoje zadanie. Przyciski Exact Name (dokładna nazwa), Closest Name (najbardziej zbliżona nazwa) i Hierarchy (hierarchia) pozwalają programowi na próbę dokonania mapowania. Wyjątkowo dobrze działa to z obiektami Biped, mającymi domyślny system nazewnictwa obiektów. Możemy także nakazać Maksowi, aby przy próbie dopasowania do siebie obiektów brał pod uwagę różne kontrolery. Część Filters pomaga wyizolować ścieżki, których nie chcemy widzieć. Przycisk Lock przypisuje wybrane filtry dla obu list Current (bieżąca) oraz Incoming (wprowadzana). Roleta Map Track To Track zawiera trzy listy. W liście po lewej znajdują się wszystkie ścieżki obiektów obecnej sceny, środkowa lista zawiera wszystkie mapowane ścieżki,

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

955

Rysunek 35.7. Okno dialogowe Map Animation pozwala mapować obiekty, aby mogły przyjąć animację

a lista po prawej — wszystkie ścieżki animacji wprowadzanej. Wybierając ścieżki i klikając przycisk ze strzałką skierowaną w lewo, dodajemy ścieżki do listy Mapped. Klikając drugi przycisk ze strzałką, usuwamy je. Na dole okna dialogowego Map Animation znaleźć można przyciski służące do zapisywania pliku mapowania.

Przenoszenie animacji Roleta Retargeting (przenoszenie), pokazana na rysunku 35.8, pozwala ustalić, jak zmienia się skala pomiędzy konkretnymi mapowanymi obiektami. Wartości skali mogą zostać wprowadzone jako bezwzględne (Absolute) lub trzeba je pobrać z określonego obiektu (Derived Scale) dla każdej z osi. Po dokonaniu prawidłowych ustawień przycisk Set przypisuje parametry skalowania do wybranego mapowania.

Buforowanie kluczy animacji za pomocą modyfikatora Point Cache Gdy dla danego obiektu tworzysz klucze kontrolujące przebieg animacji zdefiniowanej przy użyciu modyfikatorów, te ostatnie pozostają przypisane do obiektu i w każdej chwili można do nich wrócić, by w razie potrzeby dokonać odpowiednich zmian. Jednakże gdy zachodzi konieczność animowania większej liczby obiektów według tych samych kluczy, np. tłumu postaci, wówczas taka metoda przypisywania każdemu obiektowi odrębnego zestawu modyfikatorów prowadzi do zbędnego przeciążania systemu obliczeniowego.

956

Część VIII  Zaawansowane techniki animowania

Rysunek 35.8. Korzystając z rolety Retargeting, możemy ustalić, jak zmienia się skala pomiędzy dwoma mapowanymi obiektami

Prostym rozwiązaniem jest buforowanie wszystkich kluczy jednego obiektu w specjalnym pliku, skąd mogą je pobierać również inne obiekty. Dzięki temu obliczenia nie muszą być wykonywane dla każdego obiektu oddzielnie, a ponadto raz zdefiniowane klucze mogą być wykorzystywane również w innych animacjach. To wszystko jest możliwe za sprawą modyfikatora Point Cache. Modyfikatora tego można użyć również wtedy, gdy — z uwagi na długość czasu, jakiego Max potrzebuje na przeliczenie pozycji dużej liczby wierzchołków — animacja w oknie widokowym przebiega zbyt wolno. Odczyt tych pozycji z odrębnego pliku znacznie przyspiesza wygenerowanie animacji. Plik ten można też wykorzystać do sterowania ruchem kopii obiektu, i to niekoniecznie z tą samą prędkością. Modyfikator Point Cache zapisuje ruch każdego wierzchołka w specjalnym pliku. Obecnie plik taki otrzymuje rozszerzenie .xml, ale oczywiście nadal można korzystać ze starszego formatu z rozszerzeniem .pc2. Aby utworzyć plik buforowy, kliknij przycisk New i wpisz nazwę nowego pliku. Następnie ustal zakres animacji, jaki ma być rejestrowany, i kliknij przycisk Record. Po zarejestrowaniu wyświetlona zostanie całkowita liczba punktów oraz tempo i zakres animacji bieżącego bufora. Dane zapisane w pliku buforowym mogą być stosowane tylko w odniesieniu do obiektów o takiej samej liczbie wierzchołków, jaką miał obiekt użyty do zarejestrowania tych danych.

Jeśli klikniesz przycisk Disable Modifiers Below, wszystkie modyfikatory zajmujące w stosie modyfikatorów miejsca poniżej Point Cache zostaną wyłączone. Za pomocą opcji Relative Offset (przesunięcie względne) i parametru Strength (siła) można zintensyfikować zarejestrowaną animację, a nawet ją odwrócić. W sekcji Playback Type można sterować zakresem klatek, w których buforowana animacja będzie wykorzystywana.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

957

Ćwiczenie: Drzewa podczas wichury Jako przykład zastosowania modyfikatora Point Cache utworzymy animację drzewa gnącego się pod naporem wiatru, a następnie wielokrotnie ją powielimy. Aby utworzyć las drzew pochylanych przez wiatr, wykonaj następujące czynności. 1. Otwórz plik Bending tree.max z folderu Chap 35znajdującego się na płycie dołączonej do książki. 2. Plik ten zawiera animację drzewa wyginanego w przód i w tył przez modyfikator Bend. 3. Zaznacz drzewo i z głównego menu wybierz polecenie Modifiers/Cache Tools/ Point Cache. Do obiektu drzewa zostanie przypisany modyfikator Point Cache. 4. W rolecie Parameters kliknij przycisk New, wpisz nazwę pliku Bending tree.xml (chwiejące się drzewo) i kliknij przycisk Save (Zapisz), aby utworzyć plik animacji. Następnie kliknij przycisk Record, aby zapisać do pliku wszystkie dane dotyczące animacji. 5. Ze stosu modyfikatorów obiektu drzewa usuń modyfikator Bend. Następnie, posługując się narzędziem Array (Tools/Array), utwórz kilka rzędów drzew. Upewnij się, że będą to kopie, a nie klony. 6. Zaznacz kilka losowo wybranych drzew, wybierz z listy Playback Type w dolnej części rolety Parameters opcję Custom Start i zmień klatkę startową (Start Frame) na –2. W ten sposób wprowadzisz nieco przypadkowości do ruchów całego lasu. 7. Kliknij przycisk Play Animation i obejrzyj swoje dzieło. Na rysunku 35.9 pokazano jedną z klatek animacji lasu targanego podmuchami wiatru.

Stosowanie modyfikatorów animacji Animacja to coś więcej niż tylko przemieszczanie obiektu z jednego miejsca w drugie. Większość obiektów poza głównymi ruchami wykonuje szereg ruchów drugorzędnych. Przykładowo, aby animacja postaci ludzkiej wyglądała realistycznie, oprócz ruchów rąk i nóg musi zawierać także kołyszące ruchy bioder i barków. Do tworzenia kluczy dla tych dodatkowych ruchów można wykorzystać liczne modyfikatory animacji. Wszystkie modyfikatory animacji opisywane w tym rozdziale znajdziesz w podmenu Modifiers/Animation. Oprócz modyfikatorów typowo animacyjnych w menu tym znajduje się kilka modyfikatorów związanych z nakładaniem skóry na szkielet postaci i poruszaniem całości. Modyfikatory te są opisywane w rozdziale 40., „Nakładanie skóry”.

958

Część VIII  Zaawansowane techniki animowania

Rysunek 35.9. Za pomocą modyfikatora Point Cache możesz animować cały las drzew

Modyfikator Morpher Modyfikator Morpher pozwala na uzyskanie efektu płynnej przemiany jednego obiektu w drugi. Możesz go zastosować jedynie wobec obiektów o takiej samej liczbie wierzchołków. Modyfikator ten jest spokrewniony z obiektem złożonym Morph, który został omówiony w rozdziale 27., „Obiekty złożone”.

Modyfikator Morpher jest bardzo użyteczny przy tworzeniu mimiki postaci i synchronizowaniu ruchu ust z wypowiadanymi słowami. Możesz go także zastosować do animowania materiałów. Max udostępnia w tym celu 100 osobnych kanałów danych, które możesz mieszać w trakcie morfingu. Modyfikatora Morpher możesz używać razem z materiałem Morph. Przykładowo za pomocą materiału Morph można wywołać rumieniec na twarzy zakłopotanej postaci. Jeśli chcesz tworzyć realistyczną mimikę postaci, najlepszymi pomocami są Twoja własna twarz i lustro. Współpracownicy mogą na Ciebie dziwnie patrzeć, ale miny Twoich modeli mogą na tym tylko i wyłącznie zyskać.

Zanim zastosujesz ten modyfikator, musisz utworzyć wszystkie docelowe stadia obiektu, którego przemianę chcesz animować. Ponieważ muszą one zawierać taką samą liczbę wierzchołków jak obiekt wyjściowy, dobrym pomysłem jest zrobienie kopii tego obiektu dla każdej fazy morfingu. W trakcie tworzenia kolejnych wersji obiektu pamiętaj, aby nie usuwać i nie dodawać żadnych wierzchołków.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

959

Ponieważ między wierzchołkami obiektów wyjściowego i docelowego istnieje ścisła zależność, nie powinno się obiektów docelowych poddawać lustrzanym odbiciom. Przykładowo, jeśli chcesz utworzyć animację podnoszenia brwi, na przemian lewej i prawej, musisz utworzyć dwa odrębnie wymodelowane obiekty docelowe.

Po wykonaniu wszystkich docelowych obiektów wybierz kanał w rolecie Channel Parameters, widocznej na rysunku 35.10, i użyj przycisku wybierania obiektu ze sceny (Pick Object from Scene), aby wskazać obiekt docelowy dla danego kanału. Inną opcją wyboru jest przechwytywanie aktualnego stanu obiektu (Capture Current State). Po tym, jak docelowy obiekt zostanie dodany do kanału, jego nazwa pojawi się w rolecie Channel List. Rysunek 35.10. Rolety modyfikatora Morpher

W trakcie animowania można przy użyciu procentowej wartości znajdującej się na prawo od nazwy kanału w rolecie Channel List określić współczynnik (wagę) wykorzystania każdego z docelowych obiektów w danej klatce. Cienki kolorowy pasek po lewej stronie nazwy kanału opisuje jego stan. Dokładny opis znaczenia kolorów znajdziesz w rolecie Channel Color Legend2. Roleta Channel Parameters zawiera także sekcję Progressive Morph, która pozwala na określenie pośredniego etapu metamorfozy przy zachowaniu obiektu docelowego jako etapu ostatniego. Za pomocą faz pośrednich możesz dokładnie kontrolować przebieg przemiany.

Ćwiczenie: Zmienianie wyrazów twarzy Modyfikator Morpher przydaje się bardzo przy animowaniu mimiki, towarzyszącej np. mówieniu. Ustawiając wymawianie odpowiednich dźwięków w różnych kanałach, możesz bardzo szybko dokonywać przejścia pomiędzy nimi. W tym przykładzie użyjemy modyfikatora Morpher do zmiany ogólnego wyrazu twarzy. 2

Kolor szary oznacza kanał pusty i w żaden sposób nie modyfikowany; kolor pomarańczowy — kanał pusty, ale zmodyfikowany, np. przez nadanie mu nazwy lub zmianę parametrów; kolor zielony — kanał zawiera dane morfingu i obiekt docelowy jest dostępny; kolor niebieski — kanał zawiera dane morfingu, ale obiekt docelowy został usunięty ze sceny; kolor ciemnoszary — kanał wyłączony — przyp. tłum.

960

Część VIII  Zaawansowane techniki animowania Przy tworzeniu wyrazów twarzy upewnij się, że włączyłeś opcję Soft Selection, która zdecydowanie ułatwia modyfikowanie siatki twarzy.

Aby zmienić wyraz twarzy za pomocą modyfikatora Morpher, wykonaj następujące czynności. 1. Otwórz plik Morphing facial expressions.max z folderu Chap 35 znajdującego się na płycie dołączonej do książki. Plik ten zawiera model głowy utworzony przez Viewpoint Datalabs. Został on dwukrotnie skopiowany, a docelowe przekształcenia powstały przez zmianę podobiektów w okolicach ust i oczu. 2. Wybierz twarz po lewej i zastosuj polecenie z menu Modifiers/Animation/Morpher, aby zastosować modyfikator Morpher. 3. W rolecie Channel List wybierz kanał 1, kliknij przycisk Pick Object from Scene i wskaż środkową twarz. Następnie wybierz drugi pusty kanał z rolety Channel List i kliknij ponownie przycisk Pick Object from Scene w rolecie Channel Parameters, a potem wybierz twarz po prawej. Jeśli spojrzysz na roletę Channel List, zobaczysz cheesy smile (uśmiech) w kanale pierwszym i frown (troska) w kanale drugim. 4. Kliknij przycisk Auto Key (lub wciśnij klawisz N), przeciągnij suwak czasu do klatki numer 50 i zwiększ kanał cheesy smile w rolecie Channel List do 50. Przeciągnij suwak czasu do klatki numer 100 i zwiększ kanał frown do 100, a cheesy smile do 0. Następnie przesuń suwak czasu do klatki 50. i ustaw kanał frown na 0. 5. Kliknij przycisk Play Animation, aby obejrzeć gotową animację. Na rysunku 35.11 przedstawiono trzy różne wyrazy twarzy. Modyfikator Morpher został zastosowany do twarzy znajdującej się po lewej. Nie usuwaj obiektów docelowych morfingu; niech będą zawsze pod ręką. Możesz ukryć je w scenie lub zaznaczyć i zapisać do osobnego pliku przy użyciu polecenia File/Save Selected.

Używanie modyfikatora Flex Modyfikator Flex pozwala dodać do obiektu cechy dynamiki miękkiej materii. Miękka materia charakteryzuje się tym, iż poddaje się sile, która na nią działa. Przykładami miękkiej materii są ubrania, włosy i balony. Przeciwieństwem dynamiki miękkiej materii jest dynamika sztywnej materii. Wyobraź sobie pomnik w parku. Kiedy wieje wiatr, on ani drgnie. Pomnik jest przykładem materii sztywnej. Z drugiej strony, flaga powiewająca nad biblioteką bardzo wyraźnie reaguje na podmuchy wiatru. Jest więc przykładem miękkiej materii. Dynamikę miękkiej materii można również symulować przy użyciu systemu MassFX, który został omówiony w rozdziale 43., „Wykorzystanie systemu MassFX do symulacji ruchów zgodnych z zasadami dynamiki”.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

961

Rysunek 35.11. Przy użyciu modyfikatora Morpher możesz przekształcać jeden wyraz twarzy w drugi

Miękką materię można również zidentyfikować jako rzeczy, które można wyginać. Takie przedmioty jak ubrania wyginają się pod wpływem bardzo małej siły, a wygięcie np. płyty CD wymaga użycia znacznie większej siły. Ustawienia modyfikatora Flex pozwalają na odzwierciedlenie właściwości wielu rodzajów miękkiej materii. Na rysunku 35.12 przedstawiono rolety dostępne dla modyfikatora Flex.

Podobiekty modyfikatora Flex Modyfikator Flex ma trzy podobiekty, do których możesz uzyskać dostęp w stosie modyfikatorów. Są to: środek (Center), wierzchołki krawędzi (Edge Vertices) oraz wagi i sprężystości (Weights and Springs). Podobiekt Center jest prostym kwadratowym gizmem znajdującym się pośrodku efektu wyginania. Części obiektu położone dalej od środka przesuwają się na większą odległość. Podobiekt Edge Vertices może służyć do kontrolowania kierunku i zaniku efektu wygięcia. Aby sterować podobiektami Weights and Springs, trzeba skorzystać z rolety Weights and Springs.

Ustawianie siły wygięcia Roleta Parameters zawiera wartość Flex, która służy do kontrolowania stopnia wygięcia obiektu, wartość Strength, która steruje sztywnością obiektu, wartość Sway, która pozwala na ustalenie czasu wahań odkształconego obiektu, zanim osiągnie on stan równowagi. Antena samochodowa to obiekt, który ma dość wysokie wartości Flex i Sway, a dość niską wartość Strength.

962

Część VIII  Zaawansowane techniki animowania

Rysunek 35.12. Rolety modyfikatora Flex pozwalają na kontrolowanie ustawień wyginania

Sprężyny powrotne (Chase Springs) powodują powrót obiektu do pierwotnej pozycji po zaprzestaniu działania siły. Gałązka na drzewie jest przykładem obiektu z takimi sprężynami. Opcja Use Chase Springs pozwala włączać lub wyłączać ich działanie. Dla kawałka tkaniny powinno się je wyłączyć. Wybranie podobiektu Weights and Springs pozwala zastosować wagi wobec wybranych sprężyn. Przy użyciu opcji Use Weights można te wagi wyłączyć. Jeśli je wyłączysz, cały obiekt zachowuje się w ten sam sposób. Modyfikator Flex oferuje trzy sposoby obliczania ruchu obiektów, dostępne w rozwijanej liście. Metoda Euler jest najprostsza, ale wymaga przeciętnie pięciu próbek (Samples) do osiągnięcia poprawnych rezultatów. Metody Midpoint i Runge-Kutta4 są dokładniejsze i wymagają mniej próbek za cenę dłuższego czasu obliczeń. Ustawienie wartości Samples na wyższym poziomie daje relatywnie lepsze rezultaty.

Tworzenie prostej miękkiej materii W rolecie Simple Soft Bodies możesz użyć przycisku Create Simple Soft Body do automatycznego ustawienia sprężyn dla wybranego obiektu w taki sposób, by zachowywał się jak miękka materia. Dla każdego obiektu możesz także określić wartości Stretch (rozciągnięcie) i Stiffness (sztywność). Przy tkaninach powinieneś ustawić wysoką wartość Stretch i niską Stiffness, ale piłka do racquetballa (odmiany squasha) miałaby obie wartości na wysokim poziomie. Przy użyciu rolety Advanced Springs możesz ręcznie ustawić opcje sprężyn dla obiektu.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

963

Malowanie wag Kiedy wybierzesz tryb podobiektu Weights and Springs, wierzchołki sprężyn są wyświetlone na obiekcie. Mają one kolor, odpowiadający ich wadze. Domyślnie wierzchołki położone najdalej od punktu obrotu obiektu mają najniższe wagi. Wierzchołki z największą wagą (najbliższą 1) mają czerwony kolor, a te z najniższą (najbliższą –1) są niebieskie. Wartości pośrednie oznaczone są na pomarańczowo i żółto. Wierzchołki o niskiej wadze przemieszczają się o największą odległość, zaś te o wysokiej — o najmniejszą. Wybranie podobiektu Weights and Springs aktywuje także przycisk Paint w rolecie Weights and Springs. Kliknięcie tego przycisku włącza tryb Paint, w którym możesz zmienić wagę wierzchołków sprężyn, przeciągając gizmo malowania nad obiektem w oknach widokowych. W trakcie malowania wierzchołki sprężyn zmieniają kolor odpowiednio do ustawionej wagi. Wartość Strength określa siłę zastosowaną wobec wierzchołków. Może ona być ujemna. Ustawienia Radius i Feather zmieniają rozmiar i miękkość pędzla. Na rysunku 35.13 przedstawiono model dinozaura z zastosowanym modyfikatorem Flex. Dinozaur przeszedł również malowanie wag i jego ogon, łapy oraz szyja poruszają się pod wpływem modyfikatora Flex. Niebieskie wagi mają te wierzchołki, które nie ruszają się w znaczący sposób.

Rysunek 35.13. Użyj przycisku Paint do zmiany wag wierzchołków sprężyn

Zmiany wag dokonywane podczas malowania są względne wobec wartości już istniejących. Jeśli wybierzesz opcję Absolute Weight, stosowana będzie wartość Vertex Weight.

964

Część VIII  Zaawansowane techniki animowania

Dodawanie sił i deflektorów Aby zobaczyć efekt zastosowania modyfikatora Flex, musisz dodać do sceny odrobinę ruchu. Obiekt wygina się jedynie podczas ruchu. Jednym z najprostszych sposobów na dodanie ruchu do sceny jest użycie pól sił (Space Warps). Roleta Forces and Deflectors zawiera dwie listy: jedną dla sił (Forces) i drugą dla deflektorów (Deflectors). Pod każdą z nich znajdują się przyciski Add i Remove. Przy ich użyciu możesz dodawać i usuwać pola sił z listy. Lista Forces może zawierać dowolne z pól sił z podkategorii Forces (z wyjątkiem pola sił Path Follow). Na liście Deflectors można umieścić dowolne pola sił z podkategorii Deflectors. Przy dodawaniu pól sił do listy Forces and Deflectors dla modyfikatora Flex nie musisz ich przypisywać do obiektu.

Ręczne tworzenie sprężyn Ostatnie dwie rolety dostępne dla modyfikatora Flex to Advanced Parameters i Advanced Springs. Pierwsza z nich zawiera ustawienia kontrolujące początkową (Start) i końcową (End) klatkę animacji, które ograniczają efekt działania modyfikatora Flex. Opcja Affect All Points (działaj na wszystkie punkty) powoduje ignorowanie zaznaczenia jakichkolwiek podobiektów i tym samym wymusza wpływ modyfikatora na cały obiekt. Przycisk Set Reference aktualizuje wszystkie okna widokowe, a przycisk Reset przywraca wagom wszystkich wierzchołków wartości domyślne. Możesz użyć rolety Advanced Springs, aby ręcznie dodać i skonfigurować sprężyny obiektu. Kliknięcie przycisku Options otwiera okno dialogowe, w którym możesz wybrać rodzaj sprężyny, jaką chcesz dodać do wybranych wierzchołków, łącznie z typami Edge i Shape. Sprężyny typu Edge stosowane są w wierzchołkach na krawędziach obiektów, a typu Shape — pomiędzy wierzchołkami. Dla tych zaawansowanych rodzajów sprężyn możesz ustawić wartości Stretch Strength (siła rozciągnięcia), Stretch Sway (odchylenie rozciągnięcia), Shape Strength (siła kształtu) i Shape Sway (odchylenie kształtu).

Modyfikator Melt Modyfikator Melt symuluje topnienie obiektu przez rozluźnianie i rozpościeranie krawędzi w miarę upływu czasu. Ustawienia modyfikatora Melt to parametry Amount (intensywność) i Spread (rozmiar), Melt Axis (oś topnienia) oraz opcja Solidity (trwałość), która może przybrać wartość Ice (lód), Glass (szkło), Jelly (galareta) lub Plastic. Na rysunku 35.14 można zobaczyć model bałwana poddany działaniu modyfikatora Melt (to było nieuniknione).

Modyfikatory PatchDeform i SurfDeform Istnieją również modyfikatory animacji, które mają podobne działanie, ale korzystają z określonego rodzaju obiektów sterujących deformacjami modelu. Modyfikator PatchDeform używa łat, a SurfDeform powoduje deformację obiektu w oparciu o powierzchnię NURBS.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

965

Rysunek 35.14. Modyfikator Melt deformuje obiekty, spłaszczając je

W rolecie Parameters każdego z nich znajduje się przycisk Pick Patch (lub Pick Surface), który pozwala na wybranie obiektu używanego w procesie deformacji. Po jego wybraniu możesz wpisać wartości Percent i Stretch dla kierunków U i V razem z wartością obrotu (Rotation). Modyfikator PatchDeform jest również dostępny jako modyfikator działający w globalnym układzie współrzędnych — World Space Modifier (WSM). Modyfikatory typu WSM są podobne do modyfikatorów działających lokalnie — Object Space Modifiers (OSM), z wyjątkiem tego, iż korzystają ze współrzędnych globalnych sceny zamiast współrzędnych lokalnych obiektu. Największą różnicą jest to, że modyfikatory z grupy WSM nie korzystają z gizm. Ponadto OSM przemieszczają powierzchnię deformującą do obiektu, a WSM — obiekt do powierzchni deformującej.

Ćwiczenie: Deformowanie samochodu na szczycie wzgórza Czy widziałeś reklamy, w których samochody odkształcają się zgodnie z krzywizną drogi? Użyjemy modyfikatora PatchDeform do wygięcia samochodu na wzgórzu utworzonym z powierzchni sklejanej. Aby zdeformować samochód zgodnie z wygiętą powierzchnią, wykonaj następujące czynności. 1. Otwórz plik Car bending over a hill.max z folderu Chap 35 znajdującego się na płycie dołączonej do książki. Plik ten zawiera proste wzgórze utworzone z łaty i model samochodu, który powstał w Viewpoint Datalabs.

966

Część VIII  Zaawansowane techniki animowania

2. Zaznacz model samochodu i wybierz polecenie Modifiers/Animation/PatchDeform (WSM). Następnie kliknij przycisk Pick Patch w rolecie Parameters i zaznacz obiekt wzgórza. Spowoduje to przypisanie modyfikatora World Space PatchDeform (WSM) do modelu samochodu i dopasuje pojazd do kształtu wzgórza. 3. W rolecie Parameters ustaw wartość V Percent na 0. Następnie kliknij przycisk Auto Key (lub wciśnij klawisz N), aby włączyć tryb automatycznego kluczowania animacji, i przeciągnij suwak czasu do klatki numer 100. Ustaw wartość V Percent na –50 i kliknij ponownie przycisk Auto Key, aby wyłączyć tryb tworzenia klatek kluczowych. 4. Kliknij przycisk Play (lub wciśnij klawisz /), aby obejrzeć deformację samochodu na wzgórzu. Na rysunku 35.15 przedstawiono efekt końcowy tego ćwiczenia.

Rysunek 35.15. Po zastosowaniu modyfikatora PatchDeform model samochodu dopasowuje się do kształtu drogi

Modyfikator PathDeform Modyfikator PathDeform wykorzystuje do deformacji wybranego obiektu ścieżkę w postaci splajnu. Przycisk Pick Path pozwala na wybranie krzywej, która zostanie zastosowana w procesie deformacji. Możesz wybrać krzywą otwartą lub zamkniętą. Roleta Parameters zawiera również opcje ustawiania wartości Percent, Stretch, Rotation i Twist obiektu. Wartość Percent określa odległość, jaką obiekt przemierza wzdłuż ścieżki.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

967

Jeśli używasz modyfikatora PathDeform, możesz wykorzystać narzędzie Follow/Bank, które pozwala kontrolować sposób, w jaki obiekt podąża ścieżką i jak przechyla się na zakrętach.

Na rysunku 35.16 przedstawiono tekst ułożony wzdłuż splajnu.

Rysunek 35.16. Tekst w tym przykładzie został zdeformowany zgodnie ze ścieżką przy użyciu modyfikatora PathDeform

Modyfikator Linked XForm Modyfikator Linked XForm przenosi wszystkie transformacje jednego obiektu na drugi, ale nie działa w drugą stronę. Obiekt, który jest nadrzędny w tym procesie, określany jest jako Control Object i wybierany przyciskiem Pick Control Object (który jest jedyną dostępną opcją w rolecie Parameters tego modyfikatora). Obiekt nadrzędny steruje transformacjami wybranego obiektu, ale obiekt podrzędny może się przemieszczać niezależnie od nadrzędnego, bez wpływania na jego pozycję.

Modyfikator SplineIK Control Modyfikator SplineIK Control może zostać zastosowany jedynie wobec krzywych. W rolecie Spline IK Control Parameters możesz kliknąć przycisk Create Helpers, który dodaje obiekt atrapę do każdego wierzchołka krzywej. Atrapy te ułatwiają kontrolowanie krzywej bez potrzeby uruchamiania trybu edycji wierzchołków. Możesz także określić połączenia atrap i sposób ich wyświetlania.

968

Część VIII  Zaawansowane techniki animowania

Modyfikator Attribute Holder Modyfikator Attribute Holder wyświetla wszystkie atrybuty zdefiniowane przez użytkownika w ich własnej rolecie. Tworzenie własnych atrybutów i ich wiązanie omówione jest dokładniej w rozdziale 36., „Animowanie przy użyciu kontrolera Expression i wiązania parametrów”.

Przegląd kontrolerów złożonych Ogólne zasady działania kontrolerów już poznałeś. Poznałeś także kilka kontrolerów stosunkowo prostych. Teraz przyjrzymy się przypadkom bardziej złożonym. Max zawiera szeroki asortyment kontrolerów, a można je również dodawać w formie modułów dodatkowych.

Kontrolery transformacji (Transform) Wielościeżkowe kontrolery transformacji można stosować jednocześnie na ścieżkach Position, Rotation i Scale. Dostęp do nich uzyskasz, wybierając ścieżkę Transform w panelu Motion i klikając przycisk Assign Controller. Możesz też użyć polecenia Animation/ Transform Controllers. Każdy z dostępnych kontrolerów został umieszczony w odpowiednim podmenu.

Kontroler Position/Rotation/Scale Kontroler Position/Rotation/Scale jest domyślnym kontrolerem dla wszystkich transformacji. Zawiera on kontroler Bézier dla ścieżek Position i Scale, a także kontroler Euler XYZ dla ścieżki Rotation. Roleta PRS Parameters, widoczna na rysunku 35.17, pozwala na tworzenie i usuwanie kluczy dla przekształceń położenia, obrotu i skali. Przyciski Position, Rotation i Scale kontrolują pola, które pojawiają się w rolecie Key Info znajdującej się poniżej rolety PRS Parameters.

Kontroler Script Kontroler Script jest podobny do kontrolera Expression, o którym będzie mowa w rozdziale następnym, ale współpracuje z językiem MAXScript. Kliknięcie prawym przyciskiem myszy ścieżki z przypisanym kontrolerem Script i wybranie opcji Properties otwiera okno dialogowe Script Controller. Kontrolery skryptowe są dostępne dla wszystkich ścieżek transformacji, takich jak Transform, Position, Rotation i Scale. Odznaczają się wielką elastycznością. Aby uzyskać więcej informacji na temat języka MAXScript, przeczytaj dodatek M, „Automatyzacja pracy za pomocą MAXScriptu”.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

969

Rysunek 35.17. PRS Parameters jest roletą domyślnego kontrolera transformacji

Kontroler XRef Jeśli zdefiniowałeś ruch obiektu w innym pliku i teraz chciałbyś go ponownie wykorzystać, możesz zastosować kontroler XRef. Tego typu kontroler można przypisać tylko ścieżce transformacji. Po przypisaniu go otwiera się okno wyboru plików, a następnie kolejne okno, Merge Object, w którym możesz wskazać obiekt ze zdefiniowanym ruchem. W rolecie Parameters kontrolera XRef znajduje się przycisk otwierający okno dialogowe XRef Objects z zaznaczonym rekordem opisującym odnośnik. Roleta podaje również nazwę pliku i obiektu odnośnika oraz jego status. Odnośniki zewnętrzne (XRefs) zostały opisane w rozdziale 25. „Budowanie złożonych scen przy użyciu, kontenerów, odnośników i widoku schematycznego”.

Kontrolery ścieżki Position Kontrolery ścieżki Position obejmują również kilka kontrolerów domyślnych wspólnych dla wszystkich ścieżek. Można je przypisać do ścieżki Position. Zazwyczaj korzystają z trzech wartości reprezentujących osi X, Y, i Z. Można je przypisać z menu Animation/ Position Controllers. Wiele z nich jest dostępnych również w podmenu Rotation Controllers i Scale Controllers.

Kontroler Audio Kontroler Audio może kontrolować transformację obiektu, jego kolor lub wartości parametrów w ramach reakcji na amplitudę pliku dźwiękowego. Okno dialogowe Audio Controller, widoczne na rysunku 35.18, zawiera przyciski Choose Sound i Remove Sound

970

Część VIII  Zaawansowane techniki animowania

Rysunek 35.18. Okno dialogowe Audio Controller pozwala na zmianę wartości wybranego parametru, zależnie od amplitudy dźwięku

służące do wczytywania i usuwania plików dźwiękowych. Aby otworzyć to okno, kliknij prawym przyciskiem myszy ścieżkę kontrolera i z czteroczęściowego menu wybierz polecenie Properties lub po prostu kliknij tę ścieżkę dwukrotnie. W rozwijanej liście Real Time Control można określić typ urządzenia kontrolującego system. Aby kontrolować dźwięk, ustawiasz wartości Sample Threshold (próg próbkowania) i Oversampling (nadpróbkowanie). Możesz także ustawić Base Point (punkt podstawowy) i Target Point (punkt docelowy) dla każdej z osi. Opcje Channel pozwalają na określenie używanych kanałów: Left (lewego), Right (prawego) lub Mix (obu).

Kontroler Motion Clip Slave Ten kontroler pozwala sterować transformacjami obiektu przez klip filmowy zdefiniowany w mikserze ruchu.

Kontroler Motion Capture Kontroler Motion Capture pozwala na kontrolowanie transformacji obiektu za pomocą zewnętrznego urządzenia, takiego jak mysz, klawiatura, joystick lub urządzenie MIDI. Współpracuje z narzędziem Motion Capture w celu pozyskania danych o przechwytywanym ruchu. Po przypisaniu kontrolera Motion Capture do ścieżki kliknięcie jej prawym przyciskiem myszy i wybranie opcji Properties z podręcznego menu otwiera okno Motion Capture, pokazane na rysunku 35.19. To okno dialogowe pozwala na wybranie urządzeń, które będą sterowały zmianami wartości ścieżki. Dostępne opcje to Keyboard, Mouse, Joystick i MIDI. Przy ustawionej opcji Keyboard pojawia się roleta Keyboard Input Device, widoczna na rysunku 35.20. Przycisk Assign pozwala na wybranie klawiszy, których wciskanie ma być śledzone. Pozostałe ustawienia sterują wykresem Envelope Graph, który określa prędkość śledzenia naciskanych klawiszy.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

971

Rysunek 35.19. Kontroler Motion Capture pozwala na kontrolowanie parametrów ścieżki za pomocą urządzeń zewnętrznych

Rysunek 35.20. Roleta Keyboard Input Device pozwala określić, które klawisze mają być przechwytywane

Okno dialogowe Motion Capture określa jedynie, które urządzenie kontroluje dane wartości. Samo przechwytywanie danych ma miejsce przy użyciu narzędzia Motion Capture. Wybranie go w panelu Utility wyświetla roletę Motion Capture. Zawiera ona przyciski Start, Stop i Test, sterujące procesem przechwytywania danych. Zanim będziesz mógł ich użyć, musisz określić ścieżki do przechwytywania z listy Tracks. Sekcja Record Range (zakres przechwytywania) pozwala ustalić wartości Preroll (przed), In (początek) i Out (koniec), które są numerami klatek. Możesz także ustawić liczbę próbek na klatkę (Samples Per Frame). Opcja Reduce Keys usuwa zbędne klucze.

Ćwiczenie: Rysowanie ołówkiem za pomocą kontrolera Motion Capture Niektóre ruchy, takie jak rysowanie ołówkiem, są naturalne dla naszych dłoni, ale stają się strasznie skomplikowane, kiedy próbujemy wykonać ich animację przy użyciu klatek kluczowych. To ćwiczenie wykorzystuje kontroler i narzędzie Motion Capture do wykonania animacji naturalnego ruchu rysowania ołówkiem. Aby opracować animację rysowania ołówkiem na papierze, wykonaj następujące czynności: 1. Otwórz plik Drawing with a pencil.max z katalogu Chap 35 znajdującego się na płycie dołączonej do książki.

972

Część VIII  Zaawansowane techniki animowania

Plik ten zawiera model ołówka umieszczony nad kawałkiem papieru. 2. Zaznacz ołówek, otwórz panel Motion i zaznacz ścieżkę Position dla ołówka. Następnie kliknij przycisk Assign Controller i kliknij dwukrotnie pozycję Position Motion Capture. Otworzy się okno dialogowe Motion Capture. 3. Kliknij najpierw przycisk X Position, a potem kliknij dwukrotnie pozycję Mouse Input Device. Następnie kliknij przycisk Y Position i ponownie dwukrotnie pozycję Mouse Input Device. W rolecie Mouse Input Device wybierz opcję Vertical. Dzięki temu przypiszesz X Position do poziomego (Horizontal), a Y Position do pionowego (Vertical) ruchu myszy. Zamknij okno dialogowe Motion Capture. 4. Otwórz panel Utilities i kliknij przycisk Motion Capture. W rolecie Motion Capture wybierz ścieżkę Position i przygotuj mysz do ruchu. Następnie kliknij przycisk Start w sekcji Record Controls i przesuń mysz tak, jakbyś przy jej użyciu rysował. Ołówek przemieszcza się w oknie widokowym zgodnie z ruchem myszy. 5. Narzędzie Motion Capture tworzy automatycznie klatki kluczowe. Przechwytywanie kończy się po dojściu do klatki numer 100. 6. Kliknij przycisk Play Animation (lub wciśnij klawisz /), aby obejrzeć końcowy rezultat. Na rysunku 35.21 przedstawiono scenę po obliczeniu wszystkich klatek przez kontroler Motion Capture.

Rysunek 35.21. Kontroler i narzędzie Motion Capture pozwalają animować przy użyciu myszy, klawiatury, joysticka lub urządzenia MIDI

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

973

Kontroler Quaternion (TCB) Kontroler Quaternion (TCB) tworzy krzywe ścieżki animacji podobne do tych, jakie kreuje kontroler Bézier, ale wykorzystuje przy tym wartości Tension (naprężenie), Continuity (ciągłość) i Bias (przechylenie) do zdefiniowania krzywizn. Zaletą tego kontrolera jest to, że umożliwia on obracanie obiektów bez ryzyka wystąpienia efektu zwanego blokadą przegubu (gimbal lock), do czego może dojść podczas stosowania kontrolera Euler XYZ. Taka blokada może wystąpić, gdy dwie osie obrotu nałożą się na siebie, przez co obiekt traci jeden stopień swobody. Parametry tego kontrolera są wyświetlane w rolecie Key Info. Tak jak w przypadku kontrolera Bézier, roleta Quarternion (TCB) zawiera strzałki i pola z wartościami Key, Time i Value. Znajdziesz tutaj również wykres wartości TCB; czerwony znak plus oznacza pozycję aktualnej klatki kluczowej, podczas gdy reszta wykresu jest podzielona na równe odcinki czasu przedstawione jako czarne plusy. Zmienianie wartości Tension, Continuity i Bias w polach poniżej wykresu zmienia jego kształt. Kliknięcie ścieżki prawym przyciskiem myszy i wybranie opcji Properties z podręcznego menu otwiera okno dialogowe z wykresem TCB, widoczne na rysunku 35.22. Rysunek 35.22. To okno dialogowe wyświetla krzywą, którą możesz zmieniać poprzez wartości Tension, Continuity i Bias

Wartość Tension kontroluje promień krzywizny. Wysokie wartości dają linie proste prowadzące do i od klatki kluczowej, a niskie wartości — zaokrągloną krzywą. Wartość Continuity kontroluje ciągłość (lub też gładkość) krzywizny w okolicy klatki kluczowej. Domyślna wartość 25 daje najbardziej gładkie krzywizny, a niższe i wyższe wartości dają ostry wierzchołek skierowany do góry lub do dołu. Wartość Bias decyduje o kącie, pod jakim krzywa wchodzi do klatki kluczowej i wychodzi z niej. Wysokie wartości dają wybrzuszenie po prawej stronie, a niskie — po lewej. Wartości Ease To i Ease From pozwalają określić prędkość zbliżania się do klatki kluczowej i opuszczania jej. Włączenie ścieżki trajektorii przez kliknięcie przycisku Trajectory w panelu Motion pozwala na podgląd zmian zachodzących w jej przebiegu w trakcie modyfikowania wartości w rolecie Key Info.

Na rysunku 35.23 przedstawiono trzy krzywe TCB przypisane do ścieżki Position. Niektóre kontrolery można przypisywać za pomocą poleceń z menu Animation, a inne — przy użyciu oka dialogowego Assign Controller. Sprawdź oba miejsca, jeśli nie możesz znaleźć jakiegoś kontrolera.

974

Część VIII  Zaawansowane techniki animowania

Rysunek 35.23. Kontroler TCB oferuje inny sposób korzystania z krzywych

Kontroler Reaction Kontroler Reaction zmienia wartości w ramach reakcji na inny kontroler. Różni się od kontrolera Attachment pod względem ruchów — w tym przypadku nie muszą one odbywać się w tym samym kierunku. Przykładowo możesz połączyć ruch jednego z obiektów w górę z ruchem innego w bok. Po przypisaniu kontrolera Reaction do ścieżki możesz zdefiniować reakcje przy użyciu okna dialogowego Reaction Manager, widocznego na rysunku 35.24. Okno to otwiera się po kliknięciu prawym przyciskiem myszy ścieżki z przypisanym kontrolerem i wybraniu opcji Properties. Można go także otworzyć, wybierając polecenie Animation/Reaction Manager. Rysunek 35.24. Okno dialogowe Reaction Manager pozwala ustawić parametry reakcji

Okno dialogowe Reaction Manager składa się z dwóch list i wykresu krzywej funkcyjnej. Górna lista zawiera wszystkie wartości obiektów, które biorą udział w reakcjach. Są one wyświetlone hierarchicznie, z obiektami nadrzędnymi (master) nad obiektami podrzędnymi (slave). Pojedynczy obiekt nadrzędny może kontrolować kilka obiektów podrzędnych.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

975

Przyciski nad listą Reactions pozwalają na dodawanie do niej nowych nadrzędnych, podrzędnych, a także zaznaczonych obiektów. Kursor zmienia się po kliknięciu tych przycisków, pozwalając na kliknięcie obiektu w oknie widokowym i wybranie parametru z menu podręcznego. Dla obiektów podrzędnych wybranych w liście Reactions możesz ustawić stany przy użyciu przycisków znajdujących się nad listą States. Aby ustawić stan, kliknij przycisk Create Mode, przeciągnij suwak czasu na odpowiednią klatkę i zmień wartość parametru obiektu podrzędnego. Następnie kliknij przycisk Add State, aby utworzyć docelowy stan obiektu. Dla jednego obiektu podrzędnego możesz określić kilka różnych stanów. Wartości stanów mogą być zmieniane przy użyciu przycisku Edit Mode lub edycji krzywych wyświetlonych na dole okna dialogowego Reaction Manager.

Kontrolery ścieżek Rotation i Scale Kontrolery ścieżek Rotation i Scale obejmują również kilka kontrolerów wspólnych dla wszystkich ścieżek. Można je przypisać do ścieżek Rotation i Scale. Zazwyczaj korzystają z trzech wartości przedstawiających osi X, Y, i Z. Można je przypisać z menu Animation/ Rotation (lub Scale) Controllers. Wiele z nich jest dostępnych również w menu Position Controllers. Poniżej omówione są tylko te, które występują jedynie na ścieżkach Rotation i Scale.

Kontroler Euler XYZ Rotation Kontroler Euler XYZ Rotation umożliwia sterowanie kątem obrotu wokół osi X, Y i Z w oparciu o pojedynczą wartość zmiennoprzecinkową dla każdej klatki. Obrót wykonywany za pomocą kontrolera Euler różni się od domyślnej metody obrotu w Maksie (czyli obrotu kwaternionowego, który nie jest tak płynny). Główna różnica polega na tym, iż kontroler Euler pozwala wykorzystać krzywe funkcyjne. Przy ich użyciu możesz płynnie sterować ruchem obrotowym obiektu. Włączenie ścieżki trajektorii przez kliknięcie przycisku Trajectory w panelu Motion pozwala na podgląd zmian zachodzących w jej przebiegu w trakcie modyfikowania wartości w rolecie Key Info. Wartości kontrolera Euler XYZ Rotation podawane są w radianach, a nie w stopniach. Radian jest jednostką znacznie większą od stopnia. Pełen obrót to 360 stopni lub 2 π radianów, z czego wynika, iż jeden stopień to około 0,0174 radiana.

Roleta Euler Parameters pozwala na ustawienie wartości Axis Order, czyli porządku obliczania osi. Możesz również wybrać oś, której będziesz używał. Stosując kontroler Euler XYZ, należy się liczyć z możliwością wystąpienia efektu zwanego blokadą przegubu (gimbal lock). Efekt ten pojawia się wówczas, gdy dwie spośród trzech osi obrotu nałożą się na siebie, co dla obiektu oznacza utratę jednego stopnia swobody. Ryzyko to można zmniejszyć przez ustawienie takiej kolejności osi, aby oś, wokół której następuje ostatni obrót, była środkową. Można także zastosować narzędzie Euler Filter, dostępne w oknie Track View, albo skorzystać z kontrolera Quaternion.

976

Część VIII  Zaawansowane techniki animowania

Kontroler Smooth Rotation Kontroler Smooth Rotation automatycznie wywołuje płynny obrót. Nie dodaje żadnych klatek kluczowych; po prostu zmienia czasy istniejących klatek kluczowych, aby w efekcie uzyskać płynny obrót. Nie ma żadnych parametrów.

Kontrolery parametrów Inne rodzaje kontrolerów służą do animowania zmian rozmaitych parametrów, niezależnie od tego, czy są typu zmiennoprzecinkowego, Point3, czy jakiegokolwiek innego. Wiele z nich łączy kilka kontrolerów w jeden — np. kontrolery List i Block. Inne mają własne interfejsy pozwalające na sterowanie ich funkcjami, jak ma to miejsce w przypadku kontrolera Waveform. Większość z tych kontrolerów do specjalnych zastosowań może być przypisana tylko przy użyciu okna Track View. Panel Motion zawiera ścieżki jedynie dla transformacji.

Kontroler Boolean Kontroler Boolean tak samo jak kontroler On/Off może mieć jeden z dwóch stanów — 0 (wyłączony) i 1 (włączony). Jednakże, w przeciwieństwie do kontrolera On/Off, kontroler Boolean zmienia stan jedynie w wyznaczonych przez nas klatkach kluczowych.

Kontroler Limit Kontroler Limit ustawia limity dla ruchu lub parametrów wybranego kontrolera. Jest przypisywany ponad istniejącym kontrolerem i otwiera okno dialogowe Limit Controller, widoczne na rysunku 35.25. Rysunek 35.25. Okno dialogowe kontrolera Limit pozwala określić górne i dolne granice wartości innego kontrolera

Górna granica (Upper Limit) jest maksymalną wartością, jaką może przyjąć kontroler, a dolna granica (Lower Limit) to minimalna wartość, jakiej może użyć kontroler. Wartości kontrolera mogą przekroczyć ustalone granice, ale przy włączonym kontrolerze Limit ruch obiektu ustaje po osiągnięciu wartości granicznych. Wartość Smoothing Buffer pozwala określić zakres, w którym wartość zmienia się stopniowo w miarę zbliżania się do wyznaczonej granicy. Po przypisaniu kontrolera Limit do obiektu możesz szybko zmienić jego górną i dolną granicę, klikając prawym przyciskiem myszy obiekt w oknie Track View i wybierając odpowiednią opcję Limit Controller w czteroczęściowym menu.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

977

Kontroler List Kontrolera List możesz użyć do przypisania kilku kontrolerów jednocześnie. Opcja ta pozwala na tworzenie mniejszych, subtelniejszych zmian, np. przez dodanie szumu do zwykłego kontrolera Path. Po przypisaniu kontrolera List domyślna ścieżka pojawia się jako podścieżka razem z inną podścieżką oznaczoną jako Available (dostępna). Wybierając podścieżkę Available i klikając przycisk Assign Controller, możesz do aktualnej ścieżki przypisać dodatkowe kontrolery. Wszystkie kontrolery na podścieżkach znajdują się również w rolecie List w panelu Motion. Możesz także uzyskać dostęp do tej listy, klikając ścieżkę prawym przyciskiem myszy i wybierając z podręcznego menu opcję Properties. Kolejność na liście jest ważna, ponieważ określa kolejność obliczania kontrolerów. Przycisk Set Active pozwala na określenie kontrolera, którym możesz interaktywnie sterować w oknie widokowym. Będzie on zaznaczony strzałką wyświetloną po lewej stronie nazwy. Możesz także wycinać i wklejać kontrolery na liście. Dodatkowo możesz nazwać każdy z kontrolerów w polu Name, co ułatwia ich identyfikację przy zastosowaniu dużej ilości kontrolerów tego samego rodzaju.

Kontroler On/Off Kontroler On/Off działa na ścieżkach, które mają binarną wartość, np. na ścieżce Visibility (widoczność). Możesz użyć go do włączania i wyłączania ścieżki lub opcji. W oknie Track View każda sekcja On (włączona) jest wyświetlona na niebiesko, z klatkami kluczowymi przełączającymi pomiędzy dwoma stanami. Kontroler ten nie ma żadnych parametrów. Na rysunku 35.26 przedstawiono ścieżkę Visibility dodaną do obiektu kuli. Ścieżka została dodana przy użyciu polecenia Tracks/Visibility Track/Add. Klatki kluczowe możesz dodawać za pomocą przycisku Add Keys. Każda nowa klatka kluczowa włącza lub wyłącza ścieżkę. Ścieżkę Visibility możesz także dodać przez zmianę wartości Visibility w oknie dialogowym Object Properties.

Kontroler Waveform Kontroler Waveform może tworzyć regularne fale, takie jak np. fala sinusoidalna. Fala wynikowa może się składać z kilku różnych rodzajów fal. Okno dialogowe Waveform Controller, widoczne na rysunku 35.27, zawiera listę wszystkich fal składowych. Aby dodać falę do tej listy, kliknij przycisk Add. Kiedy wybierzesz na liście falę, możesz ją nazwać i zmieniać jej kształt przy użyciu przycisków i parametrów. Programowo zdefiniowane fale to Sine (sinusoidalna), Square (prostokątna), Triangle (trójkątna), Sawtooth (piłokształtna) i Half Sine (półsinusoidalna). Możesz także odwracać te kształty w pionie i poziomie.

978

Część VIII  Zaawansowane techniki animowania

Rysunek 35.26. Kontroler On/Off pozwala na ukrywanie i odkrywanie obiektów

Rysunek 35.27. Okno dialogowe Waveform Controller pozwala tworzyć sinusoidalne ruchy

Wartość Period określa liczbę klatek potrzebnych do zakończenia jednego cyklu. Wartość Amplitude służy do ustawiania wysokości fali, a wartość Phase określa jej położenie na początku cyklu. Wartość Duty Cycle jest używana jedynie w przypadku fali prostokątnej i określa jej współczynnik wypełnienia. Możesz także użyć opcji Vertical Bias (przesunięcie w pionie), aby określić zakres wartości dla fali. Dostępne opcje to Centered, która ustala środek fali jako 0; Auto > 0, która ustawia wszystkie wartości jako dodatnie; Auto < 0, która ustawia wszystkie wartości jako ujemne; Manual pozwala na ręczne ustawienie środka fali. Opcje Effect określają sposób połączenia różnych fal na liście. Mogą być one dodawane, mnożone, spajanie od dołu lub od góry. Opcja Add po prostu dodaje wartości fal, a Multiply mnoży je przez siebie. Opcje Clamp Above i Clamp Below pozostawiają te wartości jednej z fal, które są większe (above) lub mniejsze (below) od wartości drugiej fali. Wykres Characteristic Graph przedstawia wybraną falę składową (This Wave), efekt złożenia danej fali z poprzedzającymi ją na liście (This Output) lub efekt złożenia wszystkich fal z listy (Final Output). Na rysunku 35.28 można zobaczyć wykres Characteristic Graph dla każdej z opcji Effect przy łączeniu sinusoidy i fali prostokątnej.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

979

Rysunek 35.28. Połączenie sinusoidy i fali prostokątnej za pomocą opcji Add, Multiply, Clamp Above i Clamp Below

Kontroler Color RGB Kontrolera Color RGB możesz użyć do animowania kolorów. Wartości kolorów są inne od zwykłych wartości zmiennoprzecinkowych, ponieważ przedstawiają zawartość czerwieni, zieleni i niebieskiego (wartości RGB). Taki rodzaj danych znany jest jako Point3. Kontroler Color RGB dzieli ścieżkę z informacjami o kolorze na ścieżki składowych R, G i B. Możesz użyć tego kontrolera, aby przypisać inny kontroler do każdego z kolorów składowych, a także po to, by w Maksie animować jakąkolwiek próbkę koloru.

Kontroler Cubic Morph Kontroler Cubic Morph możesz przypisać do złożonego obiektu typu morph. Ścieżka dla tego obiektu znajduje się pod ścieżką Objects. Podścieżką obiektu typu morph jest ścieżka Morph, przechowująca informacje o kluczowych klatkach morfingu. Kontroler ten wykorzystuje wartości Tension, Continuity i Bias do kontrolowania mieszania elementów docelowych ze sobą. Dostęp do wartości TCB w oknie dialogowym Key Info uzyskasz, klikając prawym przyciskiem myszy dowolną klatkę kluczową transformacji lub też ścieżkę Morph i potem wybierając z menu podręcznego opcję Properties. Do wartości TCB możesz też uzyskać dostęp, klikając prawym przyciskiem myszy listwę czasu (Track Bar).

Kontroler Barycentric Morph Kontroler Barycentric Morph jest przypisywany automatycznie przy tworzeniu złożonego obiektu typu morph. Klatki kluczowe dla tego kontrolera są tworzone w oparciu o docelowe obiekty morfingu zdefiniowane w panelu Modify pod roletą Current Targets. Możesz je zmieniać przy użyciu okna dialogowego Key Info dla tego kontrolera, które otwierasz, klikając prawym przyciskiem myszy klatkę kluczową morfingu w oknie Track View — Dope Sheet lub na listwie czasu.

980

Część VIII  Zaawansowane techniki animowania

Główna różnica pomiędzy kontrolerem Cubic Morph a Barycentric Morph polega na tym, iż drugi z nich może poszczególnym kluczom przypisywać określone wagi. Okno dialogowe Key Info kontrolera Barycentric Morph zawiera listę docelowych obiektów morfingu. Po wybraniu obiektu docelowego wartość Percentage ustala jego wpływ. Wartość Time określa numer klatki, w której znajduje się dany klucz. Wartości TCB i wyświetlona krzywa kontrolują parametry Tension, Continuity i Bias tego kontrolera. Opcja Constrain to 100% ustawia wszystkie wagi na poziomie 100%. Jeśli opcja ta jest włączona zmiana jednej wartości prowadzi do proporcjonalnej zmiany innych wartości3.

Kontroler Block Kontroler Block łączy kilka różnych ścieżek w jeden blok, co pozwala na sterowanie wszystkimi jednocześnie. Znajduje się on na ścieżce Global Tracks. Jeśli do kontrolera Block zostanie dodana ścieżka, kontroler Slave pojawia się w pierwotnym miejscu tej ścieżki. Aby dodać kontroler Block, wybierz ścieżkę Available pod ścieżką Block Control znajdującą się na ścieżce Global Tracks i kliknij przycisk Assign Controller. W oknie dialogowym Assign Constant Controller zaznacz opcję Master Block i kliknij OK. Kliknięcie na ścieżce prawym przyciskiem myszy i wybranie opcji Properties otwiera okno dialogowe Master Block Parameters, widoczne na rysunku 35.29. Rysunek 35.29. Okno dialogowe Master Block Parameters wyświetla wszystkie ścieżki przypisane do kontrolera Block

W oknie dialogowym Master Block Parameters możesz przy użyciu przycisku Add dodać ścieżkę do kontrolera Block. Wszystkie dodane ścieżki są wyświetlane na liście po lewej. Możesz nadać każdej z nich nazwę, używając do tego pola Name. Możesz także użyć przycisku Add Selected, aby dodać dowolną zaznaczoną ścieżkę. Przycisk Replace pozwala na wybranie nowego kontrolera, który zastąpi aktualnie zaznaczoną ścieżkę. Przyciski Load i Save pozwalają wczytać i zapisać bloki jako osobne pliki. Przycisk Add otwiera okno dialogowe Track View Pick, pokazane na rysunku 35.30. W oknie tym wszystkie dostępne ścieżki są wyróżnione ciemnym kolorem, aby można je było łatwiej zobaczyć, podczas gdy niedostępne ścieżki są wyświetlane na szaro.

3

Tak naprawdę, opcja ta „pilnuje”, aby suma wag wszystkich obiektów była zawsze równa 100%. Gdy jest wyłączona, wagi są niezależne od siebie, a ich suma może być mniejsza lub większa od 100 — przyp. tłum.

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

981

Rysunek 35.30. Okno dialogowe Track View Pick pozwala wybrać ścieżki, które zostaną uwzględnione w kontrolerze Block

Wybierz ścieżki, które chcesz uwzględnić, i kliknij przycisk OK. Otworzy się okno dialogowe Block Parameters, widoczne na rysunku 35.31, w którym możesz nazwać blok, określić początkową i końcową klatkę i wybrać kolor. Po skończeniu pracy w tym oknie dialogowym kliknij OK. Rysunek 35.31. Okno dialogowe Block Parameters pozwala nadać blokowi nazwę

W oknie dialogowym Master Block Parameters kliknij przycisk Load, aby otworzyć okno dialogowe, w którym możesz wybrać zapisany blok parametrów animacji do wczytania. Zapisane bloki mają rozszerzenie .BLK. Po wczytaniu parametrów otworzy się okno dialogowe Attach Controls, widoczne na rysunku 35.32. Zawiera ono dwa panele. Panel Incoming Controls po lewej wyświetla listę wszystkich ruchów w zapisanym bloku. Klikając przycisk Add, dodasz ścieżki z aktualnej sceny, do których możesz skopiować ruchy zapisane w bloku. Ponieważ ruchy zapisane w panelu Incoming Controls będą pasowały do wpisów po prawej stronie w panelu Copy, przycisk Add Null dodaje pustą przestrzeń w miejsce określonej ścieżki, jeśli nie chcesz kopiować danego ruchu. Przycisk Match by Node pozwala porównać i dopasować ścieżki za pomocą okna dialogowego Track View Pick.

Kontroler IK Kontroler IK działa na systemach kości, kontrolując obiekty kości w systemie IK (kinematyka odwrotna). Zawiera wiele różnych rolet określających ograniczenia stawów i innych parametrów. Więcej informacji o kontrolerze IK uzyskasz, czytając rozdział 38. „Systemy szkieletowe, riggowanie i kinematyka”.

982

Część VIII  Zaawansowane techniki animowania

Rysunek 35.32. Okno dialogowe Attach Controls pozwala przyłączyć zapisane ścieżki do kontrolera Block

Kontroler Master Point Kontroler Master Point zawiaduje transformacjami zaznaczonych punktów lub wierzchołków. Jest przypisywany do ścieżki obiektu, którego podobiekty są transformowane. Każdy podobiekt ma odrębną podścieżkę. Klatki kluczowe na ścieżce Master mają kolor zielony. Kliknięcie prawym przyciskiem myszy zielonej klatki kluczowej powoduje otworzenie okna dialogowego Master Track Key Info, widocznego na rysunku 35.33. Okno to zawiera numer klatki kluczowej i strzałki umożliwiające poruszanie się między klatkami kluczowymi, pole Time z numerem bieżącej klatki, a także listę wszystkich wierzchołków. Wybranie wierzchołka z listy powoduje wyświetlenie jego parametrów w dolnej części okna. Rysunek 35.33 Okno dialogowe Master Track Key Info pozwala na zmianę wartości kluczowych dla każdego wierzchołka

Rozdział 35.  Warstwy animacji, modyfikatory i złożone kontrolery

983

Podsumowanie Warstwy animacji umożliwiają stosowanie prostych metod organizowania animowanych ruchów. Wszystkie narzędzia niezbędne do zarządzania tymi warstwami znajdują się na pasku Animation Layers. Polecenie Animation/Load Animation wraz z jego funkcjami mapowania i przenoszenia pozwala raz zapisaną animację stosować wielokrotnie w innych scenach. Rozdział ten stanowił również wprowadzenie do wszystkich dostępnych modyfikatorów animacji; pokazano w nim, jak używać kilku z nich. Więcej możliwości sterowania animacją można uzyskać przez definiowanie atrybutów i wiązanie parametrów. W rozdziale omówiono: 

posługiwanie się narzędziami z paska Animation Layers,



tworzenie nowych warstw i przypisywanie im wag,



scalanie warstw animacji,



zapisywanie animacji w plikach o formacie, który można wczytać do miksera ruchu



ładowanie plików animacji XML,



mapowanie ścieżek animacji pomiędzy obiektami,



ustalanie zmian skali obiektów przy przenoszeniu animacji,



stosowanie modyfikatora Point Cache,



deformowanie twarzy za pomocą modyfikatora Morpher,



modyfikator Flex i inne modyfikatory deformacji,



różne modyfikatory animacji,



kilka kategorii kontrolerów złożonych.

W następnym rozdziale przyjrzymy się bliżej kontrolerowi Expression, który umożliwia programowanie działania kontrolerów. Zajmiemy się także wiązaniem parametrów (jeden parametr może wtedy sterować innym) i tworzeniem własnych.

984

Część VIII  Zaawansowane techniki animowania

Rozdział 36.

Animowanie przy użyciu kontrolera Expression i wiązania parametrów W tym rozdziale: 

Korzystanie z okna Numerical Expression Evaluator



Interfejs kontrolera Expression



Operatory, zmienne i funkcje



Wiązanie parametrów z manipulatorami pomocniczymi



Gromadzenie parametrów



Tworzenie własnych parametrów

W Maksie termin wyrażenie oznacza zestaw równań, które decydują o wyglądzie i zachowaniu obiektu. Wyrażenia te mogą być proste, jak dodawanie dwóch liczb, lub też złożone, jak program zapisany w języku MAXScript. Są bardzo pomocne w sterowaniu przebiegiem animacji. Wyrażenia można wprawdzie stosować w każdym spinerze, ale najczęściej używa się ich w skryptach i przy definiowaniu działania kontrolera Expression. Ten ostatni jest wyspecjalizowanym kontrolerem mogącym wymuszać określone zachowania obiektów na podstawie zapisanych w nim wyrażeń. W dalszej części rozdziału poznasz nowe sposoby sterowania animacjami w oparciu o parametry obiektów. Parametry można ze sobą sprzęgać, sprawiając, że zmiana jednego z nich wywołuje zmianę drugiego. Przykładowo, możesz w ten sposób powiązać parametr On odpowiedzialny za włączanie i wyłączanie źródła światła z ruchem wyłącznika. Wszystkie parametry, które mogą być animowane, mogą być także sprzęgane. Pracę z parametrami Max stara się ułatwić, dostarczając kilka pomocnych narzędzi, takich jak Parameter Collector. Co więcej, jeśli ten kolekcjoner parametrów nie udostępni Ci takich parametrów, jakich akurat potrzebujesz, będziesz mógł utworzyć własne.

986

Część VIII  Zaawansowane techniki animowania

Używanie wyrażeń w spinerach Chociaż duża część tego rozdziału skupia się na zastosowaniu kontrolera Expression, okno Expression Controller nie jest jedynym miejscem, w którym możesz eksperymentować z wyrażeniami. Mogą one być również wprowadzane do spinerów przy użyciu okna Numerical Expression Evaluator, widocznego na rysunku 36.1. To proste okno dialogowe otwiera się po uaktywnieniu spinera i wciśnięciu klawiszy Ctrl+N.

Rysunek 36.1. Okno dialogowe Numerical Expression Evaluator pozwala ustalać zawartość spinera za pomocą wyrażenia Innym miejscem często wykorzystującym wyrażenia jest okno dialogowe Parameter Wiring. Jest ono dokładnie opisane w dalszej części tego rozdziału.

Aby użyć tego narzędzia, wpisz wyrażenie w głównym polu edycyjnym, a wynik pojawi się w polu Result. Pole to jest aktualizowane w trakcie pisania wyrażenia. Jeśli się pomylisz, będzie puste. Przycisk Paste umieszcza wynik obliczeń w polu edycyjnym spinera, a przycisk Cancel zamyka okno dialogowe bez wprowadzania zmian. Bezpośrednio w polu edycyjnym spinera możesz wprowadzić wartość względną, dodając przed nią literę R. Jeśli np. wartość Segments kuli jest równa 32, wpisanie R20 zmieni ją na 52, a R-20 na 12.

Interfejs kontrolera Expression Termin wyrażenie odnosi się do wyrażenia matematycznego lub prostego wzoru, który oblicza wartość w oparciu o inne wartości. Wyrażenia te mogą być proste, np. przemieszczanie roweru w zależności od obrotu pedałów, lub też złożone, tak jak obliczanie sinusoidalnego przemieszczenia łodzi na morzu w funkcji fal, na których się znajduje. Możesz użyć praktycznie dowolnej wartości jako zmiennej, poczynając od współrzędnych obiektów i parametrów modyfikatorów do ustawień świateł i materiałów. Wyniki wyrażenia są obliczane dla każdej klatki i mają wpływ na różne parametry w scenie. W wyrażeniu możesz użyć numerów klatek i czasu jako zmiennych, aby powtórzyć obliczenia dla całej sekwencji. Kontroler Expression nie jest tak mocny jak kontroler Script, ale jest od niego szybszy, bo wyrażenia nie muszą być kompilowane tak jak skrypty.

Z wszystkich dostępnych kontrolerów Expression jako jedyny ma tak rozległe możliwości, że ich opisanie mogłoby stanowić treść osobnej książki. W tym krótkim rozdziale podano podstawy tworzenia wyrażeń i kilka przykładów. Kontroler Expression jest jednym z wielu kontrolerów przydatnych podczas automatyzacji animacji. Pozwala na określenie transformacji obiektu za pomocą wzoru lub wyra-

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

987

żenia matematycznego, które możesz przypisać do dowolnej ścieżki obiektu. Jest widoczny na liście kontrolerów, zależnie od rodzaju ścieżki, do jakiej jest przypisany, jako Position Expression, Rotation Expression, Scale Expression, Float Expression lub Point3 Expression. Zanim będziesz mógł użyć kontrolera Expression na ścieżce, musisz go do niej przypisać. Możesz to zrobić za pomocą przycisku Assign Controller w panelu Motion lub oknie Track View. W oknie Track View możesz także kliknąć odpowiednią ścieżkę prawym przyciskiem myszy i wybrać polecenie Assign Controller. Po przypisaniu kontrolera natychmiast otwiera się okno dialogowe Expression Controller. Później możesz też uzyskać do niego dostęp, klikając prawym przyciskiem myszy ścieżkę i wybierając z podręcznego menu opcję Properties. Dla przykładu wskaż obiekt w scenie, otwórz panel Motion i zaznacz ścieżkę Position. Następnie kliknij przycisk Assign Controller na górze rolety Assign Controller i wybierz kontroler Position Expression z listy. Spowoduje to otwarcie okna dialogowego Expression Controller. Okna Expression Controller możesz używać do definiowania zmiennych i pisania wyrażeń. Okno to, przedstawione na rysunku 36.2, zawiera cztery panele tekstowe; dwa wyświetlają listę zmiennych skalarnych (Scalars) i wektorowych (Vectors), w trzecim (Expression) tworzysz wyrażenie, a w czwartym (Description) możesz wpisać jego opis. Rysunek 36.2. Kontrolera Expression możesz użyć do tworzenia wyrażeń i określania ich rezultatów

Definiowanie zmiennych Zmienne są „pojemnikami” do przechowywania rozmaitych wartości. Przykładowo utworzenie dla promienia kuli zmiennej o nazwie „r” uprościłoby wyrażenie służące do podwajania jej wielkości z formy „weź promień kuli i pomnóż go przez dwa” do formy „r razy 2”. Aby dodać zmienną, wpisz nazwę w polu Name, wybierz opcję Scalar lub Vector i kliknij przycisk Create. Nowa zmienna pojawi się na liście Scalars lub Vectors. Aby usunąć zmienną, wybierz ją z listy i kliknij przycisk Delete. Wartość Tick Offset jest dodawana do aktualnego czasu i może być używana do wprowadzania opóźnień w animacji1.

1

1 tick = 1/4800 sekundy — przyp. tłum.

988

Część VIII  Zaawansowane techniki animowania

Nowej zmiennej możesz przypisać wartość stałą (przycisk Assign to Constant) lub kontroler (przycisk Assign to Controller). Przypisanie wartości stałej jest równoznaczne wpisaniu tej wartości bezpośrednio w wyrażeniu. Zmienne o stałej wartości po prostu ułatwiają pisanie wyrażeń. Przycisk Assign to Controller otwiera okno dialogowe Track View Pick, widoczne na rysunku 36.3, w którym możesz wybrać określoną ścieżkę dla zmiennej, np. położenie obiektu. Rysunek 36.3. Okno dialogowe Track View Pick wyświetla wszystkie ścieżki dla danej sceny. Ścieżki, które możesz wybrać, są wyświetlane na czarno

Przypisanie zmiennej kontrolera pozwala na animowanie wybranego obiektu w oparciu o inne obiekty znajdujące się w tej samej scenie. Aby tego dokonać, utwórz zmienną i przypisz jej animowaną ścieżki innego obiektu. Jeśli np. utworzysz zmienną wektorową nazwaną boxPos i przypiszesz jej ścieżkę Position obiektu Box (pudełko), możesz użyć tego wyrażenia do sterowania ruchem obiektu z przypisanym kontrolerem w oparciu o położenie pudełka.

Tworzenie wyrażeń Wyrażenia możesz wpisywać bezpośrednio do panelu Expression w oknie dialogowym Expression Controller. Aby użyć zmiennej z jednej z list (Scalars lub Vectors), wpisz jej nazwę w panelu Expression. Predefiniowane zmienne, takie jak F i NT2, nie muszą być definiowane w panelu zmiennych. Przycisk Function List otwiera listę funkcji, widoczną na rysunku 36.4, która zawiera wszystkie funkcje, jakie mogą zostać użyte w danym wyrażeniu. Lista ta służy jedynie jako podgląd dostępnych funkcji — wpisywane muszą być ręcznie w panelu Expression. Dobry sposób na poznanie składni rozmaitych wyrażeń polega na włączeniu rejestracji makr w oknie MAXScript Listener przez wybranie w nim polecenia MacroRecorder/Enable i obserwację zapisów w górnym panelu podczas wykonywania określonych zadań w oknach widokowych.

2

F oznacza klatkę animacji (Frame), a NT jest czasem znormalizowanym (Normalized Time) i dla bieżącego segmentu czasowego przyjmuje wartości od 0 do 1, niezależnie od liczby klatek w tym segmencie — przyp. tłum.

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

989

Rysunek 36.4. Okno dialogowe Function List pozwala na obejrzenie wszystkich funkcji dostępnych dla danego wyrażenia

Panel Expression pomija wszelkie białe miejsca, możesz więc użyć pustych linii i spacji, by sprawić, żeby wyrażenie było bardziej czytelne.

Debugowanie i obliczanie wyrażeń Po wpisaniu wyrażenia w panelu Expression możesz sprawdzić wartości wszystkich zmiennych w dowolnej klatce, klikając przycisk Debug. Otwiera on okno Expression Debug, widoczne na rysunku 36.5, w którym wyświetlane są wartości dla wszystkich zmiennych, a także wartość całego wyrażenia. Wartości są aktualizowane automatycznie w miarę przesuwania suwaka czasu. Rysunek 36.5. Okno Expression Debug pozwala przetestować wyrażenie przed zastosowaniem go

Przycisk Evaluate w oknie dialogowym Expression Controller oblicza wartość wyrażenia dla każdej klatki aktualnego segmentu animacji. Jeśli wyrażenie zawiera błąd, pojawi się komunikat ostrzegający o wystąpieniu błędu. Zastąpienie jednego kontrolera innym może wymazać animację wynikającą z zastosowania kontrolera Expression.

990

Część VIII  Zaawansowane techniki animowania

Zarządzanie wyrażeniami Za pomocą przycisków Save i Load możesz zapisywać i wczytywać wyrażenia. Zapisane wyrażenia mają rozszerzenie .XPR. Pliki wyrażeń nie zawierają definicji zmiennych. Jeśli zapisane wcześniej wyrażenie wczytasz do okna Expression Controller, musisz ponownie przypisać wszystkie zmienne, aby móc z takiego wyrażenia skorzystać.

Ćwiczenie: Oczy śledzące ruch Na potrzeby szybkiego przykładu utworzymy proste wyrażenie. Kontroler Expression jest bardzo przydatny do zsynchronizowania ruchu gałek ocznych z ruchem piłki. Ten sam efekt można osiągnąć przez powiązanie parametru i zastosowanie manipulatora, ale użyjemy do tego kontrolera Position Expression. Aby oczy podążyły za przemieszczającą się piłką, wykonaj następujące czynności. 1. Otwórz plik Following eyes.max z folderu Chap 36 znajdującego się na płycie dołączonej do książki. Plik ten zawiera twarz z modelu Greka utworzonego przez Viewpoint Datalabs, a także piłkę, która porusza się tam i z powrotem. 2. Wybierz źrenicę lewego oka nazwaną pupil_l (prawa źrenica jest połączona z lewą, tak więc poruszają się razem) i otwórz panel Motion. Zaznacz ścieżkę Position i kliknij przycisk Assign Controller. Wybierz kontroler Position Expression i kliknij OK. Otworzy się okno dialogowe Expression Controller. 3. Utwórz nową zmienną wektorową i nazwij ją ballPos (położenie piłki) — wpisz nazwę w polu Name, włącz opcję Vector i kliknij przycisk Create. 4. Zaznacz nowo utworzoną zmienną i kliknij przycisk Assign to Controller. W oknie dialogowym Track View Pick odszukaj pozycję Sphere01 w gałęzi Objects i kliknij stojący przy niej znak plus (+). Następnie kliknij znak plus obok pozycji Transform: Position/Rotation/Scale, zaznacz ścieżkę Position: Position XYZ, jak pokazano na rysunku 36.6, i kliknij OK. 5. W panelu Expression usuń istniejące wyrażenie i wpisz następujące: [ -3.1 + ballPos.x/20, -2.9, 41.0 ]

Następnie kliknij przycisk Debug. Pojawi się okno Expression Debug, w którym możesz zobaczyć zmiany wartości zmiennych w miarę zachodzenia zmian w scenie. Po utworzeniu wyrażenia możesz przeciągnąć suwak czasu tam i z powrotem, obserwując ruch oczu za piłką. Jeśli stwierdzisz, że taki ruch Ci odpowiada, kliknij przycisk Evaluate, a potem Close, aby wyjść z okna. To prosty przykład, ale dobrze ilustruje możliwości wyrażeń. Na rysunku 36.7 przedstawiono efekt zastosowania wyrażenia.

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

991

Rysunek 36.6. W oknie dialogowym Track View Pick wybierz ścieżkę Position dla obiektu Sphere01

Rysunek 36.7. W tym przykładzie kontroler Expression został użyty do wykonania animacji oczu śledzących ruch piłki

Używanie kontrolerów Expression Wyrażenia możesz wykorzystać także do sterowania transformacjami obiektów. Dostęp do tych transformacji uzyskasz w oknie Track View lub w panelu Motion. Możesz także używać wyrażeń do kontrolowania parametrów, takich jak długość prostopadłościanu, lub właściwości materiałów, np. ilości światła odbijanego przez materiał. Wszystkie te parametry są dostępne z poziomu okna Track View.

992

Część VIII  Zaawansowane techniki animowania

Animowanie transformacji za pomocą kontrolera Expression Po przypisaniu kontrolera do ścieżki transformacji panel Expression w oknie dialogowym Expression Controller zawiera aktualne wartości dla wybranego obiektu. Transformacje położenia wyświetlają współrzędne X, Y i Z, transformacje obrotu — wartość obrotu w radianach, a transformacje skali — wartości opisujące względne wartości skali dla każdej osi. Radiany to jedna z jednostek miary kąta. Pełen obrót to 360 stopni, czyli 2 radianów. Okno dialogowe Expression zawiera funkcje degToRad i radToDeg, które przeliczają stopnie na radiany i radiany na stopnie.

Animowanie parametrów za pomocą kontrolera Float Expression Aby przypisać kontroler Float Expression, wybierz obiekt z parametrem lub modyfikatorem i otwórz okno Track View. Znajdź ścieżkę z parametrem, który chcesz animować, i kliknij przycisk Assign Controller. Wybierz z listy Float Expression i kliknij OK. Rodzaj kontrolera zależy od wybranego parametru. Wiele parametrów używa wyrażeń zmiennoprzecinkowych (float), ale niektóre korzystają z kontrolerów typu Transform.

Po przypisaniu kontrolera Expression otworzy się okno dialogowe Expression Controller. Możesz je również otworzyć, klikając ścieżkę prawym przyciskiem myszy i wybierając z podręcznego menu opcję Properties. W oknie tym panel Expression zawiera aktualną wartość wybranego parametru.

Ćwiczenie: Nadmuchiwanie balonu Modyfikator Push symuluje nadmuchiwanie balonu powietrzem, wypychając wszystkie wierzchołki na zewnątrz. W tym ćwiczeniu użyjemy modelu balonu opracowanego przez Zygote Media, aby zademonstrować zastosowanie kontrolera Float Expression do sterowania parametrami modyfikatora. Aby nadmuchać balon przy użyciu kontrolera Float Expression, wykonaj następujące czynności. 1. Otwórz plik Balloon and pump.max z folderu Chap 36 znajdującego się na płycie dołączonej do książki. Plik ten zawiera pompkę utworzoną z obiektów podstawowych i model balonu z przypisanym modyfikatorem Push. 2. Następnie otwórz okno Track View, wybierając polecenie Graph Editors/Track View — Curve Editor. Wyszukaj wśród ścieżek obiektu ścieżkę Push Value (znajduje się w gałęzi Objects/b3/Modified Object/Push/Push Value). Zaznacz ją i kliknij przycisk

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

993

Assign Controller (lub też wybierz odpowiednią opcję z menu wywoływanego prawym przyciskiem myszy). Z listy kontrolerów wybierz Float Expression i kliknij OK. Otworzy się okno Expression Controller. 3. W panelu Expression powinieneś zobaczyć pojedynczą wartość skalarną równą 0. Zmień wyrażenie, aby miało formę: 2 * NT

Kliknij przycisk Debug, by zobaczyć, jakie wyniki przybierze wyrażenie. Przy otwartym oknie Expression Debug przeciągnij suwak czasu i zaobserwuj nadmuchiwanie balonu. Użycie jako części wyrażenia parametru, takiego jak Radius, powoduje, że jest on niedostępny w panelu Modify, jeśli próbujesz go zmienić ręcznie.

Na rysunku 36.8 przedstawiono nadmuchiwany balon.

Rysunek 36.8. Balon jest nadmuchiwany przy użyciu kontrolera Expression kontrolującego modyfikator Push

Animowanie materiałów za pomocą kontrolera Expression Aby kontrolować parametry materiału, musisz znaleźć odpowiedni parametr w oknie Track View i przypisać do niego kontroler Expression. Niektóre parametry są wartościami skalarnymi, ale każdy parametr materiału odnoszący się do kolorów jest parametrem typu Point3.

994

Część VIII  Zaawansowane techniki animowania

Kiedy używasz parametrów materiałów i wartości kolorów, pamiętaj, aby w wyrażeniach nie łączyć ich z wartościami wektorowymi.

Wiązanie parametrów (Parameters Wiring) Jeśli parametry są ze sobą powiązane, wartość jednego z nich kontroluje wartość drugiego. To użyteczna technika animacyjna, która pozwala zmianom w jednej części sceny wpływać na inny jej aspekt. Innym zastosowaniem wiązania parametrów jest tworzenie własnych kontrolek animacji, np. suwaka sterującego przyciemnianiem źródła światła, który animatorzy mogą dowolnie wykorzystywać.

Używanie okna dialogowego Parameter Wiring Do okna dialogowego Parameter Wiring możesz uzyskać dostęp w kilku miejscach programu. Polecenie Animation/Wire Parameters/Wire Parameters (Ctrl+5) z górnego menu wyświetla menu podręczne do wiązania parametrów. Wybranie parametru z tego menu zmienia kursor w przerywaną linię (podobną do tej, w jaką zamienia się kursor przy łączeniu obiektów). Kliknij obiekt, do którego chcesz przywiązać dany parametr, a pojawi się kolejne menu podręczne, w którym możesz wybrać powiązany parametr tego obiektu. Zostanie wtedy wyświetlone okno dialogowe Parameter Wiring z drzewami hierarchii parametrów obu obiektów. Możesz także wiązać parametry, klikając zaznaczony obiekt prawym przyciskiem myszy i z menu podręcznego wybierając polecenie Wire Parameters. Funkcja ta jest niedostępna, gdy zaznaczono większą liczbę obiektów. Okno dialogowe Parameter Wiring (Alt+5), widoczne na rysunku 36.9, wyświetla dwie listy hierarchiczne zawierające wszystkie dostępne parametry obiektów. Są one bardzo podobne do hierarchii ścieżek w oknie Track View i pozwalają na obustronne łączenie parametrów. Jeśli skorzystałeś z polecenia Wire Parameters, aby otworzyć okno dialogowe Parameter Wiring, wybrane parametry obu obiektów są już podświetlone na żółto. Rysunek 36.9. Okno dialogowe Parameter Wiring obsługuje wyrażenia wiążące parametry obiektów

Trzy przyciski ze strzałkami znajdujące się między tymi listami pozwalają określić kierunek połączenia. Wiążą one parametr z jednej listy z parametrem z drugiej. Kierunek strzałki określa, czy parametr z lewej listy steruje parametrem z prawej listy, czy na odwrót.

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

995

Możesz także wybrać dwukierunkowy przycisk u samej góry, co powoduje wzajemne powiązanie parametrów. Pod każdą z list znajduje się pole tekstowe, w którym możesz wpisać wyrażenie. Wyrażenie (Expression) to formuła matematyczna, oparta na konkretnej składni, określająca wpływ jednego parametru na drugi. Może tu zostać użyte każde poprawnie zapisane wyrażenie akceptowane w oknie dialogowym Expression Controller lub też w języku MAXScript. Po wpisaniu wyrażenia kliknij przycisk Connect, aby zakończyć wiązanie. Na podstawie kierunku połączenia przycisk Master wskazuje, który obiekt jest nadrzędny w danym powiązaniu3. Możesz także użyć tego okna dialogowego do rozdzielenia powiązanych parametrów (przycisk Disconnect). Za pomocą przycisków z ikonami znajdujących się u góry okna dialogowego, a opisanych w tabeli 36.1, można pokazać wszystkie ścieżki, zlokalizować następny powiązany parametr lub odświeżyć zawartość listy. Tabela 36.1. Przyciski okna dialogowego Parameter Wiring Przycisk

Opis Show All Tracks (pokaż wszystkie ścieżki) Next Wired Parameter (następny powiązany parametr) Refresh Tree View (odśwież listę hierarchii)

Po zakończeniu wiązania okno dialogowe Parameter Wiring pozostaje otwarte. Możesz wypróbować powiązanie, modyfikując parametr nadrzędnego obiektu. Jeśli rezultaty odbiegają od oczekiwań, możesz dokonać zmian w wyrażeniu i uaktualnić powiązanie przyciskiem Update (przycisk Connect zmienia się w przycisk Update). Kolejność zaznaczania obiektów, których parametry mają być sprzęgane, nie ma znaczenia. O tym, który obiekt będzie kontrolujący, a który kontrolowany, decyduje wybór strzałki w oknie Parameter Wiring.

Po ustanowieniu sprzężenia ścieżka parametru obiektu kontrolującego wyświetlana jest w kolorze zielonym, a obiektu kontrolowanego w kolorze czerwonym. Jeśli wybierzesz połączenie dwustronne, obie ścieżki będą wyświetlane w kolorze zielonym.

Manipulatory pomocnicze Abyś mógł tworzyć elementy sterujące powszechnego użytku, które można powiązać z różnymi elementami sceny, Max oferuje trzy manipulatory pomocnicze (Manipulator Helpers). Są to Cone Angle (kąt stożka), Plane Angle (kąt płaszczyzny) i Slider (suwak). Są one dostępne jako podkategoria w kategorii Helpers panelu Create lub też w menu Create/Helpers/Manipulators.

3

Tak naprawdę, przyciski wyboru Master służą do określania, który obiekt jest nadrzędny przy dwustronnym wiązaniu parametrów. Przy wiązaniach jednostronnych przyciski te są wyłączone — przyp. tłum.

996

Część VIII  Zaawansowane techniki animowania

Dla manipulatora Cone Angle możesz określić kąt (Angle), odległość (Distance) i proporcje (Aspect). Stożek posiada okrągłą podstawę, ale możesz zmienić go w ostrosłup o podstawie kwadratu. Manipulator kąta płaszczyzny pozwala na ustawienie parametrów kąta, odległości i rozmiaru (Size). Suwakowi (Slider) możesz nadać dowolną nazwę. Nazwa ta pojawia się w oknach widokowych nad suwakiem. Możesz także ustawić jego domyślną wartość wraz z maksimum i minimum zakresu. Położenie i wielkość manipulatora ustalisz przez ustawienie parametrów X Position, Y Position i Width (szerokość). Możesz także włączyć skokowe działanie suwaka (opcja Snap) i określić wartość skoku (Snap Value). Gdy utworzysz manipulatory, możesz ich używać przy włączonym przycisku Select and Manipulate na głównym pasku narzędziowym (musi on być wyłączony przed tworzeniem manipulatorów pomocniczych). Zaletą manipulatorów jest możliwość wiązania ich z parametrami, którymi chcemy sterować.

Ćwiczenie: Sterowanie zgryzem krokodyla Jednym ze sposobów wykorzystania manipulatorów pomocniczych i powiązanych parametrów jest kontrolowanie zakresów zmienności tych parametrów, które mają być animowane. Pozwala to zespołowi animatorów na szybkie tworzenie sekwencji animacji. W tym przykładzie użyjemy suwaka do sterowania ruchem szczęki krokodyla. Aby utworzyć suwak sterujący szczęką krokodyla, wykonaj następujące czynności. 1. Otwórz plik Biting crocodile.max z folderu Chap 36 znajdującego się na płycie dołączonej do płyty. Plik ten zawiera model krokodyla, który powstał w Viewpoint Datalabs. W tym modelu głowa, oczy i górna szczęka zostały połączone w jeden obiekt, a środek transformacji tego obiektu został przesunięty w miejsce, w którym znajduje się zawias szczęki. 2. Wybierz polecenie Create/Helpers/Manipulators/Slider i kliknij nad krokodylem w oknie Perspective. Nazwij suwak Croc Bite (zgryz krokodyla) i ustaw wartość Maximum na 60. 3. Przy zaznaczonym suwaku wybierz polecenie Animation/Wire Parameters/Wire Parameters (lub wciśnij klawisze Ctrl+5), aby otworzyć menu podręczne. Wybierz opcję Object (Slider)/value, przeciągnij przerywaną linię do głowy krokodyla i kliknij. Wybierz opcję Transform/Rotation/Y Rotation. Pojawi się okno dialogowe Parameter Wiring. 4. W oknie dialogowym Parameter Wiring kliknij strzałkę kierunku, która wskazuje od suwaka (slider) do głowy (head). Następnie kliknij przycisk Connect i przeciągnij suwakiem. Zanim użyjesz suwaka, włącz przycisk Select and Manipulate na głównym pasku narzędziowym.

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

997

Szczęka krokodyla obraca się, ale w sposób nienaturalny. Jest to spowodowane tym, że kąt obrotu powinien być wyrażany w radianach, a nie w stopniach. 5. W polu wyrażeń pod obiektem głowy wpisz degToRad(value)i kliknij przycisk Update. Ponownie przeciągnij suwakiem. Teraz kąt ustalany za pomocą suwaka (w stopniach) jest przeliczany na radiany i ustanowiony wcześniej zakres obrotu jest prawidłowy. Pozostaje jeszcze problem przechodzenia górnej szczęki przez dolną. Naprawimy to, mnożąc kąt obrotu przez –1. 6. W polu wyrażeń pod obiektem głowy uzupełnij istniejące wyrażenie do postaci –1*degToRad(value) i kliknij przycisk Update. 7. Kliknij przycisk Select and Manipulate na głównym pasku narzędziowym i przeciągnij suwak w prawo. Paszcza krokodyla otworzy się. Na rysunku 36.10 przedstawiono krokodyla, którego szczękami można poruszać za pomocą suwaka.

Rysunek 36.10. Suwak jest powiązany z paszczą krokodyla i kontroluje jej ruch

998

Część VIII  Zaawansowane techniki animowania

Gromadzenie parametrów (Parameter Collector) W zapanowaniu nad wszystkimi parametrami wykorzystywanymi podczas animowania sceny pomocny może okazać się kolekcjoner parametrów (Parameter Collector), który w jednym miejscu udostępnia wszystkie animowane parametry, włącznie z tymi, które użytkownik sam zdefiniował. Okno edytora parametrów (Parameter Editor) może być wykorzystane do tworzenia własnych atrybutów i parametrów, ale atrybuty użytkownika są przypisane do obiektu lub elementu, który był zaznaczony podczas ich tworzenia. Może to utrudnić znajdowanie samodzielnie utworzonych atrybutów. Na szczęście, Max oferuje narzędzie, które pozwala zebrać wszystkie atrybuty zdefiniowane przez użytkownika w jednym miejscu. Jest to narzędzie Parameter Collector. Okno dialogowe Parameter Collector, widoczne na rysunku 36.11, możesz otworzyć przy użyciu polecenia Animation/Parameter Collector (Alt+2). Pozwala ono na zebranie zestawu parametrów we własnej rolecie, którą otwiera się z dowolnego miejsca programu. Dzięki temu możesz w wygodny sposób w jednym miejscu zebrać i przeglądać wszystkie parametry potrzebne do konkretnego zadania. Pod paskiem menu znajduje się pasek narzędzi z przyciskami opisanymi w tabeli 36.2. Rysunek 36.11. Okno dialogowe Parameter Collector używane jest do zebrania różnych parametrów w rolecie utworzonej przez użytkownika

W obrębie okna dialogowego Parameter Collector możesz tworzyć i nazywać nowe rolety, dodawać do nich parametry przy użyciu okna dialogowego Track View Pick i zapisywać rolety w ramach zbiorów, które potem możesz ponownie wykorzystywać. Zbiorom nadajesz nazwy, wpisując je w rozwijaną listę znajdującą się w lewym górnym rogu interfejsu. Ta rozwijana lista zawiera nazwy wszystkich dostępnych zbiorów. Do tworzenia, zmiany nazwy, kopiowania i usuwania zbiorów możesz użyć menu Collection (lub też przycisków paska narzędzi).

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

999

Tabela 36.2. Przyciski paska narzędzi okna dialogowego Parameter Collector Przycisk

Nazwa

Opis

Collection Name

Wpisuje nazwę dla bieżącego zbioru lub wybiera wśród istniejących zbiorów.

New Collection

Tworzy nowy zbiór parametrów.

Duplicate Collection

Tworzy kopię istniejącego zbioru.

Delete Collection

Usuwa aktualnie wybrany zbiór.

Multiple Edits

Przełącznik, który pozwala na zmianę wielu parametrów naraz, kiedy jest włączony.

Absolute/Relative

Przełącznik, który utrzymuje aktualną wartość w trybie bezwzględnym (Absolute) i resetuje wartość do zera, kiedy mysz jest zwalniana w trybie względnym (Relative).

Key Selected

Tworzy klucz animacji dla wybranych parametrów, jeśli włączony jest tryb Auto Key.

Reset Selected

Zeruje wartości wybranych parametrów.

Move Parameters Down Przesuwa wybrane parametry w dół rolety. Move Parameters Up

Przesuwa wybrane parametry w górę rolety.

Add to Selected Rollout

Otwiera okno dialogowe Track View Pick, w którym możesz wybrać parametr, jaki zostanie dodany do wybranej rolety.

Add to New Rollout

Otwiera okno dialogowe Track View Pick, w którym możesz wybrać parametr, jaki zostanie dodany do nowej rolety.

Delete Selected

Usuwa wybrane parametry.

Delete All

Usuwa wszystkie parametry w aktualnie wybranym zbiorze.

Properties

Otwiera okno dialogowe Key Info dla wybranego parametru, jeśli ustawiony został klucz animacji. Ten przycisk występuje obok nazwy parametru.

Zbiór parametrów może zawierać wiele rolet. Aktualnie wybrana roleta jest zaznaczona żółtym paskiem znajdującym się dokładnie pod jej nazwą i nawiasami otaczającymi jej nazwę. Przy użyciu menu Rollout (lub przycisków paska narzędzi) możesz utworzyć nową roletę lub zmodyfikować jej nazwę, zmienić kolejność rolet albo usunąć jedną z nich. Parametry są dodawane do rolet przy użyciu poleceń Parameters/Add to Selected i Parameters/Add to New Rollout. Oba polecenia otwierają okno dialogowe Track View Pick,

1000

Część VIII  Zaawansowane techniki animowania

w którym możesz wybrać określony parametr, jaki zostanie dodany do aktualnie wybranej rolety. Po lewej stronie każdego parametru znajduje się małe pole, które służy do jego zaznaczania. Parametry i rolety możesz zaznaczać także przy użyciu poleceń z menu Edit. Jeśli zaznaczonych zostało kilka parametrów, możesz zmieniać ich wartości równocześnie, wybierając opcję Edit/Multiple Edits. Jeśli jest ona włączona, zmiana wartości jednego z wybranych parametrów, powoduje zmianę wszystkich innych zaznaczonych parametrów. Możesz zmieniać wartości wielu parametrów naraz tylko wtedy, gdy są tego samego typu.

Na dole menu Edit znajduje się polecenie Edit Notes. Przy jego użyciu możesz zmienić nazwę parametru, powiązać go z wybranym adresem internetowym i wpisać uwagi na temat jego działania. Okno dialogowe Parameter Collector może być również wykorzystane do tworzenia kluczy animacji. Aby wykreować klucze animacji dla wybranych parametrów, należy włączyć przycisk Auto Key, a następnie wybrać polecenie Parameters/Key Selected (kluczowanie zaznaczonych parametrów) lub Parameters/Key All (kluczowanie wszystkich parametrów). Jeśli dla danego parametru istnieje klucz animacji, przycisk Properties po prawej stronie parametru staje się aktywny, a jego kliknięcie powoduje wyświetlenie okna Key Info. Przy użyciu polecenia Collection/Show Selected Keys in Track Bar możesz na pasku ścieżki zobaczyć klatki kluczowe dla wybranych parametrów, niezależnie od tego, czy dane obiekty są zaznaczone w oknach widokowych.

Dodawanie nowych parametrów (Parameter Editor) Jeśli do różnych rodzajów modelowania nie wystarczają Ci parametry standardowe, możesz zdefiniować nowe. Takie parametry mogą określać te aspekty sceny, które są szczególnie istotne w danej sytuacji. Przykładowo, jeśli opracowujesz model roweru, przydatnym może okazać się parametr obrotu pedałów. Nowe parametry możesz tworzyć przy użyciu okna dialogowego Parameter Editor, widocznego na rysunku 36.12. Aby otworzyć to niemodalne okno, wybierz polecenie Animation/Parameter Editor (lub wciśnij klawisze Alt+1). Rozwijana lista Add to Type na górze rolety Attribute w oknie dialogowym Parameter Editor pozwala na wybór miejsca, w którym pojawi się tworzony parametr. Nowe parametry można definiować dla obiektu, dla wybranego modyfikatora, dla materiału obiektu lub dla dowolnej ścieżki dostępnej w oknie Track View. Przycisk Pick Explicit Track otwiera okno dialogowe, w którym możesz wybrać konkretną ścieżkę. Przycisk Add tworzy nowy atrybut i dodaje go do rolety o nazwie Custom Attributes dla wybranego elementu. Jeśli określony element jest zaznaczony, możesz kliknąć przycisk Edit/Delete, aby otworzyć okno dialogowe Edit Attributes/Parameters, widoczne na rysunku 36.13. W nim wyświetlone są wszystkie atrybuty zdefiniowane przez użytkownika i związane z wybranym elementem.

Rozdział 36.  Animowanie przy użyciu kontrolera Expression

1001

Rysunek 36.12. Do tworzenia własnych parametrów możesz wykorzystać okno dialogowe Parameter Editor

Rysunek 36.13. Okno dialogowe Edit Attributes/ Parameters umożliwia edycję i usuwanie atrybutów zdefiniowanych przez użytkownika

Atrybuty użytkownika pojawiają się w rolecie o nazwie Custom Attributes, umieszczonej poniżej wszystkich innych rolet, ale jeśli przed utworzeniem nowego atrybutu dodasz do obiektu modyfikator Attribute Holder, roleta Custom Attributes pojawi się bezpośrednio pod modyfikatorem Attribute Holder.

Okno dialogowe Edit Attributes/Parameters pozwala na wybieranie i porządkowanie atrybutów w obrębie ich rolety. Wybranie atrybutu powoduje wczytanie jego ustawień do okna Parameter Editor, gdzie można je zmieniać. Rozwijana lista Parameter Type umożliwia wybranie typu parametru. Dostępne opcje to Angle (kąt), Array (tablica), Boolean (prawda lub fałsz), Color (kolor), Float (liczba

1002

Część VIII  Zaawansowane techniki animowania

zmiennoprzecinkowa), fRGBA (zmiennoprzecinkowe składowe koloru i przezroczystości), Integer (liczba całkowita), Material (materiał), Node (węzeł), Percent (procent), String (ciąg znaków), TextureMap (mapa tekstury) i WorldUnits (jednostki globalne). Rozwijana lista UI Type określa sposób wyświetlania parametru w rolecie. Wygląd parametru zależy od jego rodzaju. Wartości liczbowe mogą mieć postać suwaków lub spinerów, wartości boolowskie mogą być opcjami do wyboru, wartości tablic to rozwijane listy, węzły to przyciski wyboru (pozwalające na wybór obiektu w oknach podglądu), wartości koloru to próbniki kolorów, a mapy tekstur to przyciski map. Możesz również nadać parametrowi dowolną nazwę. Roleta Options zmienia się, zależnie od wybranego rodzaju parametru. Rolety te zawierają ustawienia dla szerokości interfejsu, zakresu wartości, wartości domyślnych, położenia (lewo, prawo lub środek) i elementów listy. Roleta Testing Attribute pokazuje wygląd elementu interfejsu i pozwala zmieniać atrybut w celu przetestowania działania parametru. Przydatność atrybutów użytkownika stanie się oczywista, kiedy zaczniesz wiązać parametry narzędziem Parameter Wiring.

Podsumowanie W rozdziale tym omówiono podstawy używania kontrolera Expression. Wykorzystanie wzorów matematycznych do kontrolowania animacji transformacji obiektu i jego parametrów to potężne narzędzie. Możesz także użyć wartości jednego obiektu do kontrolowania innego. Połączenie możliwości kontrolera Expression z potencjałem tkwiącym w wiązaniu parametrów za pomocą okna Parameter Wiring udostępnia nowe sposoby sterowania obiektami. Poznaliśmy też metody tworzenia nowych parametrów przy użyciu okien dialogowych Parameter Collector i Parameter Editor. Te wszystkie narzędzia znakomicie ułatwiają zapanowanie nad zachowaniem się obiektów w scenie. W tym rozdziale mogłeś zapoznać się z zagadnieniami takimi jak: 

tworzenie wyrażeń w oknie dialogowym Expression Controller,



wyrażenia i ich możliwości,



dostępne operatory, zmienne i funkcje,



sterowanie transformacjami obiektów i parametrami,



tworzenie i wiązanie parametrów,



gromadzenie i edytowanie kilku parametrów naraz za pomocą narzędzia Parameter Collector,



tworzenie nowych parametrów przy użyciu okna Parameter Editor.

W następnym rozdziale nauczysz się używać okna Track View do wyświetlania wszystkich szczegółów sceny i zarządzania nimi.

Rozdział 37.

Praca z krzywymi funkcyjnymi w oknie Track View W tym rozdziale: 

Omówienie okna Track View



Opis okien edytora krzywych (Curve Editor) i raportu operatorskiego (Dope Sheet)



Używanie kluczy i zakresów czasowych



Dopasowywanie krzywych funkcyjnych



Filtrowanie ścieżek



Przypisywanie kontrolerów



Optymalizacja kluczy animacji



Ustalanie typu krzywej poza zakresem kluczy



Dodawanie notatek do ścieżki



Synchronizacja animacji ze ścieżką dźwiękową

W trakcie przemieszczania obiektów w oknie widokowym często dochodzi do ustalania położenia obiektu w scenie „na oko”. Jeśli w takich sytuacjach odczuwasz brak znajomości dokładnych wartości wszystkich parametrów, jakie kryją się w scenie, powinieneś skorzystać z okna Track View. Oferuje ono trzy tryby działania: Curve Editor (edytor krzywych), Dope Sheet (raport operatorski) i Track Bar (pasek ścieżki). Każdy z nich pozwala na obejrzenie szczegółów sceny pod innym kątem. Tryby okna Track View udostępniają wszelkie możliwe informacje na temat sceny, włączając w to wszystkie jej parametry i klucze animacji. Możliwe jest zatem kontrolowanie i zmienianie wszystkich parametrów i kluczy w jednym miejscu.

1004

Część VIII  Zaawansowane techniki animowania

Okno to zawiera także dodatkowe opcje, które pozwalają na edycję zakresu kluczy, dodawanie i synchronizowanie dźwięku w scenie, a także korzystanie z kontrolerów animacji przy użyciu krzywych funkcyjnych.

Omówienie okna Track View Chociaż okno Track View oferuje różne tryby działania, jego podstawowe funkcje są zawsze takie same. Możesz korzystać z menu, pasków narzędziowych, panelu kontrolerów, panelu kluczy i skali czasu. Elementy te przedstawiono na rysunku 37.1. Ich widoczność możesz ustawiać przy użyciu opcji Show UI Elements w menu pojawiającym się po kliknięciu prawym przyciskiem myszy paska tytułowego. Poza tym panel kontrolerów możesz szybko ukryć, klikając czarny trójkącik w lewym górnym rogu panelu kluczy. Rysunek 37.1. Okno Track View zapewnia pełny wgląd w hierarchię sceny

Ikonka służąca do ukrywania i odkrywania panelu kluczy jest nowością w 3ds Max 2012.

Tryby okna Track View Okno Track View oferuje trzy tryby pracy: edytor krzywych (Curve Editor), raport operatorski (Dope Sheet) i pasek ścieżki (Track Bar). Tryb edytora krzywych wyświetla wszystkie zmiany parametrów jako wykresy zależności wartości tych parametrów od czasu. Przebiegiem krzywych można manipulować, tak jak zwykłymi splajnami. Raport operatorski pozwala na skoordynowanie zakresów kluczy pomiędzy ścieżkami różnych parametrów. Pasek ścieżki oferuje szybki sposób na obejrzenie ścieżki w oknach widokowych. Dostęp do trybu edytora krzywych i raportu operatorskiego możesz uzyskać, korzystając z poleceń znajdujących się w menu Graph Editors. Okno edytora krzywych otwiera się

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1005

po wybraniu Graph Editors/Track View-Curve Editor lub kliknięciu przycisku Curve Editor na głównym pasku narzędziowym. Raport operatorski otwieramy podobnie, wybierając z menu polecenie Graph Editors/Track View-Dope Sheet. W menu Graph Editors znajdziesz także polecenie dające dostęp do okna Schematic View. Więcej informacji na ten temat znajdziesz w rozdziale 25., „Budowanie złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

Po otwarciu okna Track View możesz nadać mu unikalną nazwę, wpisując ją w polu tekstowym znajdującym się na pasku narzędziowym Name: Track View. Jeśli pasek Name nie jest widoczny, kliknij prawym przyciskiem myszy pasek tytułowy i wybierz opcję Show Toolbars/Name: Track View. Okna z nadanymi nazwami są widoczne w podmenu Graph Editors/Saved Track Views. Wszystkie nazwane okna Track View są zapisywane razem z plikiem sceny. Aby otworzyć okno Track View w trybie Track Bar, kliknij przycisk Open Mini Curve Editor znajdujący się na lewym końcu paska ścieżki w dolnej części głównego interfejsu. Wyjście z tego trybu umożliwia przycisk Close znajdujący się na pasku narzędziowym. Taki tryb okna Track View został pokazany na rysunku 37.2.

Rysunek 37.2. Przycisk obok paska ścieżki daje szybki dostęp do okna Track View

Po otwarciu okna Track View możesz przełączać się pomiędzy trybami edytora krzywych i raportu operatorskiego przy użyciu menu Modes lub przez wybranie nowego trybu z menu Load Layout dostępnego po kliknięciu prawym przyciskiem myszy paska menu lub paska narzędziowego (poza obrębem przycisków). Możesz także własnoręcznie zapisać zmodyfikowane tryby przy użyciu poleceń Save Layout i Save Layout As.

1006

Część VIII  Zaawansowane techniki animowania

Menu i paski narzędziowe okna Track View W wielu przypadkach menu i paski narzędziowe dają dostęp do tych samych funkcji i opcji programu niezależnie od wybranego trybu. Sytuacja wygląda inaczej w przypadku menu Modes, które pozwala przełączać się pomiędzy trybem edytora krzywych i raportu operatorskiego. Menu edytora krzywych to Modes (tryby), Controller (kontroler), Tracks (ścieżki), Keys (klucze), Curves (krzywe), Options (opcje), Display (wyświetlanie), View (widok) i Utilities (narzędzia). Menu raportu operatorskiego pozbawione jest podmenu Curves, a jego nowym elementem jest menu Time (czas). W trybie Track Bar menu jest takie, jak w trybie edytora krzywych, z wyjątkiem menu Modes. Okno Track View zawiera także kilka pasków narzędziowych. Możesz je otworzyć, klikając prawym przyciskiem myszy pasek narzędziowy (poza obrębem przycisków) i wybierając podmenu Show Toolbars. Dostępność pasków narzędziowych zależy od wybranego układu okna — Function Curve Layout, Function Curve Layout (Classic) lub Dope Sheet. W trybie Function Curve domyślnie wyświetlane są paski Key Controls (manipulowanie kluczami), Navigation (nawigacja), Key Tangents (styczne kluczy), Tangent Actions (działanie stycznych) i Key Entry (wartość klucza). W trybie Dope Sheat górną część okna domyślnie zajmują paski Keys (klucze), Time (czas), Display (wyświetlanie) i Name (nazwa). Wszystkie paski narzędziowe mogą być dokowane, pływające i ukrywane. Możesz także dodawać nowe paski przy użyciu menu otwieranego prawym przyciskiem myszy. W 3ds Max 2012 po raz pierwszy pojawiły się paski Key Controls, Key Entry i Tangent Action. Więcej informacji na temat dokowanych i pływających pasków narzędziowych znajdziesz w rozdziale 1., „Poznawanie interfejsu Maksa”.

W trybie edytora krzywych domyślnie wyświetlane są tylko te paski, które zawierają najważniejsze narzędzia. Dawne są nadal dostępne i można z nich korzystać po wczytaniu układu klasycznego — z menu rozwijanego prawym przyciskiem myszy należy wybrać Load Layout/Function Curve Layout (Classic). Zależnie od rozmiaru okna Track View konieczne może być przeciągnięcie paska narzędziowego w lewo, aby zobaczyć wszystkie przyciski na jego prawym końcu.

Pasek narzędziowy Key Controls Pasek narzędziowy Key Controls jest pierwszym z domyślnych pasków narzędziowych dla edytora krzywych. Opis jego przycisków znajduje się w tabeli 37.1.

Pasek narzędziowy Navigation Pasek Navigation w edytorze krzywych umożliwia skupienie się na wybranym fragmencie widoku ścieżek. Opis jego przycisków znajduje się w tabeli 37.2. W niezmienionej postaci jest dostępny również w trybie Dope Sheet.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1007

Tabela 37.1. Przyciski paska narzędziowego Key Controls Przycisk

Nazwa

Opis

Move Keys, Move Keys Horizontal, Pozwala na przemieszczenie wybranych kluczy Move Keys Vertical w dowolnym kierunku lub tylko wzdłuż osi poziomej bądź pionowej. Draw Curves

Umożliwia rysowanie krzywej funkcyjnej przez przeciągnięcie myszą; dostępny jedynie w edytorze krzywych.

Insert Keys

Pozwala na dodanie nowych kluczy na ścieżce.

Region Tool

Umożliwia przesuwanie i skalowanie kluczy objętych prostokątną ramką transformacji.

Tabela 37.2. Przyciski paska narzędziowego Navigation Przycisk

Nazwa

Opis

Pan

Przesuwa widok.

Zoom Horizontal Extents, Zoom Horizontal Extents Keys

Dopasowują poziomą skalę ścieżki lub kluczy do szerokości okna.

Zoom Value Extents, Zoom Value Extents Range

Dopasowują pionową skalę ścieżki lub kluczy do wysokości okna.

Zoom, Zoom Time, Zoom Values

Pozwalają powiększać i zmniejszać widok jednocześnie w pionie i poziomie lub tylko w jednym z tych kierunków.

Zoom Region

Powiększa obszar widoku zdefiniowany przeciągnięciem myszy.

Isolate Curve

Tymczasowo ukrywa wszystkie krzywe poza tymi, których klucze zostały zaznaczone.

Przyciski Region Tool i Isolate Curve są nowością w 3ds Max 2012.

Pasek narzędziowy Key Tangents Pasek narzędziowy Key Tangents to kolejny domyślny pasek narzędziowy w edytorze krzywych. Jest stosowany do ustawiania krzywych In (wejścia do kluczy) i Out (wyjścia z kluczy). Pasek ten jest dostępny także w trybie raportu operatorskiego. W tabeli 37.3 znajduje się opis przycisków tego paska.

Pasek narzędziowy Tangent Actions Pasek narzędziowy Tangent Actions to ostatni domyślny pasek narzędziowy w górnej części edytora krzywych. Jest stosowany do szybkiego rozłączania i łączenia stycznych. Zawarte w nim przyciski są opisane w tabeli 37.4.

1008

Część VIII  Zaawansowane techniki animowania

Tabela 37.3. Przyciski paska narzędziowego Key Tangents Przycisk

Nazwa

Opis

Set Tangents to Auto, Set In Tangents to Auto, Set Out Tangents to Auto

Ustawia krzywą tak, aby wchodziła do klatki kluczowej i wychodziła z niej w automatyczny sposób.

Set Tangents to Spline, Set In Tangents to Spline, Set Out Tangents to Spline

Ustawia krzywą tak, aby wchodziła do klatki kluczowej i wychodziła z niej w sposób określony przez położenie uchwytów.

Set Tangents to Fast, Set In Tangents to Fast, Set Out Tangents to Fast

Ustawia krzywą tak, aby wchodziła do klatki kluczowej i wychodziła z niej z dużą prędkością.

Set Tangents to Slow, Set In Tangents to Slow, Set Out Tangents to Slow

Ustawia krzywą tak, aby wchodziła do klatki kluczowej i wychodziła z niej z małą prędkością.

Set Tangents to Stepped, Ustawia krzywą tak, aby wchodziła do klatki kluczowej Set In Tangents to Stepped, i wychodziła z niej w sposób skokowy. Set Out Tangents to Stepped Set Tangents to Linear, Set In Tangents to Linear, Set Out Tangents to Linear

Ustawia krzywą tak, aby wchodziła do klatki kluczowej i wychodziła z niej w sposób liniowy.

Set Tangents to Smooth, Set In Tangents to Smooth, Set Out Tangents to Smooth

Ustawia krzywą tak, aby wchodziła do klatki kluczowej i wychodziła z niej w sposób gładki.

Tabela 37.4. Przyciski paska narzędziowego Tangent Actions Przycisk

Nazwa

Opis

Break Tangents

Umożliwia niezależne manipulowanie stycznymi po obu stronach klucza.

Unify Tangents

1 Ustawia obie styczne w linii prostej .

Przyciski Break Tangents i Unify Tangents są nowością w 3ds Max 2012.

Pasek narzędziowy Key Entry Pasek narzędziowy Key Entry w edytorze krzywych wyświetla numer bieżącej klatki i wartość zaznaczonego klucza. Jeśli zaznaczonych jest więcej kluczy, wyświetlany jest tylko numer klatki. W polach edycyjnych paska można także wpisywać konkretne liczby, co

1

Tak naprawdę narzędzie to zespala obie styczne w jedną całość, ale nie zmienia ich wzajemnego ułożenia — przyp. tłum.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1009

prowadzi do zmiany bieżącej klatki i (lub) wartości zaznaczonego klucza (lub kluczy). Można dzięki temu zaoszczędzić dużo czasu, gdy trzeba wielu kluczom przypisać te same wartości. Pola edycyjne z numerem bieżącej klatki i wartością klucza są dostępne także w trybie Dope Sheet na pasku Key Stats.

Pasek narzędziowy Keys Pasek narzędziowy Keys jest pierwszym z domyślnych pasków narzędziowych raportu operatorskiego. W tabeli 37.5 znajduje się opis jego przycisków. Tabela 37.5. Przyciski paska narzędziowego Keys Przycisk

Nazwa

Opis

Edit Keys

Włącza tryb edycji kluczy.

Edit Ranges

Włącza tryb edycji zakresów.

Filters

Otwiera okno dialogowe Filter, gdzie można określić, które ścieżki mają być wyświetlane.

Move Keys, Pozwala na przemieszczenie wybranych kluczy w dowolnym Move Keys Horizontal, kierunku lub tylko wzdłuż osi poziomej bądź pionowej. Move Keys Vertical Slide Keys

Pozwala na przesunięcie wybranych kluczy wraz z sąsiednimi.

Insert Keys

Pozwala na dodanie nowych kluczy na ścieżce.

Scale Keys

Pozwala na przeskalowanie wybranych kluczy.

Pasek narzędziowy Time Pasek narzędziowy Time to kolejny z domyślnych pasków narzędziowych trybu raportu operatorskiego. Stosuje się go przy pracy z zakresami czasu. W tabeli 37.6 znajduje się opis przycisków tego paska.

Pasek narzędziowy Display Pasek narzędziowy Display to trzeci domyślny pasek w trybie Dope Sheet. W tabeli 37.7 znajduje się opis jego przycisków.

Paski narzędziowe Track Selection i Key Stats Przy dolnej krawędzi okna Dope Sheet pojawiają się domyślnie trzy paski narzędziowe: Track Selection, Key Stats i Navigation. Przy ich użyciu możesz znaleźć konkretne ścieżki, sprawdzić informacje na temat kluczy i poruszać się po oknie.

1010

Część VIII  Zaawansowane techniki animowania

Tabela 37.6. Przyciski paska narzędziowego Time Przycisk

Nazwa

Opis

Select Time

Pozwala na wybranie wycinka czasu poprzez kliknięcie i przeciągnięcie myszą.

Delete Time

Usuwa zaznaczony wycinek czasu.

Reverse Time

Odwraca kolejność w zaznaczonym wycinku czasu.

Scale Time

Skaluje aktualnie wybrany wycinek czasu

Insert Time

Wstawia dodatkowy wycinek czasu.

Cut Time

Usuwa wybrany wycinek czasu i umieszcza go w schowku.

Copy Time

Tworzy kopię wybranego wycinka czasu i umieszcza ją w schowku.

Paste Time

Wstawia zawartość schowka.

Tabela 37.7. Przyciski pasków narzędziowych Display Przycisk

Nazwa

Opis

Lock Selection

Zapobiega jakimkolwiek zmianom w aktualnym zaznaczeniu.

Snap Frames

Przyciąga przesuwane klucze do najbliższej klatki.

Show Keyable Icons

Wyświetla ikonę klucza przy wszystkich ścieżkach, które można animować.

Modify Subtree

Powoduje zastosowanie zmian wprowadzonych w ścieżce hierarchicznie nadrzędnej wobec wszystkich ścieżek jej podrzędnych; dostępny jedynie w raporcie operatorskim.

Modify Child Keys

Powoduje przenoszenie zmian z kluczy nadrzędnych do kluczy podrzędnych; dostępny jedynie w raporcie operatorskim.

Na pasku narzędziowym Track Selection znajduje się przycisk Zoom Selected Object wraz z polem Select by Name, w którym możesz wpisać nazwę ścieżki, jaką chcesz znaleźć. W polu Select by Name możesz również używać wieloznaczników, takich jak * (gwiazdka) i ? (pytajnik), do wyszukiwania jednocześnie kilku ścieżek o podobnej nazwie.

Pasek narzędziowy Key Stats zawiera pola Key Time i Value Display, które wyświetlają numer klatki i wartość klucza. Możesz wpisać w te pola wartości, zmieniając tym samym aktualny czas lub wartość kluczowanego parametru. Możesz także wpisać w te pola wyrażenie, w którym zmienna n oznacza wartość lub aktualny czas klatki kluczowej. Aby np. określić wartość klucza, który znajduje się o 20 klatek od aktualnej klatki, wpisz n + 20

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1011

(podając w miejsce n aktualną wartość). Możesz także zastosować dowolną funkcję, która jest poprawna dla kontrolera Expression, np. sin() lub log(). Kliknij przycisk Show Selected Key Stats, aby w panelu Key wyświetlić wartość klucza. Rozdział 36., „Animowanie przy użyciu kontrolera Expression i wiązania parametrów”, opisuje funkcje, które są częścią kontrolera wyrażeń.

W tabeli 37.8 opisane są przyciski znajdujące się na paskach narzędziowych Track Selection i Key Stats. Tabela 37.8. Przyciski pasków narzędziowych Track Selection i Key Stats Przycisk

Nazwa

Opis

Zoom Selected Object

Umieszcza aktualne zaznaczenie na szczycie hierarchii.

Edit Track Set

Otwiera okno dialogowe, w którym można dokonać edycji wybranych zestawów ścieżek.

Filter Selected Tracks

Włącza wyświetlanie tylko zaznaczonych ścieżek w panelu Controller.

Filter Selected Objects

Włącza wyświetlanie ścieżek tylko dla zaznaczonych obiektów.

Filter Animated Tracks

Włącza wyświetlanie w panelu Controller tylko animowanych ścieżek.

Filter Unlocked Attributes

Włącza wyświetlanie w panelu Controller tylko tych ścieżek, których atrybuty nie są zablokowane.

Show Selected Key Statistics

Wyświetla numer klatki i wartość klucza obok każdej klatki kluczowej.

Inne paski narzędziowe Pozostałe paski narzędziowe umożliwiają dostęp do funkcji, które są dostępne również poprzez polecenia menu. Domyślnie paski te są ukryte, ale w każdej chwili można je włączyć za pomocą polecenia Show Toolbars w menu, jakie ukazuje się po kliknięciu prawym przyciskiem myszy pustego miejsca w którymkolwiek z pasków już wyświetlanych.

Panele kontrolerów i kluczy Poniżej menu (i zadokowanych u góry pasków narzędziowych) znajdują się dwa panele. Lewy, o nazwie Controller (panel kontrolerów), przedstawia hierarchiczną listę wszystkich ścieżek. Prawy panel ma nazwę Key (panel kluczy) i wyświetla zakres czasu, klucze lub krzywe funkcyjne, zależnie od trybu pracy. Zawartość panelu Controller można przesuwać, klikając i przeciągając jego pusty obszar. Kursor zmienia się w dłoń sygnalizującą możliwość takiego przesuwania. Panel kontrolerów możesz szybko ukryć, klikając czarny trójkącik w lewym górnym rogu panelu kluczy.

1012

Część VIII  Zaawansowane techniki animowania

Każda ścieżka może zawierać kilka podścieżek. Aby je wyświetlić, kliknij znak plus (+) znajdujący się po lewej stronie nazwy ścieżki. Gdy chcesz je zwinąć, kliknij znak minus (–). Możesz także użyć menu Options, aby za pomocą opcji Auto Expand automatycznie rozwinąć wybraną hierarchię. W menu Options/Auto Expand znajdują się opcje Selected Objects Only (tylko wybrane obiekty), Transforms (transformacje), XYZ Components (elementy XYZ), Limits (ograniczenia), Keyable (możliwe do kluczowania), Animated (animowane), Base Objects (obiekty bazowe), Modifiers (modyfikatory), Materials (materiały) i Children (podrzędne). Jeśli np. włączona jest opcja Auto Expand/Transforms, ścieżki Transform dla wszystkich obiektów są automatycznie rozwijane w oknie Track View. Przy użyciu tych ustawień możesz bardzo szybko znaleźć ścieżkę, której właśnie poszukujesz. Przełącznik Options/Auto Select/Animated automatycznie zaznacza wszystkie animowane ścieżki. Możesz również wybrać ścieżki Position, Rotation i (lub) Scale. W menu Options/ Auto Scroll można wybrać ścieżki zaznaczone (Selected) i (lub) ścieżki obiektów (Objects). Polecenie to automatycznie przemieszcza odpowiednie ścieżki na szczyt panelu Controller. Możesz także zaznaczać, rozwijać i zwijać gałęzie hierarchii przy użyciu czteroczęściowego menu kontekstowego dostępnego po kliknięciu prawym przyciskiem myszy.

Panel Controller zawiera wiele różnych typów ścieżek. Domyślnie każda scena zawiera następujące ścieżki: World, Sound, Global Tracks, Video Post, SME, Anim Layer Control Manager, Environment, Render Effects, Render Elements, Renderer, Global Shadow Parameters, Scene Materials, Medit Materials (dla materiałów w edytorze materiałów) i Objects (patrz rysunek 37.3). Rysunek 37.3. Kilka ścieżek jest dostępnych domyślnie

Klawisze Shift, Ctrl i Alt ułatwiają zaznaczanie i usuwanie zaznaczenia wielu ścieżek naraz. Aby zaznaczyć ciągły zakres ścieżek, zaznacz pierwszą z nich, a potem ostatnią, przytrzymując wciśnięty klawisz Shift. Spowoduje to zaznaczenie tych dwóch ścieżek wraz z wszystkimi ścieżkami znajdującymi się pomiędzy nimi. Aby zaznaczyć wiele niesąsiadujących ze sobą ścieżek, użyj klawisza Ctrl. Klawisz Alt usuwa elementy z istniejącego zaznaczenia. Poniżej prawego panelu znajduje się pasek Time Ruler (skala czasu), który wyświetla aktualny czas według ustawień znajdujących się w oknie dialogowym Time Configuration. Bieżąca klatka wyróżniona jest kolorem jasnoniebieskim. Pasek skali czasu jest sprzężony z suwakiem czasu — przesunięcie jednego automatycznie powoduje przesunięcie drugiego.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1013

U góry na prawo od panelu Key (ponad pionowym paskiem przewijania) znajduje się mały suwak, którego możesz użyć do podzielenia paneli Controller i Key na dwa osobne widoki, co jest pokazane na rysunku 37.4. Korzystając z tej opcji, możesz oglądać dwie różne części hierarchii w tym samym czasie. Ułatwia to kopiowanie i wklejanie kluczy pomiędzy dwiema różnymi ścieżkami. Skalę czasu możesz przesuwać pionowo w obrębie prawego panelu.

Rysunek 37.4. Przeciągnij suwak nad pionowym paskiem przewijania, by podzielić okno Track View na dwa osobne widoki

Używanie kluczy Klatki kluczowe, w których znajdują się klucze, określają główne punkty animacji. Max automatycznie oblicza wszystkie położenia i wartości pomiędzy kluczami, tworząc w ten sposób animację. Przy użyciu okna Track View możesz precyzyjnie edytować klucze animacji w każdym z dostępnych trybów, ale najłatwiej to robić w trybie raportu operatorskiego przy włączonym przycisku Edit Keys. W rozdziale 21., „Animacja i klatki kluczowe”, opisano dokładniej tworzenie kluczy animacji.

W edytorze krzywych klucze wyświetlane są jako małe kwadraty rozmieszczone wzdłuż krzywej wykresu. W raporcie operatorskim są wyświetlane jako kolorowe linie, które przechodzą przez odpowiednie ścieżki, co pokazano na rysunku 37.5. Klucze dla ścieżki Position są czerwone, dla Rotation — zielone, dla Scale — niebieskie, a dla parametrów (klucze niezwiązane z transformacjami) — szare. Ścieżki nadrzędne (np. nazwa obiektu) również są szare. Zaznaczenie klucza nadrzędnego powoduje automatyczne zaznaczenie wszystkich kluczy podrzędnych. Zaznaczone klucze mają kolor biały. Nazwa ścieżki zawierającej klatkę kluczową jest podświetlona na żółto. Jeśli panel Key jest za wąski, klatka kluczowa wyświetlana jest w postaci grubej, czarnej linii.

1014

Część VIII  Zaawansowane techniki animowania

Rysunek 37.5. W raporcie operatorskim klucze położenia są czerwone, obrotu — zielone, skali — niebieskie, a parametrów — szare

Zaznaczanie kluczy Zanim będziesz mógł przesuwać i edytować klucze, musisz je zaznaczyć. Dokonasz tego, klikając je, tak samo jak w przypadku zaznaczania ich na pasku ścieżki. Zaznaczone klucze stają się białe. Aby zaznaczyć wiele kluczy naraz, przytrzymaj klawisz Ctrl podczas klikania poszczególnych kluczy lub też przeciągnij myszą nad kilkoma z nich. Kliknięcie poza obszarem kluczy powoduje anulowanie zaznaczenia. Po zaznaczeniu jednego lub wielu kluczy możesz zablokować zaznaczenie przy użyciu przycisku Lock Selection. Spacja to skrót klawiszowy tego przycisku. Po zablokowaniu zaznaczenia nie możesz zaznaczać żadnych innych kluczy. Jeśli z dowolnego miejsca programu chcesz uzyskać dostęp do konkretnego parametru za pośrednictwem okna Track View, możesz kliknąć ten parametr prawym przyciskiem myszy i z menu podręcznego wybrać polecenie Show in Track View. Spowoduje to otwarcie okna Track View z takim ustawieniem, aby parametr ów był widoczny.

Używanie miękkiego zaznaczania Menu Keys zawiera także opcję Use Soft Select. Jest podobna w działaniu do miękkiego zaznaczania dostępnego w panelu Modify przy pracy z podobiektami, ale tutaj odnosi się do kluczy. Polecenie Keys/Soft Select Settings otwiera prosty pasek narzędziowy, na którym możesz włączyć miękkie zaznaczanie i ustawić wartość Range (zakres) i Falloff (zanik). Jeśli opcja miękkiego zaznaczania jest włączona, wszystkie klatki kluczowe w określonym zakresie są również przemieszczane, ale w mniejszym stopniu niż zaznaczona klatka kluczowa. W trybie edytora krzywych krzywa funkcyjna jest wtedy wyświetlana z gradientem, a w trybie raportu operatorskiego jako gradient przechodzący przez znaczniki kluczy. W ten sposób ilustrowany jest zakres i zanik zaznaczenia. Polecenie Keys/Soft Select Settings otwiera ukryty pasek narzędziowy z przyciskiem Soft, który służy do włączania i wyłączania trybu miękkiego zaznaczania. Parametr Range określa liczbę klatek objętych takim zaznaczeniem. Pasek ten można zadokować przy krawędzi okna.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1015

Dodawanie i usuwanie kluczy Możesz dodać klucz animacji, klikając przycisk Insert Keys (lub wciskając klawisz A), a następnie miejsce, w którym chcesz umieścić nową klatkę kluczową. Każdy nowy klucz otrzymuje wartość wynikającą z interpolacji wartości kluczy sąsiednich. Nowy klucz można wstawić niezależnie od tego, czy przycisk Auto Key w głównym interfejsie jest włączony, czy nie. Aby usunąć klucze, zaznacz je i wciśnij klawisz Delete. Usunięcie klucza na ogół powoduje zmianę kształtu krzywej funkcyjnej.

Przemieszczanie, przesuwanie i skalowanie kluczy Przycisk Move Keys (skrót klawiszowy M) pozwala na zaznaczenie klucza i przemieszczenie go w nowe położenie. Możesz klonować klucze, przytrzymując klawisz Shift podczas przemieszczania. Przy użyciu innych przycisków z tej grupy możesz wybrać ograniczenie ruchu w poziomie lub pionie. Możesz także przemieścić wybrany klucz w miejsce położenia kursora (do bieżącej klatki) za pomocą polecenia Keys/Align to Cursor. Przycisk Slide Keys w trybie Dope Sheet pozwala na zaznaczenie klucza i przesunięcie go razem z wszystkimi sąsiednimi kluczami w lewo lub prawo. Jeśli zaznaczony klucz jest przesuwany w prawo, wszystkie klucze aż do końca animacji przesuwają się w prawo. Jeśli jest przesuwany w lewo, wszystkie klucze aż do początku animacji przesuwają się w lewo. Przycisk Scale Keys, również dostępny w trybie Doope Sheet, pozwala na zagęszczenie lub rozluźnienie grupy kluczy. Środkiem skalowania jest w tym wypadku aktualnie zaznaczony klucz. Możesz użyć klawisza Shift do klonowania kluczy podczas przeciągania. Jeśli w trybie Dope Sheet włączony jest przycisk Snap Frames (skrót klawiszowy S), wybrany klucz podczas przemieszczania jest przyciągany do najbliższej sąsiedniej klatki kluczowej. Ułatwia to wyrównywanie kluczy do tej samej klatki.

Posługiwanie się narzędziem Region Narzędzie Region jest używane w trybie edytora krzywych do przesuwania i skalowania całych grup kluczy. Aby użyć tego narzędzia, należy włączyć przycisk Region Tool i przeciągnąć myszą przez te klucze, które mają być zaznaczone. Zostaną one otoczone prostokątną ramką z uchwytami przy każdym boku (patrz rysunek 37.6). Kliknięcie wewnątrz ramki i przeciągnięcie jej spowoduje przemieszczenie wszystkich zaznaczonych kluczy. Przesuwanie w górę lub w dół powoduje zmianę wartości kluczy, a przesuwanie na boki przenosi klucze do innych klatek. Narzędzie Region jest nowością w 3ds Max 2012.

Przeciąganie uchwytów bocznych powoduje skalowanie zakresu klatek obejmowanych przez zaznaczone klucze, a przeciąganie uchwytów górnego i dolnego skaluje wartości tych kluczy. Każdy z uchwytów wprowadza skalowanie tylko po swojej stronie ramki,

1016

Część VIII  Zaawansowane techniki animowania

Rysunek 37.6. Narzędzie Region tworzy wokół zaznaczonych kluczy ramkę z uchwytami

ale jeśli wciśniesz dodatkowo klawisz Shift, skalowanie będzie się odbywało symetrycznie po obu stronach. Jeśli przesuniesz ramkę regionu na klucze niezaznaczone, zostaną one po prostu usunięte. Narzędzie Region pozostaje aktywne tak długo, jak długo nie zostanie wybrane inne narzędzie, na przykład Move Keys. Jeśli klikniesz i przeciągniesz myszą poza ramką regionu, zaznaczone zostaną inne klucze i powstanie nowy region.

Edycja kluczy Aby edytować parametry kluczowe dowolnego kontrolera, kliknij klucz prawym przyciskiem myszy. W przypadku większości kontrolerów spowoduje to otwarcie okna dialogowego Key Info. Dostęp do tego okna możesz także uzyskać, klikając prawym przyciskiem myszy ścieżkę i wybierając z menu podręcznego opcję Properties. Poleceń tych możesz użyć również po zaznaczeniu wielu kluczy na tej samej lub kilku różnych ścieżkach.

Używanie narzędzia Randomize Keys Narzędzie Randomize Keys pozwala losowo wygenerować położenia i wartości kluczy z określoną wartością przesunięcia. Gdy chcesz uzyskać do niego dostęp, wskaż ścieżkę z klatkami kluczowymi, na których chcesz użyć narzędzia Randomize Keys, i wybierz polecenie Utilities/Track View Utilities, aby otworzyć okno dialogowe Track View Utilities. W oknie dialogowym wskaż Randomize Keys i kliknij OK. Spowoduje to otwarcie okna dialogowego Randomize Keys, widocznego na rysunku 37.7. Rysunek 37.7. Przy użyciu narzędzia Randomize Keys możesz losowo wygenerować położenia i wartości kluczy

Za pomocą tego okna dialogowego możesz ustalić dodatnie i ujemne przesunięcia dla czasu (Time) i wartości (Value). Kliknij przycisk Apply, aby zastosować proces losowego generowania.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1017

Stosowanie narzędzia Euler Filter Obroty Eulera są bardzo proste i łatwe w użyciu. Polegają na obracaniu obiektu wokół każdej z trzech osi układu współrzędnych. Mają jednak wewnętrzną wadę — często powodują występowanie zjawisk zwanych przewrotem przegubu (gimbal flipping) i blokadą przegubu (gimbal lock). Pierwsze z nich może pojawić się, gdy oś obrotu jest skierowana pionowo w górę lub w dół, i polega na nagłym przeskakiwaniu o 180 stopni, po czym obrót jest dalej kontynuowany. Drugie zjawisko występuje wtedy, gdy dwie osie obrotu nakładają się na siebie, przez co obiekt traci jeden stopień swobody. Aby uniknąć tego typu zjawisk, można skorzystać z innej metody obracania obiektów, opartej na kwaternionach. Kwaterniony bazują na wektorach i nie stwarzają takich problemów jak obroty Eulera. Jednak wielu animatorów trzyma się od nich z dala, uważając je za zbyt skomplikowane i, godząc się na ewentualne problemy, pozostaje przy prostych obrotach Eulera. Okno Track View zawiera narzędzie, które może być pomocne w pracy z obrotami Eulera. Funkcja Euler Filter analizuje bieżący zakres klatek animacji i koryguje wykryte przewroty lub blokady przegubu. Wybranie tego narzędzia z okna Track View Utility otwiera proste okno dialogowe, gdzie można określić zakres klatek, które mają być analizowane. Jest tam również opcja Add Keys If Needed (dodaj klucze w razie potrzeby).

Wyświetlanie ikon dostępności animacji Jeśli jesteś nieostrożny, może się okazać, że wykonałeś animację ścieżki, której nie chciałeś animować (może się to zdarzyć szczególnie wtedy, jeśli podczas pracy masz włączony tryb Auto Key). Oznaczając ścieżkę jako dostępną do animowania lub też nie, możesz uniknąć takiej sytuacji. Aby oznaczać w ten sposób ścieżki, wybierz polecenie Display/Keyable Icons. Spowoduje to umieszczenie małej ikony czerwonego klucza po lewej stronie każdej ścieżki, której animację można wykonać. Następnie możesz kliknąć taką ikonę, aby wyłączyć daną ścieżkę z możliwości animacji. Na rysunku 37.8 widoczne jest okno edytora krzywych z włączoną tą właśnie opcją. Rysunek 37.8. Opcja Keyable Icons wyświetla ikonę obok ścieżek, w których możesz wstawić klatki kluczowe

1018

Część VIII  Zaawansowane techniki animowania

Edycja zakresów czasowych W niektórych przypadkach praca bezpośrednio na klatkach kluczowych nie jest tym, o co nam chodzi. Jeśli np. chcesz zmienić czas trwania animacji z sześciu na pięć sekund, lepiej skorzystać z trybu Edit Ranges, dostępnego w raporcie operatorskim. Aby go włączyć, kliknij przycisk Edit Ranges na pasku narzędziowym Keys. W tym trybie zakresy kluczy są wyświetlane jako czarne linie z kwadratowymi znacznikami na końcach, co przedstawiono na rysunku 37.9. Rysunek 37.9. Kliknięcie przycisku Edit Ranges wyświetla zakresy kluczy w panelu Key

Zaznaczanie czasu i narzędzie Select Keys by Time Zanim będziesz mógł skalować, wycinać, kopiować lub wklejać czas, musisz wybrać ścieżkę, a następnie wycinek czasu. Aby zaznaczyć wycinek czasu, kliknij przycisk Select Time i przeciągnij kursorem nad interesującym Cię wycinkiem. Narzędzie Select Keys by Time pozwala wybrać wszystkie klucze w obrębie danego wycinka czasu poprzez wpisanie numerów klatek lub czasu. Aby skorzystać z tego narzędzia, wybierz polecenie Utilities/Track View Utilities, który otworzy okno dialogowe Track View Utilities, a następnie wybierz z listy pozycję Select Keys by Time. W oknie dialogowym Select Keys by Time wpisz wartości Start Time (początek) i End Time (koniec), aby dokonać zaznaczenia.

Usuwanie, wycinanie, kopiowanie i wklejanie czasu Po zaznaczeniu wycinka czasu możesz go usunąć, klikając przycisk Delete Time. Innym sposobem jest użycie przycisku Cut Time, który usuwa wybrany wycinek czasu, ale jednocześnie umieszcza jego kopię w schowku. Przycisk Copy Time również zachowuje kopię wycinka czasu w schowku, ale nie usuwa go ze ścieżki. Po skopiowaniu wycinka czasu do schowka możesz przekleić go w inne miejsce w obrębie okna Track View. Ścieżka, do której go wkleisz, musi być tego samego typu jak ta, z której pierwotnie pochodzi.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1019

Wszystkie klucze w obrębie wycinka czasu są wklejane razem z nim, przy czym możesz wybrać, czy będą ułożone względnie (Relative), czy też bezwzględnie (Absolute). Bezwzględne wklejanie wstawia klucze z wartościami dokładnie odzwierciedlającymi te, które znajdują się w schowku. Wklejanie względne dodaje wartości kluczy do aktualnej wartości parametru w miejscu wklejenia klucza. Możesz także przy wklejaniu wielu sekcji obok siebie włączyć przyciski Exclude Left End Point (usuń lewy punkt końcowy) i Exclude Right End Point (usuń prawy punkt końcowy) na pasku narzędziowym Extras. Dzięki temu wycinek czasu daje się gładko zapętlić.

Odwracanie, wstawianie i skalowanie czasu Przycisk Reverse Time odwraca porządek kluczy w obrębie wybranego wycinka czasu. Przycisk Insert Time pozwala na wstawienie wycinka czasu w dowolnym miejscu w obrębie aktualnej ścieżki. Aby wstawić czas, kliknij i przeciągnij, by określić ilość czasu do wstawienia — wszystkie klucze za punktem wstawiania przesuną się odpowiednio. Przycisk Scale Time skaluje wybrany wycinek czasu. Ta opcja powoduje ścieśnianie lub rozluźnianie wszystkich kluczy. Skalowanie jest zawsze wykonywane wokół bieżącej klatki.

Ustawianie zakresów Przycisk Position Ranges na pasku narzędziowym Ranges pozwala na przesuwanie zakresów bez przemieszczania kluczy. W tym trybie możesz przemieszczać i skalować pasek zakresu niezależnie od jego kluczy, pomijając wszystkie klatki kluczowe znajdujące się poza zakresem. Przycisk ten pozwala np. na usunięcie kilku pierwszych klatek animacji bez przemieszczania kluczy. Przycisk Recouple Ranges może być używany do ponownego przemieszczenia kluczy w obręb zakresu. Lewy koniec zakresu dopasowuje się do pierwszej klatki kluczowej, a prawy — do ostatniej.

Edycja krzywych Kiedy obiekt przemieszcza się w scenie, ocena dokładnego miejsca, w którym zmienia się kierunek jego ruchu, może być bardzo trudna. Krzywe funkcyjne (nazywane też krzywymi kontrolnymi) udostępniają tę informację, przedstawiając wartość kontrolera jako funkcję czasu. Nachylenie krzywej odzwierciedla szybkość zmian danej wartości. Stroma krzywa oznacza szybkie zmiany, a płaska — powolne. Każdy klucz jest wierzchołkiem tej krzywej. Krzywe funkcyjne są wyświetlane tylko w trybach Curve Editor i Track Bar. Tryb krzywych funkcyjnych pozwala na edycję tych krzywych, dając w ten sposób całkowitą kontrolę nad przebiegiem animacji. Na rysunku 37.10 przedstawiono krzywe współrzędnych położenia (Position) dla kuli, która przemieszcza się w obrębie sceny.

1020

Część VIII  Zaawansowane techniki animowania

Rysunek 37.10. Krzywe funkcyjne wyświetlają klucze animacji jako kwadratowe znaczniki leżące na wykresie

Wstawianie i przemieszczanie kluczy Krzywe funkcyjne z dwoma kluczami mają styczne wejściowe i wyjściowe typu spowalniającego (Slow), przez co animacja zaczyna się wolno, przyspiesza, po czym ponownie zwalnia. Możesz dodać więcej krzywizn do wykresu, wstawiając kolejny klucz. Aby dodać klucz, kliknij przycisk Insert Keys, a następnie kliknij krzywą w miejscu, w którym chcesz wstawić nową klatkę kluczową. Staraj się utrzymywać liczbę kluczy na możliwie najniższym poziomie. Zbyt wiele kluczy utrudnia edycję animacji.

Jeśli ścieżka danego parametru zawiera wiele krzywych, np. ścieżkę współrzędnych położenia (Position) lub składowych RGB koloru, do każdej z tych krzywych dodawany jest nowy węzeł. Przycisk Move Keys pozwala na przemieszczanie poszczególnych kluczy przez przeciąganie ich. W rozwijanej grupie tego przycisku istnieją także przyciski, które umożliwiają ograniczanie ruchu kluczy w poziomie lub pionie. Do skalowania kluczy możesz użyć narzędzia Region, ale możesz też skorzystać z polecenia Keys/Scale Keys-Time, aby przesunąć wybrane klucze względem bieżącego czasu. Przemieszczenie nastąpi tylko w poziomie. Z kolei za pomocą polecenia Keys/Scale Values przemieścisz zaznaczone klucze względem wartości zerowej. Przesunięcie nastąpi w pionie.

Ćwiczenie: Animowanie kolejki jednotorowej W ramach przykładu pracy z krzywymi funkcyjnymi wykonamy animację kolejki, która będzie przemieszczała się po torach, zmieniała prędkość i zatrzymywała się na stacjach. Aby opracować animację kolejki przy użyciu krzywych funkcyjnych, wykonaj następujące czynności. 1. Otwórz plik Monorail.max z folderu Chap 37 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prosty model kolejki utworzony z obiektów podstawowych. 2. Kliknij przycisk Play i prześledź ruch kolejki po torze.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1021

Domyślnie ścieżka Percent dla obiektu Path Constraint ma kontroler Linear, który powoduje, iż kolejka porusza się ze stałą prędkością. Aby urozmaicić animację, należy to zmienić. 3. Otwórz okno Track View-Curve Editor — w tym celu zaznacz kolejkę, kliknij prawym przyciskiem myszy i z czteroczęściowego menu wybierz polecenie Curve Editor. Znajdź ścieżkę Percent w gałęzi obiektu Train. (Znajdziesz ją w gałęzi Objects/Train/Transform/Path Constraint/Percent). Kliknij przycisk Assign Controller2 lub kliknij prawym przyciskiem myszy i wybierz polecenie Assign Controller, aby otworzyć okno dialogowe Assign Float Controller. Wybierz kontroler Bezier Float i kliknij OK. Jeśli ścieżka Objects nie jest widoczna, otwórz okno dialogowe Filters i upewnij się, że opcja Objects jest włączona.

4. Kliknij przycisk Play. Kolejka ruszy powoli (co przedstawia płaska część krzywej), przyspieszy (stroma część krzywej) i znowu zwolni (kolejna płaska część). Przy „czytaniu” krzywych funkcyjnych pamiętaj, iż stroma krzywa daje szybką animację, bardziej płaska — wolną, pozioma oznacza brak ruchu i zmian wartości, a nachylona linia prosta to ruch ze stałą prędkością.

5. Chcemy, aby kolejka zatrzymała się na stacji. Kliknij więc przycisk Insert Keys (lub kliknij prawym przyciskiem myszy i wybierz Insert Keys) i dodaj klucz gdzieś w okolicach klatki 115., kiedy kolejka zbliża się do stacji. 6. Zaznacz utworzony przed chwilą klucz i z rozwijanej grupy Move Keys wybierz przycisk Move Keys Horizontal. Przytrzymaj klawisz Shift i przeciągnij w prawo, aby skopiować klucz do klatki 135. Krzywa jest płaska, tak więc kolejka będzie w tym czasie stała na stacji. 7. Aby dokładnie dopasować położenie kolejki względem stacji, wybierz przycisk Move Keys Vertical z rozwijanej grupy Move Keys, zaznacz oba klucze i przemieść je w górę lub dół tak, aby kolejka zatrzymała się dokładnie na stacji. Ponieważ domyślnie styczne wyjściowe i wejściowe powodują spłaszczenie krzywej w sąsiedztwie klatek kluczowych, kolejka zwalnia przy dojeżdżaniu do stacji, po czym powoli rusza i przyspiesza. Każdy, kto kiedyś jechał kolejką, wie, że hamowanie i ruszanie nie zawsze są płynne. Dodamy parę kluczy, by kolejka trzęsła się i szarpała w odpowiednich momentach. 8. Kliknij przycisk Insert Keys (lub kliknij prawym przyciskiem myszy i wybierz Insert Keys), a następnie dodaj nowe klucze w okolicach klatek 105., 109., 113., 142. i 150. Użyj opcji Zoom Region, aby powiększyć obraz dokoła kluczy opisujących zbliżanie i zatrzymywanie się kolejki. 9. Zmień przycisk Move Keys Vertical na Move Keys, wybierając go z rozwijanej grupy, a następnie przemieść klatki kluczowe w górę lub w dół, aby kolejka przesunęła się do tyłu i do przodu wzdłuż trasy. 2

Przycisk Assign Controller znajduje się na pasku Controllers — przyp. tłum.

1022

Część VIII  Zaawansowane techniki animowania

10. Jak widzisz, nawet odrobina dodatkowego ruchu daje całkiem niezłe efekty, tak więc klucze należy przesunąć o bardzo małą wartość. Użyj przycisku Zoom Values z rozwijanej grupy Zoom i przycisku Pan, aby wprowadzić małe zmiany do animacji. 11. Powtórz operację dla kluczy opisujących opuszczanie stacji przez kolejkę. Kolejka powinna także zwolnić na trasie, aby pasażerowie mogli podziwiać jedną ze słynniejszych budowli w Prostym Mieście, czyli „budynek” w kształcie rury na zewnątrz toru. 12. Dodaj dwa klucze w okolicach klatek 18. i 50. Obniż drugi z nich, dopóki krzywa nie stanie się bardziej płaska (ale nie całkowicie pozioma). Ponownie dopasuj pozycję kolejki na trasie (parametr Percent ścieżki ruchu) przez podnoszenie lub obniżanie dwóch nowych kluczy. 13. Dopasuj do siebie uchwyt stycznej Out pierwszej klatki kluczowej i uchwyt stycznej In ostatniej klatki kluczowej, aby animacja płynnie się zapętlała. Na rysunku 37.11 przedstawiono krzywą po wprowadzeniu wszystkich zmian, a na rysunku 37.12 widoczna jest kolejka poruszająca się po torze. Rysunek 37.11. Gotowa krzywa parametru Percent opisująca położenie kolejki na trasie

Rysowanie krzywych funkcyjnych Jeśli wiesz, jak ma wyglądać krzywa, której chcesz użyć, możesz narysować ją własnoręcznie w panelu Key po włączeniu przycisku Draw Curves. Tryb ten dodaje klatkę kluczową dla każdej zmiany krzywej. Najprawdopodobniej po narysowaniu krzywej będziesz chciał użyć funkcji redukcji liczby kluczy (Reduce Keys). Jeśli podczas rysowania krzywej popełnisz błąd, możesz przerysować jej fragment od nowa, by wprowadzić poprawki.

Na rysunku 37.13 przedstawiono krzywą utworzoną za pomocą funkcji Draw Curves.

Ograniczanie liczby kluczy Polecenie Keys/Reduce Keys pozwala na optymalizację liczby kluczy używanych w animacji. Niektóre algorytmy kinematyki odwrotnej (IK) i narzędzie Dynamics obliczają klucze dla każdej klatki w scenie, co może znacznie wpłynąć na rozmiar pliku. Optymalizacja

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1023

Rysunek 37.12. Kolejka i Proste Miasto Rysunek 37.13. Rysowanie krzywych powoduje powstawanie wielu kluczy

za pomocą polecenia Reduce Keys pozwala zmniejszyć plik i stopień skomplikowania animacji. Polecenie Reduce Keys otwiera okno dialogowe o tej samej nazwie. Wartość progowa (Threshold) określa, jak blisko aktualnej pozycji musi znajdować się rozwiązanie, by klatka kluczowa została usunięta. Na rysunku 37.14 przedstawiono krzywą utworzoną uprzednio przy użyciu narzędzia Draw Curves po optymalizacji za pomocą funkcji Reduce Keys z wartością Threshold równą 0.5.

1024

Część VIII  Zaawansowane techniki animowania

Rysunek 37.14. Polecenie Reduce Keys optymalizuje krzywą przez zmniejszenie liczby kluczy

Używanie stycznych Krzywe funkcyjne dla kontrolera Bezier mają styczne kontrolne powiązane z każdą klatką kluczową. Aby je obejrzeć i edytować, wybierz polecenie Display/All Tangents. Są one liniami z uchwytami na końcach, wychodzącymi z klucza. Przemieszczanie uchwytów zmienia krzywiznę wykresu w sąsiedztwie klatki kluczowej. Rodzaje stycznej możesz wybrać na pasku narzędziowym Key Tangents. Mogą się one różnić dla wyjściowego (Out) i wejściowego (In) segmentu krzywej. Kształt krzywej w otoczeniu klucza możesz także definiować przy użyciu okna dialogowego Key Info. Domyślny typ stycznej dla wszystkich nowych kluczy ustawiany jest przy użyciu rozwijanej grupy przycisków znajdującej się na lewo od przycisku Key Filters na dole okna Maksa. Za pomocą przycisków możesz szybko wybrać dowolny z dostępnych typów stycznych. Okno dialogowe Key Info, widoczne na rysunku 37.15, otwieramy, klikając prawym klawiszem myszy bezpośrednio klucz. Pozwala ono określić dwa różne rodzaje linii stycznych: ciągłe (continuous) i nieciągłe (discontinuous). Styczne ciągłe to takie, których oba uchwyty znajdują się w jednej linii z kluczem. Krzywizna dla ciągłych stycznych jest zawsze łagodna. Nieciągłe styczne mają dowolny kąt pomiędzy dwiema liniami uchwytów. Tworzą one ostry wierzchołek. Rysunek 37.15. Okno dialogowe Key Info pozwala na zmianę czasu (Time), wartości (Value) oraz stycznych: wejściowej (In) i wyjściowej (Out) danego klucza

Domyślnie wszystkie styczne są ciągłe i poruszają się razem, ale można je rozdzielić i zmienić w nieciągłe za pomocą przycisku Break Tangents dostępnego na pasku Tangent Actions. Po takim zabiegu uchwyty po obu stronach klucza mogą być przemieszczane niezależnie. Rozłączone styczne można z powrotem połączyć, używając narzędzia Unify Tangents. Narzędzie to łączy styczne nawet wtedy, gdy nie leżą w jednej linii.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1025

Przyciski Break Tangents i Unify Tangents są nowością w 3ds Max 2012.

Przytrzymanie klawisza Shift podczas przeciągania jednego z uchwytów pozwala na przemieszczanie go niezależnie od drugiego uchwytu.

Przycisk Lock Tangents dostępny na pasku Curves pozwala na zmianę uchwytów kontrolnych dla kilku kluczy jednocześnie. Jeśli przycisk ten jest wyłączony, przemieszczanie uchwytów wpływa jedynie na klucz związany z danym uchwytem.

Ćwiczenie: Animowanie płynącej rzeki Domyślne rodzaje stycznych definiują taki kształt krzywej, która w rezultacie daje przyspieszanie i zwalnianie ruchu wokół kluczy. Dzięki temu animacja zaczyna się powoli, przyspiesza, a potem znowu zwalnia i zatrzymuje się. To rozwiązanie może być dobre dla wielu animacji, ale nie sprawdza się, jeśli potrzebujemy stałej prędkości. W tym przykładzie pokazano, jak można utworzyć rzekę przy użyciu materiału animowanego ze stałą prędkością. Aby utworzyć płynącą rzekę, wykonaj następujące czynności. 1. Otwórz plik River.max z folderu Chap 37 znajdującego się na płycie dołączonej do książki. Plik ten zawiera powierzchnię rzeki wymodelowaną z obiektu typu Loft. Parametr V Offset (przesunięcie w osi V) dla mapy koloru Diffuse w materiale stanowiącym „wodę” w rzece został ustawiony tak, aby symulować przepływ (tak, w tej rzece odbija się pogoda w kratkę…). 2. Kliknij przycisk Play. Rzeka zaczyna powoli płynąć, przyspiesza i zwalnia, zatrzymując się ostatecznie. Dla uzyskania efektu płynącej wody zastosowano mapę tekstury w postaci szachownicy. Aby efekt był widoczny, uaktywnij okno widokowe z włączonym wyświetlaniem tekstur.

3. Otwórz okno Track View-Curve Editor i znajdź ścieżkę V Offset dla materiału rzeki. (Znajdziesz ją w gałęzi Scene Materials/River Water/Maps/Diffuse Color: Map #2 (Checker)/Coordinates/V Offset)3. 4. Masz dwa proste sposoby na utworzenie animacji ze stałą prędkością. Pierwszy zmienia zupełnie rodzaj kontrolera, drugi zmienia rodzaje stycznych w kluczach. Sposób 1.: Kliknij prawym przyciskiem myszy ścieżkę V Offset i wybierz Assign Controller lub wybierz polecenie Assign z menu Controller, aby otworzyć okno dialogowe Assign Float Controller. Wybierz opcję Linear Float i kliknij OK.

3

Jeśli ścieżka Scene Materials jest niewidoczna, należy w oknie dialogowym Filters włączyć opcję Global Tracks — przyp. tłum.

1026

Część VIII  Zaawansowane techniki animowania

lub Sposób 2.: Zaznacz oba klucze — kliknij jeden z nich, potem przytrzymaj wciśnięty klawisz Ctrl i kliknij drugi, lub też przeciągnij kursorem dokoła obu kluczy. Kliknij przycisk Set Tangents to Linear. Niezależnie od użytego sposobu linia pomiędzy dwiema klatkami kluczowymi jest teraz prosta. 5. Kliknij przycisk Play. Rzeka płynie teraz ze stałą prędkością. 6. Aby zwiększyć prędkość nurtu, wybierz opcję Move Keys Vertical z rozwijanej grupy przycisku Move Keys i zaznacz, a potem przemieść końcową klatkę kluczową w górę wykresu. Rzeka będzie płynęła szybciej. Na rysunku 37.16 przedstawiono płynącą rzekę.

Rysunek 37.16. Woda w Rzece Kratkowanej płynie ze stałą prędkością

Stosowanie krzywych pozazakresowych, rozluźniających i mnożnikowych Krzywe pozazakresowe (out-of-range) określają, co powinno stać się z animacją, kiedy znajdzie się poza zakresem określonych kluczy. Przykładowo możesz zapętlić krzywą lub powtórzyć jej poprzedni zestaw kluczy. Aby zastosować ten rodzaj krzywych, zaznacz

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1027

ścieżkę i wybierz polecenie Out-of-Range Types z menu Controller. W oknie dialogowym, które zostanie otwarte, widocznym na rysunku 37.17, możesz wybrać jeden z dostępnych rodzajów krzywych. Rysunek 37.17. Okno dialogowe Param Curve Out-of-Range Types pozwala wybrać rodzaj krzywej pozazakresowej

Możesz także zdefiniować krzywą typu out-of-range dla zaznaczonego zakresu klatek za pomocą narzędzia Create Out-of-Range Keys. Jest dostępne w menu Track View Utilities.

Klikając przyciski znajdujące się pod rodzajami krzywych, możesz określić krzywą dla początku i końca zakresu. Okno dialogowe zawiera sześć opcji. 

Constant — utrzymuje wartość na stałym poziomie dla wszystkich klatek poza zakresem.



Cycle — powtarza wartości kluczy po zakończeniu zakresu.



Loop — powtarza wartości zakresu, tak samo jak opcja Cycle, ale początkowy i końcowy punkt są interpolowane, co w rezultacie daje płynne przejście.



Ping Pong — potwarza wartości zakresu w odwróconym porządku po osiągnięciu końca zakresu.



Linear — rzutuje wartości zakresu w sposób liniowy po opuszczeniu zakresu.



Relative Repeat — powtarza wartości zakresu przesunięte o dystans między wartością początkową i końcową.

Za pomocą krzywych rozluźniających (wybierz polecenie Curves/Apply Ease Curve lub wciśnij Ctrl+E) zwiększysz płynność krzywej funkcyjnej, a za pomocą krzywych mnożnikowych (Curves/Apply Multiplier Curve, Ctrl+M) zmienisz skalowanie krzywej. Możesz użyć obu tych rodzajów krzywych do automatycznego zwiększenia płynności lub skalowania ruchu animacji. Każdy z tych przycisków dodaje do wybranej ścieżki kontrolera nową ścieżkę i krzywą funkcyjną. Krzywe rozluźniające i mnożnikowe wprowadzają kolejną warstwę w systemie sterowania animacją, pozwalając modyfikować istniejące krzywe funkcyjne bez zmieniania oryginalnych kluczy. Przykładowo, jeśli masz już opracowaną animację idącej postaci, za pomocą krzywej rozluźniającej możesz zmienić chód w leniwy spacer, a używając krzywej mnożnikowej, możesz tę animację dostosować do modelu wyższej postaci. Nie wszystkie kontrolery umożliwiają przypisanie krzywej rozluźniającej lub mnożnikowej.

1028

Część VIII  Zaawansowane techniki animowania

Ścieżki z tymi krzywymi możesz usuwać przy użyciu polecenia Curves/Remove. Możesz także włączyć lub wyłączyć krzywe za pomocą polecenia Curves/On/Off. Po zastosowaniu krzywej rozluźniającej lub mnożnikowej możesz przypisać rodzaj używanej krzywej za pomocą polecenia Curves/Ease Curve Out-of-Range Types. Otwiera ono okno dialogowe Ease Curve Out-of-Range Types, które zawiera takie same rodzaje krzywych jak okno Curve Out-of-Range Types plus dodatkową krzywą typu Identity. W oknie dialogowym Ease Curve Out-of-Range Types znajduje się opcja Identity, której nie ma w oknie dialogowym Parameter Curve Out-of-Range Types. Powoduje ona rozpoczęcie lub zakończenie krzywej liniowym pochyleniem, które daje stopniowy wzrost animowanej wartości.

Przy edycji zakresów możesz ustawić zakres wybranej ścieżki tak, by był mniejszy niż zakres całej animacji. Ścieżka taka w którymś momencie animacji znajdzie się poza zakresem. Polecenia Ease (i Multiplier) Curve Out-of-Range Types służą do kontrolowania ścieżki poza jej zakresem czasowym.

Ćwiczenie: Animowanie nakręcanego czajnika Jako przykład zastosowania krzywych mnożnika utworzymy nakręcany czajnik, który przewibruje z jednej strony sceny na drugą. Aby w oknie Track View opracować animację wibracji, wykonaj następujące czynności. 1. Otwórz plik Wind-up teapot.max z folderu Chap 37 znajdującego się na płycie dołączonej do książki. Plik ten zawiera czajnik z nogami. 2. Kliknij przycisk Play. Klucz nakręca czajnik do około 40. klatki, po czym zabawka zaczyna działać. Aby dodać losowy ruch i obroty, które tworzyć będą wibracje, użyjemy kontrolerów Noise i krzywych Multiplier do ograniczenia szumu. 3. Otwórz okno Track View-Curve Editor i zaznacz ścieżkę X Rotation obiektu Key (klucz). Znajdziesz ją w gałęzi Objects/Teapot Group/Key/Transform: Position/ Rotation/Scale/Rotation: Euler XYZ. Przyjrzyj się kształtowi krzywej, widocznemu na rysunku 37.18. Rysunek 37.18. Obrót obiektu Key (klucza do nakręcania czajnika)

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1029

Klucz jest „nakręcany” w krótkich zrywach, a potem powoli się odkręca, zwalniając, aż do zatrzymania. Wibracja powinna zaczynać się w połowie ruchu i zanikać wraz z odkręcaniem się klucza. 4. Kliknij czajnik w oknie widokowym, aby zaznaczyć i wypośrodkować krzywe jego transformacji w oknie Track View. Przed dodaniem kontrolera Noise powinieneś przypisać kontroler List, aby zachować możliwość transformowania obiektu niezależnie od kontrolera Noise. Przypisywanie kontrolerów za pomocą menu Animation automatycznie tworzy najpierw kontroler List.

5. Wybierz ścieżkę Position czajnika i wciśnij klawisz C, aby uzyskać dostęp do okna dialogowego Assign Controller. Wybierz opcję Position List. Pod ścieżką Position znajdują się teraz ścieżki: X Position, Y Position i Z Position, a także ścieżka Available. Wybierz tę ostatnią, wejdź ponownie do okna dialogowego Assign Controller i zaznacz kontroler Noise Position. Domyślnym kontrolerem powinien pozostać Position XYZ, tak więc możesz zamknąć okno dialogowe Assign Controller. Kliknij Play. Skrót klawiszowy C zadziała tylko wtedy, gdy na głównym pasku narzędziowym Maksa włączony będzie przycisk Keyboard Shortcut Override Toggle.

Czajnik wibruje podczas całej animacji. Teraz dodamy krzywą mnożnika, aby poprawić tę sytuację. 6. Zaznacz ścieżkę Noise Position, a następnie wybierz polecenie Curves/ Apply-Multiplier Curve. Zaznacz ścieżkę krzywej Multiplier. Przypisz pierwszej klatce kluczowej wartość 0. Zmień rodzaj stycznej Out na Stepped, aby zachowała stałą wartość do następnej klatki kluczowej. Kliknij przycisk Insert Keys i dodaj klucz w klatce 50. z wartością 1. Przesuń ostatni klucz do klatki numer 120 i ustaw jej wartość na 0. Krzywa Multiplier powinna teraz wyglądać tak jak na rysunku 37.19. Zaznacz ścieżkę Noise Position. Rysunek 37.19. Krzywa Multiplier kontroluje ścieżkę Noise

Szum będzie teraz uzależniony od ścieżki mnożnika.

1030

Część VIII  Zaawansowane techniki animowania

7. Mając ciągle zaznaczoną ścieżkę Noise Position, kliknij prawym przyciskiem myszy i wybierz Properties. W oknie dialogowym Noise Position ustaw wartości X Strength i Y Strength na 30, a Z Strength na 20. Zaznacz także opcję >0, aby powstrzymać czajnik przed przebiciem podłoża. Zamknij okno dialogowe i kliknij Play. Animacja wygląda o wiele lepiej. Czas dodać odrobinę szumu do ścieżki Rotation. 8. Wybierz ścieżkę Rotation, kliknij prawym przyciskiem myszy i wybierz polecenie Assign Controller lub też wciśnij klawisz C, aby wywołać okno dialogowe Assign Controller. Wybierz Rotation List i kliknij OK. Zaznacz ścieżkę Available, wejdź ponownie do okna dialogowego Assign Controller i wybierz Noise Rotation. Kliknij Play. Jak widać, szum jest niekontrolowany. 9. Tym razem zaznacz ścieżkę Noise Strength i dodaj krzywą mnożnikową. Masz już doskonałą krzywą mnożnikową, więc możesz dodać jej klon na nowej ścieżce. 10. Zaznacz ścieżkę mnożnikową położenia, kliknij prawym przyciskiem myszy i wybierz Copy. Następnie zaznacz ścieżkę mnożnikową obrotu Noise Strength, kliknij prawym przyciskiem myszy i wybierz Paste. Włącz opcję klonowania (Instance) i zamknij okno dialogowe. 11. Kliknij przycisk Play, a zobaczysz, jak czajnik jest nakręcany, a potem przesuwa się w drgawkach, aż do zatrzymania. Na rysunku 37.20 przedstawiono czajnik, który podskakuje dzięki kontrolerowi szumu.

Rysunek 37.20. Nakręcany czajnik tańczy na stole

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1031

Filtrowanie ścieżek i tworzenie zestawów ścieżek Przy natłoku informacji dostępnych w oknie Track View znalezienie akurat potrzebnej ścieżki może być problematyczne. Przycisk Filters na pasku narzędziowym Keys (lub polecenie w menu Display) może nam w tym pomóc. Kliknięcie tego przycisku (lub wciśnięcie klawisza Q) otwiera okno dialogowe Filters, widoczne na rysunku 37.21. Rysunek 37.21. Okno dialogowe Filters pozwala na skoncentrowanie się na wybranych ścieżkach

Kliknięcie prawym przyciskiem myszy przycisku Filters ujawnia skróconą listę filtrów.

Używanie okna dialogowego Filters Przy użyciu tego okna dialogowego możesz ograniczyć liczbę ścieżek wyświetlanych w oknie Track View. Sekcja Show zawiera wiele opcji wyświetlania. W panelu Hide by Controller Type zobaczysz listę wszystkich dostępnych kontrolerów. Rodzaje kontrolerów, które zaznaczysz na tej liście, nie będą wyświetlane w oknie Track View. Możesz także wybrać brak wyświetlania pewnych obiektów, włączając w sekcji Hide By Category odpowiednie opcje. Grupa Show Only zawiera opcje wyświetlania jedynie ścieżek animowanych (Animated Tracks), wybranych obiektów (Selected Objects), wybranych ścieżek (Selected Tracks), widocznych obiektów (Visible Objects), ścieżek animowalnych (Keyable Tracks) lub też dowolnej kombinacji tych elementów. Jeśli np. chcesz zobaczyć ścieżkę animacji dla wybranego obiektu, zaznacz opcję Animated Tracks i kliknij przycisk OK. Następnie otwórz ponownie okno dialogowe Filters, wybierz opcję Selected Objects i kliknij OK. Możesz także określić, czy wyświetlanie krzywych funkcyjnych będzie obejmowało składowe Position, Rotation i Scale dla poszczególnych osi oraz składowe koloru R, G, B i A.

1032

Część VIII  Zaawansowane techniki animowania

Tworzenie zestawu ścieżek Zaznaczone ścieżki można połączyć w zestaw przez kliknięcie przycisku Edit Track Set, znajdującego się u dołu okna Track View4. Otwiera on okno Track Sets Editor, pokazane na rysunku 37.22. Kliknięcie przycisku Create a new Track Set tworzy nowy zestaw ścieżek zawierający wszystkie aktualnie zaznaczone ścieżki i dodaje go do listy w oknie edytora. Wybrane ścieżki mogą być dodawane, usuwane i zaznaczane przy użyciu innych przycisków edytora. Rysunek 37.22. Okno dialogowe Track Sets Editor pozwala na nadawanie wybranym ścieżkom nazw, co ułatwia wracanie do nich

Po utworzeniu zestawu ścieżek ścieżki składowe mogą być natychmiast zaznaczane przez wybranie nazwy zestawu z rozwijanej listy znajdującej się obok przycisku Edit Track Set u dołu okna Track View.

Używanie kontrolerów Kontrolery są alternatywą ręcznego rozmieszczania kluczy. Każdy kontroler może automatycznie sterować pozycją klucza w czasie lub wartością parametru. Menu Controller zawiera kilka poleceń pozwalających na pracę z kontrolerami. Polecenia Copy Controller i Paste Controller pozwalają na przemieszczanie istniejących kontrolerów pomiędzy różnymi ścieżkami, a polecenie Assign Controller umożliwia dodanie nowego kontrolera do ścieżki. W rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”, opisano wszystkie kontrolery pozwalające na automatyzację sekwencji animowanych.

4

Przycisk Edit Track Set znajduje się na pasku Track Selection — przyp. tłum.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1033

Chociaż polecenia Copy Controller i Paste Controller z nazwy wydają się działać jedynie na kontrolerach, mogą być używane również do kopiowania ścieżek. Ścieżki mogą być kopiowane i wklejane jedynie wtedy, kiedy są tego samego rodzaju. Możesz skopiować tylko jedną ścieżkę naraz, ale pojedynczy kontroler może być wklejany do wielu ścieżek. Wklejona ścieżka może być kopią (Copy) lub klonem (Instance). Dostępna jest również opcja zastąpienia wszystkich klonów. Jeśli np. masz kilka obiektów, które poruszają się razem, użycie opcji Replace All Instances powoduje zmianę w ścieżkach wszystkich obiektów wykonujących ten sam ruch przy zmianie ścieżki jednego z nich. Wszystkie klony ścieżki zmieniają się przy wprowadzeniu zmian w jakimkolwiek z nich. Aby wyłączyć połączenie pomiędzy klonami, możesz użyć polecenia Controller/Make Unique. Wybranie polecenia Controller/Assign otwiera okno dialogowe Assign Controller, w którym możesz wskazać kontroler do zastosowania. Jeśli przypisywany kontroler jest podobny do przypisanego wcześniej, klucze zostaną zachowane, ale w przypadku większych różnic nowy kontroler usuwa klucze istniejące na ścieżce.

Używanie ścieżek widoczności Po zaznaczeniu obiektu możesz dodać ścieżkę widoczności przy użyciu polecenia Tracks/ Visibility Track/Add lub okna dialogowego Object Properties. Ścieżka ta pozwala na uczynienie obiektu widocznym lub niewidocznym. Wybranej ścieżce zostaje automatycznie przypisany kontroler Bezier, ale możesz zmienić go na kontroler przełączający (On/Off), jeśli wolisz takie rozwiązanie. Ścieżki widoczności możesz edytować również w trybie krzywych funkcyjnych.

Dodawanie ścieżek z notatkami Ścieżki z notatkami możesz dodawać do dowolnej ścieżki i wykorzystywać je jako miejsce zapisu dodatkowych informacji. Polecenie Tracks/Note Track/Add dodaje ścieżkę z notatkami, która jest zaznaczona żółtym trójkątem i nie może być animowana. Po dodaniu ścieżki z notatkami w panelu Controller użyj przycisku Insert Keys do umieszczenia klucza notatki w tej ścieżce. W ten sposób dodasz małą ikonę notatki. Kliknięcie tej ikony prawym przyciskiem myszy otwiera okno dialogowe Notes, w którym możesz wprowadzać opisy, co zostało pokazane na rysunku 37.23. Każda taka ścieżka może zawierać wiele kluczy z notatkami. Rysunek 37.23. Okno dialogowe Notes pozwala na wstawianie notatek i umieszczanie ich obok kluczy

Okno dialogowe Notes zawiera strzałki, których można używać do poruszania się pomiędzy różnymi notatkami. Pole znajdujące się po prawej stronie strzałek wyświetla numer

1034

Część VIII  Zaawansowane techniki animowania

aktualnie wybranej notatki. Wartość Time pokazuje klatkę, w której znajduje się wybrana notatka, a opcja Lock Key blokuje notatkę na klatce tak, że nie może być przemieszczana i skalowana. Polecenia Tracks/Note Track/Remove możesz użyć do usunięcia wybranej ścieżki z notatkami.

Ćwiczenie: Animowanie światła ostrzegawczego W ramach przykładu używania okna Track View wykonamy animację światła ostrzegawczego. Aby opracować animację migającego światła ostrzegawczego przy użyciu krzywych funkcyjnych, wykonaj następujące czynności. 1. Otwórz plik Hazard.max z folderu Chap 37 znajdującego się na płycie dołączonej do książki. Plik ten zawiera barierkę ze światłem. 2. Zaznacz światło Omni01, otwórz okno Track View-Curve Editor i znajdź ścieżkę Multiplier światła Omni01. (Znajdziesz ją w gałęzi Objects/Omni01/Object (Omni Light)/Multiplier). Kliknij przycisk Insert Keys (lub wciśnij klawisz A) i utwórz klucze na przerywanej linii (aktualnej wartości mnożnika) w klatkach o numerach 0 i 15. Ustaw wartość klucza końcowego na 1,2. 3. Zaznacz pierwszy klucz i ustaw jego wartość na 0, przesuwając go w dół lub wpisując 0 w polu wyświetlającym wartość. Kliknij przycisk Zoom Value Extends, aby lepiej widzieć kształt krzywej. Kliknij przycisk Play. Światło zapali się powoli. W trakcie migania powinno być albo włączone, albo wyłączone, dlatego musisz zmienić rodzaj stycznych na Step. 4. Zaznacz oba klucze i kliknij przycisk Set Tangents to Step. Kliknij przycisk Play. Światło zapali się w klatce numer 15. 5. Zaznacz pierwszy klucz, a następnie wybierz przycisk Move Keys Horizontal z rozwijanej grupy Move Keys. Przytrzymaj klawisz Shift i przeciągnij myszą w prawo, aby skopiować klucz do klatki numer 30. Światło w tej klatce zgaśnie. Możesz w analogiczny sposób dalej tworzyć kolejne klucze, ale w tym przypadku prostsze będzie użycie funkcji Parameter Out-of-Range. 6. Mając zaznaczoną krzywą Multiplier, kliknij przycisk Parameter Curves Out-of-Range Types5 lub wybierz polecenie Out-of-Range Types z menu Controller. Pojawi się okno dialogowe Out-of-Range Types. Wybierz Cycle i kliknij OK. Na rysunku 37.24 przedstawiono styczne typu Step. 7. Kliknij Play.

5

Przycisk ten znajduje się na pasku Curves — przyp. tłum.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1035

Rysunek 37.24. Krzywa z wejściowymi i wyjściowymi stycznymi typu Stepped i opcją Parameter Out-of-Range ustawioną na Cycle

Światło zacznie migać. Animacja byłaby bardziej przekonywująca, gdyby obiekt soczewki światła również się zapalał i gasł. Zatem nadszedł czas na wykonanie animacji iluminacji materiału soczewki. 8. Mając ciągle zaznaczoną ścieżkę mnożnika światła, kliknij prawym przyciskiem myszy w panelu kontrolerów i wybierz Copy. Znajdź i zaznacz ścieżkę Self-Illumination materiału Light Lens. (Możesz ją znaleźć jako pozycję Scene Materials/Lens (Standard)/Shader Basic Parameters/Self-Illumination). Kliknij prawym przyciskiem myszy, wybierz Paste i wklej jako kopię (Copy). 9. Ponieważ iluminacja powinna mieć punkt szczytowy przy 100%, a nie 120%, wybierz drugą klatkę kluczową i zmień jej wartość na 100. Kliknij przycisk Play. Światło i soczewka migają zgodnie. Na rysunku 37.25 przedstawiono światło ostrzegawcze w trakcie migania.

Ćwiczenie: Animowanie ruchu w warcabach Jako przykład używania krzywych funkcyjnych w tym ćwiczeniu wykonamy animację ruchu pionków podczas gry w warcaby. Często najłatwiej złożyć animację przy użyciu kolejnych kluczy, a potem popracować nad jej szczegółami w oknie Track View. Aby opracować animację ruchu białego pionka, wykonaj następujące czynności. 1. Otwórz plik Checkers.max z folderu Chap 37 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prostą planszę do gry w warcaby z jednym białym pionkiem i trzema czerwonymi. Biały pionek znajduje się na złym polu, więc pierwszym zadaniem jest przesunięcie go na odpowiednie miejsce, a potem — wykonanie ruchu. 2. Włącz przycisk Auto Key. Umieść suwak czasu w klatce numer 25 i przesuń biały pion na pole z obiektem tekstowym „1” (widocznym w oknie widokowym Top). Przesuń suwak czasu na pozycję 50 i przemieść biały pion na pole „2”. W klatce 75. przemieść go na pole „3”, a w 100. — na „4”. Wyłącz przycisk Auto Key. 3. Kliknij prawym przyciskiem myszy biały pion i wybierz polecenie Curve Editor, aby otworzyć okno Track View-Curve Editor. Ścieżki Position X, Y, i Z białego

1036

Część VIII  Zaawansowane techniki animowania

Rysunek 37.25. Migające światło ostrzegawcze

piona powinny zostać podświetlone i powinieneś zobaczyć krzywe funkcyjne w edytorze wykresu. Jeśli tak nie jest, znajdź je, rozwijając gałąź Objects/White Piece/Transform/Position/X, Y i Z Position. Pamiętając, że krzywe poszczególnych współrzędnych (X, Y i Z) mają kolory R,G i B (czerwony, zielony i niebieski), możesz zaobserwować ruch białego pionka po planszy. Od klatki 0. do 25. porusza się jedynie w osi X. Od 25. do 100. przemieszcza się skośnie przez planszę, o czym świadczy pochylenie krzywych X i Y. Zauważ, że kiedy obiekt przemieszcza się w drugą stronę osi X, począwszy od klatki 75., krzywa kieruje się w drugą stronę, jak przedstawiono to na rysunku 37.26. Rysunek 37.26. Krzywe animacji białego pionka

4. Kliknij przycisk Play.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1037

Biały pion przesuwa się nieporadnie po planszy. Czas utworzyć klatki kluczowe, które pozwolą mu przeskoczyć przez czerwone piony. 5. Kliknij przycisk Insert Keys lub wybierz polecenie Insert Keys z menu pod prawym przyciskiem myszy. Dodaj klatki kluczowe na ścieżce Z Position pomiędzy drugą, trzecią czwartą i piątą klatką kluczową. 6. Wybierz przycisk Move Keys Vertical z rozwijanej grupy Move Keys, a następnie zaznacz trzy nowe klatki kluczowe. Przemieść je do góry o około 50 jednostek, tak jak na rysunku 37.27. Rysunek 37.27. Nowe klatki kluczowe przesuń do góry

Biały pion przeskakuje nad czerwonymi, ale jego ruch jeszcze nie jest poprawny. Styczne In i Out powinny dawać efekt przyspieszenia, aby pion nie spędzał za dużo czasu na planszy. 7. Przytrzymaj klawisz Shift i przesuń uchwyty kluczy tak, aby stały się stycznymi nieciągłymi, co pokazano na rysunku 35.28. Rysunek 37.28. Styczne In i Out nowych kluczy po skorygowaniu

Skoki wyglądają lepiej, ale przesuwanie białego pionka wyglądałoby jeszcze lepiej z krótkim postojem przed przeskokiem przez pierwszy czerwony pion. 8. Wybierz opcję Move Keys Horizontal z rozwijanej grupy Move Keys, a następnie zaznacz drugi klucz na ścieżce X Position. Przytrzymaj klawisz Shift i przemieść klucz o kilka klatek w lewo, aby utworzyć jego kopię. Kliknij przycisk Play. Czerwone piony powinny znikać po skoku białego. 9. Przewiń w dół panel Controller po lewej i zaznacz trzy czerwone pionki. W menu Tracks wybierz Visibility/Add.

1038

Część VIII  Zaawansowane techniki animowania

Do każdego z czerwonych pionków zostanie dodana ścieżka widoczności, bezpośrednio pod jego nazwą. Wartość 0 oznacza, że obiekt jest niewidoczny, a 1 — widoczny. Można zmienić rodzaj stycznej na Stepped, aby piony stały się niewidzialne z natychmiastowym przejściem pomiędzy klatkami, ale zmiana całej ścieżki w kontroler On/Off pomaga lepiej zorientować się w tym, co się dzieje. 10. Wybierz ścieżkę widoczności dla obiektu Red Piece 01. Kliknij prawym przyciskiem myszy i wybierz Assign Controller. Wybierz On/Off. Na razie nie zauważysz żadnych zmian. Kontrolera Off/On najlepiej używać w trybie raportu operatorskiego. 11. Wybierz polecenie Dope Sheet z menu Modes. Ścieżka kontrolera On/Off przedstawiona jest jako niebieski pasek. Kolor niebieski oznacza „włączony” lub widoczny. Kliknij przycisk Insert Keys, a następnie dodaj klucz w klatce numer 50. Niebieski pasek skończy się przy klatce kluczowej numer 50. Kliknij przycisk Play. Pierwszy czerwony pion znika w klatce numer 50. Możesz skopiować i wklejać ścieżki, aby zaoszczędzić sobie pracy. 12. Zaznacz ścieżkę widoczności obiektu Red Piece 01 w panelu Controller. Kliknij prawym przyciskiem myszy i wybierz Copy. Następnie zaznacz ścieżki dla obiektów Red Piece 02 i Red Piece 03 (przytrzymaj klawisz Ctrl, aby zaznaczać kilka obiektów jednocześnie). Kliknij prawym przyciskiem myszy i wybierz Paste. Wklej jako kopię, ponieważ pozostałe piony powinny znikać w innych momentach. 13. Przesuń klucz obiektu Red Piece 02 do klatki numer 75, a obiektu Red Piece 03 do klatki numer 100. Kliknij Play. Animacja wygląda całkiem nieźle, ale wyglądałaby jeszcze lepiej, gdyby była szybsza. 14. Kliknij przycisk Edit Ranges, a następnie Modify Subtree. Na górze panelu Key pojawi się pasek ścieżki World. Kliknij i przeciągnij prawy koniec paska zakresu do klatki numer 75, aby przeskalować wszystkie ścieżki jednoczesnie. Kliknij Play. Animacja wygląda dość profesjonalnie, z białym pionem przesuwającym się na odpowiednie pole i bijącym trzy czerwone piony. Na rysunku 37.29 przedstawiono planszę do gry w warcaby.

Korzystanie z modułu ProSound Max zawiera moduł dodatkowy o nazwie ProSound, za pomocą którego można wzbogacać scenę o efekty dźwiękowe. Aby móc z tego modułu skorzystać, należy go uaktywnić w panelu Animation okna dialogowego Preference Settings otwieranego poleceniem Customize/Preferences w głównym menu programu.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1039

Rysunek 37.29. Gra w warcaby

W sekcji Sound Plug-In wspomnianego panelu kliknij przycisk Assign i wybierz opcję ProSound. Od tej pory moduł będzie dostępny po kliknięciu prawym przyciskiem myszy na ścieżce Sound w oknie Track View i wybraniu opcji Properties. Jego okno dialogowe jest pokazane na rysunku 37.30. Rysunek 37.30. Okno dialogowe ProSound pozwala wybrać dźwięk odtwarzany podczas animacji

Za pomocą okna ProSound można wczytać kilka plików dźwiękowych jednocześnie. Obsługiwane formaty to: WAV i AVI. Dla zaznaczonego pliku wyświetlana jest informacja o jego długości (Length), formacie (Format) i innych parametrach (Statistics). Można też

1040

Część VIII  Zaawansowane techniki animowania

ustalić, w których klatkach ma się rozpocząć (Start) i zakończyć (End) odtwarzanie pliku. Oczywiście istnieje też szereg opcji i parametrów decydujących o sposobie odtwarzania danego pliku i łączenia go z innymi plikami. Okno dialogowe ProSound zawiera także ustawienia metronomu, który ma ułatwiać utrzymanie określonego rytmu. W sekcji Metronome możesz określić liczbę uderzeń na minutę (Beats Per Minute) i na takt (Beats Per Measure). Pierwsza opcja pozwala ustalić częstotliwość uderzeń, a druga określa, które uderzenie metronomu ma być wyróżniane innym tonem. Ta sekcja zawiera także opcję Active — za jej pomocą możesz włączać i wyłączać dźwięk metronomu.

Ćwiczenie: Dodawanie dźwięku do animacji W ramach przykładu dodawania dźwięku do animacji zajmiemy się skocznym kijem pogo i zsynchronizujemy jego animację z dźwiękiem. Aby zsynchronizować animację z plikiem dźwiękowym, wykonaj następujące czynności. 1. Otwórz plik Hyper pogo stick.max z folderu Chap 37 znajdującego się na płycie dołączonej do książki. 2. W oknie Track View-Dope Sheet kliknij prawym przyciskiem myszy globalną ścieżkę dźwięku (Sound) i wybierz z menu opcję Properties, aby otworzyć okno dialogowe ProSound. Kliknij w nim przycisk Add. Następnie znajdź plik BOING.WAV w folderze Chap 35 i kliknij OK. Upewnij się, że opcja Permite Playback (zezwól na odtwarzanie) jest zaznaczona. Plik dźwiękowy pojawi się jako wykres sygnału w oknie Track View, co przedstawiono na rysunku 37.31. Rysunek 37.31. Dźwięki wczytane na ścieżkę są wyświetlane jako krzywe sygnału

Okno dialogowe Open Sound zawiera przycisk odtwarzania, który pozwala odtworzyć dźwięk przed jego wczytaniem.

3. W polu Start wpisz 2, aby zsynchronizować początek odtwarzania dźwięku z początkiem ruchu kija. 4. Kliknij przycisk Play Animation, a dźwięk zostanie odtworzony razem z animacją. Na rysunku 37.32 przedstawiono ścieżkę dźwiękową naszego przykładu na pasku ścieżki.

Rozdział 37.  Praca z krzywymi funkcyjnymi w oknie Track View

1041

Rysunek 37.32. Aby synchronizacja dźwięku i obrazu była łatwiejsza, możesz włączyć wyświetlanie ścieżki dźwiękowej na pasku ścieżki

Podsumowanie Okno Track View otwiera dostęp do wszystkich kluczy, parametrów i obiektów w scenie w jednym miejscu. Jego różne tryby udostępniają różne opcje. W tym rozdziale dokonałeś następujących rzeczy: 

poznałeś elementy okna Track View;



poznałeś różne tryby okna Track View, czyli edytor krzywych, raport operatorski i pasek ścieżki;



dowiedziałeś się, jak używać kluczy, czasów i zakresów;



kontrolowałeś i dopasowywałeś krzywe funkcyjne;



filtrowałeś wybrane ścieżki przy użyciu okna dialogowego Filter;



przypisywałeś kontrolery;



poznałeś możliwości definiowania krzywych poza zakresem czasowym kluczy;



dodawałeś notatki do ścieżki;



dodałeś do animacji dźwięk przy użyciu modułu ProSound.

W następnym rozdziale zajmiemy się postaciami, systemami szkieletowymi i riggowaniem.

1042

Część VIII  Zaawansowane techniki animowania

Część IX

Praca z postaciami W tej części: Rozdział 38. „Systemy szkieletowe, riggowanie i kinematyka” Rozdział 39. „Animowanie postaci przy użyciu modułu CAT” Rozdział 40. „Nakładanie skóry”

Rozdział 38.

Systemy szkieletowe, riggowanie i kinematyka W tym rozdziale: 

Przygotowanie do pracy nad riggowaniem



Zrozumienie kinematyki prostej i odwrotnej



Korzystanie z metod Interactive i Applied IK



Ustalanie progów i ograniczeń w panelu IK okna dialogowego Preference Settings



Omówienie pracy z algorytmami HI, HD oraz IK Limb



Budowa systemu kości



Ustalanie parametrów kości i algorytmów IK



Zamiana połączonych obiektów w system kości

Co ma wspólnego cmentarz z animowanymi postaciami? Odpowiedź brzmi: kości. Kości stanowią strukturę nośną postaci, która ma być animowana. Używając takiego szkieletu, możemy tworzyć nawet najbardziej skomplikowane ruchy przez animowanie poszczególnych kości, a nie wszystkich wierzchołków i ścianek składających się na szczegółowy model postaci. Max oferuje gotowy szkielet dwunoga (systemy Biped i CAT), ale czasami trzeba utworzyć system kostny od podstaw, bo przecież nie wszystkie istoty są dwunożne. Czy kiedykolwiek oglądałeś film s f., gdzie postać obcego była niepodobna do człowieka? Jeśli do utworzenia konkretnej postaci nie da się zaadaptować systemowego dwunoga, musisz skorzystać z tradycyjnych, ręcznych metod riggowania. W rozdziale tym znajduje się opis procesu ręcznego riggowania, co — zależnie od stopnia skomplikowania modelu — może być nawet prostsze niż użycie postaci Biped. Ręczny sposób to także okazja do poznania całego procesu riggowania.

1046

Część IX  Praca z postaciami

Rozdział ten zawiera także omówienie zagadnień związanych z kinematyką. Kinematyka to gałąź mechaniki, która zajmuje się ruchem obiektów, a więc mogłoby się wydawać, że kinematyka odwrotna jest jej złą siostrą bliźniaczką, zajmującą się brakiem ruchu. No cóż, nie do końca tak jest. System obiektów w Maksie to grupa obiektów połączonych ze sobą. Określając hierarchię obiektów i ich połączenia, sprawiamy, że w czasie ruchu danego obiektu rodzica na podstawie wzorów kinematycznych ustalany jest ruch wszystkich gałęzi hierarchii podlegających temu obiektowi. Kinematyka odwrotna (Inverse Kinematics — IK) działa podobnie, z tą różnicą, że określa ruch wszystkich obiektów w systemie, kiedy następuje ruch ostatniego, a nie pierwszego obiektu w hierarchii. Pozycja ostatniego obiektu, takiego jak palec lub stopa, jest zazwyczaj tym, do czego powinniśmy przywiązywać wagę. Korzystając z IK, możemy animować całe systemy przez przesuwanie ostatnich obiektów.

Przygotowanie do procesu riggowania Na początku riggowania postaci musimy ustalić hierarchię połączeń. Hierarchia taka łączy obiekty i umożliwia transformację jednego obiektu poprzez ruch drugiego. Ręka to klasyczny przykład hierarchii połączeń. Kiedy następuje obrót ramienia, przemieszczają się także łokieć, nadgarstek i palce. Tworzenie hierarchii połączeń sprawia, że przesuwanie, pozycjonowanie i animacja wielu obiektów stają się łatwiejsze. System kości to wyjątkowy przypadek hierarchii połączeń ze specyficzną strukturą. Możemy utworzyć strukturę kości z istniejącej hierarchii lub zbudować nowy system przez stopniowe dołączanie kolejnych obiektów. Najważniejszą zaletą systemu kości jest to, że możemy korzystać z algorytmów kinematyki odwrotnej (IK Solvers), aby manipulować i animować całą strukturę. Kinematyka odwrotna umożliwia np. obracanie obiektem rodzicem przez przemieszczanie obiektu dziecka. W ten sposób algorytmy IK dbają o zachowanie integralności łańcucha powiązań i spójność ruchów całego szkieletu. Kolejnym pozytywnym aspektem pracy z kośćmi jest możliwość limitowania zakresu ich ruchu zgodnie z rzeczywistymi ograniczeniami, jak u prawdziwych postaci. System kości po wykreowaniu trzeba dopasować do siatki obiektu, który ma kontrolować. Musimy także określić granice ruchów wszystkich kości i stawów. Zapobiega to poruszaniu się postaci w nierealistyczny sposób. Stosowanie systemów kinematyki odwrotnej jest jednym ze sposobów kontroli nad ruchem kości i stawów. Proces tworzenia szkieletu i określania granic ruchów jego części nazywamy riggowaniem. Po zbudowaniu systemu kości możemy pokryć je obiektami z przypisanym modyfikatorem Skin. Modyfikator pozwala takim obiektom poruszać się i zginać w sposób zgodny z systemem kości znajdującym się pod siatką. Proces łączenia tych obiektów z systemem kości nosi nazwę skinningu, czyli powlekania skórą. Modyfikator Skin, a także inne aspekty skinningu zostały opisane w rozdziale 40., „Nakładanie skóry”.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1047

Po zakończeniu procesu riggowania i nałożeniu skóry postać jest gotowa do animowania.

Budowanie systemu kości W niektórych przypadkach utworzenie hierarchii obiektów jeszcze przed ich łączeniem bywa łatwiejsze. Wcześniejsze ustalenie hierarchii daje pewność prawidłowości połączeń występujących między obiektami. Jednym ze sposobów budowania takiej hierarchii jest użycie systemu kości (bones system). System ten składa się z wielu obiektów (kości) połączonych ze sobą. Obiekty reprezentujące kości domyślnie nie są renderowane, ale możemy zdecydować, by były uwzględniane w renderingu, tak jak możemy to zrobić dla splajnów. Do systemu kości można także przypisać algorytm IK, aby kontrolować ich ruch. Żeby utworzyć system kości, wybieramy polecenie Create/Systems/Bones IK Chain, klikamy w oknie widokowym, aby utworzyć pierwszą kość będącą korzeniem hierarchii, następnie klikamy nieco dalej i kreujemy kolejną kość, powtarzamy tę czynność wymaganą ilość razy. Każde kolejne kliknięcie to kość połączoną z poprzednią. Kiedy już zakończymy dodawanie, klikamy prawym przyciskiem myszy, by wyjść z trybu tworzenia kości. Tym sposobem możemy zbudować długi łańcuch połączonych ze sobą kości. Kości są połączone stawami. Przesunięcie jednej powoduje pociągnięcie za nią kości sąsiadujących w łańcuchu. Kości mogą być także obracane, skalowane i rozciągane. Skalowanie systemu wpływa także na odległości między poszczególnymi obiektami. Kości nie powinny być skalowane bez stosowania modyfikatora XForm, bo może to prowadzić do błędnego działania kluczy animacji.

Aby utworzyć nową gałąź w hierarchii, należy w trybie tworzenia kości po prostu kliknąć kość w miejscu, gdzie chcemy, żeby znajdował się początek odnogi. Nowa gałąź zostanie utworzona automatycznie. Gdy musisz utworzyć nową kość, kliknij ponownie przycisk Bones. Kolejne kliknięcia to dodawanie następnych kości do gałęzi. Na rysunku 38.1 pokazano rolety dostępne podczas tworzenia kości.

Przypisywanie algorytmu IK W rolecie IK Chain Assignment (dostępnej w panelu Modify, gdy zaznaczony jest obiekt kości) możemy wybierać spośród czterech algorytmów IK: History Dependent, IKHISolver, IKLimb oraz SplineIKSolver. Korzystając z dostępnych opcji, możemy przypisać któryś z algorytmów do kości dziecka i kości korzenia. Aby przypisać kontroler IK do wszystkich kości systemu, należy włączyć obie opcje Assign to Children oraz Assign to Root. Jeśli opcja Assign to Children nie jest włączona, opcja Assign to Root jest niedostępna. Wszystkie algorytmy IK będą opisane szczegółowo w dalszej części rozdziału.

1048

Część IX  Praca z postaciami

Rysunek 38.1. Rolety systemu kości pozwalają m.in. ustalić, do których kości przypisany zostanie kontroler IK

Ustalanie parametrów kości Roleta Bone Parameters (także w panelu Modify) zawiera opcje do ustalania rozmiaru każdej kości z osobna, określające jej szerokość (Width) oraz wysokość (Height). Możemy też ustawić procentowo wartość parametru zwężania (Taper). Kości są prostymi geometrycznymi obiektami, a zatem można im przypisać modyfikator Edit Poly i nadać dowolne kształty, ale wówczas mogą nie współpracować z narzędziami służącymi do edycji systemu kości.

Płetwa (Fin) może być wyświetlana z przodu (Front Fin), z tyłu (Back Fin) oraz (lub) po bokach (Side Fins) każdej kości. Dla każdej płetwy możemy ustalić rozmiar (Size) oraz początkową i końcową wartość parametru Taper. Obecność płetw na kościach sprawia, że możemy łatwiej i dokładniej pozycjonować oraz obracać obiekty kości. Na rysunku 38.2 przedstawiono prosty system złożony z dwóch kości. Pierwsza z nich posiada płetwy. Na dole rolety Bone Parameters znajduje się opcja Generate Mapping Coordinates. Kości mogą być obiektami renderowalnymi, więc opcja ta pozwala przypisać im mapy tekstur.

Ćwiczenie: Tworzenie systemu kości dla aligatora Aby przećwiczyć konstruowanie systemu kości, udamy się daleko na południe do krainy aligatorów. Zwierzęta te mają bardzo długie i ruchliwe ogony, a więc na tę część ich ciała musimy przeznaczyć stosunkowo dużo kości. Przednie nogi są krótkie i mogą być sterowane tylko przez dwie kości. Palcami nie będziemy się w ogóle przejmować. Aby utworzyć system kości dla aligatora, wykonaj następujące czynności.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1049

Rysunek 38.2. Ta kość posiada płetwy ułatwiające określenie jej orientacji

1. Otwórz plik Alligator bones.max zamieszczony w folderze Chap 38 na płycie dołączonej do książki. Plik ten zawiera model aligatora opracowany w Viewpoint Datalabs. 2. Wybierz polecenie Create/Systems/Bones IK Chain i w rolecie IK Chain Assignment wskaż na rozwijanej liście IK Solver pozycję IK Limb. Następnie ustaw szerokość i wysokość kości na 10, a w sekcji Bone Fins włącz wszystkie płetwy i ustaw ich rozmiar na 5. 3. W oknie widokowym Top kliknij miednicę aligatora, potem środek brzucha, nasadę szyi i koniec nosa. Następnie kliknij prawym przyciskiem myszy, aby zakończyć budowanie łańcucha kości. 4. Pozostając wciąż w trybie Bones, kliknij nieco poniżej kości miednicy i utwórz pięć kości, które będą szkieletem ogona. Kliknij prawym przyciskiem myszy, aby zakończyć łańcuch. Następnie zaznacz pierwszą kość ogona i dołącz ją do pierwszej kości kręgosłupa. Jeśli nie możesz wykonać połączenia, bo nie widzisz kości, ukryj ciało aligatora.

5. Kliknij przycisk Bones w panelu Create, zaznacz kość leżącą na wysokości przednich nóg (gdy ustawisz kursor nad kością, przyjmie on kształt krzyża) i przeciągnij w górę, aby utworzyć lewą kość barkową, a następnie górną i dolną kość lewej przedniej nogi. Kliknij prawym przyciskiem myszy, aby zakończyć łańcuch, po czym powtórz te same czynności dla lewej tylnej nogi.

1050

Część IX  Praca z postaciami

6. Z głównego menu wybierz polecenie Animation/Bone Tools, aby otworzyć okno dialogowe Bone Tools. Zaznacz wszystkie kości obu lewych nóg i kliknij przycisk Mirror. W oknie Bone Mirror zaznacz oś Y i kliknij OK. 7. Kliknij przycisk Select Objects na głównym pasku narzędziowym, by opuścić tryb Bones, a następnie wybierz każdą kość i nadaj jej nazwę w celu późniejszej łatwej identyfikacji. Dobrym miejscem na przypisywanie nazw kościom jest okno Schematic View.

Na rysunku 38.3 przedstawiono cały system kości aligatora.

Rysunek 38.3. Ten system kości aligatora był łatwy do utworzenia

Korzystanie z okna Bone Tools Po utworzeniu systemu kości możemy go edytować za pomocą narzędzi znajdujących się w oknie Bone Tools. Okno to otwiera się po wybraniu polecenia Animation/Bone Tools. Na rysunku 38.4 widać, że zawiera ono trzy rolety: Bone Editing Tools, Fin Adjustment Tools oraz Object Properties.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1051

Rysunek 38.4. Okno Bone Tools zawiera rozmaite narzędzia do pracy z systemami kości

Układanie kości Z przycisków transformacji znajdujących się na głównym pasku narzędziowym możemy korzystać, aby przesuwać, obracać i skalować kości wraz z wszystkimi obiektami dziećmi; jeśli jednak chcemy dokonać transformacji kości rodzica, nie wpływając na kości dzieci, musimy otworzyć panel Bone Tools przez wybranie polecenia Animation/Bone Tools. Przycisk Bone Edit Mode pozwala przesuwać i dopasowywać kości bez wpływania na ich kości dzieci. Klikając przycisk Remove Bone, usuwamy wybraną kość, po czym łańcuch zostaje połączony poprzez rozciągnięcie kości dziecka. Jeśli w czasie usuwania kości przytrzymamy wciśnięty klawisz Shift, rozciągnięta zostanie kość rodzic. Gdy klikniemy przycisk Delete Bone, usuwamy wybraną kość, przy czym łańcuch zostaje w tym miejscu zerwany, a kość końcowa (end bone) zostaje dodana do rodzica kości usuniętej1. Użycie klawisza Delete w celu usunięcia kości nie spowoduje dodania kości końcowej, przez co łańcuch kości nie będzie prawidłowo działał z algorytmem IK.

Jeśli mamy kość, która nie jest połączona z żadną inną, możemy dodać do niej kość końcową, korzystając z przycisku Create End. Łańcuch kości musi być zakończony taką kością, by mógł być wykorzystany podczas współpracy z algorytmem IK. Przycisk Connect Bones pozwala połączyć wybraną kość z inną. Po kliknięciu tego przycisku możemy narysować linię ciągnącą się od jednej kości do innej, aby je połączyć. Przycisku Reassign Root używamy, by sprawić, że zaznaczona kość stanie się korzeniem całej hierarchii. Jeśli jest to kość ostatnia, cały łańcuch ulega odwróceniu.

1

Kość końcowa to mała kostka umieszczana automatycznie przez program na końcu każdego łańcucha utworzonego w systemie kości — przyp. tłum.

1052

Część IX  Praca z postaciami

Dopasowywanie kości Podczas pracy z systemem kości, który niedawno utworzyliśmy, możemy zaobserwować, że długa kość będąca kręgosłupem naszego modelu jest zbyt długa i uniemożliwia stworowi poruszanie się w naturalny sposób. W takiej sytuacji możemy dodać więcej kości, korzystając z przycisku Refine, który znajdziemy na dole sekcji Bone Tools rolety Bone Editing Tools. Po kliknięciu przycisku Refine wskaż kość w oknie widokowym. Kość zostanie podzielona na dwie części w miejscu, gdzie została kliknięta. Wciskając ponownie przycisk Refine, opuść ten tryb. Przycisk Mirror służy do tworzenia lustrzanych odbić zaznaczonych kości. Po jego kliknięciu otwiera się okno dialogowe Bone Mirror, gdzie można wybrać oś lub płaszczyznę odbicia (Mirror Axis), a także oś, względem której kość ma być odwrócona (Bone Axis to Flip). Można tu także określić wielkość przesunięcia (Offset). W przykładzie z aligatorem korzystaliśmy z tego przycisku, aby utworzyć kości kończyn po przeciwnej stronie tułowia.

Kolorowanie kości Tak jak wszystkie inne obiekty, tak i kości z początku mają przypisaną domyślną barwę i można im także przypisać materiały z edytora materiałów. Kolor każdej kości może zostać zmieniony w panelu Modify lub w panelu Bone Tools. Łańcuchowi kości można także przypisać gradient, korzystając z próbek koloru w oknie Bone Tools. Opcja ta jest dostępna tylko wtedy, jeśli wybrane zostały dwie lub więcej kości. Kolor Start Color jest przypisywany do pierwszej wybranej kości, a End Color do ostatniej wybranej kości. Kolory zostają przypisane lub uaktualnione po kliknięciu przycisku Apply Gradient. Na rysunku 38.5 przedstawiono długi łańcuch kości ułożonych w spiralę z przypisanym czarno-białym gradientem.

Regulacja płetw Roleta Fin Adjustment Tools zawiera takie same parametry jak roleta Bone Parameters w panelu bocznym. Możemy określić wymiary oraz stopień zwężania kości i jej płetw. Można także ustalić, czy parametry będą przypisywane na podstawie wartości bezwzględnych (Absolute), czy względnych (Relative). Wartości Relative są oparte o parametry kości znajdującej się w łańcuchu bezpośrednio powyżej danej kości. Roleta zawiera także przyciski Copy i Paste używane do kopiowania parametrów z jednej kości na drugą.

Zamiana obiektów w kości Każdy obiekt sceny może stać się kością. Aby zamienić obiekt w kość, musimy otworzyć roletę Object Properties w oknie Bone Tools. Roleta ta zawiera opcję Bone On. Jeśli jest włączona, obiekt funkcjonuje jako kość i dostępne stają się pozostałe ustawienia w rolecie

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1053

Rysunek 38.5. Gradient przechodzący z białego w czarny przypisano do spiralnego łańcucha kości

Object Properties. Opcja Auto-Align powoduje, że środki obrotu (Pivot Point) sąsiadujących kości zostają dopasowane automatycznie. Opcja Freeze Length przy poruszaniu systemem kości pozwala danej kości zachować stałą długość. Jeśli opcja Freeze Length jest wyłączona, możemy określić typ rozciągnięcia (Stretch). Metoda None uniemożliwia wystąpienie jakiegokolwiek rozciągnięcia, Scale zmienia rozmiar wzdłuż jednej osi, a Squash powoduje, że kość staje się szersza, gdy jej długość się zmniejsza, a węższa, kiedy kość jest rozciągana. Możemy także wybrać oś, wzdłuż której kość będzie rozciągana, i zdecydować, czy oś ma być odwrócona (Flip). Możemy użyć przycisku Realign, aby na nowo dopasować kość; klikając przycisk Reset Stretch, normalizujemy wartości rozciągnięcia zgodnie z obecnymi wartościami.

Kinematyka prosta kontra kinematyka odwrotna Zanim zrozumiesz kinematykę odwrotną, musisz uświadomić sobie, że istnieje jeszcze inny typ kinematyki — kinematyka prosta (Forward Kinematics). Kinematyka może być stosowana tylko w odniesieniu do łańcucha kinematycznego, który tworzymy, łącząc obiekty dzieci z obiektami rodzicami. Łączenie obiektów i tworzenie łańcuchów hierarchicznych zostało opisane w rozdziale 9., „Grupowanie, łączenie i hierarchizowanie obiektów”.

1054

Część IX  Praca z postaciami

Kinematyka prosta działa w ten sposób, że obiekty położone niżej w hierarchii połączeń poruszają się wraz ze swoimi obiektami rodzicami. Rozważmy jako przykład strukturę połączeń w ręce, gdzie ramię połączone jest z przedramieniem, które z kolei połączone jest z dłonią, a ta — z palcami. Kiedy korzystamy z kinematyki prostej, przedramię, dłoń i palce poruszają się, kiedy rusza się górna część ramienia. Poruszanie się obiektu dziecka wraz z obiektem rodzicem jest rzeczą spodziewaną i pożądaną, jednak przypuśćmy, że obiektem, który chcielibyśmy gdzieś umiejscowić, jest dłoń. Kinematyka odwrotna (IK) umożliwia obiektowi dziecku kontrolowanie obiektu rodzica. Tak więc, używając kinematyki odwrotnej, możemy przeciągnąć dłoń dokładnie w to miejsce, w które chcemy, a wszystkie inne części hierarchii odpowiednio podążą za nią. Kinematyka prosta w Maksie w zakresie transformacji dotyczy całej hierarchii połączeń. Za każdym razem, gdy przesuwamy, obracamy lub skalujemy hierarchię, obiekty dzieci zachowują się tak jak obiekty rodzice, ale możemy także przeprowadzić transformację, która dotyczyć będzie obiektu dziecka, niezależnie od rodzica.

Tworzenie systemu kinematyki odwrotnej Zanim będziemy mogli animować system za pomocą kinematyki odwrotnej, musimy zbudować hierarchię obiektów, zdefiniować złącza poprzez umiejscowienie środków obrotu i określić ich ograniczenia.

Budowa i łączenie systemu Pierwszym krokiem w tworzeniu systemu kinematyki odwrotnej jest połączenie kilku obiektów. Używamy do tego przycisku Select and Link z głównego paska narzędziowego. Po utworzeniu hierarchii należy umiejscowić środek obrotu obiektu dziecka w miejscu, gdzie obiekt ten łączy się z obiektem rodzicem. Przykładowo złącze między ramieniem i przedramieniem znajduje się w łokciu, a więc to tam powinien być umiejscowiony środek obrotu przedramienia. Tworzenie systemów połączeń opisane zostało w rozdziale 9., „Grupowanie, łączenie i hierarchizowanie obiektów”, natomiast manipulowanie środkami obrotu obiektów — w rozdziale 7., „Przekształcanie obiektów, obracanie, wyrównywanie i przyciąganie”.

Podczas tworzenia systemu kości możesz wybrać algorytm kinematyki odwrotnej (IK Solver) w panelu Create, a po prawidłowym rozmieszczeniu środków obrotu możesz uzyskać dostęp do parametrów tej kinematyki w panelu Hierarchy, gdzie musisz kliknąć przycisk IK. Otworzy się wtedy kilka rolet, pokazanych na rysunku 38.6, pozwalających sprawować kontrolę nad systemem IK.

Wybór terminatora Ponieważ obiekty dzieci w systemie kinematyki odwrotnej mogą powodować ruch swoich obiektów rodziców, może się zdarzyć, że ruch obiektu dziecka wywoła niepożądane przemieszczenia obiektów znajdujących się wyżej w łańcuchu (aż do obiektu korzenia).

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1055

Rysunek 38.6. Rolety panelu IK pozwalają sprawować kontrolę nad połączeniami w systemie odwrotnej kinematyki

Przykładowo przesunięcie małego palca w modelu postaci ludzkiej może nawet spowodować ruch głowy. Aby temu zapobiec, warto określić, który obiekt ma być terminatorem. Terminator to ostatni obiekt w systemie IK, na który wpływają ruchy obiektu dziecka. Zdefiniowanie górnej części ramienia jako terminatora zapobiegnie wpływowi ruchu palca na jakikolwiek obiekt powyżej ramienia. Aby zdefiniować terminator, należy wyselekcjonować obiekt, a następnie uaktywnić opcję Terminator w rolecie Object Parameters. W trybie Interactive IK możemy uaktywnić opcję Auto Termination, znajdującą się w rolecie Auto Termination. Parametr # of Links Up umieszcza terminator określoną liczbę połączeń powyżej obiektu obecnie zaznaczonego.

Definiowanie ograniczeń złączy Następnym krokiem jest zdefiniowanie ograniczeń złączy przesuwnych i obrotowych, które określamy w roletach Sliding Joints i Rotational Joints. Dostępność tych ograniczeń zależy od wybranego algorytmu IK i jego opcji. Domyślnie każde złącze ma sześć stopni swobody, co znaczy, że każdy z dwóch obiektów tworzących złącze może przesuwać się i obracać względem osi X, Y lub Z. Ustawienia osi dla wszystkich przesuwnych i obrotowych złączy są takie same. Określenie ograniczeń pozwala zablokować możliwość pewnych ruchów, aby zapobiec nienaturalnym przemieszczeniom, takim jak łokieć zginający się w przeciwną stronę. Aby wykluczyć jedną z osi, należy wyselekcjonować obiekt, który zawiera środek obrotu złącza, znaleźć w odpowiedniej rolecie sekcję odpowiadającą osi, którą chcemy ograniczyć, a następnie usunąć zaznaczenie opcji Active. Jeśli opcja Active dla danej osi jest wyłączona, to ruch względem tej osi jest niemożliwy. Możemy także wprowadzić ograniczenia w ruchu złączy, zaznaczając opcję Limited (ograniczony). Przy włączonej opcji Limited obiekt może poruszać się tylko w granicach określonych parametrami From (od) i To (do). Opcja Ease (łagodny) powoduje zwalnianie ruchu przy

1056

Część IX  Praca z postaciami

zbliżaniu się do którejś z granic. Opcja Spring Back (sprężyna powrotna) pozwala ustalić pozycję spoczynkową obiektu — obiekt po przesunięciu wraca na tę pozycję. Spring Tension (naprężenie sprężyny) określa, jak silny opór stawia obiekt przy próbie przesunięcia z pozycji spoczynkowej. Wartość parametru Damping (tłumienie) ustala tarcie złącza, czyli wartość oporu obiektu na jakikolwiek ruch. Przy wypełnianiu pól From i To obiekt przesuwa się do położeń określonych tymi wartościami, aby zilustrować zakres ograniczeń. Możemy także przytrzymać wciśnięty przycisk myszy na wartościach From i To, aby obiekt chwilowo przesunął się we wskazane miejsca. Wartości granic oparte są na aktualnym układzie odniesienia.

Kopiowanie, wklejanie i tworzenie lustrzanych odbić złączy Definiowanie ograniczeń złączy może wymagać wiele pracy — pracy, której nie chcielibyśmy powtarzać, jeśli nie musimy. Przyciski Copy i Paste w rolecie Object Parameters pozwalają kopiować ograniczenia z jednego złącza IK na inne. Aby to zrobić, należy zaznaczyć element systemu IK i kliknąć przycisk Copy, następnie wybrać każde ze złączy, które ma być ograniczone w ten sam sposób, i kliknąć przycisk Paste. Dostępna jest także opcja wykonania lustrzanego odbicia złącza względem którejś z osi. Przydatna jest przy duplikowaniu systemu IK dla przeciwnych rąk lub nóg modelu człowieka czy zwierzęcia.

Wiązanie obiektów Podczas korzystania z metody Applied IK musimy związać element systemu IK z obiektem prowadzącym, za którym ma podążać. Element IK, który jest związany z obiektem, podąża za nim w obrębie sceny. Kontrolki wiązania znajdują się w rolecie Object Parameters panelu Hierarchy. Aby ustanowić takie powiązanie, kliknij przycisk Bind wybierz obiekt, który ma być prowadzący. Element IK może być także związany z obiektem World pozycją i orientacją względem danej osi. Powoduje to, że obiekt jest zablokowany w danej pozycji, a więc nie będzie się poruszał lub obracał względem osi, która została wybrana. Możemy także przypisać parametr wagi (Weight). Kiedy obliczenia IK wykażą, że dwa obiekty wymuszają ruch w przeciwnych kierunkach, pierwszeństwo zostanie udzielone obiektowi z najwyższą wartością parametru Weight. Przycisk Unbind eliminuje powiązanie.

Hierarchia ważności Kiedy Max wylicza rozwiązania IK, końcowy rezultat jest determinowany przez kolejność, w której przeliczane są złącza. Wartość parametru Precedence (który znajduje się w rolecie Object Parameters) pozwala ustalić, w jakiej kolejności następuje przeliczanie złączy. Aby obiektowi nadać pierwszeństwo, należy go wyselekcjonować, a następnie wpisać wartość w polu Precedence. Max nadaje pierwszeństwo w obliczeniach obiektom z wyższą wartością parametru Precedence.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1057

Domyślna wartość pierwszeństwa dla wszystkich obiektów wynosi 0. Zakładamy zatem, że obiekty znajdujące się najniżej w łańcuchu połączeń będą poruszać się najczęściej. Roleta Object Parameters zawiera także dwa domyślne ustawienia pierwszeństwa. Przycisk Child -> Parent ustala wartość pierwszeństwa dla obiektu korzenia na 0 i powoduje, że wartość ta rośnie o 10 z każdym poziomem poniżej obiektu korzenia. Przycisk Parent -> Child ustala hierarchię ważności odwrotnie, dla obiektu korzenia wartość 0 i dla każdego następnego obiektu wartość maleje o 10.

Ćwiczenie: Sterowanie koparką Jako przykład tworzenia systemu kinematycznego wykorzystamy model koparki będącej prostym systemem połączonych elementów z gąsienicami mogącymi się poruszać do przodu, kabiną mogącą się niezależnie obracać i ramieniem z łyżką, które może obracać się wokół osi przegubu. Po ukończeniu tego ćwiczenia będziesz mógł zabrać koparkę do ogrodu i wykopać dół pod przyszły basen. Sądzę, że zasługujesz na to. Aby utworzyć system kinematyki odwrotnej dla koparki, wykonaj następujące czynności. 1. Otwórz plik Backhoe.max znajdujący się w folderze Chap 38 na płycie dołączonej do książki. 2. Wybierz polecenie Graph Editors/New Schematic View, aby otworzć okno schematycznego widoku sceny. Kliknij ikonę narzędzia Connect i połącz obie gąsienice (left track i right track) z platformą nośną (base plate), a platformę i kabinę (housing) połącz z cylindrem nośnym (base cylinder). Połącz również łyżkę (bucket) z ramieniem (arm) i ramię z kabiną. Układ połączeń powinien być taki jak na rysunku 38.7. Rysunek 38.7. Połączenia hierarchiczne można łatwo wykonać w oknie Schematic View

Więcej informacji na temat okna dialogowego Schematic View znajdziesz w rozdziale 25., „Budowa złożonych scen przy użyciu kontenerów, odnośników i widoku schematycznego”.

3. Następnie musisz wyznaczyć osie obrotu dla tych elementów, które będą się obracać. Zaznacz kabinę i zauważ, że jej środek obrotu znajduje się już w środku cylindra, czyli tam, gdzie być powinien. Zaznacz teraz ramię, otwórz panel Hierarchy i kliknij najpierw przycisk Pivot, a potem Affect Pivot Only i przesuń środek obrotu ramienia do miejsca, gdzie łączy się ono z wysięgnikiem kabiny. Analogicznie postąp z łyżką, umieszczając jej środek obrotu w miejscu połączenia z ramieniem. Ponownie kliknij przycisk Affect Pivot Only, aby opuścić tryb edycji środka obrotu.

1058

Część IX  Praca z postaciami

4. Następny etap to zdefiniowanie ograniczeń złączy dla systemu. W panelu Hierarchy kliknij przycisk IK. Zaznacz cylinder nośny i w rolecie Object Parameters uaktywnij opcje Terminator, Bind Position i Bind Orientation; uniemożliwi to cylindrowi jakikolwiek ruch. W rolecie Rotational Joint usuń zaznaczenie wszystkich osi. 5. Zaznacz obiekt kabiny i włącz opcję Bind Position wraz z wszystkimi osiami oraz Bind Orientation z osiami X i Y. W rolecie Rotational Joints wyłącz osie X i Y. Zaznacz ramię koparki, włącz opcję Bind Position z wszystkimi osiami i Bind Orientation z osiami X oraz Z. W rolecie Rotational Joints wyłącz osie X i Z. Teraz kliknij przycisk Copy w sekcji Rotational Joints rolety Object Parameters, zaznacz łyżkę i kliknij przycisk Paste. W ten sposób ograniczenia ramienia zostaną skopiowane na łyżkę. 6. Aby przetestować system, kliknij przycisk Interactive IK w rolecie Inverse Kinematics, a następnie zaznacz łyżkę i przesuń ją. Podczas przemieszczania łyżki ramię i kabina powinny się obracać wokół właściwych osi. Na rysunku 38.8 widać poruszającą się koparkę. Przy nieaktywnym trybie Interactive IK wszystkie obiekty mogą być przesuwane i obracane, tylko połączenia pozostają w mocy.

Rysunek 38.8. Obiekty w tej scenie są częścią systemu odwrotnej kinematyki

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1059

Korzystanie z różnych metod kinematyki odwrotnej Po utworzeniu hierarchii połączeń a przed animacją musimy przypisać łańcuchowi metodę IK. Max oferuje kilka różnych metod animacji z zastosowaniem kinematyki odwrotnej. Tradycyjne metody Interactive oraz Applied IK są teraz połączone z algorytmami IK. Metody Interactive i Applied IK przypisujemy za pomocą panelu Hierarchy, a algorytmy IK możemy przypisać do systemu kości za pomocą odpowiedniego polecenia z menu Animation/IK Solvers. Algorytmy IK (IK Solvers) to specjalistyczne kontrolery przeliczające transformacje w systemie kinematyki odwrotnej. Są potrzebne, aby automatycznie ustalić wszystkie wymagane wartości kluczy animacji. Max oferuje cztery różne algorytmy IK: HD Solver (History Dependent — zależny od historii), HI Solver (History Independent — niezależny od historii), IK Limb Solver (zoptymalizowany dla kończyn) oraz SplineIK Solver (bazujący na krzywiźnie splajnu).

Interactive IK Interactive IK to metoda pozwalająca pozycjonować obiekty hierarchii w różnych klatkach animacji. Wtedy Max interpoluje te położenia dla klatek pośrednich. Metoda może nie jest najbardziej dokładna, ale korzysta z minimalnej liczby kluczy, co jest przydatne przy sekwencjach animacji zawierających dużą liczbę klatek. Metoda Interactive IK interpoluje położenia pomiędzy dwoma kluczami animacji, podczas gdy Applied IK wylicza położenia dla każdego klucza. Ponieważ ruch jest tu wynikiem zwykłej interpolacji pomiędzy dwoma kluczami, efekt może nie jest za dokładny, ale sam ruch jest płynny i gładki. Metoda Interactive IK nie jest dostępna dla wszystkich algorytmów kinematyki odwrotnej.

Po utworzeniu systemu IK animacja przy użyciu metody Interactive IK jest prosta. Najpierw należy uaktywnić przycisk Auto Key i kliknąć Interactive IK w rolecie Inverse Kinematics panelu Hierarchy. Uaktywnienie tego przycisku otwiera tryb Interactive IK, który powoduje, że system porusza się w całości jako hierarchia. Następnie przesuńmy nasz system w innej klatce; Max automatycznie przeliczy klatki między tymi dwiema pozycjami i utworzy klucze animacji. Aby wyjść z trybu Interactive IK, po prostu klikamy ponownie przycisk Interactive IK. W rolecie Inverse Kinematics umieszczono kilka opcji. Opcja Apply Only to Keys (stosuj tylko do kluczy) zmusza Maksa do przeliczenia transformacji systemu IK tylko dla tych klatek, które aktualnie zawierają klucze animacji. Opcja Update Viewport (aktualizuj okno widokowe) pokazuje na bieżąco efekty przeliczeń w oknach widokowych, a opcja Clear Keys (wyczyść klucze) usuwa wszystkie istniejące klucze w czasie przeliczania. Wartości parametrów Start (początek) i End (koniec) określają zakres klatek, które mają być uwzględnione w przeliczeniach.

1060

Część IX  Praca z postaciami

Ustawienia obliczeń IK Wymagana dokładność obliczeń IK może być ustawiona w panelu Inverse Kinematics, w oknie dialogowym Preference Settings, pokazanym na rysunku 38.9. Dostęp do tego okna uzyskamy, wybierając polecenie Customize/Preferences. Dla metod Interactive i Applied IK możemy ustalić wartości progowe położenia oraz obrotu (Position i Rotation Threshold). Określają one, jak blisko zdefiniowanej pozycji ma się znaleźć poruszający się obiekt, aby wynik obliczeń został uznany za wystarczająco dokładny. Rysunek 38.9. Panel Inverse Kinematics w oknie Preference Settings pozwala ustalić globalne wartości progowe dla obliczeń kinematyki odwrotnej

Dla obu metod możemy także wybrać liczbę iteracji (Iterations). Parametr ten określa maksymalną liczbę kroków obliczeniowych, a to ogranicza czas, jaki Max poświęca na znalezienie odpowiedniego rozwiązania. Ustawienia iteracji kontrolują szybkość i dokładność każdego algorytmu IK. Jeśli wartość parametru Iterations zostanie osiągnięta bez znalezienia odpowiednio dokładnego rozwiązania, Max użyje tego, które zostało wyznaczone jako ostatnie.

Opcja Use secondary threshold to awaryjna metoda ustalenia, czy Max powinien kontynuować szukanie odpowiedniego rozwiązania. Powinna być użyta, jeśli chcemy, aby Max w pewnym momencie zrezygnował z przeliczenia szczególnie trudnej sytuacji, a nie ciągle próbował szukać prawidłowego rozwiązania. Warto uaktywnić tę opcję, jeśli pracujemy z małymi wartościami progowymi. Opcja Always transform children of the world umożliwia przesuwanie obiektu korzenia, kiedy zostanie wyselekcjonowany, ale też sprawia, że jego ruch jest niemożliwy, gdy poruszamy którymś z jego obiektów dzieci.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1061

Ćwiczenie: Animacja prostego systemu IK w postaci napędu śmigła Maszyny to obiekty dobre do zademonstrowania przykładowych systemów kinematycznych. W tym przykładzie zajmiemy się prostym systemem przekładni i śmigła, wykorzystując metodę Applied IK. Aby pokazać animację systemu kinematyki odwrotnej śmigła, wykonaj następujące czynności. 1. Otwórz plik Gear and prop.max znajdujący się w folderze Chap 38 na płycie dołączonej do książki. Plik ten zawiera prostą przekładnię i śmigło. 2. Na początek utwórz połączenia. W tym celu kliknij przycisk Select and Link na głównym pasku narzędziowym, a następnie przeciągnij myszą kolejno od każdego obiektu dziecka do obiektu rodzica. Przyłącz śmigło (propeller) do wału (shaft), wał do koła zębatego (gear), a koło zębate do korby (handle). 3. Otwórz panel Hierarchy i kliknij przycisk IK. Teraz musisz ograniczyć ruchy poszczególnych części. Zacznij od korby. Wszystkie złącza przesuwne (Sliding Joints) mogą zostać wyłączone, a tylko oś Z w sekcji Rotational Joints musi pozostać aktywna. W tym celu upewnij się, że pole znajdujące się obok opcji Active jest zaznaczone. Następnie kliknij przycisk Copy dla obu typów złączy, wybierz obiekt koła zębatego i kliknij przycisk Paste, aby skopiować te ograniczenia. Zaznacz wał napędowy i ponownie kliknij oba przyciski Paste, następnie powtórz to samo dla obiektu śmigła. 4. W końcu uaktywnij przycisk Auto Key (lub wciśnij klawisz N), przeciągnij suwak czasu do klatki 100. (lub wciśnij klawisz End) i kliknij przycisk Interactive IK w rolecie Inverse Kinematics panelu Hierarchy. Następnie wciśnij przycisk Select and Rotate (E) i przeciągnij myszą w oknie widokowym Left, aby obrócić korbę wokół osi Z. Gotowy system kinematyczny śmigła przedstawiono na rysunku 38.10.

Applied IK Metoda Applied IK wykonuje obliczenia w pełnym zakresie czasowym animacji i wylicza klucze dla każdej klatki. Czyni to przez powiązanie systemu kinematyki odwrotnej z obiektem, za którym podąża. Jest dokładniejsza od metody Interactive IK, jednak tworzy dużą liczbę kluczy. Ponieważ klucze są kreowane dla każdego obiektu i każdej transformacji, przy wyliczaniu rozwiązań powstaje ich bardzo wiele, co zwiększa rozmiar i stopień skomplikowania sceny. Dla każdej klatki definiowany jest odrębny zestaw kluczy, co w rezultacie może prowadzić do niezbyt płynnego przebiegu animacji. Aby wykonać animację z wykorzystaniem metody Applied IK, musimy powiązać jedną lub więcej części systemu z obiektem prowadzącym (follow object), za którym mają podążać. Obiektem tym w scenie może być obiekt pozorny (dummy) lub prawdziwy. Powiązanie takie tworzymy przez kliknięcie przycisku Bind w rolecie Object Parameters panelu

1062

Część IX  Praca z postaciami

Rysunek 38.10. Dzięki kinematyce odwrotnej można obracać śmigło, kręcąc korbą

Hierarchy i wybranie obiektu w jednym z okien widokowych2. Po związaniu systemu z obiektem prowadzącym należy wskazać któryś z obiektów systemu i w rolecie Inverse Kinematics panelu Hierarchy kliknąć przycisk Apply IK. Max wylicza wtedy klucze dla każdej klatki między zdefiniowanymi w rolecie wartościami Start i End.

Algorytm History Independent IK Algorytm History Independent (HI) IK w czasie obliczeń rozpatruje niezależnie każdą klatkę kluczową. Za jego pomocą możemy animować łańcuchy połączeń przez ustawienie obiektu celu w określonym miejscu; algorytm dopasowuje do nowego położenia środek obrotu ostatniego obiektu łańcucha, tworząc odpowiednie klatki kluczowe. Algorytmy IK możemy stosować dla każdej hierarchii obiektów. Są one przypisywane automatycznie do systemów kości w momencie ich utworzenia. Możemy także wybrać algorytm, korzystając z polecenia Animation/IK Solvers. Po wybraniu którejś pozycji z menu Animation/IK Solvers pojawia się przerywana linia wychodząca z zaznaczonego obiektu. Możemy przeciągnąć tę linię w oknie widokowym i kliknąć inny obiekt hierarchii, aby stał się końcowym złączem. Wtedy złącza początkowe i końcowe zostają połączone białą linią. Środek obrotu złącza końcowego to tzw. cel (goal)

2

Aby tworzenie powiązania zakończyło się sukcesem, należy przeciągnąć myszą od kości do obiektu prowadzącego — przyp. tłum.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1063

algorytmu IK lub końcowy efektor (End Effector). Cel algorytmu IK jest zaznaczony niebieskim krzyżykiem. W panelu Motion pojawi się także kilka rolet. Pozwalają one ustalić parametry algorytmu IK. Pierwszą po Assign Controller jest roleta IK Solver (patrz rysunek 38.11). Korzystając z niej, możemy przełączać się między algorytmami HI IK oraz IK Limb. Przycisk Enabled pozwala wyłączyć algorytm. Po wyłączeniu algorytmu IK obiekty będą poruszane wyłącznie za pomocą kinematyki prostej. Aby na nowo aktywować algorytm IK, należy po prostu ponownie kliknąć przycisk Enabled. Opcja IK for FK Pose (kinematyka odwrotna na rzecz kinematyki prostej) umożliwia kontrolę IK nawet wtedy, kiedy algorytm IK nie jest aktywny. Pozwala to manipulować hierarchią obiektów przy użyciu kinematyki prostej, ale wciąż do przeliczeń będą wykorzystywane wzory IK. Jeśli zarówno opcja IK for FK Pose, jak i przycisk Enabled są wyłączone, cel może być poruszany bez wywierania wpływu na hierarchię obiektów. Rysunek 38.11. Roleta IK Solver pozwala włączyć lub wyłączyć algorytm IK

Jeśli cel przesunie się w którymś momencie daleko od końcowego złącza, przycisk przyciągania IK/FK Snap automatycznie dopasuje położenia obu tych elementów. Opcja Auto Snap automatycznie trzyma cel i końcowe złącze razem. Przycisk Set as Preferred Angles (ustaw jako kąty preferowane) zapamiętuje kąty systemu IK. Kąty te można przywołać w dowolnym momencie, korzystając z przycisku Assume Preferred Angles. Po wybraniu polecenia Animation/IK Solvers/HI Solver wyselekcjonowany obiekt staje się początkowym złączem, a końcowym złączem zostaje obiekt, do którego przeciągamy przerywaną linię. Jeśli chcemy zmienić te obiekty, korzystamy z przycisków Pick Start Joint (wskaż złącze początkowe) oraz Pick End Joint (wskaż złącze końcowe). Najlepszym sposobem wybrania obiektów po użyciu przycisków Pick Start lub End Joint jest otwarcie okna dialogowego Select From Scene przez wciśnięcie klawisza H. W tym oknie możemy wybrać żądany obiekt dokładnie, bez pomyłki, która może się zdarzyć podczas klikania kursorem w zatłoczonym oknie widokowym. Jeśli na początkowe złącze wybierzemy obiekt dziecko, a obiekt powyżej niego na końcowe złącze, przesuwanie celu nie będzie wywierało żadnego wpływu na łańcuch IK.

1064

Część IX  Praca z postaciami

Definiowanie kąta obrotowego Roleta IK Solver Properties zawiera parametr Swivel Angle (kąt obrotowy). Definiuje on płaszczyznę algorytmu IK (IK Solver Plane), na której leżą obiekty złączy oraz linia łącząca złącze początkowe z końcowym. Płaszczyzna ta jest bardzo ważna, ponieważ określa kierunek, w którym przy zginaniu porusza się złącze. Wartość parametru Swivel Angle może się zmieniać w czasie trwania animacji. Korzystając z przycisku Pick Target (wskaż cel), wybieramy docelowy obiekt do kontroli kąta obrotowego. Przycisk Use (użyj) włącza i wyłącza korzystanie z obiektu docelowego. Grupa Parent Space (przestrzeń rodzica) określa, czy do definiowania płaszczyzny jest użyty obiekt rodzic celu IK, czy też obiekt rodzic początkowego złącza. Mając taką opcję, możemy wybrać dwa różne obiekty rodziców, które kontrolują płaszczyznę obrotową, jeśli dwa lub więcej algorytmów IK przypisano do jednego łańcucha IK. Wartość parametru Swivel Angle możemy zmienić także za pomocą manipulatora. Aby zobaczyć manipulator, należy kliknąć przycisk Select and Manipulate na głównym pasku narzędziowym. Manipulator ten to zielona linia z kwadratem na końcu. Przeciąganie go w oknie widokowym powoduje zmianę kąta obrotowego. Aby zrozumieć, czym jest kąt obrotowy, rozważmy dwa systemy kości manekinów pokazane na rysunku 38.12. Do prawych rąk obu manekinów przypisany został algorytm HI. Górna część ramienia jest złączem początkowym, a dłoń — złączem końcowym. Kąt obrotowy dla systemu kości po lewej wynosi 90 stopni, a dla systemu kości po prawej — 180 stopni. Widzimy manipulatory dla obu systemów kości. Manipulator po lewej skierowany jest w górę, a ten po prawej skierowany jest na wprost od głowy manekina. Zauważmy, że kąt obrotowy określa kierunek, w którym skierowane jest złącze łokcia. Łokieć w systemie kości po lewej skierowany jest w górę i odchodzi na zewnątrz od kręgosłupa, a łokieć systemu po prawej jest boleśnie skierowany w przód, od manekina w kierunku manipulatora. W rolecie IK Solver Properties ustalamy także wartości progowe (Thresholds). Wartości te określają, jak blisko obiektu docelowego musi być końcowe złącze, aby wyliczenia zostały uznane za prawidłowe. Możemy ustalić niezależne wartości progowe dla położenia (Position) oraz obrotu (Rotation). Wartość parametru Iterations określa, ile razy wykonywane są obliczenia. Ustawienie parametru Iterations na wyższą wartość daje bardziej gładki (mniej rwany) ruch, ale wydłuża czas potrzebny na wyliczenie poprawnego rozwiązania.

Wyświetlanie kontrolek IK Roleta IK Display Options pozwala włączyć gizma używane przy stosowaniu algorytmów IK, wyłączyć je oraz ustalić ich rozmiar. Korzystając z niej, możemy włączyć widok końcowego efektora (End Effector), celu (Goal), manipulatora kąta obrotowego (Swivel Angle Manipulator) i algorytmu IK (linia łącząca złącze początkowe z końcowym).

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1065

Rysunek 38.12. Kąt obrotowy określa płaszczyznę, po której poruszają się złącza

Ćwiczenie: Animacja manekina z wykorzystaniem algorytmu HI IK Algorytm HI jest prawdopodobnie najlepszy dla animacji postaci. Koleżka złożony z samych kości jest odpowiednim kandydatem do przetestowania algorytmu HI. Aby opracować animację manekina z wykorzystaniem algorytmu HI IK, wykonaj następujące czynności: 1. Otwórz plik Dancing puppet.max znajdujący się w folderze Chap 38 na płycie dołączonej do książki. Plik zawiera układ kości prostego manekina. 2. Przypisz algorytm HI dla łańcuchów rąk przez wskazanie lewego ramienia i wybranie polecenia Animation/IK Solvers/HI Solver. W oknie widokowym pojawi się przerywana linia odchodząca od wybranego obiektu. Przesuń kursor nad lewą dłoń i kliknij. 3. Powtórz etap 2. dla prawej ręki i obu łańcuchów nóg. 4. Wciśnij przycisk Auto Key i przeciągnij suwak czasu do klatki 20. Zaznacz cel łańcucha IK lewej nogi, kliknij przycisk Select and Move na głównym pasku narzędziowym (lub wciśnij klawisz W) i przesuń go w górę. 5. Powtórz etap 4. dla klatek 40., 60., 80. i 100., przesuwając różne łańcuchy IK w różnych kierunkach.

1066

Część IX  Praca z postaciami

6. Przesuń suwak czasu do klatki 50., wyselekcjonuj wszystkie obiekty, wybierając polecenie Edit/Select All (Ctrl+A). Następnie przeciągnij wszystkie obiekty lekko w górę. Przeciągnij suwak czasu do klatki 100. (lub wciśnij klawisz End) i przesuń wszystkie obiekty z powrotem w dół. 7. Kliknij przycisk Play Animation (/), aby zobaczyć wygenerowany taniec. Na rysunku 38.13 pokazano jedną z klatek z tańczącym manekinem.

Rysunek 38.13. Animacja postaci przy użyciu kinematyki odwrotnej jest prosta — sprowadza się do przesuwania celów każdego łańcucha

Algorytm History Dependent IK Algorytm History Dependent (HD) IK przy wyliczaniu rozwiązania bierze pod uwagę poprzednie klatki kluczowe, co umożliwia osiągnięcie bardzo płynnego ruchu, jednak dzieje się to kosztem znacznie dłuższego czasu potrzebnego do przeliczeń. Ten algorytm możemy także przypisać do systemu kości, wybierając opcję History Dependent w rolecie IK Chain Assignment lub polecenie Animation/IK Solvers/HD Solver. Algorytm ukazuje się jako kontroler w panelu Motion. Ustawienia są dostępne w rolecie o nazwie IK Controller Parameters, która widoczna jest w panelu Motion, jeśli wybierzemy gizmo jednego z efektorów końcowych. Gizmo końcowego efektora to obiekt, który przesuwamy, aby sterować łańcuchem IK. Obiekt ten oznaczony jest kilkoma przecinającymi się osiami.

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1067

Dostęp do pokazanej na rysunku 38.14 rolety IK Controller Parameters uzyskujemy w panelu Motion. Zmiana jakiegokolwiek parametru wpływa na wszystkie kości aktualnej struktury. W części Thresholds wartości Position i Rotation ustalają, jak blisko swojego celu musi się znaleźć końcowy efektor, aby rozwiązanie było uznane za wystarczająco dokładne. W części dotyczącej rozwiązania (Solution) wartość Iterations określa maksymalną ilość podejść algorytmu do rozwiązania problemu. Wartości Threshold i Iterations dają ten sam efekt, co ich odpowiedniki w oknie dialogowym Preference Settings, z tym wyjątkiem, że mają wpływ tylko na aktualnie wybrane połączenie. Wartości Start Time oraz End Time ustalają zakres klatek, w obrębie których działać będzie przeliczanie IK. Rysunek 38.14. W rolecie IK Controller Parameters ustalamy granice przeliczania IK

Opcja Show Initial State wyświetla początkowy stan połączenia i umożliwia przesuwanie go przez przeciąganie efektora końcowego. Opcja Lock Initial State zapobiega przesunięciu innego połączenia niż to z końcowym efektorem. Sekcja Update pozwala ustalić, jak aktualizowane są przeliczenia IK. Dostępne opcje to Precise (dokładne), Fast (szybkie) i Manual (ręczne). Opcja Precise przelicza rozwiązanie dla każdej klatki. Fast czyni to tylko dla aktualnej klatki, a Manual przelicza rozwiązanie tylko wtedy, kiedy klikniemy przycisk Update. Opcje Display Joints określają, czy złącza są widoczne zawsze (Always), czy tylko wtedy, kiedy są zaznaczone (When Selected). Po utworzeniu systemu kości efektor końcowy ustawiany jest automatycznie na ostatnie złącze systemu. W części End Effectors, na dole rolety IK Controller Parameters możemy ustawić dowolne złącze jako końcowy efektor położenia (Position) lub obrotu (Rotation). Aby kość stała się końcowym efektorem, należy ją zaznaczyć i kliknąć przycisk Create. Jeśli kość jest już końcowym efektorem, mamy dostęp do przycisku Delete. Możemy także połączyć kość z innym obiektem rodzicem spoza połączenia za pomocą przycisku Link. Przyłączany obiekt dziedziczy wtedy transformacje od swojego nowego rodzica. Klikając przycisk Delete Joint w części Remove IK, usuwamy złącze. Jeśli kość jest zdefiniowana jako końcowy efektor, przyciski Position lub Rotation wyświetlają informacje o kluczu (Key Info) dla wybranej kości.

1068

Część IX  Praca z postaciami

Ćwiczenie: Animacja lunety z wykorzystaniem algorytmu HD IK Teleskopowa luneta to dobry przykład systemu kinematycznego, w którym można zaprezentować działanie algorytmu HD. Budowa modelu do tego ćwiczenia jest prosta, ponieważ składa się on z grupy coraz mniejszych walców. Aby zademonstrować animację lunety z użyciem algorytmu HD IK, wykonaj następujące czynności. 1. Otwórz plik Spyglass.max znajdujący się w folderze Chap 38 na płycie dołączonej do książki. Plik ten zawiera prostą lunetę utworzoną z obiektów parametrycznych. Części lunety połączone są od najmniejszej do największej. Na końcu znajduje się obiekt pozorny (Dummy) przyłączony do ostatniej części lunety. 2. Najpierw musisz zdefiniować właściwości złączy. Wyselekcjonuj największą część lunety, otwórz panel Hierarchy i kliknij przycisk IK. W rolecie Object Parameters zaznacz opcje Terminator, Bind Position oraz Bind Orientation, aby uniemożliwić przesunięcie złącza. 3. Mając zaznaczoną największą część lunety, uaktywnij opcję Z Axis w rolecie Sliding Joints, a w rolecie Rotational Joints usuń zaznaczenie wszystkich osi. Następnie w rolecie Object Parameters kliknij przyciski Copy w sekcjach Sliding Joints i Rotational Joints. 4. Dla każdej pozostałej części lunety z osobna kliknij przycisk Paste dla Sliding Joints i dla Rotational Joints. Umożliwi to ruch posuwisty wzdłuż osi Z dla każdej części lunety. 5. Wyselekcjonuj ponownie największą część lunety i wybierz polecenie Animation/ IK Solvers/HD Solver. Następnie przeciągnij przerywaną linię do obiektu pozornego znajdującego się na końcu lunety. 6. Wyselekcjonuj drugą część lunety i dla Sliding Z Axis wybierz opcję Limited z wartościami od 0.0 do –80. W rolecie Object Parameters kliknij przycisk Copy dla Sliding Joints. Następnie wybieraj po kolei części lunety od 3. do 6. i dla każdej z osobna klikaj przycisk Paste dla Sliding Joints, aby przypisać tym częściom te same limity co pozostałym. 7. Kliknij przycisk Auto Key (N), przeciągnij suwak czasu do klatki 100. (lub wciśnij klawisz End), kliknij przycisk Select and Move (W) na głównym pasku narzędziowym i przeciągnij obiekt pozorny Dummy dalej od lunety. Na rysunku 38.15 pokazano rozsunięte części tworzące lunetę.

Algorytm IK Limb Algorytm IK Limb powstał specjalnie do pracy z kończynami postaci. Stosowany jest w odniesieniu do łańcuchów z trzema kośćmi, takimi jak biodro, górna część nogi i dolna część nogi. W rzeczywistości w łańcuchu poruszają się tylko dwie kości. Cel tych trzech złączy

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1069

Rysunek 38.15. Algorytm HD IK został wykorzystany do sterowania animacją lunety

znajduje się w środku obrotu trzeciej kości. Algorytm ten jest idealny do riggowania postaci występujących w grach komputerowych. Sposób działania algorytmu polega na tym, że rozpatruje pierwsze złącze jako złącze sferyczne, mogące obracać się wokół trzech różnych osi, tak jak złącze biodrowe lub barkowe. Drugie złącze może zginać się tylko w jednym kierunku, tak jak łokieć lub kolano. Rolety i kontrolki algorytmu IK Limb są identyczne z wykorzystywanymi w algorytmie HI IK, omówionym wcześniej w tym rozdziale.

Ćwiczenie: Animacja nogi pająka Jako przykład wykorzystania algorytmu IK Limb powinniśmy wykonać animację kończyny, dlatego przygotowałem szkielet pająka nie z dwiema, lecz z ośmioma kończynami. Szkielet powstał szybko. Z czterech kości utworzyłem kręgosłup, następnie skonstruowałem jedną nogę i skopiowałem ją trzykrotnie. Za pomocą narzędzi z okna Bone Tools przyłączyłem te nogi do kręgosłupa i na koniec utworzyłem ich lustrzane odbicia po przeciwnej stronie kręgosłupa. Najżmudniejszym zajęciem było przypisywanie nazw poszczególnym kościom. Aby opracować animację nogi pająka z wykorzystaniem algorytmu IK Limb, wykonaj następujące czynności.

1070

Część IX  Praca z postaciami

1. Otwórz plik Spider skeleton.max znajdujący się w folderze Chap 38 na płycie dołączonej do książki. 2. Kliknij przycisk Select by Name na głównym pasku narzędziowym (lub wciśnij klawisz H), aby otworzyć okno dialogowe wyboru obiektów Select From Scene. Kliknij dwukrotnie obiekt RUpperlegBone01, aby zaznaczyć górną kość nogi. 3. Po wyselekcjonowaniu górnej części nogi wybierz polecenie Animation/IK Solvers/ IK Limb Solver. W oknie widokowym pojawi się przerywana linia. Ponownie wciśnij klawisz H, aby otworzyć okno dialogowe Pick Object i kliknij dwukrotnie obiekt RFootBone01, żeby go wybrać. Ta kość odpowiada kości stopy, która jest końcem hierarchii kończyny. 4. Z wyselekcjonowanym obiektem IK Chain01 kliknij przycisk Auto Key (lub wciśnij klawisz N) i przeciągnij suwak czasu do klatki 100. (End). Wciśnij przycisk Select and Move (W) i przesuń w oknie widokowym łańcuch IK. Łańcuch nogi zgina się, kiedy poruszasz końcowym efektorem. Na rysunku 38.16 widzimy nogę pająka poruszaną z wykorzystaniem algorytmu IK Limb. Algorytm ten umożliwia łatwe i szybkie dodawanie efektorów do kończyn, dzięki czemu możesz z łatwością utworzyć animację kroczącego pająka.

Rysunek 38.16. Algorytm IK Limb może być wykorzystany do sterowania kończynami, takimi jak ręce i nogi

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka

1071

Algorytm Spline IK Algorytm Limb IK jest idealny dla rąk i nóg, które mają jedno złącze w środku, ale nie będzie działał dobrze z ogonem. Ogon jest wyjątkowy, ponieważ wymaga dużej liczby kości, aby mógł się prawidłowo wyginać. W ogonach najlepiej działa algorytm Spline IK, który również nadaje się do riggowania macek, łańcuchów i lin. Aby użyć algorytmu Spline IK, musimy utworzyć łańcuch kości i ścieżkę ze splajnu. Przez wybranie pierwszej i ostatniej kości, a następnie wybranie ścieżki łańcuch kości przesuwa się w miejsce krzywej. Każdy punkt kontrolny splajnu ma odpowiadający sobie obiekt pozorny. Przesuwając obiekty pozorne, kontrolujemy położenie kości. Na każdym końcu ścieżki znajdują się manipulatory, których używamy do skręcania i obracania kości. Najprostszą drogą do zastosowania tego algorytmu IK jest wybranie w czasie tworzenia struktury kości pozycji SplineIKSolver z rozwijanej listy w rolecie IK Chain Assignment. Po utworzeniu struktury kości pojawia się okno dialogowe Spline IK Solver. Tu możemy ustalić nazwę łańcucha IK, wybrać typ krzywej i liczbę węzłów na krzywej. Dostępne typy krzywej to Bezier, NURBS Point i NURBS CV. Możemy także wybrać opcję Create Helpers i wyświetlić kilka innych opcji. Innym sposobem wykorzystania tego algorytmu jest zastosowanie go dla istniejącej już struktury kości. W tym celu musimy w scenie utworzyć krzywą, której kształt będziemy chcieli nadać łańcuchowi kości. Następnie wskazujemy pierwszą kość, dla której ma być zastosowany algorytm i wybieramy polecenie Animation/IK Solvers/Spline IK. W oknach widokowych pojawi się linia, którą należy przeciągnąć do ostatniej kości, a potem do krzywej. Struktura kości przyjmuje wtedy kształt krzywej. W każdym wierzchołku krzywej umieszczony jest obiekt pomocniczy. Obiekty te pozwalają na zmianę kształtu krzywej.

Ćwiczenie: Tworzenie aligatora z wykorzystaniem algorytmu Spline IK Algorytm Spline IK jest doskonały do tworzenia długich, wijących się obiektów, takich jak węże lub ogon aligatora. W tym przykładzie użyjemy istniejącej już struktury kości i za pomocą algorytmu Spline IK dopasujemy ją do krzywej. Aby utworzyć strukturę kości aligatora dopasowaną do krzywej za pomocą algorytmu Spline IK, wykonaj następujące czynności. 1. Otwórz plik Aligator spline IK.max znajdujący się w folderze Chap 38 na płycie dołączonej do książki. Plik ten zawiera model aligatora wykonany w Viewpoint Datalabs, prosty łańcuch kości, modyfikator Skin i splajn. Jeśli nie widzisz kości aligatora, włącz opcję See Through w oknie dialogowym Object Properties lub po prostu wciśnij klawisze Alt+X.

1072

Część IX  Praca z postaciami

2. Wyselekcjonuj pierwszą kość ogona i wybierz polecenie Animation/IK Solvers/ Spline IK Solver. W oknie widokowym pojawi się linia odchodząca od pierwszej kości. 3. Przeciągnij tę linię i kliknij ostatnią kość ogona. 4. Pojawi się kolejna linia; przeciągnij ją na splajn i kliknij, a struktura kości przesunie się, by dopasować się do kształtu krzywej. Na rysunku 38.17 pokazano strukturę kości aligatora. Teraz możesz sterować ogonem aligatora przez poruszanie obiektami pozornymi rozmieszczonymi wzdłuż krzywej.

Rysunek 38.17. Algorytm Spline IK jest doskonały do tworzenia obiektów, takich jak węże czy ogony

Podsumowanie Korzyści płynące ze stosowania systemów kości są najbardziej widocznie podczas ręcznego riggowania modeli. Stosując kinematykę odwrotną, mamy do wyboru wyjątkowe metody służące do kontroli i animacji hierarchicznych struktur za pomocą transformacji obiektów dzieci. Tym razem nauczyłeś się, jak tworzyć systemy kości i korzystać z okna Bone tools. W tym rozdziale omówiliśmy następujące zagadnienia: 

tworzenie systemu kości,



ustalanie parametrów kości i algorytmów IK,



używanie narzędzi z okna Bone Tools,

Rozdział 38.  Systemy szkieletowe, riggowanie i kinematyka 

zamianę obiektów w systemy kości,



podstawy stosowania kinematyki odwrotnej,



różnicę między metodami Interactive i Applied IK,



tworzenie i animację systemu kinematyki odwrotnej,



ustalanie ustawień IK w oknie dialogowym Preference Settings,



korzystanie z algorytmów IK.

1073

Teraz, kiedy poznałeś proces riggowania postaci i nauczyłeś się stosować kinematykę odwrotną, przyjrzymy się dokładniej animowaniu postaci za pomocą modułu CAT (Character Animation Toolkit), aby przekonać się o korzyściach płynących ze stosowania wstępnie zriggowanych szkieletów.

1074

Część IX  Praca z postaciami

Rozdział 39.

Animowanie postaci przy użyciu modułu CAT W tym rozdziale: 

Podstawy kreowania postaci



Modyfikowanie gotowych szkieletów CAT



Tworzenie własnych szkieletów CAT



Animowanie przy użyciu narzędzi CAT



Praca z mięśniami

Max zawsze udostępniał doskonałe narzędzia do tworzenia i animowania postaci, ale we wcześniejszych wersjach programu było to możliwe tylko przy użyciu zewnętrznego modułu o nazwie Character Studio. Dzięki postępującej integracji obu środowisk dzisiaj trudno stwierdzić, gdzie kończy się Character Studio, a zaczyna Max. Character Studio było dobrym początkiem i nadal istnieje w Maksie, ale ma zbyt wiele ograniczeń utrudniających pracę. Od pewnego czasu animatorzy pracujący z programem 3ds Max coraz częściej używali do animowania postaci modułu o nazwie Character Animation Toolkit, w skrócie CAT, i to spowodowało, że obecnie jest on częścią programu. Moduł ten oferuje prosty interfejs i umożliwia uzyskiwanie znakomitych rezultatów niezależnie od tego, czy riggujemy postać od podstaw, czy też korzystamy z gotowych szkieletów. Chociaż Max udostępnia inne opcje riggowania postaci, jeśli masz zamiar animować humanoidalną postać, moduł CAT jest niezastąpiony, bo pozwala zaoszczędzić mnóstwo czasu.

Proces tworzenia postaci Zasadniczo tworzenie postaci w Maksie rozpoczyna się od utworzenia obiektu siatkowego (skóry), który jest widoczny na renderingach (czyli tego, co potocznie nazywamy modelem postaci). Następnie tworzony jest szkielet, który będzie odpowiedzialny za ruchy siatki.

1076

Część IX  Praca z postaciami

Szkielet składa się z predefiniowanego systemu kości, stanowiącego strukturę postaci. Animowanie kości pozwala w prosty sposób tchnąć w postać życie. Po utworzeniu szkieletu umieść go w obrębie siatki i dopasuj poszczególne jego części do rozmiarów siatki. Kości nie muszą się znajdować całkowicie w obrębie siatki, ponieważ można wyłączyć ich renderowanie, ale im bliżej skóry się znajdą, tym dokładniejsze będą ruchy modelu. Po przeskalowaniu i dopasowaniu kości do skóry użyj modyfikatora Skin, aby doczepić skórę do szkieletu. W ten sposób automatycznie określone zostaną wzajemne połączenia pomiędzy skórą i szkieletem. Możesz także użyć ustawień modyfikatora Skin do zdeformowania skóry przy odpowiednich kątach nachylenia kości. W ten sposób można uzyskać np. efekt naprężania mięśni podczas podnoszenia ręki. Pierwotnie pakiet Character Studio wykorzystywał modyfikator Physique do nakładania skóry na szkielet dwunoga. Modyfikator ten ciągle jest dostępny, ale jego następca, Skin, zawiera o wiele więcej opcji i możliwości, przez co jest częściej stosowany do tworzenia dwunogów obleczonych w skórę.

Następnym krokiem jest wykonanie animacji szkieletu przy użyciu odpowiednich narzędzi, które umożliwiają tworzenie cykli marszu, biegu i skoków przez zastosowanie kluczy animacji. Poza tym możliwe jest zapisywanie, wczytywanie i ponowne używanie sekwencji animacji, łącznie z plikami systemów przechwytywania ruchu (motion capture). Sekwencje animacji mogą być łączone i montowane w mikserze ruchu tak, aby powstała płynna animacja.

Tworzenie dwunoga Utworzenie hierarchicznie skonstruowanego szkieletu, który służy do sterowania animacją okrywającej go siatki, jest bardzo proste, jeśli użyjemy modułu CAT. Szkielet, który służy zasadniczo do ułatwienia procesu animacji, można pominąć w ostatecznym renderingu, czyniąc go niewidzialnym. Chociaż Max oferuje olbrzymi zestaw narzędzi do tworzenia szkieletu z pojedynczych kości, Moduł CAT pozwala zautomatyzować cały proces, a nawet oferuje predefiniowane systemy szkieletów. W przypadku niektórych postaci może się okazać, iż korzystanie z gotowego szkieletu jest trudniejsze niż utworzenie go od podstaw. Własnoręczne budowanie szkieletów zostało omówione w rozdziale 38., „Systemy szkieletowe, riggowanie i kinematyka”.

Korzystanie z gotowych szkieletów Aby w scenie umieścić gotowy szkielet typu CAT (CAT rig), otwórz panel Create, włącz kategorię Helpers i jako podkategorię wybierz CAT Objects. Otrzymasz do wyboru trzy opcje: CATParent (obiekt nadrzędny CAT), CATMuscle (mięsień CAT) i Muscle Strand (brzusiec mięśniowy). Kliknij przycisk CATParent, a następnie przeciągnij myszą w oknie widokowym. Utworzysz w ten sposób obiekt oznaczony trójkątną ikoną, który posłuży do sterowania położeniem całego szkieletu. Ani ten obiekt, ani reprezentująca go ikona nie są renderowane.

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1077

Najlepszym miejscem dla obiektu CATParent jest początek globalnego układu współrzędnych.

Gdy obiekt ten jest zaznaczony, można wybrać z listy CATRig Load Save w panelu Modify konkretną wersję szkieletu. Wyboru tego można dokonać także w panelu Create jeszcze przed utworzeniem obiektu CATParent. Rozmiar szkieletu, jaki zostanie wstawiony, zależy od długości pociągnięcia myszą, ale można go też zmienić przez dobór odpowiedniej wartości parametru CATUnits Ratio (proporcje jednostek CAT) w panelu poleceń. Wśród dostępnych szkieletów są odpowiednie dla postaci ludzkich, zwierzęcych, a także dla robotów i kosmitów, jak chociażby ten o nazwie Alien pokazany na rysunku 39.1.

Rysunek 39.1. Moduł CAT oferuje gotowe szkielety nawet dla kosmitów

Jedną z podstawowych zalet szkieletów CAT w porównaniu z obsługiwanymi przez moduł Character Studio czy system Biped jest to, że ich struktura może być dowolna. Wśród gotowych szkieletów CAT znajdziemy nie tylko takie, które służą do animowania postaci ludzkich (na przykład Base Human czy Bip01), ale również szkielety smoka, konia, jaszczurki, pająka i stawonoga. Niektóre mają wiele kończyn i skrzydeł, a wszystkie dają się łatwo sterować.

Modyfikowanie szkieletów gotowych Po umieszczeniu gotowego szkieletu CAT w scenie można za pomocą narzędzi transformacyjnych poprzestawiać poszczególne kości, aby jak najlepiej dopasowały się do siatki modelu. Ręce są tu automatycznie riggowane jako łańcuchy kinematyki prostej (FK), a zatem poruszanie górną kością ramienia wprawia w ruch również pozostałe kości ręki.

1078

Część IX  Praca z postaciami

Nogi są łańcuchami zestawionymi zgodnie z regułami kinematyki odwrotnej (IK), więc można nimi poruszać, ustawiając same stopy. Przy ustawieniach domyślnych wszystkie szkielety CAT mają kości rozciągliwe — gdy przesuwamy jakąś kość za pomocą narzędzi transformacyjnych, kości z nią połączone rozciągają się, dzięki czemu wszystkie złącza przegubowe są zachowywane. Jeśli klikniesz jakąś kość dwukrotnie, zostanie ona zaznaczona wraz ze wszystkimi swoimi potomkami. Kliknij w ten sposób na przykład kość obojczykową, a zaznaczysz automatycznie całą rękę. Jest to bardzo wygodne przy ustawianiu kończyn.

Szkielet CAT „wie”, jaką część ciała reprezentuje dana kość i przydziela jej odpowiedni zestaw parametrów. Przykładowo, gdy zaznaczysz jedną z kości ręki (poza dłonią), w panelu Modify pojawi się roleta o nazwie Limb Setup (ustawienie kończyny) z parametrami charakterystycznymi dla rąk i nóg (patrz rysunek 39.2). Poza kończynami rozróżniane są kręgosłupy, ogony, dłonie, stopy, palce, elementy węzłowe (głowa i miednica) oraz kości typowe dla danego szkieletu. Rysunek 39.2. Roleta Limb Setup pojawia się, gdy zaznaczona jest którakolwiek z kości ręki

Za pomocą tych parametrów można ustalić, że zaznaczona kość należy do kończyny lewej (L), środkowej (M) lub prawej (M). Można także określić, czy ręka ma mieć kość obojczykową (Collarbone) i dłoń (Palm). Domyślnie kończyny mają dwie kości (Bones), ale ich liczbę można zmieniać w zakresie od 1 do 20. Ręce mogą być nad głową lub pod nią, więc za pomocą funkcji Up Vector można określić kość wyznaczającą kierunek do góry. Poniżej pola edycyjnego Name (nazwa) znajdują się trzy ikony służące do kopiowania ustawień z jednej kości na drugą. Ikona Paste/Mirror Limb Settings umożliwia kopiowanie ustawień z jednej strony szkieletu na drugą, gdy trzeba dokonać lustrzanego odbicia tych ustawień. W ten sposób można szybko ustawić kończyny po obu stronach szkieletu w sposób idealnie symetryczny. Dla kręgosłupa (Spine) można ustawić liczbę kości (Bones), długość (Length) i grubość (Size). Można nawet wyregulować jego krzywiznę, posługując się prostym wykresem w rolecie Spine Curvature Graph. Podobne parametry ma ogon (Tail), a dodatkowo można mu jeszcze ustawić wysokość (Height) i zwężenie (Taper). Dłoni (Palm) i stopie (Ankle) można przypisać długość (Length), szerokość (Width), wysokość (Height) i liczbę palców (Num Digits).

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1079

Poszczególne kości kończyn mają też parametr Segments, za pomocą którego można dzielić te kości na segmenty. Nie należy go mylić z parametrem Bones w rolecie Limb Setup, który określa liczbę kości w kończynie. Dzielenie na segmenty umożliwia manipulowanie poszczególnymi partiami kości, na przykład przez przekręcanie ich wokół wspólnej osi, tak jak pokazano na rysunku 39.3. Kąt skrętu poszczególnych segmentów można regulować za pomocą wykresu w rolecie Bone Twist Weight.

Rysunek 39.3. Zwiększenie liczby segmentów umożliwia przekręcenie kości; tutaj jest to kość przedramienia

Jeśli po zmodyfikowaniu szkieletu chciałbyś go zapisać, po prostu zaznacz obiekt CatParent i w rolecie CATRig Load Save kliknij przycisk Save Preset Rig. Domyślnie szkielety są zapisywane w folderze CATRigs i otrzymują rozszerzenie .rg3. Po zapisaniu są dostępne tak samo jak te, które zostały zainstalowane wraz z programem. Szkielet CAT umieszczony w scenie można z niej bardzo łatwo usunąć. Wystarczy zaznaczyć obiekt CatParent i wcisnąć klawisz Delete.

Modyfikowanie geometrii kości Standardowo kości tworzące szkielet CAT są zwykłymi prostopadłościanami, ale tak być nie musi. Kiedyś prostota była konieczna, aby animacja mogła przebiegać płynnie, ale dzisiejsze komputery radzą sobie z nawet bardzo złożonymi scenami i odtwarzają animacje bez żadnych opóźnień. O tym, czy dana kość będzie prostopadłościanem, czy też będzie miała zupełnie inną formę, decyduje opcja Use Custom Mesh (zastosuj własną siatkę).

1080

Część IX  Praca z postaciami

Aby zmodyfikować geometrię kości, po prostu przypisz jej odpowiedni modyfikator (może być na przykład Edit Poly) i nadaj kształt zgodny z Twoimi potrzebami. Korzystając z funkcji Attach modyfikatora Edit Poly, możesz nawet przyłączyć inną siatkę. Po wprowadzeniu stosownych zmian scal stos modyfikatorów do bazowego obiektu kości. Odtąd będziesz mógł zmieniać wygląd szkieletu za pomocą opcji Use Custom Mesh. Na rysunku 39.4 pokazany jest szkielet antylopy gnu ze zmodyfikowaną siatką.

Rysunek 39.4. W roli kości szkieletu CAT można użyć uproszczonych siatek, tak jak zrobiono to w przypadku szkieletu antylopy gnu Jeśli zadałeś sobie trud przygotowania szczegółowej siatki mającej pełnić rolę skóry, możesz ją wykorzystać — po odpowiednim uproszczeniu — do zbudowania szkieletu.

Ćwiczenie: Edycja kości głowy W tym ćwiczeniu zmodyfikujemy kość reprezentującą głowę w szkielecie kosmity. Sprawimy w ten sposób, że postać stanie się wyrazistsza, a przy okazji zobaczymy, jak działa opcja Use Custom Mesh. Aby zmodyfikować kość szkieletu CAT, wykonaj następujące czynności: 1. Otwórz plik Custom alien head bone.max znajdujący się w folderze Chap 39 na płycie dołączonej do książki. Plik zawiera szkielet CAT o nazwie Alien (obcy). 2. Zaznacz kość głowy (AlienHead) i otwórz panel Modify. W rolecie Hub Setup włącz opcję Use Custom Mesh.

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1081

3. Z listy modyfikatorów wybierz TurboSmooth, aby nieco zaokrąglić głowę kosmity, a następnie przeskaluj ją, żeby nie odstawała od pozostałych kości szkieletu. 4. Otwórz panel Create i włącz przycisk Sphere. U samej góry rolety Object Type włącz opcję AutoGrid, po czym trzy razy przeciągnij myszą po powierzchni głowy, aby utworzyć parę oczu i nos. 5. Ponownie otwórz panel Modify, zaznacz kość głowy i przypisz jej modyfikator Edit Poly. W rolecie Edit Geometry kliknij przycisk Attach i wskaż utworzone przed chwilą oczy i nos, aby połączyć je z obiektem głowy. 6. Kliknij prawym przyciskiem myszy w obrębie stosu modyfikatorów i wybierz polecenie Collapse All (scal wszystko). W oknie dialogowym, które się otworzy, kliknij przycisk Yes. Zmodyfikowana głowa kosmity pokazana jest na rysunku 39.5. Jeśli wyłączysz opcję Use Custom Mesh, kosmita znów będzie miał głowę w kształcie prostopadłościanu.

Rysunek 39.5. Kości szkieletu CAT można zastąpić dowolnymi obiektami siatkowymi

Budowanie szkieletu CAT od podstaw Jeśli chcesz sam zbudować szkielet CAT, zacznij od umieszczenia w scenie obiektu CATParent, ale upewnij się, że w rolecie CATRig Load Save zaznaczona jest pozycja None. Następnie kliknij w oknie widokowym prawym przyciskiem myszy, aby wyjść z trybu tworzenia obiektów CatParent. W ten sposób otrzymasz obiekt nadrzędny szkieletu, ale bez żadnych kości. Ustaw ten obiekt tak, aby w jego obrębie znalazły się obie stopy modelu siatkowego.

1082

Część IX  Praca z postaciami Zamrożenie modelu siatkowego (opcja Freeze) i włączenie opcji See-Through (patrz przez) w oknie dialogowym Object Properties znacznie ułatwia umieszczanie kości we właściwych miejscach.

Pierwszą kością, jaką powinieneś utworzyć, jest miednica. Kliknij więc znajdujący się poniżej listy z gotowymi szkieletami przycisk Create Pelvis (utwórz miednicę). Nad obiektem CATParent pojawi się prostopadłościan — to on w budowanym szkielecie będzie pełnił rolę miednicy. Za pomocą narzędzi transformujących przesuń go, obróć i przeskaluj tak, aby jak najlepiej pasował do siatki. Gdy już ustawisz miednicę we właściwym miejscu, przejdź do rolety Hub Setup, pokazanej na rysunku 39.6, aby dodać nogi, ręce, kręgosłup i ewentualnie ogon. Przycisk Add Leg dołącza do miednicy nogę złożoną z dwóch kości sięgających podłoża i stopy. Kości nogi ustawisz we właściwej pozycji, przesuwając samą stopę. Po ustawieniu pierwszej nogi zaznacz ponownie kość miednicy i jeszcze raz kliknij przycisk Add Leg, aby utworzyć drugą nogę. Druga noga zostanie dołączona po przeciwnej stronie miednicy i będzie zwierciadlanym odbiciem pierwszej. Rysunek 39.6. Za pomocą przycisków z rolety Hub Setup można dołączać do szkieletu nogi, ręce i kręgosłup

Znów zaznacz miednicę i kliknij przycisk Add Spine (dodaj kręgosłup). Szkielet powiększy się o łańcuch kilku kości zakończony od góry barkowym obiektem węzłowym (hub). To właśnie do tego obiektu należy dołączyć ręce i szyję, przy czym ta ostatnia jest po prostu kolejnym kręgosłupem z obiektem węzłowym dla głowy. Gdy tworzysz szkielety o większej liczbie kończyn, pamiętaj, że nogami są te kończyny, które sięgają podłoża, a rękami te, które zwisają swobodnie.

Teraz możesz zaznaczyć obiekt węzłowy miednicy, barku lub głowy i korzystając z przycisku Add Tail (dodaj ogon), dołączyć — w zależności od potrzeb — ogon, skrzydła lub harcap. Na rysunku 39.7 pokazano szkielet CAT wykreowany za pomocą zaledwie kilku kliknięć. Nogi są tu zriggowane zgodnie z kinematyką odwrotną, a w łańcuchach rąk obowiązuje kinematyka prosta. Palce u nóg i rąk można dodać bardzo łatwo — wystarczy zaznaczyć dłoń lub stopę i ustawić wartość parametru Num Digits.

Nadawanie nazw kościom szkieletu Kości szkieletu otrzymują nazwy na podstawie zawartości pola tekstowego Name. Cały szkielet przyjmuje nazwę zgodną z tym, co znajduje się w polu Name, gdy zaznaczony jest obiekt CATParent. Nazwy kości w poszczególnych częściach ciała składają się z nazwy tej

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1083

Rysunek 39.7. Narzędzia modułu CAT umożliwiają szybkie tworzenie zriggowanych szkieletów

części, na przykład RLeg (noga prawa) czy LArm (ręka prawa), i numeru pozycji w łańcuchu. Dla kości ramieniowej jest to 1, a dla kości przedramienia — 2. Jeśli zmienisz tekst w polu Name, wszystkie kości, których nazwy są zależne od tego tekstu, również zmienią swoje nazwy. A zatem jeśli obiekt CATParent nazwiesz Reuben, nazwy wszystkich kości będą się zaczynały od tego właśnie imienia. Taki system nazewnictwa bardzo pomaga przy animowaniu szkieletu.

Ćwiczenie: Konstruowanie szkieletu CAT dopasowanego do siatki istniejącego już modelu W tym ćwiczeniu użyjemy narzędzi CAT do zbudowania szkieletu i dopasowania go do przygotowanego wcześniej modelu siatkowego. W roli modela wystąpi słynny łoś o imieniu Marvin. Aby własnoręcznie utworzyć szkielet CAT, wykonaj następujące czynności: 1. Otwórz plik Marvin Moose skin.max znajdujący się w folderze Chap 39 na płycie dołączonej do książki. Plik zawiera siatkę modelu łosia ustawioną w środku układu współrzędnych. 2. Zaznacz siatkę (obiekt o nazwie moose skin), kliknij prawym przyciskiem myszy i z czteroczęściowego menu wybierz polecenie Object Properties. W oknie z właściwościami obiektu zaznacz opcje See-Through i Freeze.

1084

Część IX  Praca z postaciami Opcję See-Through można włączyć także za pomocą skrótu klawiszowego Alt+X.

3. W bocznym panelu Create kliknij ikonę kategorii Helpers, jako podkategorię wybierz Cat Objects i kliknij przycisk CATParent. Następnie przejdź do okna widokowego, kliknij w środku układu współrzędnych i przeciągnij myszą, aby utworzyć nadrzędny obiekt szkieletu. Trójkątna ikona symbolizująca ten obiekt powinna objąć stopy łosia. 4. Mając zaznaczony nadrzędny obiekt szkieletu, otwórz panel Modify i kliknij przycisk Create Pelvis. Następnie przesuń i przeskaluj obiekt miednicy, tak aby jak najlepiej pasował do siatki łosia. 5. Zachowaj zaznaczenie miednicy i kliknij przycisk Add Leg, aby utworzyć lewą nogę. Zaznacz stopę i obróć ją tak, aby spoczęła płasko na podłożu, a potem przeskaluj, by rozmiarem pasowała do stopy łosia. 6. Zaznacz miednicę i ponownie kliknij przycisk Add Leg, by utworzyć drugą nogę. Potem za pomocą przycisku Add Spine utwórz kręgosłup z obiektem węzłowym dla barków. Dopasuj położenie i rozmiar tego obiektu, a następnie kliknij przycisk Add Arm i ułóż kości ręki wzdłuż siatki. 7. Zaznacz obiekt barkowy i za pomocą przycisku Add Arm dodaj drugą rękę. Ponownie kliknij przycisk Add Spine, aby utworzyć kręgi szyjne i obiekt głowy. Zaznacz jedną z kości szyjnych i zmień nazwę (Name) na Neck (szyja) oraz zmniejsz liczbę kości (parametr Bones) do 2. Na koniec przeskaluj obiekt głowy i nadaj mu nazwę Head (głowa). Na rysunku 39.8 pokazano łosia w stanie gotowym do pokrycia skórą i wykonania animacji.

Animowanie szkieletu CAT Nawet najlepszy na świecie szkielet będzie nieprzydatny, jeśli nie będzie go można łatwo animować. Na szczęście narzędzia animacyjne modułu CAT są tak samo znakomite jak te, które służą do riggowania. Umożliwiają one nawet korzystanie z warstw animacyjnych. O warstwach animacyjnych możesz przeczytać także w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Wszystkie narzędzia animacyjne modułu CAT są dostępne w panelu Motion, gdy zaznaczona jest jakakolwiek kość szkieletu CAT. W rolecie Layer Manager pokazanej na rysunku 39.9 znajduje się lista wszystkich dostępnych warstw animacji. Aby utworzyć nową warstwę, musisz wybrać jeden z czterech jej typów, jakie są dostępne w postaci rozwijanej grupy przycisków Add Layer (dodaj warstwę) umieszczonej wraz z innymi przyciskami bezpośrednio pod listą warstw. Oto rodzaje warstw, jakie można utworzyć: 

Absolute Layer (warstwa zasadnicza) — zawiera zasadnicze dane definiujące całą animację.



Local Adjustment Layer (warstwa korekcji lokalnych) — zawiera dane o charakterze względnym i lokalnym w odniesieniu do warstwy leżącej wyżej.

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1085

Rysunek 39.8. Siatka modelu łosia została zriggowana za pomocą narzędzi CAT 

World Adjustment Layer (warstwa korekcji globalnych) — zawiera dane o charakterze globalnym; działa niezależnie od pozostałych warstw.



CAT Motion Layer (warstwa ruchów CAT) — umożliwia kreowanie ruchów proceduralnych, takich jak cykl chodu.

Po dodaniu warstwy i zaznaczeniu jej musisz jeszcze kliknąć przycisk Setup/Animation Mode Toggle (przełącznik trybów przygotowywania i animowania), aby móc umieszczać na niej klucze animacyjne. Do generowania kluczy służą, tak jak zwykle, tryby Set Keys i Auto Key. Każda nowa animacja jest automatycznie nakładana na aktualnie zaznaczoną warstwę. Jeśli animujesz kości szkieletu CAT w trybie Auto Key, ale na pasku ścieżki nie widać żadnych kluczy, prawdopodobnie nie kliknąłeś przycisku Setup/Animation Mode Toggle i nadal pracujesz w trybie przygotowywania animacji, a nie jej tworzenia.

Zaznaczoną warstwę animacji można usunąć z listy za pomocą przycisku Delete Layer. Używając przycisków Copy Layer i Paste Layer, można jedną i tę samą warstwę przypisać kilku różnym szkieletom. Przyciski Move Layer Up i Move Layer Down służą do zmieniania kolejności warstw. Każdej warstwie można nadać unikatową nazwę, wpisując ją w polu Name. Opcja Ignore wyłącza zaznaczoną warstwę, a opcja Solo wyłącza wszystkie warstwy oprócz zaznaczonej.

1086

Część IX  Praca z postaciami

Rysunek 39.9. Roleta Layer Manager zawiera narzędzia do obsługi warstw animacji

Mieszanie zasadniczych warstw animacyjnych Gdy istnieje kilka warstw typu Absolute, zawarte w nich animacje są przeliczane w kolejności zgodnej z ułożeniem tych warstw w rolecie Layer Manager — od góry do dołu. Każdej warstwie można przypisać globalną wagę (Global Weight), która określi stopień, w jakim animacja z danej warstwy zostanie uwzględniona przy wyznaczaniu animacji wypadkowej. Przykładowo, jeśli położona najwyżej warstwa zasadnicza zawiera klucze animacji podnoszenia ręki, a druga z kolei zawiera klucze dla animacji machania dłonią, to można z nich uzyskać ruch wypadkowy polegający na podnoszeniu ręki z jednoczesnym machaniem dłonią — wystarczy tylko zmniejszyć globalną wagę drugiej warstwy do 50%, tak jak na rysunku 39.10. Zredukowanie wagi dla tej warstwy do 0% spowoduje, że postać będzie jedynie podnosiła rękę. Natomiast przy ustawieniu 100% warstwa całkowicie zdominuje animację i zobaczymy tylko machanie dłonią bez podnoszenia ręki.

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1087

Rysunek 39.10. Jeśli roleta Layer Manager zawiera kilka warstw animacyjnych, zapisane na nich ruchy można łączyć, dobierając odpowiednie wartości parametru Global Weight

Niezależnie od wagi globalnej, która wpływa na wszystkie elementy szkieletu, można manipulować także wagą lokalną (Local Weight) odnoszącą się tylko do konkretnych części szkieletu. Jeśli przykładowo warstwa zawiera ruch ustawiający postać w określonej pozie, to po wyselekcjonowaniu kości obojczykowej i zmniejszeniu wagi lokalnej cała ręka wykona przypisany jej ruch tylko częściowo. Za pomocą wagi lokalnej można więc różnicować ruchy poszczególnych części szkieletu w ramach tej samej warstwy animacyjnej. Inną funkcją, która przydaje się podczas animowania, jest kolorowanie szkieletu. Można ją uaktywnić przez wybór odpowiedniego przycisku z grupy rozwijanej Rig Coloring Mode (tryb kolorowania szkieletu) położonej na prawo od przycisku Setup/Animation Mode Toggle. Jeśli wybierzesz przycisk włączający tryb Layer Colors (kolory warstw), cały szkielet przyjmie kolor warstwy wyznaczającej animację szkieletu. Jeśli animacja pochodzi z kilku warstw, wówczas kolor szkieletu jest wypadkową kolorów tych warstw. Część szkieletu różniąca się od pozostałych części wagą lokalną różni się od nich także kolorem. Jeśli zamierzasz mieszać warstwy za pomocą wag, przypisz im kolory podstawowe, bo wtedy łatwiej zobaczysz, gdzie i w jakim stopniu poszczególne warstwy łączą się ze sobą.

Kliknięcie przycisku Doop Sheet: Layer Ranges otwiera okno raportu operatorskiego z zakresami czasowymi poszczególnych warstw. Tutaj można te zakresy bardzo łatwo modyfikować. Z kolei wartości wag — zarówno lokalnej, jak i globalnej — można modyfikować przez odpowiednie ukształtowanie wykresu w edytorze krzywych. Aby otworzyć edytor krzywych dla danej wagi, należy kliknąć niewielki przycisk leżący na prawo od spinera służącego do ustawiania jej wartości.

1088

Część IX  Praca z postaciami

Dla każdej warstwy można wyświetlić gizmo transformacji (przycisk Display Layer Transform Gizmo). Jest to prosty obiekt pomocniczy połączony z animowaną postacią. Można go przesuwać i obracać, sterując w ten sposób całym szkieletem. Standardowo obiekt ten jest umieszczany na podłożu między stopami szkieletu, ale jeśli klikniesz przycisk, trzymając przy tym wciśnięty klawisz Ctrl, gizmo zostanie umieszczone na zaznaczonej kości. Wciśnięcie klawisza Alt spowoduje umieszczenie gizma na początku globalnego układu współrzędnych. Swoje gizma mają tylko warstwy zasadnicze.

Warstwy korekcyjne Jeśli animacja działa ogólnie dobrze, ale dopracowania wymagają drobne szczegóły — na przykład trzeba rękę wysunąć nieco dalej, aby sięgnęła do klamki — możesz zmodyfikować warstwę zasadniczą albo zastosować warstwę korekcyjną. Warstwy korekcyjne mogą być lokalne lub globalne. Różnica polega na sposobie oddziaływania z wcześniejszymi warstwami animacyjnymi. Warstwa lokalna uwzględnia ruchy zapisane na warstwie leżącej wyżej i wprowadza tylko określone korekty tych ruchów — na przykład przedłuża ruch ręki w kierunku klamki. Warstwa globalna działa w przestrzeni globalnej i powoduje, że ręka sięga do określonego miejsca w tej właśnie przestrzeni. Ruch ten nadal łączy się z ruchem zdefiniowanym na warstwie poprzedzającej, ale obiekt jest również przesuwany do wyznaczonego położenia globalnego.

Tworzenie cyklu spacerowego przy użyciu warstwy CAT Motion Kluczowanie ruchów na warstwach zasadniczych daje dobre rezultaty, ale jest uciążliwe. Prawdziwa frajda zaczyna się, gdy sięgamy po warstwę CAT Motion. Już samo umieszczenie jej na liście powoduje przypisanie szkieletowi pełnego cyklu spacerowego. Nie trzeba definiować żadnych kluczy, wystarczy kliknąć przycisk Play i szkielet zaczyna kroczyć. Gdy zaznaczona jest warstwa CAT Motion, na prawo od próbki koloru warstwy wyświetlany jest przycisk CATMotion Editor. Kliknięcie go otwiera okno dialogowe pokazane na rysunku 39.11. W oknie tym można modyfikować rozmaite parametry cyklu spacerowego. Środkowy panel okna CATMotion zawiera listę dostępnych cykli spacerowych. Przyciski umieszczone w prawym dolnym rogu okna umożliwiają zapisywanie i otwieranie plików z takimi cyklami. W panelu po prawej stronie wyświetlane są warstwy animacyjne dla bieżącego cyklu spacerowego (edytor ruchów CAT ma własny system warstw). Dwukrotne kliknięcie nazwy cyklu powoduje wyświetlenie prostego okna z opcjami załadowania cyklu na nową warstwę (Load into new layer) lub na istniejącą (Load into existing layer). Warstwy działają tutaj tak samo jak w rolecie Layer Manager. Każdej z nich można też przypisać określoną wagę (Weight). Powiedzmy, że do warstwy ze standardowym cyklem chodu dodałeś warstwę z cyklem biegu. Jeśli ustawisz jej wagę na 50%, otrzymasz mieszankę obu cykli w postaci szybkiego chodu. Możesz też otworzyć edytor krzywych i zmienić kształt krzywych sterujących wartościami wag.

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1089

Rysunek 39.11. W oknie CATMotion można zmieniać parametry cyklu spacerowego

Ustawianie parametrów globalnych Kliknięcie pozycji Globals w pierwszym z lewej panelu okna CATMotion otwiera panel z globalnymi parametrami ruchu CAT (patrz rysunek 39.12). U samej góry znajdują się pola z numerami pierwszej i ostatniej klatki cyklu spacerowego. Wpisane tu wartości nie są tożsame z tymi, które można ustawić w polach Start i End w oknie dialogowym Time Configuration — odnoszą się wyłącznie do animacji szkieletu CAT. Rysunek 39.12. W panelu Globals okna dialogowego CATMotion można zmienić tempo, szybkość i kierunek marszu

Parametr Max Step Time (maksymalny czas kroku) określa maksymalny czas wykonania jednego kroku. Przy małych wartościach postać idzie bardzo szybko, a przy dużych spaceruje powoli. Max Stride Length (maksymalna długość kroku) określa długość stawianych kroków. Oba te parametry wyznaczają prędkość (Velocity) i tylko za ich pośrednictwem można ją zmieniać. Przy ustawieniach domyślnych postać idzie w kierunku wskazanym przez obiekt CAT Parent, ale można to zmienić, modyfikując wartość parametru Direction (kierunek). Przy wartości 0 postać idzie prosto przed siebie, przy wartości 90 przesuwa się w prawo, przy

1090

Część IX  Praca z postaciami

180 idzie do tyłu, a przy 270 przemieszcza się w lewo. Od wartości parametru Gradient (nachylenie) zależy, czy postać odchyli się do tyłu jak przy wchodzeniu pod górę (wartości dodatnie), czy też pochyli się do przodu jak przy schodzeniu z góry (wartości ujemne).

Spacerowanie po ścieżce Domyślnie postać spaceruje w miejscu, ale jeśli włączysz opcję Walk On Line, postać ruszy przed siebie po linii prostej. Gdy cykl spacerowy osiągnie ostatnią klatkę, postać wróci do punktu wyjścia i rozpocznie swą wędrówkę na nowo. Kierunek tej wędrówki zależy oczywiście od wartości parametru Direction. Przycisk Path Node (węzeł ścieżki) umożliwia wskazanie obiektu, za którym postać ma podążać. Gdy tylko wskażesz taki obiekt — może to być obiekt pozorny (Dummy) — postać zostanie na nim umieszczona i tam będzie realizowała swój cykl spacerowy. Teraz możesz wykonać animację tego obiektu, a postać będzie wiernie naśladować jego ruchy. Postać można zmusić także do wędrowania po z góry ustalonej trasie. W tym celu trzeba wcześniej narysować taką trasę za pomocą narzędzia Line. Potem wystarczy zaznaczyć powiązany z postacią obiekt pozorny i połączyć go z narysowaną ścieżką, używając polecenia Animation/Constraints/Path Constraint. Włączenie opcji Follow (podążaj za) zmusi animowaną postać do ustawiania się zgodnie z kierunkiem ścieżki. Dążenie do zachowania kierunku ścieżki może prowadzić do zniekształcania postaci na ostrych zakrętach. Można to zminimalizować, ustawiając odpowiednią wartość parametru Preserve Character Shape (zachowaj kształt postaci). Przy wartości 0 zniekształcenia takie są możliwe.

Sterowanie śladami i kończynami Za pomocą kontrolek z panelu LimbPhases, pokazanego na rysunku 39.13, można sterować rozmieszczeniem śladów i wymachami rąk oraz nóg. Ślady pozostawiane przez animowaną postać są powiązane z jej szkieletem, więc każda zmiana śladów wpływa na ułożenie szkieletu. Jeśli ślady są niewidoczne, można włączyć ich wyświetlanie za pomocą przycisku Create. Działanie przycisku Delete jest odwrotne — jeśli go klikniesz, ślady znikną. Po zmodyfikowaniu śladów możesz wszystkie (All) lub tylko wybrane (Selected) przywrócić do pierwotnego stanu za pomocą przycisku Reset. Rysunek 39.13. W panelu LimbPhases można ustalić, jak ręce i nogi mają poruszać się względem siebie

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1091

Za pomocą suwaków z dolnej części panelu LimbPhases można ustalić, jak ręce i nogi mają poruszać się względem siebie. Przy ustawieniach domyślnych jednoczesne wymachy wykonują lewa noga i prawa ręka oraz prawa noga i lewa ręka. W każdej chwili można to zmienić, wprowadzając inne ustawienia suwaków.

Dopasowywanie śladów do podłoża Jeśli ślady są widoczne, zaznacz je i kliknij przycisk Pick Ground (wskaż podłoże). W tym momencie będziesz mógł wskazać obiekt stanowiący podłoże, po którym postać ma się poruszać. Obiekt musi być jeden, ale gdy już go wskażesz, ślady zostaną poprzesuwane w kierunku pionowym i poustawiane na powierzchni tego obiektu. W ten sposób zmusisz postać do poruszania się po wskazanej powierzchni.

Sterowanie ruchami drugorzędnymi Pozostałe panele okna CATMotion służą do sterowania ruchami poszczególnych części szkieletu, takich jak grupa miednicy (Pelvis Group), głowy (Head Group) i klatki piersiowej (Ribcage Group). Gdy rozwiniesz grupę miednicy, uzyskasz dostęp do następujących parametrów: Twist (skręt), Roll (kołysanie), Pitch (pochylenie), Lift (unoszenie), Push (wypychanie), WeightShift (balansowanie) oraz OffsetPos (położenie wstępne) i OffsetRot (obrót wstępny). Z każdym parametrem związana jest krzywa animacyjna, za pomocą której można wybrany ruch podkreślić lub stonować. Przykładową krzywą dla skrętu miednicy pokazano na rysunku 39.14. Rysunek 39.14. Za pomocą krzywych animacyjnych w oknie CATMotion można sterować ruchami drugorzędnymi, na przykład skrętami miednicy

Ćwiczenie: Animowanie postaci kroczącej po ścieżce Tym razem zmusimy klasycznego kosmitę do wędrowania po wytyczonej przez nas ścieżce. Aby skonfigurować animację postaci wędrującej wzdłuż ścieżki, wykonaj poniższe czynności.

1092

Część IX  Praca z postaciami

1. Otwórz plik Wandering alien.max znajdujący się w folderze Chap 39 na płycie dołączonej do książki. Plik zawiera szkielet CAT klasycznego kosmity oraz narysowaną odręcznie ścieżkę. 2. Zaznacz nadrzędny obiekt szkieletu, otwórz panel Motion i w rolecie Layer Manager dodaj do listy warstwę CAT Motion. Następnie kliknij przycisk Setup/Animation Mode Toggle. Jeśli teraz klikniesz przycisk Play, zobaczysz kosmitę maszerującego w miejscu. 3. Otwórz panel Create, kliknij ikonę Helpers i utwórz obiekt pozorny (Dummy). 4. Zaznacz jakąkolwiek część szkieletu, otwórz ponownie panel Motion i kliknij tam przycisk CATMotion Editor. W oknie CATMotion otwórz panel Globals i kliknij przycisk Path Node. W oknie widokowym wskaż obiekt pozorny. 5. Zaznacz obiekt pozorny i obróć go tak, aby postać stanęła w pozycji pionowej. Z głównego menu wybierz polecenie Animation/Constraints/Path Constraint i wskaż ścieżkę. Przewiń zawartość panelu Motion i w rolecie Path Parameters włącz opcję Follow. Znów obróć obiekt pozorny, aby ustawić kosmitę przodem do ścieżki. 6. Uruchom animację. Kosmita powinien chodzić po ścieżce i zostawiać po sobie ślady. 7. Z menu aplikacji wybierz polecenie Import/Merge i dołącz do bieżącej sceny obiekt z pliku Hilly surface.max. Ta pofałdowana powierzchnia będzie podłożem dla naszego kosmity. Upewnij się, że nadal zaznaczony jest element szkieletu, i w oknie CATMotion otwórz panel LimbPhases. Kliknij przycisk Pick Ground i wskaż zaimportowaną powierzchnię. Ślady kosmity i on sam pojawią się na nowym podłożu (patrz rysunek 39.15).

Praca z mięśniami Kości doskonale zdają egzamin, jeśli chodzi o sterowanie ruchami, ale są nieprzydatne w kreowaniu efektów pokazujących wybrzuszenia napiętych mięśni i wywołanych nimi odkształceń skóry. Moduł CAT oferuje rozwiązanie w postaci dwóch różnych typów mięśni. Pierwszy to brzusiec mięśniowy (Muscle Strand) symulowany przez zestaw kul, które są ściskane lub rozciągane przez poruszające się kości. Drugi typ, CAT Muscle, to mięśnie płaskie, a ich imitację stanowią ruchome prostokątne panele. Oba typy obiektów mięśniowych można utworzyć za pomocą odpowiednich przycisków w panelu Create, w kategorii Helpers i podkategorii CAT Objects. Mięśnie typu Muscle Strand są najczęściej używane do modelowania rąk i nóg, a Cat Muscles umieszcza się zazwyczaj na brzuchu, klatce piersiowej i barkach.

Stosowanie mięśni typu Muscle Strand Obiekt Muscle Strand tworzymy, klikając w oknie widokowym w celu umieszczenia tam uchwytów kontrolnych. Pojedynczy mięsień ma cztery uchwyty rozłożone w dwóch zestawach. Kliknij i przeciągnij myszą, aby utworzyć pierwszy zestaw i powtórz to, by utworzyć

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1093

Rysunek 39.15. Aby zmusić postać do chodzenia po ścieżce, wystarczy połączyć z tą ścieżką obiekt Path Node

zestaw drugi. Uchwyty skrajne wyznaczają końce mięśnia, a środkowe służą do kształtowania linii będącej jego osią. Uchwyty (Handles) można włączać i wyłączać za pomocą opcji Visible w rolecie Muscle Strand. Można tam również zmieniać ich rozmiary (Handle Size). W sekcji Type można wybrać, czy wszystkie kule imitujące mięsień mają stanowić jedną całość, co jest korzystne, gdy mięsień ma być oblekany skórą za pomocą modyfikatora Skin Wrap (opcja Mesh), czy też mają funkcjonować jak oddzielne kości z odrębnymi nazwami, które można przypisywać do modyfikatora Skin jak zwykłe kości (opcja Bones). Roleta Muscle Strand zawiera także przyciski służące do kopiowania właściwości jednego mięśnia i wklejania ich do drugiego. Można tu również ustalić, czy mięsień ma być po lewej stronie szkieletu (L), po prawej (R), czy na środku (M). Opcje X, Y i Z w części Mirror pozwalają ustalić oś odbicia lustrzanego dla danego mięśnia. Kształt mięśnia zależy od liczby kul, które stopniowo powiększają się, a potem znów maleją, gdy przechodzimy wzdłuż całego mięśnia. Liczbę kul można ustalić w polu Num Spheres. Przycisk Show Profile Curve otwiera okno z krzywą wyznaczającą przekrój podłużny mięśnia. Przez modyfikowanie kształtu tej krzywej można zmieniać rozmiary poszczególnych kul. Po ustawieniu mięśnia we właściwym miejscu można przyłączyć jego końce do pobliskich kości za pomocą narzędzia Select and Link z głównego paska narzędziowego. Odtąd ruchy

1094

Część IX  Praca z postaciami

kości będą powodowały kurczenie się lub rozciąganie mięśnia. Jego wygląd będzie wtedy zależny od ustawień w sekcji Squash/Stretch. Kliknięcie przycisku Set Relaxed State (ustaw stan spoczynku) ustala aktualną długość mięśnia jako spoczynkową (Relaxed Length). Na rysunku 39.16 pokazano szkielet małpy człekokształtnej (Ape) z dwoma mięśniami typu Muscle Strands wstawionymi zamiast kości ramion. Zwróć uwagę na wybrzuszenie mięśnia przy zginaniu ręki w łokciu.

Rysunek 39.16. Obiekty typu Muscle Strands pozwalają uzyskać efekt wybrzuszania się mięśni

Stosowanie mięśni płaskich Obiekt Cat Muscle składa się z prostokątnych płytek, które przesuwają się względem siebie. Tworzymy go podobnie jak zwykłą płaszczyznę, zakreślając myszą prostokątny obszar. W narożnikach, a także wzdłuż boków i wewnątrz tego obszaru znajdują się uchwyty służące do deformowania mięśnia — można je ukryć wszystkie lub tylko te wewnętrzne. W panelu poleceń dostępny jest także parametr Handle Size, za pomocą którego można zmieniać rozmiary uchwytów. Podobnie jak w przypadku obiektów Muscle Strands można wybrać opcję Bones lub Mesh. Rozdzielczość podziału mięśnia na segmenty można ustalić za pomocą parametrów U Segs i V Segs. Po ułożeniu mięśnia we właściwym miejscu można jego narożniki związać z kośćmi szkieletu. Wtedy każdy ruch tych kości będzie wywoływał deformację mięśnia. Mięśnie płaskie mają jeszcze jedną wspaniałą właściwość — potrafią wykrywać kolizje z innymi obiektami. Jeśli nałożysz taki mięsień na obiekt, którego nazwa znajduje się na

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT

1095

liście wykrywania kolizji, mięsień automatycznie dopasuje się do kształtu obiektu. Funkcja ta działa w odniesieniu do każdego standardowego obiektu, z Muscle Strand włącznie. Na rysunku 39.17 pokazano odkształcenie mięśnia płaskiego spowodowane nałożeniem go na rozciągniętą sferę. Dla każdego obiektu z listy kolizyjnej można ustalić wartości parametrów Hardness (twardość) i Distortion (zniekształcenie).

Rysunek 39.17. Obiekty CAT Muscle mogą znakomicie imitować całe grupy mięśni

Ćwiczenie: Dodawanie mięśni do szkieletu W tym ćwiczeniu weźmiemy szkielet postaci ludzkiej i dodamy mu z przodu płaski mięsień w celu ukształtowania klatki piersiowej i brzucha. Aby dodać mięsień do szkieletu, wykonaj następujące czynności: 1. Otwórz plik Human char with muscles.max znajdujący się w folderze Chap 39 na płycie dołączonej do książki. Plik zawiera szkielet CAT dla postaci ludzkiej. 2. Otwórz panel Create, kliknij ikonę kategorii Helpers i wybierz podkategorię CAT Objects. Kliknij przycisk CATMuscle i przeciągnij myszą w oknie widokowym Top, aby utworzyć płaski mięsień między obojczykiem a miednicą na lewo od kręgosłupa. Następnie przesuń płat mięśniowy tak, aby znalazł się tuż przed kością klatki piersiowej (ribcage). 3. Otwórz panel Modify i zwiększ wartości parametrów U Segs i V Segs do 15. Przeciągając zewnętrzne uchwyty mięśnia, ukształtuj na nim lekkie zaokrąglenie z boku.

1096

Część IX  Praca z postaciami

4. Z głównego menu wybierz polecenie Create/Extended Primitives/Chamfer Box i utwórz prostopadłościan o zaokrąglonych krawędziach. Utwórz też wydłużoną sferę (Create/Standard Primitives/Sphere). Zaokrąglony prostopadłościan umieść w miejscu, gdzie powinien być mięsień piersiowy, a sferę sklonuj trzykrotnie i umieść na wysokości brzucha. 5. Zaznacz obiekt Cat Muscle, w panelu Modify kliknij przycisk Add znajdujący się w sekcji Collision Detection i w oknie widokowym wskaż prostopadłościan oraz sfery. Następnie przesuń te obiekty w taki sposób, aby na powierzchni obiektu Cat Muscle pojawiły się pożądane kształty mięśni. 6. Zaznacz wszystkie obiekty kolizyjne, kliknij prawym przyciskiem myszy i z czteroczęściowego menu podręcznego wybierz polecenie Hide Selection (ukryj zaznaczenie). Rezultat formowania mięśnia piersiowego i mięśni brzucha pokazano na rysunku 39.18.

Rysunek 39.18. Za pomocą obiektów Cat Muscle można imitować całe grupy mięśni

Podsumowanie W tym rozdziale podane zostały wstępne informacje na temat modułu CAT, omówiono niektóre aspekty pracy ze szkieletami CAT, w tym korzystanie z gotowych szkieletów, tworzenie ich od podstaw i animowanie. Omówione zostały następujące zagadnienia:

Rozdział 39.  Animowanie postaci przy użyciu modułu CAT 

przebieg pracy przy tworzeniu postaci,



tworzenie i edytowanie szkieletów CAT,



tworzenie szkieletu CAT od podstaw,



animowanie szkieletu CAT,



tworzenie cykli spacerowych za pomocą okna CAT Motion,



kształtowanie różnego rodzaju mięśni.

1097

Po utworzeniu i zriggowaniu (ręcznym lub przy użyciu narzędzi CAT) postaci czas na powleczenie ich skórą. Proces ten polega na otoczeniu szkieletu siatką modelującą skórę i takim połączeniu obu tych obiektów, aby mogły się razem poruszać. O szczegółach przeczytasz w następnym rozdziale.

1098

Część IX  Praca z postaciami

Rozdział 40.

Nakładanie skóry W tym rozdziale: 

Projektowanie postaci



Stosowanie modyfikatora Skin



Malowanie wag skóry



Używanie okna dialogowego Weight Tool



Praca z modyfikatorami Skin Wrap i Skin Morph

W świecie wypchanych zwierząt termin skórowanie (ang. skinning) zwykle oznacza oddzielanie skóry od ciała zwierzęcia, natomiast w świecie Maksa skórowanie polega na nakładaniu siatki modelującej skórę na system kości i określaniu, jak siatka ta ma się deformować podczas ruchu postaci. Skóra postaci tworzona w Maksie może być obiektem dowolnego typu, a łączy się ją z postacią Biped lub szkieletem kostnym za pomocą modyfikatora Skin. Modyfikator Skin nie jest zresztą jedyny. Max oferuje również inne modyfikatory służące do nakładania skóry na systemy kostne, np. Skin Wrap czy Skin Morph. Czytając ten rozdział, dowiesz się, jak stosować te modyfikatory i korzystać z nich w animacji postaci.

Zrozumienie kreowanej postaci Jakie są główne cechy naszej postaci? Czy jest silna i chodzi wyprostowana, czy też porusza się powoli, zgarbiona? Zanim zaczniemy modelowanie, musimy postać zrozumieć. Pomocne może być wykonanie szkicu. Zaowocuje to projektem, do którego zawsze będziemy mogli wrócić. Szkic może także być załadowany i zrzutowany na obiekt Plane, będzie wtedy służył jako punkt odniesienia przy modelowaniu.

Postaci, na których możemy się wzorować, jest nieskończenie wiele (wystarczy po prostu wyjść na ulicę, jeśli nic nowego nie możemy wymyślić). Najlepiej zacząć od postaci ludzkiej. Wygodne podczas modelowania człowieka jest to, że przykład mamy bardzo blisko (wystarczy spojrzeć w lustro).

1100

Część IX  Praca z postaciami

Wszyscy znamy podstawy budowy człowieka: dwie ręce, dwie nogi, jedna głowa i brak ogona. Jeśli tworzona postać ma być człowiekiem, zawsze możemy zacząć od gotowej postaci ludzkiej i dostosować jej elementy do naszych potrzeb. Podczas modelowania ludzi bardzo przydatna okaże się znajomość anatomii. Zrozumienie struktury mięśni i systemu kości pomaga wyjaśnić te śmieszne wypukłości na Twoim łokciu i to, dlaczego mięśnie układają się w taki, a nie inny sposób. Jeśli nie znamy dokładnie budowy ciała, może pomóc książka o anatomii. Szczegółowe obrazki przedstawiające umięśnienie i system kostny dostarczą wszystkie potrzebne detale bez konieczności ściągania naszej własnej skóry.

Klątwa i błogosławieństwo symetrii Inną z zalet ciała ludzkiego jest symetria. Przy kreowaniu postaci możemy zrobić z niej użytek, ale pamiętajmy, że jeśli nie tworzymy grupy robotów zabójców, to często właśnie niedoskonałości postaci są tym, co nadaje jej charakter. Umieszczenie oka w minimalnie innym miejscu może nadać postaci groźny wygląd, jeśli takiego potrzebujemy.

Diabeł tkwi w szczegółach Kiedy zaczniemy modelować postać ludzką, szybko uświadomimy sobie, że ciało to mnóstwo szczegółów, jednak zanim zaczniemy nadawać obiektom nazwy typu „paznokieć na małym palcu lewej stopy”, poszukajmy tych drobiazgów, które nie będą potrzebne. Przykładowo modelowanie palców u nóg jest bezcelowe, skoro postać ma nosić buty i nie będzie ich zdejmować. (Często odnoszę wrażenie, że buty zostały wynalezione specjalnie po to, aby animatorzy nie musieli modelować palców). Jednak dodanie detali w odpowiednich miejscach wyjdzie naszej postaci na dobre. Szukajmy odpowiednich szczegółów, które tchną w nią życie — pirat z kolczykiem, klaun z dużym czerwonym nosem, tygrys ze szponami, robot ze śrubkami itp. Na rysunku 40.1 pokazano dwa dobre przykłady. Wojownik ninja po lewej nie potrzebuje szczegółowo wymodelowanych ust, ponieważ zakrywa je maska. Gdybyśmy ją zdjęli, oczom naszym ukazałaby się duża, bezkształtna dziura. Model pomnika greckiej kobiety po prawej zawiera wiele niezbędnych detali, włączając w to paznokcie na palcach rąk, palce u nóg, pępek i... hm... no i inne szczegóły. Rysunek 40.1. Te dwie postaci mają wymodelowane szczegóły tam, gdzie są one potrzebne

Rozdział 40.  Nakładanie skóry

1101

Modele tych postaci znajdziesz na płycie dołączonej do książki w folderze z modelami udostępnionymi przez Viewpoint Datalabs.

Modyfikatory Skin Wśród wszystkich modyfikatorów służących do animacji istnieje grupa używana specjalnie do nakładania skóry. Kluczowy jest tu modyfikator Skin, umożliwiający animację postaci. Modyfikator Skin Morph pozwala deformować skórę obiektu i tworzyć cele morfingu. Jest przeznaczony do naprawiania takich obszarów jak barki i biodra, gdzie modyfikator Skin nie zawsze radzi sobie najlepiej. Skin Wrap umożliwia animację uproszczonego modelu z małą ilością ścianek, a następnie przypisanie tej samej animacji do prawdziwego modelu o dużej rozdzielczości. Zestaw narzędzi modyfikatora Physique, dostępnego w module Character Studio, został zintegrowany z Maksem. Modyfikator Physique także jest używany do wiązania siatek z systemami kości, ale Skin jest prostszy w użyciu i ma o wiele większe możliwości. Modyfikator Physique pozostaje w programie tylko ze względu na jego kompatybilność ze starszymi wersjami programu.

Zrozumienie procesu skórowania Jeśli nie bawi Cię animacja samego szkieletu lub postaci Biped, system kości trzeba będzie pokryć skórą. Jakakolwiek siatka po użyciu modyfikatora Skin może stać się skórą. Modyfikator Skin wykorzystywany jest do przypisywania siatki skóry do systemu kości i definiowania powiązań wierzchołków siatki z kośćmi. Pierwszym krokiem jest przypisanie siatki do szkieletu. Kiedy już system kości ma przypisaną siatkę skóry, możemy poruszać kośćmi, co spowoduje deformację skóry, ale to, na ile ta deformacja jest zgodna z ruchem kości, zależy od procesu zwanego skinningiem. Tworzenie systemu kości opisane zostało w rozdziałach 38., „Systemy szkieletowe, riggowanie i kinematyka” i 39., „Animowanie postaci przy użyciu modułu CAT”.

Podczas skinningu określamy, które części siatki poruszają się z poszczególnymi kośćmi. Oczywiście, będziemy chcieli, aby wszystkie wierzchołki siatki dłoni poruszały się wraz z kośćmi dłoni, co nie jest łatwe, ale wierzchołki nadgarstka lub ramion to dopiero rzecz skomplikowana. Każdy obszar skóry wokół kości otoczony jest przez obwiednię (Envelope) o kształcie kapsuły. Wszystkie wierzchołki zawarte w tej obwiedni poruszają się razem z kością. Kiedy dwie obwiednie nachodzą na siebie, ich powierzchnie zlewają się ze sobą tak jak skóra wokół stawu. Cały problem polega więc na przypisaniu wierzchołków siatki do odpowiedniej obwiedni. Modyfikator Skin zawiera wiele narzędzi ułatwiających to zadanie, takich jak np. tabela wag wierzchołków (Skin Weight Table) i funkcja malowania wag.

1102

Część IX  Praca z postaciami

Wiązanie siatki z systemem kości Mamy już oba komponenty, tj. siatkę skóry i system kości; zanim będziemy mogli edytować obwiednie, musimy przyłączyć skórę do szkieletu. Proces przypisywania jest dość prosty. Selekcjonujemy siatkę skóry i przypisujemy jej modyfikator Skin, korzystając z polecenia Modifiers/Animation/Skin. Zanim powiążesz szkielet z siatką skóry, poświęć trochę czasu na dopasowanie wymiarów siatki i kości. Siatka zostaje powiązana ze szkieletem i automatycznie tworzone są obwiednie. Jeśli kości pasują do siatki skóry, jest szansa, że obwiednie będą dokładnie takimi, jakimi być powinny.

W rolecie Parameters klikamy przycisk Add znajdujący się nad listą kości. Otworzy się okno dialogowe Select Bones, gdzie możemy wybrać kości, które użyte będą do animacji siatki skóry. Wybrane kości pojawiają się na liście. Pole tekstowe, znajdujące się bezpośrednio pod listą kości, pozwala znaleźć konkretną kość poprzez wpisanie jej nazwy. Jednorazowo z listy można wybrać tylko jedną kość. Przycisk Remove usuwa wybraną kość z listy.

Ćwiczenie: Przyłączanie siatki skóry do szkieletu CAT Użycie szkieletu dwunoga dla postaci ludzkich oszczędza mnóstwo czasu. Dla tego przykładu, ponieważ dotyczy ludzkiej postaci, powiążemy taki właśnie szkielet z modelem człowieka przyszłości. Aby powiązać siatkę modelu ze szkieletem, wykonaj następujące czynności. 1. Otwórz plik Marvin Moose CAT rig – final.max znajdujący się w folderze Chap 40 na płycie dołączonej do książki. Plik ten zawiera szkielet łosia Marvina zbudowany w ramach ćwiczenia z rozdziału 39. 2. Szkielet jest już dopasowany do skóry, więc kliknij prawym przyciskiem myszy, z czteroczęściowego menu podręcznego wybierz polecenie Unfreeze All i w oknie dialogowym Object Properties wyłącz opcję See-Through. Zaznacz siatkę łosia i z głównego menu wybierz polecenie Modifiers/Animation/Skin. 3. W rolecie Parameters kliknij przycisk Add. Otworzy się okno dialogowe Select Bones. Kliknij przycisk Select All (zaznacz wszystko), usuń zaznaczenie obiektów Bip01 Footsteps, Character001 i tych, które mają w nazwie człon LegPlatform, a następnie kliknij Select. Na rysunku 40.2 pokazano skórę łosia powiązaną z wszystkimi kośćmi szkieletu CAT. Po przypisaniu modyfikatora Skin i powiązaniu szkieletu z siatką każda kość zawiera obszar wpływu, zwany obwiednią, który określa wierzchołki siatki, jakie kontroluje. Jeśli jakieś wierzchołki siatki leżą poza zasięgiem obwiedni lub należą do obwiedni nieodpowiedniej kości, przy ruchu danej kości pozostaną w miejscu. Powoduje to nienaturalne rozciągnięcia siatki, które są łatwe do zauważenia.

Rozdział 40.  Nakładanie skóry

1103

Rysunek 40.2. Poszczególne kości szkieletu należy przypisać modyfikatorowi Skin

Aby sprawdzić obwiednie, należy wybrać i obrócić kilka kluczowych kości szkieletu. Jeśli jest problem z którąś z obwiedni, będzie on łatwy do spostrzeżenia, tak jak na rysunku 40.3. Nieprawidłowe rozciągnięcie wierzchołków buta postaci dobitnie wskazuje, że obwiednie wymagają skorygowania.

Edycja obwiedni Kiedy wybieramy modyfikator Skin, roleta Parameters zawiera przycisk Edit Envelopes, który umożliwia otwarcie specjalnego trybu, pozwalającego edytować obwiednię dla kości wybranej z listy. Tryb ten możemy także włączyć, zaznaczając podobiekt Envelope pod modyfikatorem Skin w stosie modyfikacji. Kiedy uaktywniony jest tryb edycji obwiedni, cała siatka przybiera barwy gradientowe, aby pokazać wpływ obwiedni. Obszary czerwone znajdują się całkowicie pod wpływem danej obwiedni, zielone — częściowo, a szare — wcale. Na rysunku 40.4 pokazano prosty obiekt utworzony metodą wytłaczania (Loft) i z przypisanym modyfikatorem Skin, który otacza trzy kości. Za pomocą przycisku Add Bone umieszczono te kości na liście modyfikatora. Siatka ma włączoną opcję See Through w oknie dialogowym Properties, dzięki czemu kości są widoczne. Pierwsza kość na liście została zaznaczona i przycisk Edit Envelope został kliknięty, co spowodowało ukazanie obwiedni dla pierwszej kości.

1104

Część IX  Praca z postaciami

Rysunek 40.3. Jeśli jakieś wierzchołki leżą poza właściwą obwiednią, siatka układa się nieprawidłowo

Rysunek 40.4. Obwiednie określają, który wierzchołek siatki porusza się wraz z kością

Rozdział 40.  Nakładanie skóry

1105

Obwiednia składa się z dwóch brył o kształcie kapsuły, umieszczonych jedna w drugiej, zwanych obwiedniami wewnętrzną (Inner) oraz zewnętrzną (Outer). Wszystkie wierzchołki w zasięgu obwiedni wewnętrznej są pod wyłącznym wpływem danej kości. Jej wpływ w obszarze między obwiedniami jest coraz mniejszy, a znajdujące się tam wierzchołki mogą ulegać wpływom również innych kości. Na każdym końcu obwiedni znajdują się cztery małe uchwyty, które można przeciągać, aby zmienić promień przekroju. Powierzchnia przekroju po zaznaczeniu zmienia kolor na różowy. Promień wybranego przekroju wyświetlony jest w polu Radius w sekcji Envelope Properties rolety Parameters. Wartość parametru Squash określa siłę ściskania obwiedni dla kości mogącej się rozciągać. Możemy zmienić rozmiar obwiedni przez zmianę wartości Radius lub też przez przeciąganie uchwytów przekroju. W części Select rolety Parameters wybieramy edycję wierzchołków (Vertices), obwiedni (Envelopes) oraz (lub) przekrojów (Cross Sections). Jeśli wybierzemy opcję Vertices, wybrane wierzchołki zostaną pokazane jako małe kwadraciki, a przyciski Shrink, Grow, Ring oraz Loop staną się aktywne. Przyciski te umożliwią łatwy wybór żądanego zestawu wierzchołków. Jeśli uaktywniona jest opcja Select Element, wszystkie wierzchołki danego elementu zostają wyselekcjonowane, a opcja Backface Cull Vertices uniemożliwia wybór wierzchołków znajdujących się na tylnej stronie obiektu. Jeśli wybierzemy opcję Cross Section, możemy dodawać nowe przekroje o różnych kształtach, korzystając z przycisku Add. Przycisk ten pozwala wybrać kształt przekroju w oknach widokowych. Przycisk Remove Cross Section usuwa z obwiedni dodane przekroje. Orientacja splajnów obwiedni jest ustalana przez najdłuższy wymiar kości. Działa to dobrze w przypadku długich kości rąk i nóg, ale z miednicą lub obojczykiem mogą być problemy.

Część Envelope Properties rolety Parameters (tuż pod przyciskami Radius i Squash) zawiera pięć przycisków z ikonami przedstawionymi w tabeli 40.1. Pierwszy z nich umożliwia przełączanie się między wartościami bezwzględnymi (Absolute) i względnymi (Relative). Wszystkie wierzchołki znajdujące się w zasięgu zewnętrznej obwiedni mają przypisywane pełne wartości wag, kiedy przełącznik jest ustawiony na wartość Absolute; a kiedy przełącznik jest ustawiony na Relative, pełne wagi otrzymują tylko te wierzchołki, które umieszczone są w zasięgu obu obwiedni. Drugi przycisk sprawia, że obwiednie są widoczne nawet wtedy, gdy aktualnie nie są wybrane. Pomaga to zauważyć, jak nachodzą na siebie sąsiadujące kości. Trzeci przycisk ustala dla obwiedni kształt krzywej osłabiania wpływu na wierzchołki (Falloff). Opcje do wyboru to Linear, Sinual, Fast Out i Slow Out. Kolejne przyciski używane są do kopiowania i wklejania ustawień obwiedni dla innych kości. Dostępne opcje dla przycisku wklejania to Paste (dla jednej kości), Paste to all bones (dla wszystkich kości) i Paste to multiple bones (opcja ta otwiera okno dialogowe wyboru kości).

Praca z wagami Dla wybranych wierzchołków możemy ustalić wagę (Weight), z jaką dana kość na nie oddziałuje — pomiędzy 0 dla braku wpływu i 1.0 dla maksymalnego wpływu. Daje to możliwość mieszania ruchu wierzchołków między dwiema kośćmi. Przykładowo wierzchołki siatki na górze przedramienia mogą mieć wagę 1.0 dla kości przedramienia, a wartość

1106

Część IX  Praca z postaciami

Tabela 40.1. Ikony rolety Envelope Properties Przycisk

Nazwa

Opis

Absolute/Relative

Przełączanie pomiędzy wartościami Absolute i Relative.

Envelope Visibility

Sprawia, że obwiednie pozostają widoczne po wybraniu innej kości.

Falloff linear, Falloff sinual, Falloff fast out, Falloff slow out

Ustala kształt krzywej osłabiania (liniowy, sinusoidalny, przyspieszanie, opóźnianie).

Copy

Kopiuje ustawienia obwiedni do tymczasowego bufora.

Paste, Paste to all bones, Paste to multiple bones

Wkleja ustawienia obwiedni do wybranej kości, do wszystkich kości lub do określonej liczby kości wybranych w oknie dialogowym.

0.5 dla kości ramienia oraz wartość 0 dla wszystkich innych kości. Pozwala to poruszać się skórze przedramienia w pełni, kiedy ruszymy kością przedramienia, a tylko częściowo, kiedy ruszymy kością ramienia. Cieniowanie w oknie widokowym zmienia się wraz ze zmianą wagi wierzchołków od 0 do 1. Wartości wagi (Weight) około 0.125 są kolorowane na niebiesko, wartości około 0.25 są kolorowane na zielono, wartości około 0.5 — na żółto, a wartości około 0.75 — na pomarańczowo.

Pole Absolute Effect (efekt bezwzględny) służy do określania wartości wagi dla wybranych wierzchołków. Opcja Rigid (sztywno) sprawia, że wybrane wierzchołki poruszają się tylko i wyłącznie z jedną kością. Rigid Handles powoduje, że uchwyty wybranych wierzchołków, w przypadku powierzchni sklejanej, poruszają się tylko z jedną kością. Jest to ważne w przypadku postaci noszących zbroje — włączenie tej opcji daje pewność, że poszczególne elementy zbroi nie będą deformowane podczas ruchu postaci. Gdy wybierzesz opcję Normalize, suma wag wszystkich wybranych wierzchołków wynosić będzie 1.0. Pozostałe przyciski w części Weight Properties rolety Parameters zostały przedstawione w tabeli 40.2. Znajdują się tam przyciski Include i Exclude Selected Vertices pozwalające włączać i wyłączać zaznaczone wierzchołki z grupy wierzchołków będących pod wpływem danej kości. Przycisk Select Exclude Verts zaznacza wszystkie, wyłączone w ten sposób wierzchołki. Korzystanie z okna dialogowego Weight Tool Przycisk Weight Tool otwiera okno dialogowe Weight Tool, pokazane na rysunku 40.5. Przyciski Shrink, Grow, Ring oraz Loop działają tak samo jak te w części Select i pozwalają szybko oraz precyzyjnie zaznaczać grupy wierzchołków. Przyciski z wartościami w drugim rzędzie pozwalają zmienić wartości parametru Weight kliknięciem przycisku lub przez dodanie bądź odjęcie wartości od aktualnego parametru.

Rozdział 40.  Nakładanie skóry

1107

Tabela 40.2. Przyciski z sekcji Weight Properties Przycisk

Nazwa

Opis

Exclude Selected Vertices

Wyłącza zaznaczone wierzchołki spod wpływu danej kości.

Include Selected Vertices Włącza zaznaczone wierzchołki pod wpływ danej kości. Select Excluded Vertices

Zaznacza wszystkie wyłączone wierzchołki.

Bake Selected Vertices

„Wypala” wagi wierzchołków w modelu tak, że nie mogą one być zmieniane poprzez obwiednie. Wypalone wierzchołki mogą być zmienione za pomocą tabeli wag (Weight Table) lub parametru Absolute Effect.

Weight Tool

Otwiera okno dialogowe Weight Tool.

Rysunek 40.5. Okno dialogowe Weight Tool zawiera przyciski służące do szybkiej zmiany wartości wagi oraz do mieszania wag sąsiadujących wierzchołków

Przyciski Copy, Paste i Paste Position pozwalają szybko kopiować wagi pomiędzy wierzchołkami. Przycisk Paste Position wkleja wartość wagi do otaczających wierzchołków w oparciu o wartość parametru Tolerance. Przycisk Blend pozwala szybko zmienić wagi otaczających wierzchołków, tworząc gładkie przejścia między tymi wartościami. Okno dialogowe Weight Tool wyświetla także liczbę wierzchołków w buforze kopiowania i liczbę obecnie zaznaczonych wierzchołków. Lista na dole okna dialogowego wyświetla wagi i kości, do których należą wybrane wierzchołki. Korzystanie z tabeli wag (Weight Table) Przycisk Weight Table otwiera okno pokazane na rysunku 40.6. Zawarta w nim tabela wyświetla wszystkie wierzchołki obiektu w kolejności ich numerów (Vertex ID). W górnym wierszu wymienione są wszystkie kości. Parametr Weight możemy ustalić dla każdego wierzchołka i każdej kości. Menu Edit zawiera polecenia Copy i Paste służące do kopiowania i wklejania wag, a także polecenia Select All (zaznacz wszystko), Invert (odwróć zaznaczenie) i None (nie zaznaczaj

1108

Część IX  Praca z postaciami

Rysunek 40.6. Okno Weight Table pozwala określić wartości wagi dla każdego wierzchołka i każdej kości

niczego). Zaznaczone wierzchołki mogą zostać połączone w zestaw (Vertex Set), któremu można nadać nazwę. Do tworzenia i usuwania takich zestawów służą polecenia z menu Vertex Sets. Menu Options umożliwia odwrócenie tabeli tak, że kości zostają wyświetlone w pierwszej kolumnie, a wierzchołki w górnym rzędzie. Opcja Update On Mouse Up powstrzymuje aktualizację dopóty, dopóki nie puścimy przycisku myszy. Zawarte są tu także opcje pozwalające na pokazanie bądź ukrycie elementów interfejsu. Opcja Show Affected Bones wyświetla tylko te kości, których domyślna wartość została zmieniona. Opcja Show Attributes wyświetla kolumnę atrybutów opisanych jako S, M, N, R i H. Opcja Show Exclusions sprawia, że dostępne stają się pola wyboru w każdej komórce (kiedy jest ona zaznaczona, oznacza to, że wierzchołek jest wyłączony). Opcja Show Global otwiera rozwijaną listę, która umożliwia ustalenie atrybutów dla wszystkich wierzchołków. Opcja Show Locks (tak jak Show Exclusions) udostępnia pole wyboru dla każdej komórki. Uaktywnienie takiego pola (po lewej) blokuje wagę tak, że jej wartość nie może się zmienić. Sets UI udostępnia dwa przyciski służące do tworzenia i usuwania zestawów wierzchołków. Atrybut S jest zaznaczony, jeśli wierzchołek został wyselekcjonowany, M wskazuje, że zmieniła się wartość wagi wierzchołka, atrybut N określa znormalizowaną wagę, atrybut R ustala sztywne wierzchołki (poruszające się tylko z jedną kością), a atrybut H wskazuje wierzchołek ze stałymi uchwytami. Aby ustawić wagę, należy wybrać wierzchołek dla danej kości, kliknąć komórkę i wprowadzić nową wartość. Jeśli klikniemy komórkę i przeciągniemy mysz w prawo lub lewo, wartość się zmieni. Wartości wag mogą być przeciągane na inne komórki. Klikając prawym przyciskiem myszy komórkę, ustalamy jej wartość na 0, a wciskając prawy przycisk myszy z wciśniętym klawiszem Ctrl, ustalamy wartość na 1.0. Po ustaleniu wag wierzchołków możemy użyć opcji wypalania wierzchołków Bake Selected Vertices, aby zablokować wartości wag. Zmiany w obwiedniach nie wpływają na wypalone wierzchołki. Malowanie wag Korzystając z przycisku Paint Weight, możemy malować wagi na powierzchni obiektu skóry za pomocą pędzla. Wartość Paint Strength określa siłę każdego pociągnięcia pędzlem. Wartość może być dodatnia (do 1.0) dla wierzchołków, które będą się poruszały z kością, lub ujemna (do –1.0) dla wierzchołków, które nie będą się ruszać z kością.

Rozdział 40.  Nakładanie skóry

1109

Na prawo od przycisku Paint Weights znajduje się przycisk Painter Options (z trzema kropkami), który otwiera okno dialogowe Painter Options. Okno dialogowe Painter Options jest także wykorzystywane przez modyfikator Vertex Paint i narzędzie Paint Deformation. Opisane zostały one szczegółowo w rozdziale 13., „Modelowanie na poziomie wielokątów”.

Ćwiczenie: Przypisywanie wag siatce W tym przykładzie zmienimy wagi siatki modelu człowieka przyszłości, aby naprawić błąd przy butach, który wcześniej widzieliśmy. Aby przypisać wagi do siatki postaci, wykonaj następujące czynności. 1. Otwórz plik Future man with skin final.max znajdujący się w folderze Chap 40 na płycie dołączonej do książki. 2. Zaznacz siatkę, otwórz panel Modify i wybierz na liście kość Bip01 L Foot. Następnie kliknij przycisk Edit Envelopes znajdujący się na górze rolety Parameters. Wyświetlą się obwiednie wokół obiektu stopy. Przybliż widok na obiekt stopy i zmień opcję wyświetlania okna widokowego na Realistic (możesz wcisnąć F3), aby widoczne było cieniowanie wag. 3. Upewnij się, że włączona jest opcja Cross Section w części Select rolety Parameters. Zaznacz uchwyty przekroju zewnętrznej obwiedni i przeciągnij je w stronę stopy. Obróć widok, aby upewnić się, że czubek i obcas buta są wciąż objęte obwiednią. 4. Włącz opcję Vertices w rolecie Parameters i wyłącz Backface Cull Vertices. Przeciągnij myszą, zaznaczając wszystkie wierzchołki należące do dolnej części buta, i uaktywnij opcję Rigid. Następnie wskaż wierzchołki powyżej buta, na goleni. Możesz użyć przycisku Loop, aby wybrać wszystkie wierzchołki w okolicy górnej części buta i, trzymając klawisz Alt, usunąć z zaznaczenia wszystkie wierzchołki składające się na dolną część buta. 5. W części Weight Properties rolety Parameters kliknij przycisk Weight Tool. W oknie dialogowym Weight Tool kliknij przycisk .25. Zmieni to wartość wagi wybranych wierzchołków. Następnie kliknij przycisk Blend, aby obszar przejścia stał się bardziej płynny. 6. Kliknij przycisk Edit Envelopes, aby wyjść z trybu edycji obwiedni. Wyselekcjonuj i obróć górną część nogi, żeby zobaczyć, czy problem został naprawiony. Ja, obracając swój model, zauważyłem, że niektóre wierzchołki z tyłu buta pozostały bez ruchu, co znaczy, iż nie znajdują się pod wpływem działania żadnej kości. Zanim wprowadzisz zmiany w obwiedniach, upewnij się, że cofnąłeś obrót nogi poleceniem Undo, inaczej obróci się także obwiednia.

7. Wejdź ponownie w tryb edycji obwiedni (Edit Envelopes) i kliknij przycisk Paint Weights. Kursor przybierze kształt pędzla. Kliknij przycisk Brush Options (ten z trzema kropkami, znajdujący się obok przycisku Paint Weights). Otworzy się okno dialogowe Brush Options. Ustaw wartość Max Strength na 1.0 i zamknij

1110

Część IX  Praca z postaciami

okno. Następnie w oknie widokowym pomaluj wierzchołki z tyłu obcasa, pokrywając obszary, które nie są cieniowane na czerwono. Na rysunku 40.7 pokazano prawidłowo pokryty but wraz z obwiedniami.

Rysunek 40.7. Wagi wierzchołków mogą być poprawione przy użyciu narzędzia Weight Tool oraz za pomocą malowania wag

8. Wyjdź z trybu edycji obwiedni i sprawdź zmiany, obracając kość górnej części nogi.

Lustrzane odbicie ustawień Większość postaci ma symetryczne ciało i możemy to wykorzystać do odbicia obwiedni i wag wierzchołków na drugiej stronie modelu. Używamy tej opcji, klikając przycisk Mirror Mode (tryb lustrzanego odbicia) w rolecie Mirror Parameters. Przycisk jest aktywny tylko wtedy, kiedy aktywny jest przycisk Edit Envelope. W trybie Mirror Mode widzimy pomarańczową płaszczyznę gizma, oznaczającą oś symetrii modelu. Możemy zmienić położenie i orientację tej płaszczyzny, korzystając z kontrolek Mirror Offset i Mirror Plane. Po jej ustawieniu Max oblicza dopasowane wierzchołki w lustrzanym odbiciu. Wszystkie wierzchołki jednej połowy postaci przybierają kolor niebieski, a odpowiadające im wierzchołki drugiej połowy stają się zielone. Wierzchołki, które nie mogą być dopasowane, oznaczone są na czerwono. Jeśli przeciągniemy myszą w oknie widokowym nad kośćmi lub wierzchołkami, selekcjonujemy je. Klikając przycisk Mirror Paste (wklej z odbiciem lustrzanym), kopiujemy obwiednie i wagi wierzchołków na odpowiadające im kości i wierzchołki po przeciwległej

Rozdział 40.  Nakładanie skóry

1111

stronie modelu. Możemy także użyć przycisku Paste Green to Blue Bones (wklej kości zielone na niebieskie) lub jednego z sąsiadujących, aby skopiować wszystkie kości lub wierzchołki oznaczone na zielono na ich lustrzane odpowiedniki czy też odwrotnie. Rozwijana lista Display Projection (wyświetlanie rzutu) zawiera opcje wyświetlania projekcji pozycji wybranych wierzchołków na płaszczyznę lustrzaną (Mirror Plane) tak, że możemy porównać ich wzajemną lokalizację. W przypadku siatki z dużą liczbą wierzchołków warto uaktywnić opcję Manual Update (aktualizacja ręczna), aby uniknąć powolnego odświeżania okien widokowych.

Ćwiczenie: Tworzenie lustrzanego odbicia wag wierzchołków Spędziliśmy już trochę czasu, poprawiając wagi wierzchołków siatki lewego buta, teraz użyjemy opcji Mirror Weights, aby przypisać takie same wagi przeciwległej stopie. Aby przypisać wagi siatki dla postaci, wykonaj następujące czynności. 1. Otwórz plik Future man with corrected weights – final.max znajdujący się w folderze Chap 40 na płycie dołączonej do książki. 2. Włącz tryb edycji obwiedni, w rolecie Parameters zaznacz na liście kość Bip01 L Foot, po czym kliknij przycisk Mirror Mode w rolecie Mirror Parameters. W oknie widokowym pojawi się pomarańczowe gizmo, dzielące model w sposób pokazany na rysunku 40.8.

Rysunek 40.8. W trybie Mirror dopasowane kości i wierzchołki oznaczone są na zielono i niebiesko

1112

Część IX  Praca z postaciami

3. Przeciągnij myszą nad wszystkimi wierzchołkami składającymi się na lewy but i kliknij przycisk Paste Blue to Green Verts. Wszystkie wagi wierzchołków po lewej stronie zostaną skopiowane na prawą stronę.

Opcje wyświetlania i parametry zaawansowane W rolecie Display (wyświetlanie) określamy, które elementy znajdą się w oknach widokowych. Jej opcje to: Show Colored Vertices (pokazuje wierzchołki w kolorach), Show Colored Faces (wyświetla ścianki w kolorach), Color All Weights (nadaje kolor wszystkim wagom), Show All Envelopes (pokazuje wszystkie obwiednie), Show All Vertices (pokazuje wszystkie wierzchołki), Show All Gizmos (pokazuje wszystkie gizma), Show No Envelopes (nie pokazuje obwiedni), Show Hidden Vertices (pokazuje ukryte wierzchołki), a także Draw On Top Cross Sections oraz Draw On Top Envelopes (jako ostatnie w oknach widokowych rysowane są przekroje lub obwiednie). Za pomocą opcji wyświetlania możemy włączyć i wyłączyć kolorowe cieniowanie wierzchołków i ścianek. Możemy także ustalić, że pokazane mają być wszystkie obwiednie, wierzchołki i gizma. Opcja Color All Weights jest szczególna. Przypisuje każdej kości inny kolor i pokazuje, jak wagi poszczególnych kości mieszają się ze sobą. Roleta Advanced Parameters (parametry zaawansowane) zawiera opcję Back Transform Vertices, która uniemożliwia nadawanie transformacji siatce, ponieważ jej ruch jest kontrolowany przez kości. Opcje Rigid Vertices i Rigid Patch Handles ustalają, że wierzchołki mają być kontrolowane przez tylko jedną kość. Roleta ta zawiera też przyciski kasowania ustawień Reset Selected Vertices, Reset Selected Bones i Reset All Bones. Są one przydatne, gdy uda się nam narobić bałaganu podczas skinningu, ponieważ pozwalają zacząć wszystko od nowa. W rolecie znajdziemy także przyciski zapisywania i ładowania ustawień obwiedni. Obwiednie są zapisywane w plikach o rozszerzeniu .env. Opcja Animatable Envelopes pozwala tworzyć klucze animacji dla obwiedni. Weight All Vertices to użyteczna opcja, automatycznie przypisująca wagę tym wierzchołkom, które jeszcze jej nie mają. Przycisk Remove Zero Weights usuwa wagę z każdego wierzchołka mającego wagę o wartości mniejszej niż ustalona parametrem Remove Zero Limit. Można go wykorzystać do usunięcia z modelu niepotrzebnych informacji.

Stosowanie deformacji Poniżej rolety Advanced Parameters znajduje się roleta Gizmos. Korzystamy z niej, aby przypisać deformacje do wybranych wierzchołków skóry. W rolecie Gizmos dostępne są trzy typy deformacji: Joint Angle Deformer (złączowa deformacja zgięcia), Bulge Angle Deformer (wybrzuszająca deformacja zgięcia) i Morph Angle Deformer (morfująca deformacja zgięcia). Każda z nich jest specyficzna, a spełniają następujące funkcje: 

Joint Angle Deformer — zniekształca wierzchołki wokół złącza między dwiema kośćmi, tam gdzie skóra marszczy się, powodując problemy. Deformacja ta działa na wierzchołki związane z kością rodzicem i kością dzieckiem.

Rozdział 40.  Nakładanie skóry

1113



Bulge Angle Deformer — odsuwa wierzchołki od kości, symulując napinanie mięśni. Deformacja ta działa tylko na wierzchołki związane z kością rodzicem.



Morph Angle Deformer — może być używana w odniesieniu do wszystkich wierzchołków związanych z kością rodzicem i kością dzieckiem.

Wszystkie deformacje przypisane do siatki są wyświetlane na liście w rolecie Gizmos. Z tej listy możemy usuwać deformacje i dodawać je do niej, korzystając z przycisków Add i Remove Gizmo. Możemy także kopiować i wklejać deformacje do innych zestawów wierzchołków (przyciski Copy i Paste). Zanim będziemy mogli dodać deformację, musimy wyselekcjonować wierzchołki siatki. Aby to zrobić, należy uaktywnić pole wyboru Vertices w rolecie Parameters i przeciągnąć myszą nad odpowiednimi wierzchołkami w oknie widokowym. Po wybraniu deformacji z rolety Gizmos jej parametry pojawiają się w rolecie Deformer Parameters. W rolecie tej możemy odczytać nazwy kości rodzica (Parent) i kości dziecka (Child) dla wybranych wierzchołków oraz aktualny kąt między nimi (Current Angle). Roleta zmienia swój wygląd w zależności od typu deformacji, jaki wybraliśmy. Dla deformacji Joint Angle i Bulge Angle utworzono nowe rolety o nazwach, odpowiednio, Gizmo Parameters i Deformer Parameters. Roleta Gizmo Parameters zawiera przyciski do edycji kontrolnej kratownicy (Lattice) oraz krzywych deformacji (Key Curves). Przycisk Edit Lattice pozwala ruszać punktami kontrolnymi kratownicy w oknach widokowych. Przycisk Edit Angle Keys Curves (edytuj krzywe kluczowe zgięcia) otwiera okno Graph wyświetlające krzywe definiujące przebieg deformacji.

Stosowanie modyfikatorów Skin Wrap Właśnie utworzyliśmy model o dużej ilości ścianek i chcemy go animować za pomocą modyfikatora Skin. Jednak siatka jest zbyt skomplikowana, aby można nią swobodnie poruszać. Modyfikator Skin Wrap jest tym, czego w takiej sytuacji potrzebujemy. Może on być przypisany do siatki o dużej liczbie ścianek, a w rolecie Parameters możemy wybrać mniej skomplikowany obiekt kontrolny. Jakiekolwiek przemieszczenia w obiekcie kontrolnym zostaną automatycznie przypisane naszej prawdziwej siatce. Modyfikator Skin Wrap przydaje się również w animacji ubrań.

Modyfikator Skin Wrap udostępnia dwa algorytmy deformujące (Deformation Engines): deformację ścianek (Face Deformation) i deformację wierzchołków (Vertex Deformation). Każdy wierzchołek zawarty w obiekcie kontrolnym zachowuje się jak wierzchołek kontrolny. Opcja Vertex Deformation przesuwa wierzchołki siatki jak najbliżej wierzchołków kontrolnych, kiedy te są przesuwane, a opcja Face Deformation robi to samo, tylko ze ściankami. Dla każdego trybu deformacji możemy ustalić wartość parametru zanikania (Falloff), który decyduje o sile przyciągania wierzchołków lub ścianek siatki przez wierzchołki kontrolne. Dla trybu deformacji wierzchołków możemy także ustalić wartość parametrów Distance Influence (zasięg wpływu) oraz Face Limit (granica ścianki), aby zwiększyć siłę wpływu wierzchołków kontrolnych.

1114

Część IX  Praca z postaciami

Przycisk Reset służy do przywracania obiektowi siatkowemu pierwotnej postaci. Jest przydatny, gdy zajdzie potrzeba dopasowania na nowo obiektu kontrolnego do obiektu z modyfikacją Skin Wrap. Po zakończeniu animacji obiektu kontrolnego korzystamy z przycisku Convert to Skin, aby przenieść klucze animacji na obiekt o pełnej rozdzielczości. Roleta Advanced Parameters zawiera także przycisk Mirror Selected służący do wykonywania lustrzanego odbicia wierzchołków na przeciwną stronę obiektu kontrolnego. W menu Modifiers znajduje się także modyfikator Skin Wrap Patch, działający tak samo jak Skin Wrap, ale dopuszczający obiekty kontrolne w postaci łat.

Ćwiczenie: Spacerująca butelka Tworzenie struktury kości i przypisywanie modyfikatora Skin działa dobrze dla postaci o określonej strukturze ciała, aby jednak animować plastyczny, podlegający odkształceniom obiekt, taki jak plastikowa butelka, zastosujemy modyfikator Skin Wrap, który działa lepiej niż systemy kości. Aby utworzyć animację spaceru plastikowej butelki przy użyciu modyfikatora Skin Wrap, wykonaj następujące czynności. 1. Otwórz plik Walking squirt bottle.max znajdujący się w folderze Chap 40, na płycie dołączonej do książki. Plik ten zawiera model butelki z wszystkimi elementami połączonymi. W pliku znajduje się też zwykły prostopadłościan, który ogólnym zarysem przypomina obiekt butelki. Animacja krótkiego spaceru prostopadłościanu została już wykonana. 2. Zaznacz obiekt butelki i wybierz polecenie Modifiers/Animation/Skin Wrap, aby przypisać modyfikator Skin Wrap. 3. W rolecie Parameters kliknij przycisk Add i wskaż obiekt prostopadłościanu (Box). Obiekt Box zostanie dodany do listy obiektów kontrolnych w rolecie Parameters. 4. Zaznacz obiekt Box i ukryj go. 5. Kliknij przycisk Play Animation, a prawdziwy obiekt butelki wykona tę samą sekwencję animacji co prostopadłościan. Na rysunku 40.9 pokazano butelkę poruszającą się po scenie.

Korzystanie z modyfikatora Skin Morph Korzystając z możliwości deformacyjnych modyfikatora Skin, możemy zniekształcać każdą część siatki, ale opcja ta polega na używaniu gizm w wystarczająco już skomplikowanym trybie edycji obwiedni. Skin Morph oferuje inny sposób deformacji siatki przy wykorzystaniu kości. Modyfikator ten przypisywany jest powyżej modyfikatora Skin i pozwala wybrać kości biorące udział w zniekształceniu. Przykładowo dla napinającego się mięśnia kość przedramienia musi zostać obrócona, więc kość tę trzeba dodać do listy w rolecie Parameters.

Rozdział 40.  Nakładanie skóry

1115

Rysunek 40.9. Nie wszystkie animowane obiekty potrzebują struktury kości

Po wybraniu kości z listy w rolecie Parameters należy wybrać klatkę, w której zniekształcenie jest największe. Następnie, klikając przycisk Create Morph w rolecie Local Properties, tworzymy cel morfingu. Celom morfingu możemy nadawać nazwy, aby później łatwo było je selekcjonować. Przycisk Edit w rolecie Local Properties pozwala przesuwać wierzchołki dla celów zniekształcenia.

Ćwiczenie: Napinanie mięśni ramienia Deformacja wybrzuszająca najczęściej znajduje zastosowanie w animowaniu napinania się bicepsa podczas zginania ręki w łokciu. Efekt ten może być prostszy do osiągnięcia przy wykorzystaniu modyfikatora Skin Morph. Aby uwypuklić napięty mięsień, korzystając z modyfikatora Skin Morph, wykonaj następujące czynności. 1. Otwórz plik Bulging bicep.max znajdujący się w folderze Chap 40 na płycie dołączonej do książki. Plik ten zawiera prosty model ręki z modyfikatorem Skin przypisanym do łańcucha składającego się z czterech kości. 2. Zaznacz siatkę ręki i wybierz polecenie Modifiers/Animation/Skin Morph, aby na stosie modyfikacji umieścić modyfikator Skin Morph powyżej modyfikatora Skin. 3. W rolecie Parameters kliknij przycisk Add Bone i zaznacz kość przedramienia (forearm bone).

1116

Część IX  Praca z postaciami

Kość zostanie dodana do listy w rolecie Parameters. 4. Wyselekcjonuj i obróć kość przedramienia do położenia, w którym zniekształcenie jest maksymalne. Następnie zaznacz tę kość na liście w rolecie Parameters i kliknij przycisk Create Morph w rolecie Local Properties. W oknie Morph Name wpisz nazwę morfingu Bulging bicep (naprężony biceps). Zaznaczenie kości przedramienia może być trudne, bo jest zakryta siatką skóry, ale możesz skorzystać z okna dialogowego Select From Scene otwieranego za pomocą klawisza H.

5. W rolecie Local Properties kliknij przycisk Edit. Włączy się tryb edycji podobiektów typu Points. Aby ustrzec się przed przypadkowym zaznaczeniem wierzchołków przedramienia, włącz opcję Edge Limit w rolecie Selection. Przeciągnij myszą nad punktami z przodu bicepsa w oknie widokowym Left, a następnie uaktywnij opcję Use Soft Selection w rolecie Selection. Ustal wartość parametru Radius na 0.5 i przesuń punkty na prawo w oknie widokowym Left, aby utworzyć uwypuklenie. Kliknij ponownie przycisk Edit, aby opuścić tryb edycji. 6. Zaznacz i obróć kość przedramienia, aby zobaczyć napinający się biceps. Na rysunku 40.10 pokazano biceps, napinający się podczas zginania ręki w łokciu.

Rysunek 40.10. Korzystając z modyfikacji Skin Morph, możemy spowodować, że mięsień będzie się napinał podczas zginania ręki

Rozdział 40.  Nakładanie skóry

1117

Techniki animowania postaci Podczas animacji postaci kilka technik może być naprawdę pomocnych. Przy takiej animacji musimy pamiętać o niżej wymienionych zasadach. 

Wykorzystuj postać Biped. Ręczne riggowanie jest przydatne tam, gdzie Biped nie pomoże, ale opcje i możliwości postaci Biped sprawiają, że niemądre jest pomijanie jej przy animacji postaci ludzkiej.



Wykorzystuj dynamikę. Pakiety obsługujące dynamikę, takie jak reactor, pomogą uzyskać niewiarygodnie realistyczny ruch, oparty na fizycznych właściwościach. Naprawdę warto nauczyć się korzystania z tak potężnego narzędzia nawet w bardzo prostych sekwencjach animacji.



Ucz się poprzez przykłady. Jeśli pracujesz nad postacią z kreskówki, koniecznie oglądaj kreskówki. Tradycyjne filmy rysunkowe wypracowały specyficzny charakter ruchu, zawierający ściskanie i rozciąganie, przesadne ruchy lub niebywałe powiększanie oczu uwydatniające efekt zaskoczenia. Jeśli chcesz osiągnąć realistyczny rezultat, znajdź godny uwagi przykład ruchu w rzeczywistości, nagraj go na wideo i oglądaj w kółko, aby wychwycić subtelny, drugorzędny ruch.



Stosuj animację w tle. Korzystając z polecenia Viewport Background, możesz wstawić do tła klip animacji, co ułatwi pozycjonowanie postaci, aby osiągnąć realistyczny ruch. Można to nazwać niskobudżetowym systemem Motion Capture.



Stosuj drugoplanowy ruch. Podstawowy ruch postaci często jest głównym celem, ale możemy ulepszyć animację, stosując ruchy drugorzędne. Gdy postać idzie, łatwo zaobserwować, że jej nogi stawiają kroki, a ręce przesuwają się przeciwnie do ruchu nóg; ruch drugorzędny to powiewanie włosów i podskakiwanie sznurowadeł w butach.



Korzystaj z modyfikatora Flex. Modyfikator Flex dodaje do miękkich obiektów, takich jak ogon, włosy, uszy lub ubrania, realistyczny ruch konieczny do uzyskania wiarygodnego wyglądu.



Stosuj modyfikator Morph. Modyfikator Morph może być użyty do morfingu postaci pomiędzy dwiema pozami lub do morfingu mięśni twarzy pomiędzy różnymi głoskami w czasie animacji mówienia.



Korzystaj z IK. W poprzednim rozdziale omówiliśmy to szczegółowo, a teraz tylko szybka rada. Sprawienie, że postać poruszy się, poprzez poruszanie jej stopą lub dłonią, jest o wiele łatwiejsze niż przesuwanie całej postaci.



Korzystaj z kontrolera Spring. Innym dobrym sposobem na uzyskanie drugorzędnego ruchu jest użycie kontrolera Spring Controller. Działa on dobrze z kończynami.



Dodawaj element przypadkowości za pomocą kontrolera Noise. Często okazuje się, że zbyt dokładny ruch nie wygląda realistycznie. Zastosowanie kontrolera Noise pomaga w uzyskaniu bardziej realistycznego ruchu, niezależnie od tego, czy przypiszemy ten kontroler do sekwencji chodu, czy też np. do drobnych ruchów oczu.

1118

Część IX  Praca z postaciami 

Korzystaj z manipulatorów. Manipulatory mogą być tworzone i wiązane z obiektami, dając kontrolę nad pojedynczym ruchem, takim jak otwieranie i zamykanie oczu postaci.

Podsumowanie W świecie Maksa postaci stają się coraz ważniejsze i mogą być zapisywane w oddzielnych plikach, tak jak sceny. Połączenie szczegółowej siatki postaci ze szkieletem typu Biped pozwala wykorzystać wyjątkowe możliwości animacyjne modułu Character Studio. W tym rozdziale omówiliśmy następujące zagadnienia: 

etap projektowania postaci przed faktycznym jej tworzeniem,



pracę z modyfikatorami Skin,



tworzenie animacji przy użyciu modyfikatora Skin Wrap,



napinanie mięśni za pomocą modyfikatora Skin Morph.

W części X, „Animacja dynamiczna” poznamy funkcje związane z dynamiką w animacjach, a rozpoczniemy od zapoznania się z systemem cząstek.

Część X

Animacja dynamiczna W tej części: Rozdział 41. „Cząsteczki i system Particle Flow” Rozdział 42. „Stosowanie pól sił” Rozdział 43. „Wykorzystanie systemu MassFX do symulacji ruchów zgodnych z zasadami dynamiki” Rozdział 44. „Animowanie włosów i tkanin”

Rozdział 41.

Cząsteczki i system Particle Flow W tym rozdziale: 

Omówienie różnych systemów cząsteczkowych



Tworzenie systemu cząsteczkowego



Używanie systemów cząsteczkowych Spray i Snow



Korzystanie z systemów cząsteczkowych Super Spray oraz Blizzard



Praca z metacząsteczkami



Wykorzystanie obiektów jako rozpylaczy



Korzystanie z map systemów cząsteczkowych



Korzystanie z interfejsu Particle Flow

Każdy obiekt, który dodajesz do sceny, powoduje pewne spowolnienie działania Maksa, ponieważ program musi ciągle śledzić losy każdego obiektu. Umieszczając w scenie tysiące obiektów, spowodujesz nie tylko zauważalne obniżenie wydajności Maksa, ale też wywołasz trudności w identyfikacji niektórych z nich. Jeżeli np. utworzyłbyś kilka tysięcy płatków śniegu, bo chciałeś uzyskać efekt śnieżycy, wówczas doprowadziłbyś do utraty stabilności systemu, gdyż taka liczba obiektów bardzo szybko wyczerpałaby zasoby pamięci. Systemy cząsteczkowe to wyspecjalizowane grupy obiektów, którymi program zarządza jako pojedynczą jednostką. Gdy zgrupujesz wszystkie obiekty cząsteczkowe w jeden wspólny, hierarchicznie kontrolowany system, możesz je razem poddawać modyfikacjom, zmieniając parametry wszystkich elementów składowych jednocześnie. W rozdziale tym poznasz sposoby wykorzystania systemów cząsteczkowych do modelowania zjawisk atmosferycznych, takich jak deszcz czy śnieg, a także sztucznych ogni, skrzydeł motyla czy nawet ziejącego ogniem smoka.

1122

Część X  Animacja dynamiczna

Omówienie różnych systemów cząsteczkowych Cząsteczka to mały, pojedynczy obiekt, powielany masowo, jak płatki śniegu, krople deszczu czy drobinki kurzu. Tak jak w prawdziwym życiu, w Maksie spotkać możesz różnego typu cząsteczki, różniące się między sobą wielkością, kształtem, teksturą, kolorem i sposobem poruszania się. Poszczególne typy cząsteczek przynależą do różnych systemów cząsteczkowych. Podczas tworzenia systemu cząsteczkowego w oknie widokowym widać jedynie pojedyncze gizmo, określane mianem emitera. Emiter jest obiektem (zwykle gizmem, choć może też być obiektem w scenie), z którego cząsteczki są wysyłane. Zaznaczenie gizma systemu cząsteczkowego powoduje wyświetlenie jego parametrów w panelu Modify. Max oferuje następujące systemy cząsteczkowe: 

Particle Flow Source — cząsteczki można definiować przy użyciu okna Particle Flow, a sterować za pomocą akcji i zdarzeń.



Spray — symuluje krople wody. Krople te mogą występować w trzech odmianach: Drops, Dots lub Ticks. Poruszają się ruchem prostoliniowym, od powierzchni emitera.



Snow — podobny do systemu Spray, ale wzbogacony o parametry sterujące opadaniem cząsteczek. Cząsteczki te można też modelować jako kształty o nazwie Six Pointed i wówczas wyglądają one jak płatki śniegu.



Blizzard — rozbudowana wersja systemu Snow, która potrafi wykorzystywać obiekty siatkowe tego samego typu, co system Super Spray. Połączenie tego systemu z polem sił Wind pozwala uzyskać efekt śnieżycy.



PArray — pozwala wykorzystać niezależny obiekt (tzw. Distribution Object) jako źródło cząsteczek. W tym systemie typ cząsteczek możesz ustawić na Fragment i powiązać go z polem sił PBomb, tworząc efekt eksplozji.



PCloud — ogranicza przestrzeń poruszania się wszystkich generowanych cząsteczek. Jednym z zastosowań tego systemu jest symulacja bąbelków w szklance.



Super Spray — rozbudowana wersja systemu Spray, mogąca wykorzystywać różne obiekty siatkowe, zlewające się ze sobą cząsteczki, zwane metacząsteczkami (MetaParticles), lub klonowane obiekty. Super Spray jest użyteczny podczas modelowania deszczu i fontanny. Powiązanie tego systemu z polem sił Path Follow pozwala modelować wodospady.

Tworzenie systemu cząsteczkowego Systemy cząsteczkowe możesz tworzyć z poziomu panelu Create, a także menu Create. Aby uzyskać dostęp do tychże systemów w panelu Create, rozwiń kategorię Geometry i z rozwijanej listy wybierz podkategorię Particle Systems. Wszystkie systemy pojawią się pod postacią przycisków. Możesz też skorzystać z poleceń w menu Create/Particles.

Rozdział 41.  Cząsteczki i system Particle Flow

1123

Po wybraniu podkategorii Particle Systems kliknij przycisk odpowiadający systemowi, z którego chcesz skorzystać, po czym kliknij w oknie widokowym, aby utworzyć ikonę emitera cząsteczek. Ikona ta jest gizmem, mogącym mieć formę płaszczyzny lub kuli, które wyznacza położenie punktu lub obszaru, z jakiego cząsteczki będą emitowane. Z ikoną połączona jest pojedyncza linia, identyfikująca kierunek poruszania się emitowanych cząsteczek. Domyślnie linia ta jest skierowana w kierunku ujemnym osi Z głównej siatki konstrukcyjnej. Na rysunku 41.1 przedstawiono ikony emiterów w systemach cząsteczkowych, od lewej: Particle Flow Source, Super Spray, Spray, Snow oraz Blizzard (w trzech ostatnich przypadkach ikona wygląda tak samo), PArray oraz PCloud. Rysunek 41.1. Ikony emitera poszczególnych systemów cząsteczkowych

Ikony te możesz przekształcać za pomocą standardowych narzędzi transformacyjnych, włączanych przy użyciu przycisków na głównym pasku narzędziowym. Obrócenie emitera powoduje zmianę początkowego kierunku przemieszczania cząsteczek. Po utworzeniu ikony możesz określić liczbę, kształt i wielkość cząsteczek, a także zdefiniować sposób ich ruchu. To wszystko umożliwia roleta Parameters. Aby nałożyć materiał na cząsteczki, wystarczy przypisać go ikonie systemu. Materiał będzie nakładany na każdą cząsteczkę wygenerowaną w systemie. Trzeba mieć na uwadze, że cząsteczki są wyświetlane w oknie widokowym jako proste obiekty, np. jako kropki. Aby zobaczyć ich rzeczywisty wygląd, należy wyrenderować scenę.

Podczas tworzenia systemów cząsteczkowych parametry ustawia się w panelu Create. Później zaś można je modyfikować przy użyciu panelu Modify. Prostsze systemy, Spray czy Snow, mają po jednej rolecie parametrów, ale bardziej rozbudowane — Particle Flow Source, Super Spray oraz Blizzard — mają ich po kilka. Z systemami PArray i PCloud powiązane są podobne rolety, o dość nieznacznych różnicach. System Particle Flow ma z kolei kilka rolet, ale większość czynności wykonuje się w oknie Particle Flow. W kolejnych podrozdziałach omówione zostanie ustawianie parametrów poszczególnych systemów przy użyciu rolet.

Tworzenie systemów cząsteczkowych Spray i Snow O systemach Spray i Snow można powiedzieć tylko tyle, że kiedy zaczyna padać, to z tego deszczu robi się prawdziwa ulewa. Roleta Spray Parameters zawiera ustawienia liczby cząsteczek zawartych w systemie. Definiowane tu wartości mogą być różne dla okien widokowych (Viewport Count) i renderingu (Render Count). Poprzez ograniczenie liczby cząsteczek wyświetlanych w oknie widokowym zwiększa się szybkość odświeżania obrazu. Możesz też określić wielkość kropli (Drop Size), prędkość początkową (Speed) oraz

1124

Część X  Animacja dynamiczna

zróżnicowanie (Variation). Wartość Variation zmienia początkową prędkość oraz kierunek rozprysku cząsteczek. Ustawienie tego parametru na 0 sprawia, że cząsteczki poruszają się ruchem prostoliniowym. Cząsteczki Spray mogą mieć formę kropli (Drops), kropek (Dots) lub krzyżyków (Ticks). Wybór opcji decyduje o wyglądzie cząsteczek wyłącznie w oknie widokowym. Krople wyglądają tu jak smugi. Możliwe jest także ustalenie sposobu renderowania cząsteczek — jako obiekty Tetrahedron (czworościan) lub Facing (kwadratowe ścianki zawsze zwrócone płaszczyzną w kierunku okna widokowego). Opcja Facing działa prawidłowo (ścianki ustawiają się prostopadle do kierunku obserwacji) jedynie w widoku Perspective lub Camera.

Wartości Timing decydują o tym, kiedy cząsteczki mają się pojawiać i jak długo mają być widoczne w scenie. Start to pierwsza klatka, w której cząstki zaczynają być widoczne, zaś parametr Life determinuje czas życia, czyli liczbę klatek animacji, w których widoczna jest pojedyncza cząsteczka. Cząsteczka, której czas życia dobiega końca, znika. Wartość Birth Rate pozwala określić, jak wiele nowych cząstek ma się pojawiać w każdej klatce; możesz tę wartość ustalić samodzielnie lub użyć opcji Constant. Opcja ta definiuje parametr Birth Value, dzieląc łączną liczbę cząsteczek przez liczbę klatek. O wymiarach emitera decyduje szerokość i wysokość gizma. Za pomocą opcji Hide emiter można ukryć. Opcja Hide ukrywa emiter wyłącznie w oknach widokowych, bowiem emitery nie są nigdy renderowane.

Parametry systemu cząsteczkowego Snow są podobne do tych, które opisano wyżej, z wyjątkiem kilku ustawień unikalnych. Możliwe jest określenie sposobu (Tumble) oraz szybkości (Tumble Rate) obracania się opadających cząsteczek. Wartość Tumble może wynosić od 0 do 1, przy czym 1 wprawia cząsteczki w najszybsze obroty. Opcje renderingu (Render) także są nieco inne niż w przypadku systemu Spray. Do wyboru masz: Six Point, Triangle oraz Facing. Opcja Six Point renderuje cząsteczki jako sześcioramienne gwiazdki. Z kolei po wybraniu opcji Triangle lub Facing cząstki przyjmują postać zwykłych, płaskich ścianek.

Ćwiczenie: Tworzenie deszczu Jednym a najprostszych sposobów wykorzystania systemów cząsteczkowych jest symulowanie opadów deszczu bądź śniegu. W ćwiczeniu tym użyjesz systemu Spray, tworząc symulację deszczu. Następnie zaś dowiesz się, jak za pomocą systemu Snow modelować śnieg. Aby utworzyć scenę z symulowanym opadem deszczu, wykonaj, co następuje. 1. Otwórz plik Simple rain.max, zapisany w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera model parasola stworzony przez Zygote Media.

Rozdział 41.  Cząsteczki i system Particle Flow

1125

2. Wybierz polecenie Create/Particles/Spray i przeciągnij myszą w oknie widokowym Top, obrysowując całą scenę. Ustaw ikonę powyżej obiektów i upewnij się, że wektor skierowany jest w dół, w kierunku sceny. 3. Otwórz panel Modify oraz roletę Parameters. Ustaw liczbę cząsteczek (Render Count) na 1000, a ich wielkość (Drop Size) na 2. Zachowaj domyślną prędkość, czyli 10, i wybierz opcję Drops; przy tych ustawieniach cząsteczki będą widoczne jako krótkie smugi. Wybierz też metodę Tetrahedron Render, a parametry Start oraz Life ustaw odpowiednio na 0 oraz 100. Ustawienie liczby cząsteczek na 1000 dla 100-klatkowej animacji pozwala zalać scenę średnio intensywnym deszczem.

4. Otwórz edytor materiałów (Material Editor), naciskając klawisz M, po czym przeciągnij jasnoniebieski materiał na ikonę systemu cząsteczkowego. Rezultat ćwiczenia przedstawiono na rysunku 41.2. Rysunek 41.2. Deszcz utworzony przy użyciu systemu cząsteczkowego Spray

Ćwiczenie: Tworzenie śnieżycy Kreowanie śnieżycy przebiega bardzo podobnie. Aby utworzyć symulację śnieżycy, użyjemy systemu cząsteczkowego Snow, ustawiając taką samą liczbę cząsteczek i przypisując systemowi materiał w kolorze białym. Aby, korzystając z systemu Snow, utworzyć zaśnieżoną scenę, wykonaj następujące czynności. 1. Otwórz plik Snowman in snowstorm.max, zapisany w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera model bałwana, utworzony z obiektów parametrycznych.

1126

Część X  Animacja dynamiczna

2. Wybierz polecenie Create/Particles/Snow i przeciągnij myszą w oknie widokowym Top, obrysowując całą scenę. Ustaw ikonę powyżej obiektów i upewnij się, że wektor skierowany jest w dół, w kierunku sceny. 3. Otwórz panel Modify oraz roletę Parameters. Ustaw liczbę płatków na 1000, a ich wielkość (Flake Size) na 6. W sekcji Render zaznacz opcję Six Point. Parametry Start oraz Life ustaw odpowiednio na 0 oraz 100. 4. Otwórz edytor materiałów, wciskając klawisz M, po czym przeciągnij biały materiał, z niewielkim samoświeceniem, na gizmo systemu cząsteczkowego. Rezultat wykonania ćwiczenia można zobaczyć na rysunku 41.3. Rysunek 41.3. Symulacja śniegu utworzona przez zastosowanie systemu cząsteczkowego Snow

System cząsteczkowy Super Spray Jeśli porównamy efekty działania systemu Spray do letniego deszczyku, to system Super Spray należałoby określić mianem sikawki strażackiej. System cząsteczkowy Super Spray jest znacznie bardziej złożony niż jego pobratymcy Spray oraz Snow. Złożoność ta wynika z bogactwa funkcji, które czyni z tego systemu jedno z najbardziej wydajnych narzędzi do tworzenia efektów specjalnych w Maksie. W przeciwieństwie do systemów Spray i Snow system Super Spray zawiera kilka rolet z parametrami.

Roleta Basic Parameters systemu Super Spray System cząsteczkowy Super Spray emituje wszystkie cząsteczki ze środka ikony emitera. Ikona emitera ma formę zwykłego walca, zaś przyłączona doń strzałka wskazuje kierunek emisji cząsteczek. Roleta Basic Parameters, ukazana została na rysunku 41.4. Wartość Off Axis określa odchylenie toru lotu cząsteczek od kierunku strzałki. Ustawienie 0 sprawia,

Rozdział 41.  Cząsteczki i system Particle Flow

1127

że cząsteczki lecą zgodnie z tym kierunkiem, zaś zmiana ustawienia na 180 odwraca kierunek emisji cząsteczek. W podobnym zakresie można też ustawiać parametr Spread, który decyduje o kącie rozpraszania cząstek wokół wybranej osi. Wartość Off Plane decyduje o obrocie kierunku emisji wokół osi emitera, a Spread określa odchylenie od tejże osi, z jakim cząsteczki mogą być wysyłane. Jeżeli wszystkie te parametry ustawisz na 0, wówczas system będzie emitował wszystkie cząsteczki w jednym, prostym strumieniu. Po zmianie ustawień na 180 cząsteczki będą rozpraszane we wszystkich kierunkach od środka emitera. Rysunek 41.4. Roleta Basic Parameters pozwala określić, gdzie i w jaki sposób cząsteczki będą wyświetlane w oknach widokowych

Ikonę emitera można ukrywać w oknach widokowych, a także zmieniać jej wielkość. Ponadto system daje możliwość wyboru wyświetlania cząsteczek jako Dots, Ticks, Meshes lub Bounding Boxes. Wartość Percentage określa łączną liczbę cząstek widocznych w oknie widokowym i należy zachować umiar przy jej ustawianiu, aby odświeżanie obrazu odbywało się szybko.

Roleta Particle Generation Roleta Particle Generation, którą widzisz na rysunku 41.5, pozwala za pomocą parametru Rate bądź Total określić liczbę cząsteczek w systemie. Pierwszy wyznacza liczbę cząstek generowanych w każdej klatce animacji. Z kolei wartość Total określa liczbę cząstek wygenerowanych w ciągu wszystkich klatek. Parametru Rate powinieneś używać wówczas, gdy zależy Ci na jednostajności emisji cząstek w ciągu całej animacji; jeżeli zamierzasz odgórnie ustalić łączną liczbę cząstek, które zostaną wyświetlone w całym zakresie klatek, użyj parametru Total. Rysunek 41.5. Roleta Particle Generation pozwala sterować ruchem cząstek

1128

Część X  Animacja dynamiczna

Kontrolka Speed, znajdująca się w sekcji Particle Motion, daje możliwość określenia początkowej prędkości cząsteczek. Wartość Variation wprowadza pewne odchylenia prędkości początkowej, a wyraża się je jako odsetek wartości Speed. Wysokie ustawienia Variation powodują znaczne zróżnicowanie szybkości, z jaką cząsteczki się poruszają. Nie wahaj się używać dużych wartości parametru Variation, bo to pozwala na zwiększenie realizmu uzyskiwanych efektów.

Sekcja Particle Timing pozwala ustalić, kiedy proces emitowania cząstek ma się rozpoczynać i kiedy kończyć. Wartość Display Until determinuje czas, jaki ma upływać pomiędzy zatrzymaniem emisji i zaprzestaniem wyświetlania cząstek. Parametr Life decyduje o tym, jak długo cząsteczki pozostają w scenie, a różnicować go można za pomocą kolejnej kontrolki Variation. Podczas animacji emitera (gdy suwak animacji przesuwany jest w przód i w tył) cząsteczki mogą się zlepiać w miejscach, w których system zmienia kierunek emisji. Efekt ten jest nazywany skłębianiem (puffing). Opcje Subframe Subsampling ułatwiają pozbycie się tego problemu. Są to opcje: Creation Time (która kontroluje emisję cząstek w czasie), Emitter Translation (decydująca o emisji cząsteczek podczas ruchu emitera) oraz Emitter Rotation (kontrolująca emitowanie cząstek podczas obracania emitera). Wszystkich trzech opcji można używać łącznie, ale każda z nich wydłuża czas renderingu. Ponieważ opcje Subframe Subsampling powodują spowolnienie procesu renderingu, to należy ich używać tylko wtedy, gdy są niezbędne.

W tej samej rolecie znajduje się sekcja pozwalająca określić wielkość cząstek oraz jej zróżnicowanie. Ponadto możesz sprawić, że cząsteczki będą rosły (Grow For) i malały (Fade For) co określoną liczbę klatek. Wartość Seed daje możliwość wprowadzenia elementu losowego do procesu emisji cząsteczek. Kliknięcie przycisku New powoduje automatyczne wygenerowanie nowej wartości Seed. Jeśli skopiujesz system cząsteczkowy i każda kopia będzie mieć tę samą wartość parametru Seed, oba systemy będą działały identycznie, ale przy różnych wartościach tego parametru ich funkcjonowanie będzie zróżnicowane.

Roleta Particle Type Roleta Particle Type, przedstawiona na rysunku 41.6, umożliwia sterowanie wyglądem cząsteczek. Na samej górze rolety widnieją trzy opcje Particle Types: standardowe cząsteczki (Standard Particles), metacząsteczki (MetaParticles) oraz klonowana geometria (Instanced Geometry). Jeśli wybierzesz opcję Standard Particles, wtedy będziesz mógł wybrać także kształt geometryczny, jaki chcesz nadać cząsteczkom. Do wyboru masz Triangle, Special, Constant, Six Point, Cube, Facing, Tetra oraz Sphere. Typ Special tworzy cząsteczki zbudowane z trzech przecinających się płaszczyzn. Wybór ten ma sens wówczas, gdy na owe cząstki zamierzasz nakładać mapy. Typ Facing jest

Rozdział 41.  Cząsteczki i system Particle Flow

1129

Rysunek 41.6. Roleta Particle Type (pokazana w czterech częściach) pozwala decydować o wyglądzie cząsteczek

użyteczny w podobnych sytuacjach; tworzy on cząstki w postaci zwykłych, kwadratowych ścianek, zawsze wyświetlanych płaszczyzną w stronę obserwatora. Typ Constant generuje cząstki, które zachowują stałą wielkość, bez względu na odległość od obserwatora czy kamery. Wybór typu Six Point sprawia, że cząsteczki przyjmują formę dwuwymiarowych, sześcioramiennych gwiazdek. Pozostałe opcje tworzą cząstki o typowych kształtach geometrycznych.

Ćwiczenie: Modelowanie fontanny sztucznych ogni Jako przykład systemu Super Spray utworzysz teraz fontannę fajerwerków. Fajerwerki tworzą duże ilości cząstek, o krótkim czasie życia i intensywnym blasku. (Obiecaj sobie, że następnym razem nie ominiesz pokazu sztucznych ogni). Gotowy materiał dla tego przykładu wykorzystuje efekt Glow Render, dzięki któremu cząsteczki będą się jarzyły. Więcej informacji na temat efektów renderowanych znajdziesz w rozdziale 46. „Stosowanie efektów renderowanych i atmosferycznych”.

Aby utworzyć model fontanny fajerwerków, wykonaj następujące czynności. 1. Otwórz plik Fireworks fountain.max, który znajdziesz w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera model wyrzutni sztucznych ogni, z polem sił Gravity, które sprawia, że cząsteczki opadają ku powierzchni. Niektóre z najbardziej interesujących efektów specjalnych uzyskuje się przez połączenie systemów cząsteczkowych z polami sił.

2. Wybierz polecenie Create/Particles/Super Spray, przeciągnij w oknie widokowym Top i umieść ikonę systemu na szczycie walca, zwracając strzałkę kierunkową pionowo ku górze. 3. Otwórz panel Modify i ustaw parametr Off Axis Spread na 45, a Off Plane Spread na 90.Przejdź do rolety Particle Generation, ustaw łączną liczbę cząsteczek na 2000, prędkość (Speed) na 20, a wariację (Variation) na 100. Parametr Emit Start ustaw na 0, a Emit Stop na 100. Następnie zmień ustawienia Display Until na 100, Life na 25 i Variation na 20. Rozmiar cząsteczek (Size) powinien wynosić 5. 4. Otwórz edytor materiałów (wciskając klawisz M) i zaznacz pierwszą próbkę. Zawiera ona materiał o nazwie Spark (iskra). Przeciągnij ów materiał na ikonę systemu cząsteczkowego. 5. Zaznacz ikonę Super Spray, otwórz menu podręczne, klikając prawym przyciskiem myszy, i wybierz opcję Properties. W oknie dialogowym właściwości obiektu (Object Properties) włącz opcję rozmycia obiektu w ruchu (opcja Object w sekcji Motion Blur).

1130

Część X  Animacja dynamiczna Oglądając animację, należy zmaksymalizować jedno z okien widokowych. Gdyby program usiłował odświeżać obraz we wszystkich czterech oknach, to przy tak dużej liczbie cząsteczek odświeżanie przebiegałoby bardzo powoli. Aktywne okno widokowe możesz zmaksymalizować za pomocą klawiszy Alt+W.

Na rysunku 41.7 widać iskry wylatujące z wyrzutni sztucznych ogni. Rysunek 41.7. Fontanna sztucznych ogni utworzona przy użyciu systemu cząsteczkowego Super Spray

Ćwiczenie: Rozpylanie sprayu z puszki System cząsteczkowy Super Spray jest wystarczająco rozbudowany, by można było wykorzystać go w kolejnym przykładzie. Cóż wart byłby pojemnik z dezodorantem, gdyby nie mógł wytwarzać sprayu? W ćwiczeniu tym utworzysz model takiego pojemnika, zaś korzystając z systemu Super Spray, wymodelujesz wylatującą zeń mgiełkę. Aby utworzyć strumień sprayu wylatujący z pojemnika, wykonaj następujące czynności. 1. Otwórz plik Spray can.max zapisany w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera prosty model pojemnika ze sprayem, którego główna część utworzona została z walca, zaś atomizer wymodelowano ze splajnu, który przekształcono w bryłę obrotową. 2. Kliknij przycisk podkategorii Particle Systems, by otworzyć listę rozwijaną, po czym kliknij przycisk Super Spray. Przeciągnij wskaźnikiem myszy w oknie widokowym Top, tworząc ikonę Super Spray i umieść ją u wylotu dyszy atomizera. 3. W rolecie Basic Parameters ustaw parametr Off Axis Spread na 20, a Off Plane Spread na 90. Przejdź do rolety Particle Generation, zmień wartość Emit Start na 1000, Speed na 20, a Life na 30. Rozmiar cząsteczek ustaw na 5. 4. Otwórz edytor materiałów (wciskając klawisz M) i zaznacz materiał o nazwie Spray Mist. Przeciągnij ów materiał na ikonę systemu cząsteczkowego Super Spray.

Rozdział 41.  Cząsteczki i system Particle Flow

1131

Na rysunku 41.8 widać aerozol wydobywający się z pojemnika. Rysunek 41.8. Mgiełkę aerozolu można utworzyć, korzystając z materiału o dużym współczynniku przezroczystości

Korzystanie z metacząsteczek (MetaParticles) Opcja MetaParticle dostępna w rolecie Particle Type sprawia, że system emituje metacząsteczki (metaballs). Są to lepkie kule, które, podobnie jak rtęć, przyciągają się i łączą, gdy tylko znajdą się w bliskiej odległości. Cząsteczki te renderowane są nieco dłużej, ale cechują się znaczną efektywnością podczas modelowania wody oraz innych płynów. Typ MetaParticles dostępny jest dla systemów Super Spray, Blizzard, PArray oraz PCloud. Włączenie opcji MetaParticles powoduje udostępnienie sekcji MetaParticles Parameters. Sekcja obejmuje opcje sterowania zachowaniem metacząsteczek. Parametr Tension (naprężenie) decyduje o tym, jak łatwo metacząsteczki łączą się ze sobą. Im wartość tego parametru jest wyższa, tym bardziej cząsteczki są „odporne” na wzajemne przyciąganie. Zakres zróżnicowania parametru Tension można określić przy użyciu kontrolki Variation. Naprężenie może przyjmować wartości z zakresu od 0,1 do 10, a parametr Variation może się zmieniać od 0 do 100%. Ponieważ rendering metacząsteczek trwa dość długo, za pomocą parametru Evaluation Coarseness (niedokładność obliczeń) możesz wpłynąć na intensywność procesu obliczeniowego. Ustawienie to może być różne dla okien widokowych i dla renderingu — im wartość jest wyższa, tym szybciej pojawiają się rezultaty. Możesz zdecydować się na wybór opcji Automatic Coarseness, która sprawia, że intensywność procesu jest automatycznie dostosowywana do szybkości i wydajności mechanizmu renderującego. Opcja One Connected Blob przyspiesza rendering przez ignorowanie wszystkich cząsteczek, które nie są połączone z innymi.

Ćwiczenie: Rozlany napój z puszki MetaParticles są dobrym wyborem w sytuacji, gdy konieczne jest wymodelowanie kropli płynu, np. napoju.

1132

Część X  Animacja dynamiczna

Aby utworzyć symulację wylewania się napoju z puszki, wykonaj poniższe instrukcje. 1. Otwórz plik MetaParticles from soda can.max, znajdujący się w folderze Chap 41 na płycie dołączonej do książki. Znajdziesz tam model leżącej na boku puszki, opracowany przez Zygote Media. 2. Wybierz polecenie Create/Particles/Super Spray i przeciągnij wskaźnikiem myszy w oknie widokowym Front. Ustaw ikonę systemu cząsteczkowego w taki sposób, by punkt emitujący cząsteczki znalazł się w otworze puszki. Wektor kierunkowy powinien być skierowany na zewnątrz. 3. Zaznacz ikonę Super Spray, otwórz panel Modify i w rolecie Basic Parameters ustaw oba parametry, Off Axis i Off Plane Spread, na 40. 4. Przejdź do rolety Particle Generation, zachowaj domyślne ustawienia Rate i Speed, ale parametr Speed Variation zmień na 50. Dzięki temu szybkość poruszania się poszczególnych cząstek będzie zróżnicowana. Particle Size ustaw na 20. 5. W rolecie Particle Type wybierz opcję MetaParticles, zmień ustawienie Tension na 1 i upewnij się, że opcja Automatic Coarseness jest włączona. 6. Otwórz edytor materiałów (wciskając klawisz M) i zaznacz materiał o nazwie Purple Soda, po czym przeciągnij go na ikonę systemu cząsteczkowego. Na rysunku 41.9 przedstawiono wyrenderowany obraz z cząsteczkami MetaParticles rozlewającymi się z puszki, widoczny w klatce 25. Rysunek 41.9. Cząsteczki MetaParticles wydobywające się z puszki z napojem

Klonowana geometria (Instanced Geometry) Roleta Particle Type pozwala wybrać obiekt, który będzie wykorzystany do modelowania poszczególnych cząsteczek. Gdy włączysz opcję Instanced Geometry, możesz wybrać taki obiekt. W tym celu kliknij przycisk Pick Object, po czym kliknij odpowiedni obiekt w oknie widokowym. Jeżeli włączona jest przy tym opcja Use Subtree Also, wówczas dołączone zostaną także wszystkie obiekty potomne.

Rozdział 41.  Cząsteczki i system Particle Flow

1133

Użycie skomplikowanych obiektów w charakterze cząsteczek może spowodować znaczące spowolnienie działania systemu i wydłużenie czasu renderowania.

Opcja Animation Offset Keying decyduje o sposobie animowania obiektu wskazanego jako cząsteczka. Jeśli wybierzesz opcję None, wówczas wszystkie obiekty będą animowane tak samo, bez względu na moment ich powstania. Opcja Birth rozpoczyna animację każdego obiektu w chwili jego utworzenia, zaś opcja Random losowo przesuwa ów moment, bazując na ustawieniu Frame Offset. Jeżeli np. wyselekcjonujesz animowaną pszczołę machającą skrzydłami, które są cząsteczkami, po czym w sekcji Animation Offset Keying wybierzesz opcję None, wówczas wszystkie pszczoły w scenie będą machały skrzydełkami synchronicznie. Zmiana opcja na Birth sprawi, że machanie skrzydłami będzie się rozpoczynało w chwili ich utworzenia, zaś włączając opcję Random, sprawisz, że każdy klon będzie machał skrzydełkami w swoim indywidualnym rytmie. Jeśli chodzi o materiały, to parametry Time oraz Distance określają liczbę klatek lub odległość przebytą przez cząsteczki, przed ich pełnym zmapowaniem. Materiały można przypisywać do systemu cząsteczkowego w chwili jego tworzenia. Przycisk Get Material From umożliwia wybranie obiektu, z którego ma zostać pobrany materiał. Opcje obejmują zarówno ikonę systemu, jak i obiekty Instanced Geometry.

Roleta Rotation and Collision W rolecie Rotation and Collision znajduje się opcja pozwalająca sterować kolizjami cząsteczek. Jej włączenie powoduje, że obiekty ulegają wzajemnemu odbiciu w chwili, gdy prostopadłościany reprezentujące zewnętrzne wymiary obiektów pokryją się. Roleta Rotation and Collision, ukazana na rysunku 41.10, zawiera też szereg kontrolek zawiadujących obracaniem się poszczególnych cząsteczek. Spin Time to parametr określający liczbę klatek wymaganych do pełnego obrotu cząsteczki. Wartość Phase decyduje o początkowym obrocie cząsteczek. Oba te ustawienia mogą ulegać odchyleniom w stopniu określonym kontrolkami Variation. Opcje rolety Rotation and Collision mogą powodować wydłużenie czasu renderowania sceny.

Ponadto możesz wskazać oś, wokół której cząsteczki będą wirowały. Dostępne opcje to Random (oś przypadkowa), Direction of Travel/MBlur (kierunek ruchu) oraz User Defined (oś określona przez użytkownika). Parametr Stretch widoczny poniżej pola opcji Direction of Travel/MBlur decyduje o wydłużaniu się cząsteczek wzdłuż kierunku przemieszczania. Opcja User Defined umożliwia natomiast określenie kąta obrotu w każdej z osi. Kolizje międzycząsteczkowe są zjawiskami wymagającymi intensywnych obliczeń, ale opcja Enable pozwala łatwo włączać i wyłączać ich wykrywanie. Ponadto możliwe jest określenie częstotliwości, z jaką owe kolizje mają być przeliczane. Wartość Bounce określa szybkość cząsteczek po zderzeniu jako procentową wartość prędkości sprzed kolizji. Zakres odchyleń ustala się za pomocą kontrolki Variation.

1134

Część X  Animacja dynamiczna

Rysunek 41.10. Roleta Rotation and Collision udostępnia opcje decydujące o zachowaniu kolidujących ze sobą obiektów

Ćwiczenie: Trening koszykarski Gdy drużyna koszykarzy rozgrzewa się przed meczem, w przestrzeni wokół kosza i tablicy panuje zupełny chaos — piłki latają dosłownie w każdym kierunku. W ćwiczeniu tym użyjesz obiektów piłek koszykowych jako cząsteczek, rozrzucając je wokół. (Uważaj na lecące piłki!). Aby wykorzystać obiekt piłki koszykowej w roli cząsteczki, wykonaj następujące czynności. 1. Otwórz plik Basketballs at a hoop.max, zapisany w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera modele piłki koszykowej oraz kosza, utworzone przez Zygote Media. 2. Wybierz polecenie Create/Particles/Super Spray i przeciągnij wskaźnikiem myszy w oknie widokowym. Ustaw ikonę systemu w oknie widokowym Front w taki sposób, by punkt emisji znajdował się nieco powyżej i przed obręczą kosza. Wektor kierunkowy powinien być zwrócony w dół (będziesz musiał obrócić ikonę emitera). 3. Otwórz panel Modify i w rolecie Basic Parameters ustaw wartość Off Axis Spread na 90, a Off Plane Spread na 40; spowoduje to losowe rozrzucanie piłek wokół obręczy. Włącz opcję Mesh w sekcji Viewport Display rolety Basic Parameters. Ustaw parametr Percentage of Particles na 100%, by uwidocznić pozycję każdej piłki w oknie widokowym. Ponieważ piłka koszykowa jest obiektem dość złożonym, to użycie opcji Mesh powoduje istotne spowolnienie odświeżania obrazu w oknach widokowych. Możesz je przyspieszyć, wybierając opcję BBox (Bounding Box), ale dopiero po włączeniu opcji Instanced Geometry.

Rozdział 41.  Cząsteczki i system Particle Flow

1135

4. Przejdź do rolety Particle Generation, włącz opcję Use Total i ustaw jej wartość na 30. (Jest to liczba dość rozsądna i typowa dla rozgrzewek koszykarskich). Parametr Speed zmień na 0.2, a Life na 100, ponieważ nie chcesz, by piłki po prostu znikały. Z uwagi na małą liczbę cząsteczek możesz wyłączyć opcję Subframe Subsampling. Natomiast wartości Grow For i Fade For ustaw na 0. 5. Po przejściu do rolety Particle Type wybierz opcję Instanced Geometry i kliknij przycisk Pick Object. Upewnij się, że włączona jest też opcja Use Subtree Also, gdyż gwarantuje ona wybranie całej grupy obiektów jako wzorca cząsteczki. Następnie kliknij piłkę (która jest grupą obiektów) w oknie widokowym. Zaznacz opcję Instanced Geometry u dołu rolety, po czym kliknij przycisk Get Material From. W ten sposób przypiszesz wszystkim cząsteczkom ten sam materiał, który przypisany został oryginalnemu obiektowi. 6. W rolecie Rotation and Collision ustaw parametr Spin Time na 100, dzięki czemu piłki widoczne w scenie będą wirowały. Oprócz tego, w sekcji Spin Axis Control wybierz opcję Random. Do tego wszystkiego uaktywnij opcję Interparticle Collisions, ustawiając wartość Calculation Interval na 1, a Bounce na 100. Dzięki włączeniu opcji Collisions piłki nie będą zachodziły na siebie. 7. Na podłodze, u podnóża tablicy, znajduje się pole sił Deflector. Kliknij przycisk Bind to Space Warp znajdujący się na głównym pasku narzędziowym i przeciągnij myszą linię od tego deflektora do ikony systemu cząsteczkowego Super Spray. Wtedy piłki będą odbijały się od podłogi. Na rysunku 41.11 przedstawiono wyrenderowany obraz sceny w 30. klatce animacji. Widać tu kilka piłek chaotycznie latających w pobliżu kosza. Rysunek 41.11. Kilka cząsteczek w postaci piłek, latających wokół kosza

1136

Część X  Animacja dynamiczna

Roleta Object Motion Inheritance Ustawienia w rolecie Object Motion Inheritance, pokazanej na rysunku 41.12, określają sposób, w jaki przemieszczają się cząsteczki, gdy emiter jest w ruchu. Parametr Influence decyduje o tym, na ile ruch emitera wpływa na ruch cząstek. Wartość 100 sprawia, że cząsteczki podążają za emiterem, zaś wartość 0 powoduje, że ruch emitera nie ma żadnego wpływu na przemieszczanie się cząsteczek. Rysunek 41.12. Roleta Object Motion Inheritance pozwala określić, na ile cząsteczki przejmują ruch od emitera, a roleta Bubble Motion określa zachowanie cząsteczek jako pęcherzyków

Parametr Multiplier może wzmacniać lub osłabiać efekt ruchu emitera. Przy wysokich ustawieniach tego parametru cząsteczki mogą wyprzedzać emiter.

Roleta Bubble Motion Roleta Bubble Motion, również widoczna na rysunku 41.12, pozwala symulować ruch pęcherzyków unoszących się ku powierzchni płynu. Ruch ów definiują trzy parametry, z których każdy może ulegać zróżnicowaniu. Amplitude decyduje o odległości, na jaką cząsteczki przemieszczają się na boki. Period to czas trwania pełnego cyklu przesunięcia od jednej strony do drugiej i z powrotem. Z kolei parametr Phase określa punkt, od którego cząsteczki zaczynają poruszać się ruchem drgającym.

Roleta Particle Spawn Roleta Particle Spawn, którą możesz zobaczyć na rysunku 41.13, daje możliwość ustawienia opcji tworzenia nowych cząsteczek, następującego w chwili śmierci cząsteczki lub kolizji z inną. Jeśli wybrana jest opcja None, wówczas zderzające się cząsteczki po prostu odbijają się od siebie, a ginące — znikają. Opcja Die After Collision sprawia, że kolizja powoduje zniknięcie zderzających się cząstek. Z kolei wartość Persist decyduje o tym, jak długo cząsteczka pozostaje widoczna przed zniknięciem. Parametr Variation pozwala wprowadzać odchylenia wartości Persist, wyrażone jako współczynnik procentowy. Opcje Spawn on Collision, Spawn on Death oraz Spawn Trails włączają kontrolki rozmnażania cząsteczek i ustalają sposób powstawania tychże. Wartość Spawns określa, ile nowych cząstek może „urodzić” każda cząsteczka. Parametr Affects determinuje procentowo liczbę cząsteczek, które będą generowały nowe cząsteczki; obniżenie tej wartości powoduje zmniejszenie liczby cząstek „rodzących”, a tym samym ogranicza przyrost nowych. Wartość Multiplier pomnaża liczbę nowo powstających cząstek.

Rozdział 41.  Cząsteczki i system Particle Flow

1137

Rysunek 41.13. Roleta Particle Spawn (pokazana tu w dwóch częściach) pozwala określić sposób, w jaki istniejące cząsteczki mają tworzyć nowe

Opcja Spawn Trails sprawia, że każda cząstka tworzy nową w każdej klatce animacji. Włączenie tej opcji może więc bardzo szybko doprowadzić do powstania nadmiernej liczby cząsteczek i dlatego należy ją stosować ostrożnie.

Ustawienia Chaos określają szybkość i kierunek ruchu nowo powstających cząstek. Ustawienie parametru Direction Chaos na 100 daje cząsteczkom pełną swobodę ruchu, podczas gdy wartość 0 sprawia, że nowa cząsteczka podąża za swoim rodzicem. Chaos Speed Factor określa różnicę szybkości nowo powstałej cząsteczki względem szybkości rodzica. Nowa cząstka może poruszać się szybciej (Fast) lub wolniej (Slow). Włączenie opcji Both powoduje, że niektóre cząstki poruszają się z większą, a inne z mniejszą prędkością. Możesz też użyć opcji wyrównania prędkości cząsteczek z prędkością rodzica (Inherit Parent Velocity), a także opcji, która sprawia, że współczynnik szybkości jest wartością stałą (Use Fixed Value). Parametr Scale Chaos Factor działa podobnie jak Chaos Speed Factor, z tą tylko różnicą, że odnosi się do wielkości cząsteczek pochodnych, czyniąc je mniejszymi bądź większymi od pierwowzoru. Sekcja Lifespan Value Queue pozwala definiować różne poziomy czasu życia. Czas życia cząsteczek oryginalnych wyznacza pierwszy wpis w kolejce. Cząsteczki pochodne żyją tak długo, na ile pozwala im drugi wpis kolejki itd. Aby wpisać nową wartość, wprowadź ją za pomocą kontrolki Lifespan i kliknij przycisk Add. Przycisk Delete usuwa wartości z listy, zaś za pomocą przycisku Replace możesz zamieniać wartości miejscami. Jeśli jako typ cząsteczek wybrana została opcja Instanced Geometry, wówczas możesz wybrać dodatkowe obiekty, które będą wykorzystywane na kolejnych poziomach reprodukcji. Służy temu celowi pole Object Mutation Queue. Wybrane obiekty pojawiają się wraz z powstawaniem nowych cząstek. Aby wprowadzić nowy obiekt na listę, użyj przycisku Pick. Wyselekcjonować możesz kilka obiektów, a o kolejności ich wykorzystania decyduje pozycja na liście.

1138

Część X  Animacja dynamiczna

Roleta Load/Save Presets Konfiguracje cząsteczek możesz zapisywać, a także wczytywać za pomocą rolety Load/ Save Presets, przedstawionej na rysunku 41.14. Aby zapisać konfigurację, wpisz jej nazwę w polu Preset Name i kliknij przycisk Save. Lista wymienia wszystkie zapisane konfiguracje. Gdy chcesz użyć którejś z nich, zaznacz ją i kliknij przycisk Load. Rysunek 41.14. Roleta Load/Save Presets pozwala zapisywać ustawienia parametrów

Zapisane konfiguracje są poprawne wyłącznie dla systemu cząsteczkowego, dla którego zostały zdefiniowane. Nie można np. zapisać konfiguracji systemu Super Spray i wczytać jej dla systemu Blizzard.

Max oferuje kilka domyślnych konfiguracji, z których możesz korzystać na początku. Są to Bubbles (pęcherzyki), Fireworks (fajerwerki), Hose (sikawka), Shockwave (fala uderzeniowa), Trail (ogon ognisty), Welding Sparkles (iskrzenie podczas spawania) oraz Default (tworzący prosty szereg cząsteczek).

System cząsteczkowy Blizzard System cząsteczkowy Blizzard wykorzystuje te same rolety, co Super Spray, przy czym wykazać można kilka niewielkich różnic w opcjach. Ikona emitera Blizzard jest płaszczyzną z linią wskazującą kierunek emisji cząsteczek (podobnie jak w systemach Spray i Snow). Cząsteczki emitowane są z całej powierzchni gizma. Różnice parametrów pomiędzy systemami Blizzard i Super Spray dotyczą m.in. wymiarów ikony Blizzard. W rolecie Particle Generation znaleźć można parametry Tumble (wirowanie) oraz Tumble Rate (szybkość wirowania). Kolejna różnica to obecność opcji Emmiter Fit Planar w sekcji Material Mapping rolety Particle Type. Opcja ta umożliwia mapowanie materiałów na cząsteczki w chwili ich powstania, zależnie od punktu „narodzin”. Inną, istotną różnicą w stosunku do systemu Super Spray jest to, że system Blizzard nie ma rolety Bubble Motion, ponieważ płatki śniegu, nawet po złączeniu, raczej nie przypominają bąbelków. I wreszcie, różnice można znaleźć także na liście predefiniowanych konfiguracji w rolecie Load/Save Presets. W przypadku systemu Blizzard obejmuje ona opcje Blizzard (zamieć), Rain (deszcz), Mist (mgła) oraz Snowfall (padający śnieg).

Rozdział 41.  Cząsteczki i system Particle Flow

1139

System cząsteczkowy PArray System cząsteczkowy PArray jest systemem jedynym w swoim rodzaju. Emituje cząsteczki z powierzchni wybranego obiektu. Cząsteczki te mogą się wydobywać z jego ścianek, krawędzi lub wierzchołków, niezależnie od ikony emitera. System PArray wykorzystuje wiele tych samych rolet, co system Super Spray. Jego ikona ma kształt sześcianu, z trzema czworościanami wewnątrz. System charakteryzuje się, w stosunku do pozostałych systemów, pewnymi interesującymi różnicami parametrów, poczynając od rolety Basic Parameters, pokazanej na rysunku 41.15. Rysunek 41.15. Roleta Basic Parameters systemu PArray pozwala wskazać punkt, w którym cząsteczki będą formowane

System PArray pozwala wybierać obiekty emitujące cząsteczki, a służy do tego przycisk Pick Object. Możliwe jest również wskazanie miejsca na obiekcie, w którym cząsteczki mają być formowane. Dostępne są tu opcje emitowania cząstek na całej powierzchni (Over Entire Surface), wzdłuż widocznych krawędzi (Along Visible Edges), na wszystkich wierzchołkach (At All Vertices), w odrębnych punktach (At Distinct Points) oraz na środkach ścianek (At Face Centers). W przypadku opcji At Distinct Points możesz określić liczbę punktów emisji. Opcja Use Selected Sub-Objects pozwala, by cząstki formowane były w miejscach wskazanych po kliknięciu przycisku Pick Object, ale tylko na podobiektach, których zaznaczenie zostało przekazane w stosie modyfikatorów. Jest to opcja użyteczna, gdy cząstki mają być emitowane tylko z zaznaczonych fragmentów siatki, np. z paszczy smoka bądź wylotu węża strażackiego. Pozostałe opcje w rolecie Basic Parameters działają tak samo jak w innych systemach cząsteczkowych. Roleta Particle Generation zawiera kontrolkę Divergence (rozbieżność). Ustawiona za jej pomocą wartość określa kątowe odchylenie kierunku ruchu cząstek w stosunku do wektora normalnego emitera.

1140

Część X  Animacja dynamiczna

Dzielenie obiektu na fragmenty Roleta Particle Type systemu PArray oferuje możliwość tworzenia dość specyficznego typu cząsteczek, czyli fragmentów obiektu (Object Fragments). Jej włączenie powoduje podział zaznaczonego obiektu na pewną liczbę fragmentów. Parametr Thickness opcji Object Fragments nadaje fragmentom określoną grubość. Ustawienie na 0 sprawia, że fragmenty obiektu są wielokątami nieposiadającymi grubości. Oprócz tego, w rolecie Particle Type znajduje się opcja All Faces, której działanie polega na oddzielaniu wszystkich trójkątnych ścianek i przekształcaniu ich w osobne fragmenty. Alternatywą wobec tej opcji jest parametr Number of Chunks, który pomaga podzielić obiekt na określoną liczbę fragmentów. Opcja trzecia, Smoothing Angle, pozwala dzielić obiekty w oparciu o kąt wygładzania, który można określić. W sekcji Material rolety Particle Type możesz wybierać identyfikatory materiałów nakładanych na przednie, boczne oraz tylne powierzchnie fragmentów. Roleta Load/Save Presets oferuje kilka interesujących konfiguracji, w tym podmuch (Blast), dezintegrację (Disintegrate), gejzer (Geyser) oraz kometę (Comet).

Ćwiczenie: Unosząca się para wodna W ćwiczeniu tym utworzymy efekt unoszenia się pary ze studzienki kanalizacyjnej. System cząsteczkowy PArray pozwoli Ci precyzyjnie określić miejsce emisji pary. Aby wykreować efekt unoszenia się pary ze studzienki kanalizacyjnej, wykonaj następujące czynności. 1. Otwórz plik Street vent.max, który zapisany jest w folderze Chap 41 na płycie dołączonej do książki. Plik zawiera scenę przedstawiającą uliczną studzienkę kanalizacyjną. Model samochodu powstał w Viewpoint Datalabs. 2. Wybierz polecenie Create/Particles/PArray i utwórz system, przeciągając myszą w oknie widokowym Front. 3. Kliknij przycisk Pick Object w rolecie Basic Parameters i zaznacz obiekt Quadpatch znajdujący się tuż pod kratką studzienki. Jako Particle Formation wybierz opcję Over Entire Surface. Ponieważ obiekt typu Plane ma tylko jedną ściankę, cząsteczki poruszają się w kierunku zgodnym ze zwrotem jego wektora normalnego. 4. W rolecie Particle Generation ustaw parametr Emit Stop na 100, Life na 60 ze zróżnicowaniem (Variation) równym 50. Wielkość cząsteczek (Particle Size) ustal na 5.0, ze zróżnicowaniem 30. 5. W rolecie Particle Type włącz opcje Standard Particles oraz Constant. 6. Otwórz edytor materiałów (wciskając klawisz M) i nadaj zaznaczonej próbce nazwę steam (para). Kliknij przycisk mapy na prawo od parametru Opacity,

Rozdział 41.  Cząsteczki i system Particle Flow

1141

po czym dwukrotnie kliknij pozycję reprezentującą typ mapy Mask, w prawej części okna Material/Map Browser. W rolecie Mask Parameters kliknij przycisk Map i wybierz typ Noise. Następnie kliknij przycisk Go to Parent, by powrócić do mapy Mask, kliknij przycisk Mask i wybierz typ Gradient. Po wybraniu materiału Gradient przeciągnij próbkę czarnego koloru na próbkę koloru białego, zaznacz opcję Swap w oknie dialogowym, które się pojawi, i włącz opcję Radial. Na koniec przeciągnij próbkę materiału steam na ikonę PArray. Na rysunku 41.16 przedstawiono wygląd studzienki w 60. klatce animacji. Rysunek 41.16. Emiterem systemu cząsteczkowego jest obiekt Plane, umieszczony pod kratką studzienki

System cząsteczkowy PCloud System PCloud utrzymuje wszystkie emitowane cząsteczki wewnątrz wskazanej bryły. Bryłą tą może być prostopadłościan, kula, walec lub inny wskazany obiekt. Ikona emitera ma kształt taki jak zaznaczona bryła. System PCloud korzysta z tych samych rolet, co Super Spray, z niewielkimi różnicami. Opcje dostępne w rolecie Basic Parameters są specyficzne dla tego systemu. Jako emitery może on wykorzystywać samodzielne obiekty siatkowe. Do wybierania takich obiektów służy przycisk Pick Object. W tej samej rolecie znajdziesz opcje emiterów o kształtach geometrycznych — prostopadłościan (Box), sfera (Sphere) oraz walec (Cylinder). Wymiary tego typu emiterów reguluje się za pomocą kontrolek Rad/Len, Width oraz Height. Kolejne, poza wymienionymi wyżej różnicami w rolecie Basic Parameters, można znaleźć wśród opcji Particle Motion w rolecie Particle Generation. Ruchowi cząsteczek można przypisać kierunek losowy (Random Direction), zgodny ze wskazanym wektorem (Direction Vector) lub też wzdłuż osi Z obiektu odniesienia (Reference Object). System PCloud oferuje tylko dwie gotowe konfiguracje dostępne w rolecie Load/Save Presets — Cloud/Smoke oraz Default.

1142

Część X  Animacja dynamiczna

Przypisywanie map systemom cząsteczkowym Przypisywanie map materiałów cząsteczkom jest jedną z metod tworzenia szczegółów ich powierzchni, która nie powoduje wzrostu stopnia złożoności geometrii. Systemom cząsteczkowym można przypisywać wszystkie materiały i mapy dostępne w edytorze materiałów. Aby nałożyć materiał lub mapę, należy zaznaczyć ikonę systemu i kliknąć przycisk Assign Material to Selection w oknie Material Editor. Więcej szczegółowych informacji na temat stosowania map znajdziesz w rozdziale 17., „Określanie właściwości materiałów przy użyciu map”.

Dwa typy map są w sposób szczególny przystosowane do współpracy z systemami cząsteczkowymi, są to Particle Age oraz Particle MBlur. Znajdziesz je w oknie Material/Map Browser, które możesz otworzyć za pomocą polecenia Rendering/Material Map Browser albo z poziomu edytora materiałów, klikając przycisk Get Material.

Stosowanie mapy Particle Age Parametrami mapy Particle Age są trzy kolory, które mogą być nakładane na cząsteczki wraz z upływem czasu, w zależności od ustawienia Life. Każdy kolor ma własną próbkę, przycisk mapowania, pole opcji Enable (włącz) oraz parametr Age (wiek), decydujący o tym, kiedy dany kolor ma być nałożony. Mapa ta stosowana jest zwykle jako mapa kanału Diffuse, ponieważ oddziałuje na kolory.

Stosowanie mapy Particle MBlur Mapa MBlur zmienia stopień krycia przedniej i bocznych powierzchni cząsteczek, w zależności od parametrów koloru i ostrości określonych w rolecie. Daje to efekt rozmycia obrazu wywołanego ruchem cząstki, o ile mapa zastosowana została dla parametru krycia (Opacity). Mapa MBlur nie współpracuje z fragmentami obiektów Constant, Facing, MetaParticles i PArray.

Ćwiczenie: Ogień wydobywający się z silników odrzutowca Mapy Particle Age i MBlur doskonale się sprawdzają, zmieniając stopień krycia oraz kolor cząsteczek w czasie, np. w symulacji efektu ognia wydobywającego się z silników odrzutowych. Aby utworzyć efekt ognia wylatującego z silników odrzutowca, wykonaj następujące czynności. 1. Otwórz plik Jet Airplane flames.max, znajdujący się w folderze Chap 41 na płycie dołączonej do książki.

Rozdział 41.  Cząsteczki i system Particle Flow

1143

Plik zawiera model odrzutowca A-10, opracowany przez Viewpoint Datalabs. 2. Wybierz polecenie Create/Particles/Super Spray i w oknie widokowym utwórz ikonę systemu cząsteczkowego. Obróć i ustaw ikonę emitera tak, by punkt emisji cząstek znajdował się u wylotu dyszy jednego z silników. Wektor kierunkowy powinien być skierowany w tył. 3. Otwórz panel Modify i w rolecie Basic Parameters ustaw wartość Off Axis Spread na 20, zaś Off Plane Spread na 90. Ustawienia te skupią smugę ognia wylatującego z dyszy. 4. W rolecie Particle Generation ustaw parametr Emit Stop na 100, Life na 30, a Particle Size na 5.0. 5. Przejdź do rolety Particle Type, wybierz opcję Standard Particles oraz typ Sphere. 6. Wciśnięciem klawisza M otwórz edytor materiałów i zaznacz pierwsze pole próbki. Nadaj materiałowi nazwę Jet’s Exhaust (wydech odrzutowca) i kliknij przycisk mapy po prawej stronie koloru Diffuse. 7. W oknie Material/Map Browser, które się otworzy, wybierz mapę Particle Age. W rolecie Particle Age Parameters ustaw ciemnoczerwony, ciemnożółty oraz czarny jako kolory dla „wieku” cząsteczek w klatkach 0, 50. i 100. Należy użyć tu ciemniejszych barw, albowiem scena będzie oświetlana. 8. Kliknij przycisk Go to Parent, by na powrót przejść do materiału Jet’s Exhaust, a następnie kliknij przycisk mapy z prawej strony pola Opacity. Wybierz mapę Particle MBlur. 9. W rolecie Particle MBlur Parameters wybierz kolor biały jako Color #1 i czarny jako Color #2, ustawiając parametr Sharpness na 0.1. Następnie przeciągnij próbkę materiału na ikonę systemu cząsteczkowego (jeśli ikona emitera pozostaje zaznaczona, możesz użyć przycisku Assign Material to Selection). 10. Wciśnij klawisz Shift i w oknie widokowym Front przeciągnij ikonę Super Spray, umieszczając klon w dyszy drugiego silnika. Na rysunku 41.17 możesz obejrzeć gotowy model odrzutowca, w 30. klatce animacji.

Sterowanie cząsteczkami w systemie Particle Flow Systemy cząsteczkowe, takie jak Super Spray, znakomicie spisują się w wielu sytuacjach, ale ogólnie są mało elastyczne. Każdy z nich ma mnóstwo parametrów, ale po ich ustawieniu tracimy kontrolę nad ruchem wyemitowanych cząsteczek. Natomiast system Particle Flow jest sterowany zdarzeniami i ciągle sprawdza, czy ruch cząsteczek odpowiada określonym kryteriom. To daje możliwość programowania zachowań cząsteczek w reakcji na pewne zdarzenia, czego w żaden sposób nie można uzyskać w innych systemach.

1144

Część X  Animacja dynamiczna

Rysunek 41.17. Realistyczne płomienie z silników odrzutowca utworzone dzięki zastosowaniu map Particle Age i MBlur

Pozycja Particle Flow Source dostępna w podmenu Create/Particles jest czymś więcej niż tylko kolejnym systemem cząsteczkowym — to całkowicie nowy interfejs, który pomoże Ci sterować cząsteczkami w ciągu całego ich życia. Służy do tego okno Particle View, w którym można wizualnie programować przepływ cząsteczek.

Okno Particle View Okno Particle View, pokazane na rysunku 41.18, można otworzyć za pomocą przycisku Particle View w rolecie Setup, po zaznaczeniu ikony Particle Flow Source albo też wciskając klawisz 6. Wciśnięcie tego klawisza powoduje otwarcie okna Particle View nawet wówczas, gdy ikona nie jest zaznaczona. Okno Particle View podzielone jest na cztery panele. Panel zdarzeń (Event) wyświetla wszystkie węzły zdarzeń. Węzły te zawierają pojedyncze akcje, a każdy może być powiązany z następnym. Powiązania te definiują przepływ. Panel Parameters, zajmujący prawą górną część okna, wyświetla w roletach parametry akcji wyselekcjonowanych w panelu zdarzeń. Z kolei panel magazynowy (Depot), widoczny poniżej panelu zdarzeń, prezentuje wykaz wszystkich akcji, jakie można przypisać cząsteczkom. W prawej dolnej części okna znajduje się panel Description. W nim wyświetlany jest opis akcji zaznaczonej w panelu Depot. Wszystkie panele, oprócz Event, można ukryć przy użyciu menu Display. W prawym dolnym narożniku okna widoczne są ikony narzędzi wyświetlania. Narzędzia te można wykorzystać podczas nawigowania w panelu Event. Są to narzędzia do przesuwania widoku (Pan), powiększania (Zoom), powiększania wybranych fragmentów (Zoom Region), dostosowywania powiększania do zawartości panelu (Zoom Extens) oraz wyłączenia powiększenia (No Zoom). Kliknięcie ostatniego przycisku wyłącza powiększenie i przywraca węzłom normalną wielkość. Widok w panelu Event możesz przesuwać za pomocą rolki myszy.

Rozdział 41.  Cząsteczki i system Particle Flow

1145

Rysunek 41.18. Okno Particle View pozwala wizualnie programować przepływ cząsteczek

Przepływ standardowy Po utworzeniu ikony Particle Flow Source i pierwszym otwarciu okna Particle View w panelu Event pojawiają się dwa węzły. Tworzą one tzw. przepływ standardowy (Standard Flow) złożony ze źródła przepływu cząsteczek (Particle Flow Source) i połączonego z nim węzła zdarzenia zawierającego akcję narodzin (Birth). Akcja Birth definiuje parametry rozpoczęcia i zatrzymania emisji cząsteczek, a także ich ilość lub szybkość emitowania. Możesz zmieniać te wartości, zaznaczając zdarzenie Birth na panelu Event i modyfikując parametry w rolecie, która się pojawi w panelu Parameters. W tym domyślnym węźle zdarzenia występują też inne akcje domyślne, takie jak Position Icon, Speed, Rotation, Shape oraz Display. Każde z tych zdarzeń ma parametry, które możesz zmieniać w panelu Parameters po zaznaczeniu akcji. Wszystkie zdarzenia i akcje oznaczane są numerami (np. 01), widocznymi obok ich nazw. Każde nowe zdarzenie bądź akcja przyjmuje kolejny, wyższy numer. Zdarzenia można także przemianowywać, klikając dotychczasową nazwę prawym przyciskiem myszy i wybierając z menu podręcznego polecenie Rename. Nowe przepływy standardowe można tworzyć za pomocą polecenia Edit/New/Particle System/Standard Flow. Polecenie Empty Flow tworzy tylko węzeł PF Source. Gdy w oknie Particle View tworzony jest nowy przepływ Standard Flow (lub Empty Flow), wówczas w oknach widokowych pojawia się nowa ikona PF Source. A jeśli ikona PF Source w oknie widokowym zostanie usunięta, wtedy w oknie Particle View usuwane zostają także powiązane z nią węzły zdarzeń.

1146

Część X  Animacja dynamiczna

Akcje Panel Depot zawiera wszystkie akcje, które mogą wpływać na cząsteczki. Akcje te można podzielić na kategorie: Birth (zielone ikony), Operator (ikony niebieskie), Test (ikony żółte) oraz Miscellaneous (także niebieskie). Kategorie te są dostępne także z poziomu podmenu Edit/New. Nowe akcje można przeciągać z panelu Depot do Event. Podczas przeciągania akcji na istniejący węzeł, w miejscu, w którym zostanie ona umieszczona po zwolnieniu przycisku myszy, widoczna jest niebieska linia. Akcje oddziałują na cząsteczki w takiej kolejności, w jakiej zostały ustawione w węźle zdarzenia, od góry do dołu. Jeżeli przeciągniesz akcję z panelu Depot na istniejącą akcję w panelu Event, wówczas nazwa tej drugiej zostanie przekreślona czerwoną linią. Oznacza to, że zwolnienie przycisku myszy w tym miejscu spowoduje zamianę istniejącej akcji na nową. Akcje można też przesuwać na zewnątrz węzłów zdarzeń, tworząc nowe węzły, a następnie wiążąc je z określonymi akcjami, które spełniają zadane warunki. Jeśli np. istnieje zbiór cząsteczek o losowej szybkości poruszania się, to za pomocą akcji z grupy Test możesz sprawdzić, które z nich przemieszczają się z prędkością większą niż zadana, po czym przypisać tymże cząsteczkom zdarzenie zmiany rozmiarów poprzez utworzenie nowego węzła. Kliknięcie ikony akcji dezaktywuje ją.

Ćwiczenie: Symulacja lawiny Jedną z rzeczy, na które należy zwrócić uwagę, korzystając z systemu cząsteczkowego, jest to, że cząsteczki mogą się rozmnażać tak szybko, iż będą w stanie doprowadzić każdy system do utraty możliwości działania. Funkcje z grupy Spawn są pod tym względem jednymi z najniebezpieczniejszych. W ćwiczeniu tym użyjesz akcji Collision Spawn, tworząc symulację lawiny śnieżnej. Jednak będziesz musiał pamiętać o kontrolowaniu liczby cząsteczek pochodnych. Aby utworzyć symulację lawiny przy użyciu Particle Flow, wykonaj następujące czynności. 1. Otwórz plik Avalanche.max zapisany w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera model stoku wzgórza pokrytego śniegiem. 2. Wybierz polecenie Create/Space Warps/Deflector/SOmniFlect i przeciągnij wskaźnikiem myszy w oknie widokowym Top, tworząc sferyczny deflektor, pokrywający całe wzgórze. Kliknij przycisk Select and Scale i w oknie widokowym Left przeskaluj obiekt SOmniFlect w osi Z tak, by objętość sfery była zbliżona do wzgórza. Następnie obróć obiekt SOmniFlect, ustawiając go równolegle do wzgórza. Zadaniem tego reflektora będzie utrzymanie cząsteczek śniegu na powierzchni wzgórza. 3. Wybierz polecenie Create/Particles/Particle Flow Source i, przeciągając myszą w oknie widokowym Top, utwórz ikonę emitera. Przeskaluj i obróć ją tak, aby znalazła się wewnątrz obiektu SOmniFlect u szczytu wzgórza i skieruj w dół.

Rozdział 41.  Cząsteczki i system Particle Flow

1147

4. Zachowując zaznaczenie obiektu Particle Flow Source, kliknij przycisk Particle View w panelu Modify (lub wciśnij klawisz 6), aby otworzyć okno Particle View. W węźle Event 01 zaznacz akcję Shape 01 i w rolecie, która się pojawi po prawej stronie, wybierz sferę jako kształt 3D. Parametr Size zmień na 5.0. Zaznacz akcję Speed 01 i ustaw wartość Speed na 100. Kliknij kolorową kropkę widoczną z prawej strony akcji Display 01 i jako nowy kolor wybierz biały. 5. Zaznacz akcję Collision Spawn w panelu Depot i przeciągnij ją poniżej akcji Display 01. Następnie zaznacz tę akcję w panelu Event, kliknij przycisk By List w panelu Parameters i wybierz obiekt SOmniFlect. Następnie wyłącz opcje Test True for/Parent Particles oraz Spawn Particles, włącz opcję Spawn On Each Collision i ustaw wartość Offspring na 10. Na rysunku 41.19 przedstawiono lawinę kul śnieżnych, opadającą z ośnieżonego wzgórza. Rysunek 41.19. Efekt lawiny można uzyskać za pomocą akcji Collision Spawn oraz odpowiednio umieszczonego deflektora

Korzystanie z obiektów pomocniczych systemu Particle Flow Kilka akcji spoza przepływu standardowego tworzy w oknach widokowych dodatkowe ikony, sterowane za pomocą parametrów tych akcji. Jeden z takich obiektów pomocniczych pojawia się po dodaniu akcji Find Target do węzła zdarzenia. Obiekt ten ma postać kuli, przyciągającej wszystkie cząsteczki w scenie. Można go animować. Akcja Speed By Icon tworzy ikonę, która wymusza ruch cząsteczek wzdłuż jej trajektorii.

Wiązanie zdarzeń Każdy nowy węzeł zdarzenia ma uchwyt wejściowy, znajdujący się w lewym górnym rogu węzła, a każda akcja typu Test ma uchwyt wyjściowy, widoczny po lewej stronie jej ikony. Widać to na rysunku 41.20. Uchwyt wyjściowy akcji testowania można powiązać metodą przeciągania z uchwytem wejściowym innego zdarzenia. Kursor ustawiony nad uchwytem zmienia kształt.

1148

Część X  Animacja dynamiczna

Rysunek 41.20. Uchwyty wyjściowe można wiązać z uchwytami wejściowymi

Po powiązaniu uchwytów wszystkie cząsteczki spełniające warunki testu są przenoszone do nowego węzła i poddawane działaniu zawartych w nim akcji.

Ćwiczenie: Ćmy lecące ku światłu Inną, wspaniałą funkcją interfejsu Particle Flow jest to, że umożliwia sterowanie ruchem cząsteczek w taki sposób, by podążały za obiektem docelowym. W ćwiczeniu użyjemy akcji Find Target, która sprawi, że ćmy będą leciały do światła lampy. Aby przy użyciu Particle Flow uzyskać opisany wyżej efekt, wykonaj, co następuje. 1. Otwórz plik Moths chasing light.max, zapisany w folderze Chap 41 na płycie dołączonej do książki. Plik ten zawiera prosty model ulicznej lampy (utworzony z obiektów parametrycznych) zawieszonej na łańcuchu i bujającej się na wietrze. W pliku, oprócz modelu lampy, znajduje się też pojedynczy model ćmy. 2. Wybierz polecenie Create/Particles/Particle Flow Source i utwórz ikonę emitera w oknie widokowym Front. Kliknij przycisk Particle View, aby otworzyć interfejs Particle View. 3. W węźle Event 01 zaznacz akcję Birth 01 i ustaw wartość Emit Stop na 100, a Amount na 50. 4. Przeciągnij ikonę akcji Postion Object z panelu Depot i umieść ją na ikonie akcji Position Icon, zastępując tę ostatnią. Zaznacz nowo powstałą akcję Position Object, kliknij przycisk By List poniżej pola listy Emitter Objects w panelu Parameters, a następnie zaznacz obiekt Sphere 01. Obiekt ten otacza lampę i stanowi źródło nowych ciem. Przypisany mu materiał ma współczynnik krycia równy 0, w rezultacie obiekt jest niewidoczny w scenie. 5. Zaznacz akcję Rotation w węźle Event 01 i zmień opcję Orientation Matrix na Speed Space Follow. Spowoduje to, że ćmy będą krążyły wokół kołyszącej się lampy.

Rozdział 41.  Cząsteczki i system Particle Flow

1149

6. Przeciągnij ikonę akcji Shape Instance z panelu Depot i ustaw ją na ikonie akcji Shape, dokonując zamiany obu akcji. Zaznacz nowo powstałą akcję Shape Instance, kliknij przycisk Particle Geometry Object w panelu Parameters i zaznacz obiekt ćmy w oknie widokowym. 7. Przeciągnij ikonę akcji Find Target z panelu Depot i umieść ją u dołu węzła Event 01. Tym sposobem we wszystkich oknach widokowych pojawi się nowa ikona Find Target. Zaznacz ją i przesuń w miejsce, w którym widoczny jest płomień lampy. Wybierz polecenie Group/Attach i kliknij obiekt lampy, dołączając ikonę Find Target do jej grupy. Dzięki temu cel będzie przesuwał się wraz lampą. Włącz opcję Use Cruise Speed, po czym ustaw parametr Speed na 1000, z odchyleniem (Variation) 50, Accel Limit zmień na 5000, a Ease na 50%. Musisz też włączyć opcję Follow Target Animation. 8. Przeciągnij ikonę Material Dynamic z panelu Depot na panel Event, po czym umieść ją na zewnątrz węzła Event 01, tworząc nowy węzeł, Event 02. Kliknij przycisk Assign Material w panelu Parameters, a następnie przycisk materiału. W oknie przeglądarki materiałów i map wybierz materiał Flash (włącz też opcję wyświetlania próbki materiału w edytorze materiałów). Następnie powiąż węzeł Event01 z węzłem Event02. 9. Przeciągnij ikonę akcji Age Test z panelu Depot i umieść ją poniżej akcji Material Dynamic. Następnie wybierz Event Age z rozwijanej listy na panelu Parameters i ustaw wartość Test Value na 2. 10. Na koniec przeciągnij ikonę akcji Delete z panelu Depot, umieszczając ją poza pozostałymi zdarzeniami. Następnie połącz Event 02 z nowym węzłem zdarzenia i na panelu Parameters włącz opcję Selected Particles Only. Na rysunku 41.21widać kilka ciem krążących wokół kołyszącej się lampy. Rysunek 41.21. Wszystkie ćmy w tej scenie są cząsteczkami podążającymi za celem, który połączony został z obiektem lampy

1150

Część X  Animacja dynamiczna

Akcje testowe Każda akcja testująca może zwrócić wartość True (prawda) lub False (fałsz), jeśli klikniesz z lewej (dla prawdy) lub z prawej (dla fałszu) strony ikony akcji testowej w interfejsie Particle View. W ten sposób możesz sprawdzać poprawność przepływu cząsteczek. Testy ustawione na True oznaczone są ikoną w kolorze zielonym, a ustawione na False — ikoną czerwoną.

Ćwiczenie: Ostrzał uciekającego statku kosmicznego No cóż, czas na scenę z kosmosu, a każdy wie, ile rozmaitych cząsteczek unosi się w przestrzeni kosmicznej — gwiazdy, asteroidy, komety itd. To wspaniałe pole do popisu w dziedzinie animacji. Tworząc tę scenę, użyjemy funkcji Particle Flow, żeby zasymulować laserowy ostrzał uciekającego statku kosmicznego. Aby za pomocą Particle Flow opracować symulację ostrzału laserowego, wykonaj następujące czynności. 1. Otwórz plik Fleeing spaceship.max, który znajdziesz w folderze Chap 41 na płycie dołączonej do książki. Plik zawiera model statku kosmicznego przygotowany przez Viewpoint Datalabs, z animacją lotu. 2. Wybierz polecenie Create/Particles/Particle Flow Source i utwórz ikonę emitera w oknie widokowym Front. Kliknij przycisk Select and Move (klawisz W), po czym przesuń ikonę emitera, wyrównując ją względem wylotu lufy działa laserowego. Kliknij przycisk Select and Link i przeciągnij myszą od ikony emitera do obiektu działa, aby ustanowić między nimi połączenie. Od tej chwili emiter będzie się poruszał wraz z animowanym działem. 3. Zaznacz ikonę Particle Flow Source, otwórz panel Modify i kliknij przycisk Particle View w rolecie Setup (albo wciśnij klawisz 6), by otworzyć interfejs Particle View. 4. Zaznacz akcję Birth 03 w węźle Event 01; w panelu Parameters ustaw wartość Emit Stop na 100, a Amount na 50. Sprawi to, że błysk lasera będzie generowany co drugą klatkę. Kliknij niebieską kropkę widoczną w prawym dolnym rogu węzła Event i z selektora kolorów, który się pojawi, wybierz czerwień. 5. Wybierz polecenie Create/Standard Primitives/Cylinder i w oknie widokowym Front utwórz obiekt walca. Kliknij przycisk Affect Pivot Only w panelu Hierarchy i obróć środek transformacji obiektu Cylinder tak, by jego oś Y skierowana była w stronę statku kosmicznego. Przejdź do okna Particle View i przeciągnij ikonę akcji Shape Instance z panelu Depot na akcję Shape w węźle Event 01. Tym sposobem akcja Shape zostanie zastąpiona akcją Shape Instance. Kliknij przycisk Particle Geometry Object w rolecie Parameters i zaznacz obiekt Cylinder. Zaznacz akcję Rotation i usuń ją za pomocą klawisza Delete. 6. Wybierz polecenie Create/Space Waprs/Deflectors/SOmniFlect i w oknie widokowym Top utwórz sferyczny deflektor otaczający statek kosmiczny.

Rozdział 41.  Cząsteczki i system Particle Flow

1151

Kliknij przycisk Select and Non-Uniform Scale i przeskaluj deflektor w osiach X i Z w taki sposób, by dopasować jego wielkość do wymiarów statku. Następnie połącz deflektor Space Warp ze statkiem kosmicznym. 7. W oknie Particle View przeciągnij ikonę akcji Collision z panelu Depot na spód węzła Event 01. Kliknij przycisk Add widoczny poniżej listy Deflectors, w rolecie Collision 01, a następnie kliknij obiekt SOmniFlect01 otaczający statek kosmiczny. 8. Przeciągnij akcję Spawn z panelu Depot do panelu Event, a następnie powiąż ją z akcją Collision, przeciągając linię od uchwytu wyjściowego Collision do uchwytu wejściowego nowego zdarzenia. W dalszej kolejności przypisz nowo tworzonym cząsteczkom kolor pomarańczowy. Zaznacz akcję Spawn 01, włącz opcję Delete Parent i ustaw parametr Offspring na 200, zaś Variation % na 20. Wartość Inherited % ustaw na 50, z odchyleniem 30. 9. Na spodzie węzła Event 02 umieść akcję Delete, włącz opcję By Particle Age, po czym ustaw Life Span na 20, a Variation na 30. Przeciągnij akcję Shape do węzła Event 02 i jako Shape wybierz Sphere o wielkości 0.5. 10. Na koniec kliknij przycisk Play, by obejrzeć utworzoną animację. Na rysunku 41.22 przedstawiono wygląd okna Particle View po zakończeniu ćwiczenia, zaś na rysunku 41.23 widoczna jest jedna z klatek animacji w oknie widokowym. Wciąż możesz zmienić wiele rzeczy, poprawiając animację, np. nałożyć efekt Glow Render Effect na rozbłyski lasera, a także zastosować materiał Particle Age o pewnym stopniu przezroczystości, co polepszy wygląd eksplozji. Rysunek 41.22. Okno Particle View prezentuje przepływ cząsteczek w animacji

Podsumowanie W rozdziale tym poznałeś systemy cząsteczkowe i dowiedziałeś się, jak z nich korzystać. Zdobyłeś wiedzę na temat wszystkich systemów, w tym Spray, Snow, Super Spray, Blizzard, PArray, PCloud i Particle Flow. Treść rozdziału stanowiły następujące tematy:

1152

Część X  Animacja dynamiczna

Rysunek 41.23. Statek kosmiczny starający się uciec przed laserowym ostrzałem 

poznanie poszczególnych systemów cząsteczkowych,



tworzenie systemu cząsteczkowego symulującego opady deszczu i śniegu,



korzystanie z systemu Super Spray,



sposób wykorzystania cząsteczek MetaParticles,



wybieranie obiektów do wykorzystania w charakterze cząsteczek i emiterów,



stosowanie systemów cząsteczkowych PArray oraz PCloud,



nakładanie map Particle Age i MBlur na cząsteczki,



sterowanie przepływem cząsteczek w systemie Particle Flow i programowanie tegoż przepływu.

W następnym rozdziale zapoznasz się z polami sił, które po umieszczeniu w scenie mogą wpływać na ruch obiektów.

Rozdział 42.

Stosowanie pól sił W tym rozdziale: 

Tworzenie pól sił i przyłączanie do nich obiektów



Różne typy pól sił



Praca z polami sił i systemami cząsteczkowymi

Pole sił (Space Warp) to termin, który brzmi jak kosmiczna nazwa rodem z filmu s.f., jednak w rzeczywistości oznacza niepodlegający renderowaniu obiekt, mogący oddziaływać na inne obiekty w określony sposób. Pola sił najprościej wyobrazić sobie jako źródła niewidzialnych sił, mogących wpływać na ruch lub kształt obiektów w scenie. Wśród różnych ich rodzajów znajdziesz pole symulujące grawitację (Gravity), wiatr (Wind) czy falowanie (Wave). Niektóre pola sił, takie jak Push czy Motor, wykorzystuje się w symulacjach dynamicznych, gdyż mogą generować siły wyrażane w jednostkach fizycznych. Jedne pola sił deformują siatkę obiektu, inne działają podobnie jak zwykłe modyfikatory. Pola sił są szczególnie przydatne w połączeniu z systemami cząsteczkowymi (Particle Systems). Ten rozdział zawiera przykłady pól sił użytych w połączeniu właśnie z systemami cząsteczkowymi.

Tworzenie pól sił i przyłączanie do nich obiektów Pola sił to specjalne obiekty mogące oddziaływać na scenę różnego rodzaju siłami. Nie są widoczne dla modułu renderującego, a żeby uruchomić ich oddziaływanie na określone obiekty, obiekty te muszą zostać przyłączone narzędziem Bind do trójwymiarowych ikon, reprezentujących pola sił w oknach widokowych. Do każdego pola sił można przyłączyć wiele różnych obiektów, a pojedynczy obiekt może być przyłączony do wielu pól sił. Pod wieloma względami pola sił są podobne do modyfikatorów, jednak modyfikatory zazwyczaj przypisujemy obiektom osobno, w ich lokalnych układach współrzędnych,

1154

Część X  Animacja dynamiczna

natomiast jedno pole sił często działa na wiele obiektów w globalnym układzie współrzędnych sceny. Z tego właśnie względu pola sił znakomicie nadają się do animowania systemów cząstek, włosów i tkanin.

Tworzenie pola sił Pola sił dostępne są z poziomu menu Create/SpaceWarps, które otwiera kategorię Space Warps (ikona przedstawiająca trzy falujące linie) w panelu Create. Z listy podkategorii możesz wybrać cztery różne rodzaje pól sił. W każdym z nich znajdziesz przyciski tworzące kilka typów pól sił. Możesz także skorzystać z poleceń znajdujących się w podmenu Create/SpaceWarps. By utworzyć pole sił, wciśnij przycisk lub wybierz polecenie z menu, a następnie kliknij i przeciągnij kursorem w oknie widokowym. W oknach widokowych wyświetlana jest przestrzenna ikona (gizmo) reprezentująca pole sił. Ikonę tę można transformować standardowymi narzędziami z głównego paska narzędziowego. Rozmiar i położenie gizma pola sił zazwyczaj ma duży wpływ na jego działanie. Dane pole oddziałuje tylko na obiekty, które zostały do niego przyłączone.

Przyłączanie obiektu do pola sił Działanie pola sił ujawnia się po przyłączeniu do niego jakiegoś obiektu, dlatego możesz np. przypisać grawitację tylko wybranym obiektom sceny. Na głównym pasku narzędzi, obok ikony Unlink, znajduje się ikona Bind to Space Warp. Po jej uaktywnieniu możesz kliknąć obiekt i przeciągnąć kursorem do gizma pola sił (możesz też zrobić na odwrót — kliknąć gizmo pola sił i przeciągnąć do obiektu). Wszystkie połączenia obiektu z polami sił wyświetlane są w stosie modyfikatorów w panelu Modify, gdzie za pomocą menu podręcznego możesz skopiować wybrane połączenie i wkleić je na listę modyfikacji innego obiektu. Niektóre pola sił można wykorzystywać tylko z wybranymi kategoriami obiektów. Gdy w panelu Create uaktywnisz przycisk z nazwą jakiegoś pola, możesz rozwinąć roletę Supports Objects of Type, na której wyświetlane są typy obiektów, jakie można poddać działaniu tego pola sił.

Różne typy pól sił W naturze występuje wiele oddziaływań fizycznych pochodzących z różnych źródeł. Podobnie jest w Maksie — używając różnych typów pól sił, możesz definiować różnego rodzaju efekty. Pola sił Maksa, ze względu na ich różne funkcje, podzielono na kilka kategorii: Forces, Deflectors, Geometric/Deformable, Modifier-Based i Particles & Dynamics. Podkategoria Particles & Dynamics zawiera przycisk Vector Field, który jest używany z tłumami postaci typu Biped, omawianymi w dodatku J, „Tworzenie tłumów”.

Rozdział 42.  Stosowanie pól sił

1155

Pola sił z kategorii Forces Kategoria Forces (siły) zawiera pola sił przeznaczone do animacji systemów cząstek i symulacji oddziaływań fizycznych występujących w rzeczywistym świecie. Do pól sił w tej podkategorii zaliczają się: Motor, Vortex, Path Follow, Displace, Wind, Push, Drag, PBomb oraz Gravity. Na rysunku 42.1 zaprezentowano gizma wymienionych pól sił.

Rysunek 42.1. Pola sił z kategorii Forces: Motor, Vortex, Path Follow, Displace, Wind, Push, Drag, PBomb oraz Gravity

Motor Pole sił Motor (silnik) generuje moment obrotowy, czyli — innymi słowy — siłę obracającą obiekty. Wartość momentu obrotowego (Basic Torque) może być zdefiniowana w następujących jednostkach: niuton razy metr (N-m), funt razy stopa (Lb-ft) lub funt razy cal (Lb-in). Parametry On Time i Off Time definiują odpowiednie klatki animacji, w których siła ma rozpocząć i zakończyć działanie. Wiele pól sił ma ten sam zestaw parametrów. Opcja sprzężenia zwrotnego (Feedback On) powoduje, że siła zmienia się, gdy zmienia się prędkość obiektu. Gdy opcja ta jest wyłączona, siła pozostaje niezmienna. Możesz także ustawić docelową prędkość obrotową (Target Revs) w obrotach na godzinę (RPH), obrotach na minutę (RPM) lub obrotach na sekundę (RPS), która odpowiada prędkości, przy jakiej siła oddziaływania zaczyna się zmieniać, gdy opcja Feedback On jest włączona. Opcja Reversible zmienia kierunek działania siły, gdy wartość Target Revs została osiągnięta, zaś wartość Gain (przyrost) odpowiada za zmianę szybkości dostosowania siły. Siła generowana przez pole Motor może być także regulowana za pomocą parametrów z grupy Periodic Variations, które powodują zwiększanie i zmniejszanie siły w regularnych odstępach czasu. Możesz zdefiniować dwa różne zestawy parametrów Periodic Variations: Period 1, Amplitude 1, Phase 1 oraz Period 2, Amplitude 2, Phase 2, z których każdy odpowiada kolejno okresowi występowania zmian, ich amplitudzie i przesunięciu fazowemu. Dla systemów cząsteczkowych można włączyć i ustawić wartość Range (zasięg). Pole typu Motor nie wpływa na cząsteczki znajdujące się poza wyznaczonym w ten sposób zasięgiem. Na dole rolety Parameters możesz ustawić rozmiar gizma (Icon Size). Ten sam parametr znajdziesz we wszystkich rodzajach pól sił.

1156

Część X  Animacja dynamiczna

Na rysunku 42.2 pokazano pole sił typu Motor wprawiające cząsteczki systemu Super Spray w ruch wirowy, zgodnie ze strzałką gizma.

Rysunek 42.2. Pole sił typu Motor może być wykorzystywane do wprawiania obiektów oraz cząsteczek w ruch obrotowy

Push Pole sił Push (popychacz) posiada ikonę w kształcie dwóch współosiowych cylindrów i oddziałuje na obiekty siłą wzdłuż osi łączącej większy cylinder z mniejszym. W rolecie Parameters możesz zdefiniować wartość siły (Strength) w niutonach (Newtons) lub w funtach (Pounds). Opcja Feedback On powoduje zmianę siły w odpowiedzi na zmiany prędkości obiektu, z tą różnicą, że w odróżnieniu od pola Motor parametr prędkości docelowej nosi nazwę Target Speed, a nie Target Revolution. Siła pchająca może zmieniać się periodycznie w oparciu o parametry z pola Periodic Variations, które działają identycznie z parametrami pola siły typu Motor. Na rysunku 42.3 pokazano, jak pole sił Push zakrzywia tory ruchu cząsteczek emitowanych przez system Super Spray.

Vortex Pola siły typu Vortex (wir) można używać w przypadku systemów cząsteczkowych, by zmusić cząsteczki do poruszania się ruchem wirowym po spirali. Używając ustawień w polu Timing, określamy zakres klatek animacji, w których wystąpi ten efekt.

Rozdział 42.  Stosowanie pól sił

1157

Rysunek 42.3. Pole Push pozwala precyzyjnie sterować siłą oddziałującą na cząstki i obiekty dynamiczne

Parametrami Taper Length i Taper definiujesz kształt wiru. Niskie wartości parametru Taper Length zwijają spiralę ciaśniej, zaś wartości Taper mogą się mieścić w przedziale od 1.0 do 4.0 i kontrolują proporcje między średnicą wiru u góry i dołu. Parametr Axial Drop (spadek osiowy) określa odległość pomiędzy sąsiadującymi ze sobą zwojami spirali. Wartość Dumping (tłumienie) wpływa na działanie parametru Axial Drop. Parametr Orbital Speed (prędkość orbitalna) definiuje, jak szybko cząsteczki obracają się przy oddalaniu od środka wiru. Wartość Radial Pull (rozciągnięcie promieniowe) to odległość od linii wyznaczającej kolejne zwoje spirali, na jaką mogą oddalić się wirujące cząsteczki. Jeżeli opcja nieograniczonego zasięgu (Unlimited Range) jest wyłączona, parametry Range (zakres) i Falloff (zanikanie) określają zasięg oddziaływania wymienionych wielkości. Możesz także zdecydować, czy spirala obraca się w kierunku zgodnym z ruchem wskazówek zegara (CW), czy w przeciwnym (CCW). Rysunek 42.4 ilustruje pole siły typu Vortex powiązane z systemem cząsteczkowym.

Drag Innym powszechnym typem oddziaływania, które można symulować za pomocą pól sił, jest siła ciągu. Pole typu Drag może działać liniowo (Linear), sferycznie (Spherical) albo cylindrycznie (Cylindrical). To pole sił powoduje zwolnienie prędkości cząsteczek np. w sytuacji, gdy symulujemy opór powodowany przez wiatr lub lepkość. Parametrami Time On i Time Off określasz zakres klatek animacji, w którym zachodzi oddziaływanie tej siły.

1158

Część X  Animacja dynamiczna

Rysunek 42.4. Za pomocą pola sił Vortex możesz wprawić cząsteczki w ruch wirowy po spirali

Możesz ustawić ciąg wzdłuż wybranej osi (dla oddziaływania typu Linear) albo promieniście (Radial), stycznie (Tangential) lub osiowo (Axial) dla oddziaływania typu Spherical i Cylindrical. Jeżeli nie wybierzesz opcji nieograniczonego zasięgu (Unlimited Range), wartości Range i Falloff są dostępne. Rysunek 42.5 ilustruje pole siły typu Drag otaczające system cząsteczkowy. Zauważ, jak cząsteczki zwalniają i rozsuwają się na boki przy przejściu przez to pole.

PBomb Pole sił PBomb (Particle Bomb — bomba cząsteczkowa) opracowano specjalnie do wykorzystania z systemem cząstek PArray. Jeżeli chcesz utworzyć efekt eksplozji obiektu, używając pola sił PBomb, uczyń z obiektu emiter cząstek PArray i przyłącz do niego pole sił PBomb. Więcej informacji na temat systemu cząsteczkowego PArray możesz znaleźć w rozdziale 41., „Cząsteczki i system Particle Flow”.

W rolecie parametrów podstawowych (Basic Parameters) dostępne są trzy opcje dotyczące kształtu fali uderzeniowej po eksplozji: może ona rozchodzić się sferycznie (Spherical), cylindrycznie (Cylindrical) lub prostopadle do płaszczyzny (Planar). Procentowy parametr Chaos określa zróżnicowanie sił oddziałujących na poszczególne cząstki po eksplozji.

Rozdział 42.  Stosowanie pól sił

1159

Rysunek 42.5. Za pomocą pola sił typu Drag możesz spowolnić ruch cząsteczek

W rolecie parametrów eksplozji (Explosion Parameters) parametr Start Time określa klatkę animacji, w której następuje wybuch, natomiast parametr Duration definiuje czas, w jakim siła eksplozji oddziałuje na cząstki. Samą wartość siły wybuchu ustalamy parametrem Strength. Zasięg (Range) eksplozji określa wielkość obszaru, do którego dociera fala uderzeniowa. Mierzony jest on względem środka ikony pola sił PBomb. Jeżeli włączysz opcję Unlimited Range, parametr Range jest nieaktywny. Opcje Linear i Exponential zmieniają sposób tłumienia siły eksplozji — może ona zanikać liniowo (Linear) lub wykładniczo (Exponential). Opcja Range Indicator włącza wskaźnik ilustrujący zasięg wybuchu. Na rysunku 42.6 pokazano prostopadłościan wykorzystany jako emiter cząstek systemu PArray. Pole PBomb zostało przyłączone do systemu PArray, a nie do obiektu. Prędkość ruchu odłamków (parametr Speed) została ustalona na 0. Typ cząstek w systemie PArray wybrano jako fragmenty geometrii obiektu (roleta Particle Type, opcja Fragments). Zwróć uwagę na to, że ikona systemu PBomb wyznacza centrum wybuchu.

Path Follow Pole sił Path Follow przemieszcza cząsteczki wzdłuż trajektorii określonej przez splajn. W rolecie Basic Parameters tego pola znajduje się przycisk Pick Shape Object, po jego wciśnięciu należy zaznaczyć splajn mający stanowić ścieżkę ruchu dla cząsteczek. Możesz też ustalić pewien zasięg (Range), poza którym pole sił nie będzie miało wpływu na cząsteczki, lub włączyć opcję Unlimited Range dla nieograniczonego zasięgu. Zasięg do cząsteczki mierzony jest od splajnu, a nie od ikony pola sił.

1160

Część X  Animacja dynamiczna

Rysunek 42.6. Pole sił PBomb w połączeniu z systemem cząstek PArray pozwala tworzyć efekt eksplozji Pole sił typu Path Follow jest podobne do ogranicznika Path Constraint, który jest omawiany w rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

W sekcji Motion Timing parametr Start Frame określa klatkę animacji, w której cząsteczki zaczynają poruszać się po ścieżce. Parametr Travel Time to czas potrzebny cząsteczkom na przejście przez całą ścieżkę (im krótszy jest ten czas, tym szybciej poruszają się cząsteczki), natomiast w polu Last Frame ustalamy, w której klatce animacji cząsteczki odłączają się od ścieżki. Prędkość poszczególnych cząsteczek może być zróżnicowana, jeśli zwiększysz wartość parametru Variation. Nieco niżej w rolecie Basic Parameters znajduje się sekcja Particle Motion z dwiema opcjami sterującymi ruchem cząsteczek wzdłuż ścieżki: Along Offset Splines i Along Parallel Splines. Jeśli wybierzesz pierwszą z nich, tor ruchu cząsteczek będzie się zmieniał, w zależności od odległości emitera cząsteczek od ścieżki ruchu. W przypadku opcji Along Parallel Splines cząsteczki poruszają się po ścieżce identycznej z wybranym splajnem. Przy włączonej opcji Constant Speed wszystkie cząsteczki poruszają się z tą samą prędkością. Parametr Stream Taper w sekcji Particle Motion pozwala oddalać lub przybliżać cząstki do ścieżki w czasie trwania animacji. Możliwy jest tu wybór jednej z trzech opcji: Converge (zbieżnie), Diverge (rozbieżnie) lub Both (dwojako). Opcja Converge powoduje zbliżanie cząsteczek do ścieżki, opcja Diverge odchyla tor ruchu cząsteczek od ścieżki, natomiast opcja Both sprawia, że część cząsteczek zbliża się do ścieżki, a część oddala. Jeżeli zwiększysz wartość parametru Stream Swirl (wirowanie strumienia), cząsteczki zaczną poruszać

Rozdział 42.  Stosowanie pól sił

1161

się po spirali, zataczając pętle wokół ścieżki. Ruch po spirali może odbywać się zgodnie z kierunkiem ruchu wskazówek zegara (Clockwise), przeciwnie do ruchu wskazówek zegara (Counterclockwise) lub w obu kierunkach (Bidirectional). Parametr Seed inicjuje generator liczb pseudolosowych, wpływając na zachowanie strumienia cząsteczek. Na rysunku 42.7 widać pole sił Path Follow, do którego przyłączono system cząstek Super Spray. Jako ścieżkę ruchu wybrano splajn typu Helix, czyli spiralę.

Rysunek 42.7. Pole sił Path Follow zmusza cząsteczki systemu Super Spray do ruchu wzdłuż splajnu typu Helix

Gravity Pole sił Gravity pozwala symulować siłę grawitacji. Obiekty poddane działaniu tego pola przyspieszają w kierunku zgodnym z orientacją ikony pola, podobnie jak w przypadku pola Wind. W rolecie Parameters znajdują się parametry Strength i Decay — pierwszy z nich definiuje siłę grawitacji, drugi określa zasięg jej oddziaływania. Źródło pola może mieć kształt płaski (Planar) lub sferyczny (Spherical). Wskaźniki zasięgu (Range Indicators) mogą być wyświetlane przy niezerowej wartości parametru Decay (zanik). Informują one o tym, w których punktach przestrzeni siła zmalała do połowy swej maksymalnej wartości.

Wind Pole sił Wind powoduje przyspieszanie ruchu obiektów. Roleta Parameters zawiera parametry Strength oraz Decay. Dodatkowe opcje sprawiają, że grawitacja jest planarna lub sferyczna. W sekcji Turbulence określa się siłę turbulencji (zaburzenia ruchu), natomiast

1162

Część X  Animacja dynamiczna

parametrem Frequency ustalamy, jak szybko się ona zmienia. Operując parametrem Scale, możesz zmienić zasięg turbulencji. Możesz włączyć wskaźniki zasięgu (Range Indicators) działające identycznie z tymi w polu Gravity. Na rysunku 42.8 widać, jak pole sił Wind oddziałuje na cząsteczki emitowane przez system cząstek Super Spray.

Rysunek 42.8. Pole sił Wind może wprawiać w ruch cząsteczki lub obiekty dynamiczne

Displace Pole sił Displace (przemieszczenie) odpycha obiekty lub cząsteczki z określoną siłą. Oprócz sterowania ruchem cząsteczek, może służyć do odkształcania siatek geometrycznych. Siłę oddziaływania definiujemy parametrami Strength i Decay lub poprzez poziomy jasności pikseli w mapie bitowej (w skali szarości) przypisanej polu sił. Parametr Strength określa odległość, na jaką zostają odepchnięte lub przyciągnięte wierzchołki siatki i może on przyjmować wartości zarówno dodatnie, jak i ujemne. Przy użyciu parametru Decay możemy sprawić, że siła będzie maleć wraz z oddalaniem się od ikony pola sił. Jeżeli używamy mapy bitowej do zdefiniowania odkształceń, możemy za pomocą parametru Luminance Center ustalić poziom jasności traktowany przez program jako neutralny. Wszystkie poziomy jaśniejsze od niego spowodują przyciągnięcie wierzchołków siatki do ikony pola sił, natomiast wszystkie poziomy ciemniejsze wywołają odepchnięcie wierzchołków od ikony.

Rozdział 42.  Stosowanie pól sił

1163

Przycisk Bitmap pozwala załadować mapę bitową określającą sposób odkształcenia — zwrot i wartość przesunięcia wierzchołków siatki zależeć będą od poziomów jasności mapy. Zwiększając parametr Blur, możesz rozmyć mapę odkształceń. W polu Map wybierasz opcję mapowania: płaskiego (Planar), cylindrycznego (Cylinder), sferycznego (Spherical) lub jednobiegunowego (Shrink Wrap). Możesz też zmienić wymiary ikony pola sił (Length, Width i Height) oraz liczbę powtórzeń mapy w obrębie ikony (parametry U Tile, V Tile i W Tile). Pole sił typu Displace działa podobnie jak modyfikator Displace. Modyfikator Displace jest omawiany w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Na rysunku 42.9 pokazano efekt działania dwóch pól sił Displace, jednego z dodatnią, a drugiego z ujemną wartością parametru Strength.

Rysunek 42.9. Pole sił Displace może przyciągać lub odpychać fragmenty powierzchni obiektu

Pola sił z kategorii Deflectors Do pól sił z tej kategorii zaliczają się następujące typy: POmniFlect, SOmniFlect, UOmniFlect, Deflector, SDeflector i UDeflector. Wszystkie te typy można wykorzystywać wraz z systemami cząsteczkowymi. Kategoria ta zawiera kilka różnych rodzajów deflektorów, których nazwy zaczynają się literami P, S i U. Różnica między tymi typami pól wynika z kształtu ich ikony. Deflektory typu P mają kształt płaszczyzny, deflektory typu S mają kształt sferyczny, a deflektory typu U są uniwersalne — zawierają przycisk Pick Object, którego można użyć do przypisania roli deflektora jakiemukolwiek obiektowi sceny.

1164

Część X  Animacja dynamiczna

Rysunek 42.10 ilustruje ikony każdego z tych pól sił. Wszystkie deflektory typu P są umieszczone w pierwszej kolumnie, deflektory typu S ustawiono w drugiej kolumnie, zaś deflektory typu U widnieją w trzeciej kolumnie.

Rysunek 42.10. Pola sił z kategorii Deflector: POmniFlect, SOmniFlect, UOmniFlect, UDeflector, SDeflector i Deflector Gdy w roli deflektora używasz obiektu siatkowego, liczba jego ścianek ma niebagatelne znaczenie, jako że kąt odbicia jest wyliczany w oparciu o wektory normalne tych ścianek. A zatem przy dużej ich liczbie czas obliczeń może się znacznie wydłużyć. Rozwiązaniem tego problemu może być zastosowanie w roli deflektora uproszczonej wersji danego obiektu i ukrycie jej, tak aby wyglądało, że cząsteczki odbijają się od rzeczywistego obiektu.

POmniFlect, SOmniFlect i UOmniFlect Pole sił typu POmniFlect jest deflektorem płaskim, który definiuje sposób, w jaki cząsteczki odbijają się i odskakują od innych powierzchni. Pole sił typu SOmniFlect działa w identyczny sposób, a od pola typu POmniFlect różni się wyłącznie sferycznym kształtem. Pole typu UOmniFlect może przyjmować kształt innego obiektu, jeśli użyjemy przycisku Pick Object w rolecie Parameters. Roleta Parameters zawiera też sekcję Timing z parametrami dotyczącymi czasu działania (Time On i Time Off) oraz odbić (Reflection). Różnicą pomiędzy tymi polami sił a pozostałymi polami jest możliwość zdefiniowania refrakcji (załamania ruchu) cząsteczek. Tory ruchu cząsteczek powiązanych z tym polem sił mogą się załamywać przy przebijaniu powierzchni obiektów. Wartości wprowadzone w sekcji Refraction rolety Parameters wpływają na prędkość i kierunek ruchu cząsteczek. Wartość parametru Refracts ustala, jaki procent cząsteczek, które nie zostaną odbite, ulegnie załamaniu. Parametr Pass Vel określa, jak zmieni się prędkość cząsteczki po wejściu do obiektu. Wartość równa 1,0 utrzymuje stałą prędkość dla wszystkich cząsteczek.

Rozdział 42.  Stosowanie pól sił

1165

Wartość w polu Distortion wpływa na kąt załamania — przy wartości równej 0 tor ruchu się nie zmienia, a wartość równa 100 powoduje, że cząsteczka porusza się stycznie do powierzchni uderzonego obiektu. Parametr Diffusion rozprasza cząsteczki w obrębie uderzonego obiektu. Możesz dodatkowo różnicować każdy z tych parametrów, modyfikując wartości w polach Variation. Jeśli wartość Reflects jest ustawiona na 100%, żadne cząsteczki nie ulegają załamaniu.

Możesz także określić wartości tarcia (Friction) i przenoszenia prędkości (Inherit Velocity). W sekcji Spawn Effects Only parametry Spawns (rozmnażanie) i Pass Velocity (prędkość przekazywana) kontrolują rozmnażanie się cząstek oraz ich prędkość w chwili wbijania się w obiekt. Rysunek 42.11 ilustruje każde z omawianych pól sił w powiązaniu z systemem cząsteczkowym Super Spray. Parametr Reflects dla każdego z tych pól sił jest ustawiony na 50%, a pozostałe cząsteczki są załamywane przez powierzchnię pola sił. Zauważ, że cząsteczki załamują się także po przeciwnej stronie obiektu.

Rysunek 42.11. Pola sił POmniFlect, SOmniFlect, UOmniFlect powodują odbijanie i załamywanie się cząsteczek emitowanych przez system Super Spray

Deflector, SDeflector i UDeflector Pola sił typu Deflector i SDeflector to uproszczone wersje pól sił POmniFlect i SOmniFlect. Ich parametry to Bounce, Variation, Chaos, Friction i Inherit Velocity. Pole sił typu UDeflector to uproszczona wersja pola sił typu UOmniFlect. Posiada ono przycisk Pick Object do wybierania obiektu, który będzie służył jako deflektor, i ma parametry identyczne z parametrami pola sił typu SDeflector.

1166

Część X  Animacja dynamiczna

Pola sił z kategorii Geometric/Deformable Do kategorii Geometric/Deformable zalicza się kilka pól sił służących do deformacji siatek obiektów. Noszą one następujące nazwy: FFD (Box), FFD (Cyl), Wave, Ripple, Displace, Conform i Bomb. Można je stosować do wszelkich odkształcalnych obiektów. Na rysunku 42.12 widać ikony reprezentujące te pola. Rysunek 42.12. Pola sił z kategorii Geometric/ Deformable: FFD (Box), FFD (Cyl), Wave, Ripple, Displace, Conform i Bomb

FFD (Box) i FFD (Cyl) Pola sił typu FFD (Box) i FFD (Cyl) wyświetlają kratownicę — siatkę punktów kontrolnych w formie prostopadłościanu lub walca. Możesz zaznaczać i przesuwać poszczególne punkty kontrolne kratownicy, aby odkształcać obiekt powiązany z polem sił. Deformacja ma miejsce tylko wtedy, gdy obiekt przyłączony do pola sił znajduje się w obrębie jego kratownicy. Pola sił z tej grupy mają parametry identyczne z parametrami modyfikatorów o tych samych nazwach, które można znaleźć w menu Modifiers/Free Form Deformers. Różnica polega na tym, że pola sił działają w globalnym układzie współrzędnych sceny i nie są przypisane do jednego obiektu. Oznacza to, że pojedyncze pole sił może wpływać równocześnie na wiele obiektów. Aby dowiedzieć się więcej o modyfikatorach FFD (Box) i FFD (Cyl), zajrzyj do rozdziału 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Aby przemieścić punkty kontrolne, zaznacz pole sił, przejdź do panelu Modify i wybierz poziom struktury Control Points, co pozwoli Ci na edycję poszczególnych punktów kontrolnych.

Modyfikator FFD Select Modyfikator FFD Select to specyficzny typ modyfikatora selekcji. Pozwala on na zaznaczenie grupy punktów kontrolnych w kratownicach pól sił typu FFD (Box) lub FFD (Cyl) i przypisanie tym punktom kolejnych modyfikatorów. Kiedy pole sił typu FFD jest użyte w odniesieniu do danego obiektu, możesz zaznaczyć punkty kontrolne (poziom edycji Control Point) i nadać modyfikatory zaznaczonemu zestawowi punktów. Modyfikator FFD Select pozwala wybierać różne zestawy punktów kontrolnych dla odmiennych modyfikatorów.

Rozdział 42.  Stosowanie pól sił

1167

Wave i Ripple Pola sił Wave i Ripple tworzą liniowe lub koliste fale na powierzchni obiektów, z którymi są związane. Parametry tych pól pozwalają określić kształt fali. Amplitude 1 to wysokość fali wzdłuż osi X, a Amplitude 2 to wysokość fali wzdłuż osi Y. Parametr Wave Length to długość fali. Przesunięcie fazowe (Phase) określa lokalizację początku fali. Parametrem Decay definiujemy szybkość tłumienia fali. Wartość Decay równa 0 utrzymuje tę samą amplitudę fali na całej powierzchni obiektu. Parametry Sides (Circles) i Segments określają segmentację względem osi X i Y. Wartość Division (podział) zmienia rozmiar ikony bez modyfikacji efektu fali. Na rysunku 42.13 zilustrowano działanie pól sił typu Wave i Ripple zastosowanych do prostego obiektu typu Patch Grid. Zauważ, że ikona pola sił jest mniejsza niż łata, jednak pole oddziałuje na cały obiekt.

Rysunek 42.13. Pola sił Wave i Ripple zastosowane do powierzchni typu Patch Grid Upewnij się, że obiekt powiązany z polem sił ma odpowiednio gęstą siatkę, gdyż w przeciwnym razie efekt działania pola nie będzie widoczny.

Ćwiczenie: Tworzenie falującego stawu W tym ćwiczeniu wykorzystamy płaski obiekt Quad Patch, ustawiony tak, by reprezentował powierzchnię stawu na tle zdjęcia z mostem. Za pomocą pola sił Ripple utworzymy fale rozchodzące się po wodzie.

1168

Część X  Animacja dynamiczna

Aby zrealizować to zadanie, wykonaj następujące czynności. 1. Otwórz plik Pond ripple.max z folderu Chap 42 umieszczonego na płycie dołączonej do książki. Plik ten zawiera zdjęcie mostu, będące tłem sceny, dopasowane do łaty imitującej staw, której przypisano lustrzany materiał. Jeśli masz problemy ze zlokalizowaniem łaty, wciśnij klawisz F3, aby włączyć tryb wyświetlania Wireframe.

2. Z górnej listwy menu wybierz polecenie Create/Space Warps/Geometric/Deformable/ Ripple. Przeciągnij kursorem w oknie widokowym Perspective, by utworzyć ikonę pola sił. W rolecie Parameters ustaw obie amplitudy na 2, a długość fali na 30. 3. Kliknij przycisk Bind to Space Warp i przeciągnij od obiektu do ikony pola sił. Rysunek 42.14 ilustruje rezultat.

Rysunek 42.14. Fale na wodzie utworzone zostały za pomocą pola sił Ripple działającego na obiekt łaty

Conform Pole sił Conform (dopasowywanie kształtu) odpycha wszystkie wierzchołki siatki do momentu, kiedy zetkną się one z powierzchnią pewnego wybranego obiektu (obiekt ten nosi nazwę Wrap To) lub osiągną odległość zdefiniowaną przez użytkownika. W rolecie Con-

Rozdział 42.  Stosowanie pól sił

1169

form Parameters znajduje się przycisk Pick Object, po jego wciśnięciu możesz kliknąć obiekt mający ograniczać odkształcenie wierzchołków. Jego nazwa wyświetlana jest w polu Wrap to Object. W sekcji Move Vertices dostępne są dwa parametry sterujące odkształceniem wierzchołków. Pierwszy z nich, Default Projection Distance (domyślna odległość rzutowania), ustala maksymalną odległość, na jaką mogą zostać odsunięte wierzchołki, jeżeli nie natrafią na obiekt wybrany w sekcji Wrap To Object. Parametr Standoff Distance (odległość odsunięcia) określa odległość pomiędzy odkształcanymi wierzchołkami a tym obiektem. Jeżeli włączona jest opcja Use Selected Vertices, odkształceniu ulegną tylko te wierzchołki, które w obiekcie zaznaczono wcześniej podczas pracy w trybie Sub-Object/Vertex. Pole sił typu Conform działa podobnie jak obiekt złożony typu Conform omówiony w rozdziale 27., „Obiekty złożone”.

Rysunek 42.15 to ilustracja tekstu ukształtowanego za pomocą pola sił typu Conform. Jako obiekt Wrap To została wybrana powierzchnia typu Quad Patch.

Rysunek 42.15. Pole sił Conform pozwala owinąć siatkę jednego obiektu wokół siatki innego obiektu

Bomb Bomb to pole sił wywołujące eksplozję obiektu i rozpad na fragmenty. Parametr Strength określa siłę eksplozji i odległość, na jaką odlatują odłamki. Parametr Spin pozwala wprawić odłamki w ruch obrotowy. Jeżeli włączysz opcję Falloff On, możesz zdefiniować zasięg eksplozji, czyli to, na które płaszczyzny elementarne obiektu eksplozja będzie miała wpływ. Ścianki obiektu poza zasięgiem bomby nie zostaną rozbite.

1170

Część X  Animacja dynamiczna

W sekcji Fragment Size znajdują się parametry Min i Max, ustalające minimalną i maksymalną liczbę ścianek w odłamkach po wybuchu. Parametr Gravity określa siłę grawitacji i może przyjmować wartości dodatnie lub ujemne. Siła grawitacji działa wzdłuż osi Z globalnego układu współrzędnych sceny. Wartość parametru Chaos wpływa na zróżnicowanie ruchu poszczególnych odłamków — można go zmieniać od 0 do 10. Parametr Detonation określa numer klatki animacji, w której następuje eksplozja, natomiast wartość w polu Seed inicjuje generator liczb pseudolosowych — zmieniając ją, możemy uzyskać za każdym razem eksplozję wyglądającą nieco inaczej. Na rysunku 42.16 pokazana jest klatka 20. z animowanej eksplozji utworzonej przy użyciu pola sił Bomb.

Rysunek 42.16. Pole sił Bomb pozwala utworzyć efekt eksplozji obiektu Efekt działania pola sił typu Bomb staje się widoczny dopiero po upływie pewnego czasu w animacji. W klatce zerowej efekt nie jest widoczny.

Ćwiczenie: Zdmuchiwanie dmuchawca Pola sił można wykorzystywać zarówno z systemami cząsteczkowymi, jak i z innymi obiektami. Przykładowo obiekt złożony Scatter może szybko wygenerować wiele drobnych obiektów, których ruch będzie sterowany przez pole sił. W tym ćwiczeniu utworzymy prosty model dmuchawca, który zostanie zdmuchnięty przez wiatr. Aby utworzyć animację dmuchawca, wykonaj następujące czynności.

Rozdział 42.  Stosowanie pól sił

1171

1. Otwórz plik Dandelion puff.max z folderu Chap 42 umieszczonego na płycie dołączonej do książki. Plik ten zawiera kulę obejmowaną przez obiekt złożony typu Scatter, generujący nasiona dmuchawca. 2. Wybierz polecenie Create/Space Warps/Geometric/Deformable/Bomb. Kliknij w oknie widokowym Front i umieść ikonę Bomb po lewej i nieco poniżej dmuchawca. W rolecie Bomb Parameters ustaw parametr Strength na 10, Spin na 0,5, wartości Min i Max Fragment Size na 24, Gravity na 0,2 i Chaos na 2,0. Wartości Min i Max Fragment Size stanowią tu całkowitą liczbę ścianek tworzących obiekt dmuchawca. 3. Kliknij przycisk Bind to Space Warp na głównym pasku narzędziowym i przeciągnij kursorem od obiektu dmuchawca do pola sił. Na rysunku 42.17 pokazano jedną z klatek animacji przedstawiającej zdmuchiwanie dmuchawca.

Rysunek 42.17. Pól sił można używać wraz z obiektami złożonymi, podobnie jak z cząsteczkami

Pola sił z kategorii Modifier-Based Pola sił w tej kategorii działają tak samo jak standardowe modyfikatory, ponieważ jednak są to pola sił, można każde z nich przypisać wielu obiektom równocześnie. Do kategorii Modifier-Based zaliczają się następujące typy pól sił: Bend, Noise, Skew, Taper, Twist

1172

Część X  Animacja dynamiczna

i Stretch (patrz rysunek 42.18). Ikony wszystkich tych pól mają postać prostopadłościanów, a parametry opisujące ich działanie są identyczne z parametrami modyfikatorów o tych samych nazwach. Pola sił w tej kategorii nie zawierają rolety Supports Objects of Type, ponieważ mogą być stosowane do modyfikacji wszystkich obiektów. Rysunek 42.18. Pola sił z kategorii Modifier Based: Bend, Noise, Skew, Taper, Twist i Stretch

Szczegóły na temat modyfikatorów Bend, Noise, Skew, Tapper, Twist i Stretch i ich parametrów znajdziesz w rozdziale 11., „Wprowadzanie modyfikatorów i korzystanie ze stosu modyfikacji”.

Każde pole sił z kategorii Modifier-Based posiada roletę Gizmo Parameters z rozmiarami ikony pola sił (Length, Width i Height). Odkształcenie obiektu może być coraz słabsze w miarę oddalania się obiektu od ikony pola sił, co można zdefiniować, ustalając niezerową wartość parametru Decay. Gizmo pola sił możesz przemieszczać jak niezależny obiekt, mimo iż standardowe modyfikatory wymagają przejścia na odpowiedni poziom edycji podobiektu, aby możliwe było przemieszczenie gizma. Pola sił, w przeciwieństwie do modyfikatorów, nie mają żadnych podobiektów.

Łączenie systemów cząsteczkowych z polami sił Aby podsumować ten rozdział, przyjrzyjmy się kilku przykładom, które wykorzystują pola sił wraz z systemami cząsteczkowymi. Kombinacje różnych parametrów pól sił w połączeniu z systemami cząsteczkowymi dają niemal nieskończone możliwości. Te przykłady to tylko skromny fragment tego, co jest możliwe do uzyskania.

Ćwiczenie: Rozbijanie lustra Stłuczone szkło rozpada się na ostre odłamki, które zazwyczaj lecą w różnych kierunkach. W tym ćwiczeniu utworzymy animację z rozbijającym się lustrem ściennym. Wykorzystując pola sił i płaszczyznę odbijającą (ścianę), otrzymamy efekt spadających odłamków, które zatrzymają się na podłodze.

Rozdział 42.  Stosowanie pól sił

1173

Aby rozbić lustro, wykonaj następujące czynności. 1. Otwórz plik Shattering glass.max z folderu Chap 42 umieszczonego na płycie dołączonej do książki. Plik ten zawiera proste lustro utworzone z obiektów typu Patch. Zawiera on także animowaną kulę uderzającą w lustro. 2. Wybierz polecenie Create/Particles/PArray. Przeciągnij kursorem w oknie widokowym Front, by utworzyć emiter systemu cząstek PArray. W rolecie Basic Parameters włącz przycisk Pick Object i kliknij pierwszą powierzchnię Patch. W polu Viewport Display włącz opcję Mesh. W rolecie Particle Generation wyzeruj parametry Speed i Divergence. Parametr Emit Start ustaw na 30, a parametr Life na 100, dopasowując długość życia cząstek do ostatniej klatki animacji. W rolecie Particle Type włącz opcję Object Fragments i ustaw grubość odłamków (Thickness) na 1.0. Włącz opcję Number of Chunks i ustaw parametr Minimum na 30. W rolecie Rotation and Collision zmień parametr Spin Time na 100, a Variation na 50. Te ustawienia sprawią, że wyemitowanych zostanie 30 fragmentów obiektu, obracających się w różnych kierunkach. 3. W panelu Create kliknij ikonę Space Warps i z rozwijanej listy wybierz kategorię pól sił Forces. Uaktywnij przycisk PBomb i utwórz pole sił PBomb w oknie widokowym Top. Pracując w oknach widokowych Front i Left, umieść ikonę pola sił centralnie ponad lustrem. W panelu modyfikacji ustaw opcję Blast Symmetry/ Spherical z parametrem Chaos ustawionym na 50%. Parametr Start Time ustaw na 30, a parametr Strength na 0.2. Kliknij ikonę Bind to Space Warp na głównym pasku narzędzi i przeciągnij kursorem znad ikony pola sił PBomb nad emiter cząstek PArray. 4. Wybierz polecenie Create/Space Warps/Forces/Gravity i przeciągnij kursorem w oknie Front, aby utworzyć pole sił typu Gravity. Umieść pole sił typu Gravity tak, aby strzałka ikony wskazywała w dół okna Front. W panelu modyfikacji zmień wartość parametru Strength na 0.1, po czym za pomocą narzędzia Bind to Space Warp przyłącz system cząstek PArray do pola sił Gravity. 5. Wybierz polecenie Create/Space Warps/Deflectors/POmniFlect. Rozciągnij pole w oknie widokowym Top i poszerz je na tyle, aby znajdowało się całkowicie pod obiektem lustra. Obróć pole sił POmniFlect, aby jego strzałki wskazywały w górę, w kierunku lustra. Płaszczyzna pola powinna pokrywać się z płaszczyzną podłogi. W panelu Modify ustaw parametr Reflects na 100%, a współczynnik sprężystości (Bounce) zmień na 0. Użyj jeszcze raz narzędzia Bind to Space Warp i przyłącz system cząstek PArray do pola sił POmniFlect — w ten sposób utworzyłeś powierzchnię, na której zatrzymają się odłamki rozbitego lustra, spadające w dół pod wpływem siły grawitacji. Kliknij przycisk Play i obejrzyj uzyskany rezultat. Na rysunku 42.19 pokazano lustro zaraz po uderzeniu przez piłkę.

Ćwiczenie: Woda płynąca rynną Może na jakiś czas wystarczy już tej destrukcji. W ostatnim ćwiczeniu sprawimy, że cząsteczki wody popłyną rynną. Ten efekt uzyskamy za pomocą pola sił typu Path Follow.

1174

Część X  Animacja dynamiczna

Rysunek 42.19. Scena z rozbitym lustrem

Aby sprawić, że woda popłynie wzdłuż rynny, wykonaj następujące czynności. 1. Otwórz plik Water flowing down a trough.max z folderu Chap 42 umieszczonego na płycie dołączonej do książki. Plik ten zawiera prostą rynnę oraz splajn wyznaczający ścieżkę, którą będzie płynąć woda. 2. Wybierz Particle Systems z listy wyboru podkategorii i kliknij przycisk Super Spray. Utwórz obiekt typu Super Spray w oknie widokowym Front, a następnie umieść go tam, gdzie najpierw mają pojawić się cząsteczki. W sekcji Viewport Display zaznacz opcję Ticks. W rolecie Particle Generation ustaw Speed na 10, a Variation na 100. Następnie ustaw Emit Start na 0, a wartości Display Until i Life na 100. W rolecie Particle Type wybierz MetaParticles i włącz opcję Automatic Coarseness. 3. Kliknij przycisk kategorii Space Warps i wybierz pozycję Forces z listy wyboru podkategorii. Kliknij przycisk Path Follow i utwórz pole typu Path Follow; następnie kliknij przycisk Bind to Space Warp na głównym pasku narzędziowym i przeciągnij od ikony Path Follow do ikony Super Spray. Otwórz panel Modify, zaznacz ikonę pola Path Follow, kliknij przycisk Pick Shape Object i wskaż kursorem ścieżkę w oknach widokowych. Ustaw parametr Start Frame na 0, a wartość w polu Travel Time na 100. Na rysunku 42.20 zademonstrowano rezultat renderowania tej sceny.

Rozdział 42.  Stosowanie pól sił

1175

Rysunek 42.20. Woda płynąca w dół dzięki działaniu pola sił Path Follow

Podsumowanie Pola sił (Space Warps) są bardzo przydatne, kiedy chcemy symulować działanie różnych sił w scenach Maksa. Program posiada kilka różnych typów pól sił i większość z nich może być stosowana tylko do konkretnych typów obiektów. W tym rozdziale zapoznałeś się z zagadnieniami, takimi jak: 

tworzenie pola sił,



przyłączanie obiektów do pól sił,



wykorzystanie pól sił należących do różnych kategorii,



łączenie pól sił i systemów cząsteczkowych, aby zbić szkło lub wysadzić planetę.

W następnym rozdziale poznasz system MassFX, który dynamicznie przelicza wszystkie klatki animacji w oparciu o prawa fizyki.

1176

Część X  Animacja dynamiczna

Rozdział 43.

Wykorzystanie systemu MassFX do symulacji ruchów zgodnych z zasadami dynamiki W tym rozdziale: 

Poznawanie narzędzi systemu MassFX



Ustalanie typu obiektu i uruchamianie symulacji



Określanie właściwości obiektów



Ustalanie typu siatki kolizyjnej



Stosowanie więzów



Wypiekanie kluczy animacyjnych

Kiedy mówimy o systemie MassFX w Maksie, mówimy o fizyce. Fizyka to jedna z najfajniejszych dziedzin nauki, ponieważ dotyczy substancji i energii oraz opisuje prawa, jakie rządzą ruchami i wzajemnym oddziaływaniem obiektów. Dla nas, animatorów, to idealna wiadomość, ponieważ animacja ruchu i oddziaływań stanowi istotę tego, co próbujemy osiągnąć. Czy zatem wszyscy animatorzy powinni uczyć się fizyki? Jak najbardziej! Zrozumienie praw fizyki poprzez badanie i własne doświadczenia zdecydowanie poprawi i wyostrzy nasze umiejętności animacji. Jednak możemy też wykorzystać pracę wykonaną przez innych animatorów, którzy wszystkie te prawa i właściwości fizyczne zawarli w jednym produkcie, dostarczanym razem z Maksem. Ci animatorzy to członkowie grupy PhysX funkcjonującej w ramach korporacji NVIDIA, a ich produkt nosi nazwę MassFX. Moduł dynamiki opracowany dołączony do Maksa jest tym samym, jaki używany jest powszechnie do symulowania rzeczywistego świata w grach komputerowych.

1178

Część X  Animacja dynamiczna

Wykorzystując MassFX, możemy symulować wiele właściwości fizycznych i podczas interakcji obiektów automatycznie zapisywać klatki kluczowe. To tak jakbyśmy zupełnie za darmo otrzymali stopień naukowy z fizyki. System MassFX zawiera wszelkie opcje, których będziemy potrzebować, aby mieć dostęp do algorytmów sterujących symulacją praw fizyki. Po nadaniu obiektom właściwości fizycznych możemy wykreować siły, jakie oddziaływać będą na te obiekty i zasymulować wynikową animację. Używanie tego systemu — poza tym, że nadaje skomplikowanym ruchom realistyczny wygląd — jest także doskonałą zabawą.

Zrozumienie dynamiki Dynamika to gałąź fizyki zajmująca się siłami oraz wywołanymi przez nie ruchami. Niezależnie od naszych szkolnych doświadczeń musimy pamiętać, że nauka ta jest naszym przyjacielem — zwłaszcza w świecie 3D. Dynamika w Maksie pomaga zautomatyzować proces tworzenia kluczy animacyjnych przez przeliczanie położeń, obrotów i kolizji między obiektami za pomocą równań fizycznych. Rozważmy prosty ruch obiektu typu yo-yo. Animowanie takiego ruchu przy użyciu kluczy jest dość proste. W połowie animacji ustalamy wartości kluczy rotacji i obrotu, następnie czynimy to samo na końcu animacji i gotowe. Teraz zastanówmy się, jakie siły kontrolują efekt yo-yo. Siła grawitacji powoduje, że yo-yo, przyspieszając, opada w kierunku ziemi, w wyniku czego sznurek się rozwija, a to sprawia, że yo-yo wykonuje obroty wokół własnej osi. Kiedy sznurek całkiem się rozwinie, yo-yo zaczyna obracać się w przeciwnym kierunku i unosi się do góry1. Taki ruch możemy zasymulować przy użyciu pól sił Gravity i Motor, lecz dla tak niewielu obiektów ręczne kluczowanie animacji jest prawdopodobnie lepszym rozwiązaniem. Zanim jednak zrezygnujemy z dynamiki, zastanówmy się nad prażącym się i rozpryskującym wokół popcornem. Przy tak wielkiej ilości obiektów ustawienie wartości wszystkich kluczy pozycji i rotacji zajęłoby mnóstwo czasu. Dla takich właśnie zdarzeń korzystanie z systemów dynamiki ma sens. Narzędzia dynamiki pozwalają wybrać obiekty, które będą brały udział w symulacji, siły, z jakimi będą na siebie oddziaływać, oraz obiekty, które będą brały udział w kolizjach. Po takich ustaleniach silnik dynamiki automatycznie przelicza przemieszczenia i zderzenia obiektów, zgodnie z siłami na nie działającymi, a następnie ustala odpowiednie wartości dla kluczy animacji. System MassFX jest nowością w 3ds Max 2012.

1

Dokładnie rzecz biorąc, yo-yo obraca się nadal w tym samym kierunku (zgodnie z zasadą zachowania momentu pędu) i sznurek zaczyna się nawijać (w kierunku przeciwnym, niż był nawinięty poprzednio), co powoduje unoszenie się zabawki w górę — przyp. tłum.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1179

MassFX nie jest pierwszym systemem dynamiki udostępnianym wraz z Maksem. We wczesnych wersjach Maksa było to narzędzie Dynamics, a ostatnio rolę tę pełnił moduł reactor. Wprowadzony teraz system MassFX jest nie tylko potężniejszy od swoich poprzedników, ale i łatwiejszy w obsłudze.

Korzystanie z systemu MassFX System MassFX został opracowany przez firmę PhysX, która obecnie jest częścią korporacji NVIDIA. MassFX jest złożoną aplikacją z ogromną liczbą funkcji, która umożliwia definiowanie fizycznych właściwości i sił oraz zgodnie z prawami fizyki automatycznie generuje klucze animacji w czasie oddziaływań na siebie obiektów. Interfejs systemu MassFX jest dostępny za pośrednictwem niewielkiego paska narzędziowego, który można otworzyć za pomocą menu podręcznego, jakie rozwija się po kliknięciu prawym przyciskiem myszy w pustym miejscu dowolnego innego paska narzędziowego. Pasek ten ma nazwę MassFX Toolbar i zawiera zaledwie sześć przycisków (patrz rysunek 43.1), za pomocą których można otworzyć okno dialogowe MassFX Tools (narzędzia MassFX), określić typ obiektu, zdefiniować więzy i przejrzeć wygenerowaną symulację. Niektóre przyciski występują w kilku odmianach, tworząc rozwijane grupy, a wszystko jest opisane w tabeli 43.1.

Rysunek 43.1. Pasek narzędziowy MassFX Toolbar umożliwia otwieranie okna MassFX Tools i definiowanie symulacji oraz sterowanie nią Tabela 43.1. Przyciski paska MassFX Toolbar Przycisk

Nazwa

Opis

Display MassFX Tools Dialog

Otwiera okno dialogowe MassFX Tools.

Set Selected as Dynamic Rigid Body, Set Selected as Kinematic Rigid Body, Set Selected as Static Rigid Body

Przypisują zaznaczonym obiektom typ dynamiczny, kinematyczny lub statyczny.

Create Rigid Constraint, Create Slide Constraint, Create Hinge Constraint, Create Twist Constraint, Create Universal Constraint, Create Ball & Socket Constraint

Tworzą w scenie więzy ograniczające ruch określonych obiektów.

Reset Simulation

Przywraca scenę do stanu, w jakim była przed rozpoczęciem symulacji.

Start Simulation, Start Simulation

Uruchamiają symulację.

Without Animation Step Simulation

Posuwa symulację o jedną klatkę do przodu.

1180

Część X  Animacja dynamiczna

Wiele narzędzi systemu MassFX można uruchomić także za pomocą poleceń z menu Animation/Simulation–MassFX.

Funkcjonowanie systemu MassFX Zanim wgłębimy się w szczegóły związane z samym systemem MassFX, pobieżnie wyjaśnijmy proces jego pracy. System działa z geometrią, której nadaliśmy konkretne fizyczne właściwości. Po nadaniu tych właściwości pałeczkę przejmuje silnik systemu, który ustala, w jaki sposób będą na siebie oddziaływać różne obiekty naszej sceny. Każdy obiekt biorący udział w symulacji musi być zdefiniowany jako dynamiczny (Dynamic), kinematyczny (Kinematic) lub statyczny (Static). Pełnymi uczestnikami symulacji są tylko obiekty dynamiczne. Obiekty kinematyczne mogą oddziaływać na inne, ale same takim oddziaływaniom nie podlegają. Obiekty statyczne w ogóle nie są animowane i zazwyczaj pełnią rolę ścian, podłóg oraz innych stałych przeszkód. Obiekty muszą mieć też określoną gęstość (Density), masę (Mass), współczynnik tarcia (Friction) i sprężystość (Bounciness). Właściwości te można definiować w oknie dialogowym MassFX Tools — więcej szczegółów na ten temat znajdziesz w dalszej części rozdziału. Obiekt, któremu przypisano określony typ, automatycznie otacza się pomocniczą siatką, która odgrywa zasadniczą rolę w obliczaniu zderzeń z innymi obiektami. W celu maksymalnego uproszczenia tych obliczeń siatka ta zazwyczaj przyjmuje kształt prostopadłościanu lub sfery. Stosowanie siatek o skomplikowanych kształtach jest możliwe, ale trzeba pamiętać, że konsekwencją będzie dłuższy czas obliczeń. Wyboru siatki kolizyjnej można dokonać w panelu Edit okna dialogowego MassFX Tools. Można tam również skorzystać z opcji wygenerowania takiej siatki na podstawie geometrii obiektu.

Ustalanie parametrów symulacji Okno dialogowe MassFX Tools, pokazane na rysunku 43.2, można otworzyć za pomocą pierwszego przycisku na pasku MassFX Toolbar. W oknie tym można ustawić globalne parametry symulacji odnoszące się do wszystkich obiektów, które w niej uczestniczą. Parametry te ustawiamy w panelu World, ale w panelu Edit można je modyfikować dla każdego obiektu oddzielnie. Domyślnie włączone są statyczna płaszczyzna podłoża (Ground Plane) i pole grawitacyjne, przy czym wartość przyśpieszenia grawitacyjnego (Acceleration) można dowolnie zmieniać — przy wartościach dodatnich siła grawitacji będzie działać w górę. Parametr Substeps (kroki pośrednie) określa liczbę kroków obliczeniowych wykonywanych podczas symulacji. Nie wdając się w szczegóły, można powiedzieć, że wyższe wartości oznaczają dokładniejszą symulację przebiegu zderzeń i działania więzów, ale też wydłużenie czasu potrzebnego do zakończenia wszystkich obliczeń. Na czasochłonność symulacji wpływa także parametr Solver Iterations (iteracje algorytmu obliczeniowego), którego wyższe wartości są potrzebne w symulacjach zawierających dużo zderzeń i więzów. Na ogół nie ma jednak potrzeby stosowania wartości większych niż 30.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1181

Rysunek 43.2. W panelu World okna dialogowego MassFX Tools można ustawić globalne parametry symulacji

Collision Overlap (nakładka kolizyjna) określa odległość, na jaką siatki kolizyjne mogą się wzajemnie przenikać. Zastosowanie wartości bliskiej 0 może wywołać drgania zderzających się obiektów, a wartości zbyt duże mogą z kolei spowodować, że obiekty będą się w sposób zauważalny wzajemnie przenikać. Jeśli wiadomo, że jakiś obiekt, na przykład pocisk, będzie się poruszał bardzo szybko, można włączyć opcję Use High Velocity Collisions (zastosuj kolizje dużych prędkości), która uruchamia inne algorytmy obliczania zderzeń, zapobiegając wnikaniu takich obiektów w głąb innych na znaczną głębokość czy wręcz przelatywaniu na wylot bez wykrycia kolizji. W rolecie Advaced Settings (ustawienia zaawansowane) można ustalić wartości minimalne prędkości liniowej (Speed) i obrotowej (Spin) dla funkcji uśpienia (Sleep), kolizji dużych prędkości (High Velocity Collisions) i wzajemnego odbijania się obiektów (Bounce). Roleta Simulation Settings (ustawienia symulacji) zawiera opcje decydujące o tym, co powinno się dziać po osiągnięciu ostatniej klatki animacji. Można wybrać kontynuację symulacji (ruchy zachodzące po zakończeniu animacji nie będą uwzględniane przy wypiekaniu kluczy), zatrzymanie jej lub zapętlenie animacji z opcją powrotu do wartości początkowych albo z zachowaniem ich ciągłości. Na koniec w rolecie Engine (silnik) można włączyć wielowątkowość (Multithreading), jeśli tylko procesor komputera jest wielordzeniowy. Dodatkowe przyspieszenie symulacji można uzyskać, włączając opcję Hardware Acceleration (przyspieszenie sprzętowe), ale jest to możliwe tylko dla wybranych kart graficznych NVIDIA.

Uruchamianie i zatrzymywanie symulacji Po ustaleniu parametrów, zarówno tych o charakterze globalnym, jak i tych odnoszących się do poszczególnych obiektów, możesz kliknąć na pasku MassFX Toolbar przycisk o nazwie Start Simulation. Spowoduje to uruchomienie obliczeń symulacyjnych, a ich rezultaty będą na bieżąco wyświetlane w oknie widokowym. Sąsiednie przyciski umożliwiają zresetowanie symulacji lub przesuwanie jej do przodu klatka po klatce.

1182

Część X  Animacja dynamiczna

Pod przyciskiem Start Simulation ukryty jest jeszcze przycisk Start Simulation Without Animation, który umożliwia uruchomienie symulacji bez animacji — wskaźnik bieżącej klatki na listwie czasu pozostaje wtedy nieruchomy.

Ćwiczenie: Wypełnianie naczynia kulkami Wyobraźmy sobie próbę animowania kulek wpadających do szklanego naczynia. Dokonanie tego przy użyciu klatek kluczowych, w taki sposób, aby obiekty nie przenikały przez siebie, byłoby bardzo trudne. Właśnie na takim przykładzie zobaczymy całą potęgę systemu MassFX. Aby animować kulki wpadające do szklanego naczynia, wykonaj następujące czynności. 1. Otwórz plik Glass bowl of marbles.max znajdujący się w folderze Chap 43 na płycie dołączonej do książki. Plik ten zawiera szklane naczynie i grupę kulek umieszczonych nad nim. 2. Kliknij prawym przyciskiem myszy puste miejsce głównego paska narzędziowego i wybierz opcję MassFX Toolbar. Następnie zaznacz wszystkie kulki, kliknij przycisk Set Selected as Dynamic Rigid Body. 3. Zaznacz blat stołu i kliknij przycisk Set Selected as Static Rigid Body — znajdziesz go w grupie rozwijanej pod przyciskiem Set Selected as Dynamic Rigid Body. Teraz kliknij przycisk Start Simulation, aby zobaczyć, jak kulki przelatują przez naczynie i rozsypują się bezładnie po całym stole. 4. Powtórz punkt 3. z tą różnicą, że zamiast stołu zaznacz naczynie. Tym razem kulki powinny wszystkie zgromadzić się wewnątrz naczynia. Na rysunku 43.3 pokazano naczynie pełne kulek umieszczonych tam przez system MassFX.

Ustawianie właściwości obiektów Jedną z pierwszych czynności, jakie należy wykonać przy opracowywaniu symulacji, jest przypisanie obiektom odpowiednich właściwości. Ten sam obiekt, na przykład sfera, może przecież imitować różne przedmioty — kulę do kręgli, pomarańczę lub piłkę do tenisa. Każdy z tych przedmiotów inaczej reaguje na zderzenie z twardym podłożem.

Ustalanie typu obiektu Każdy obiekt biorący udział w symulacji MassFX musi mieć przypisany jeden z trzech wymienionych niżej typów. Dostępne typy to: 

Dynamic (dynamiczny) — obiekt taki podlega działaniu grawitacji i sił działających podczas zderzeń z innymi obiektami.



Kinematic (kinematyczny) — jest to obiekt, który wywiera wpływ na inne obiekty, ale sam nie reaguje na zderzenia z nimi. Może być animowany i często jest używany jako źródło siły. Nie podlega działaniu grawitacji.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1183

Rysunek 43.3. System MassFX potrafi przeliczyć kolizje zachodzące między wszystkimi kulkami 

Static (statyczny) — ma nieskończoną masę, więc nie reaguje w żaden sposób na zderzenia z innymi obiektami. Najczęściej pełni role podłogi lub ściany. Nie podlega działaniu grawitacji.

Każdemu z tych typów odpowiada przycisk na pasku MassFX Toolbar. Aby przypisać obiektowi jakiś typ, wystarczy więc zaznaczyć ów obiekt i kliknąć odpowiedni przycisk. Gdy tylko coś takiego zrobisz, obiekt automatycznie zostanie włączony do symulacji. Obiekty bez określonego typu są po prostu ignorowane. Obiekt kinematyczny może być animowany za pomocą tradycyjnych kluczy, ale też w każdej chwili może się zmienić w obiekt dynamiczny. W rolecie Rigid Body Properties (właściwości ciała sztywnego) można taką przemianę zaprogramować, włączając opcję Until Frame (aż do klatki) i wpisując numer klatki, w której ma się to wydarzyć. Jest to wygodny sposób na wprowadzanie nowych sił w symulacji. Na przykład kulę bilardową toczącą się w kierunku bil nieruchomych można animować jako obiekt kinematyczny i jeśli tuż przed zderzeniem zmienimy jej typ na dynamiczny, będzie kontynuowała swój ruch i jednocześnie reagowała na zderzenia zgodnie z prawami fizyki. Typ przypisany obiektowi jest widoczny na stosie modyfikacji jako odrębny modyfikator. Usunięcie tego modyfikatora spowoduje wykluczenie obiektu z symulacji i przywrócenie mu statusu zwykłego obiektu. Obiekty, którym przypisujemy typ dynamiczny, kinematyczny lub statyczny, automatycznie otrzymują też określone właściwości fizyczne o wartościach zależnych od przydzielonego typu i rozmiaru obiektu. Przykładowo obiekty statyczne otrzymują bardzo

1184

Część X  Animacja dynamiczna

dużą masę, przez co stają się wręcz nieprzesuwalne, a małe obiekty dynamiczne otrzymują niewielką masę i łatwo poddają się działaniu nawet słabych sił. W rolecie Rigid Body Properties można także zdecydować, czy dany obiekt ma podlegać grawitacji, uczestniczyć w obliczeniach kolizji przy dużych prędkościach i zderzać się z innymi obiektami. Podczas rozmieszczania obiektów dynamicznych trudność może sprawić umieszczenie ich dokładnie jeden na drugim. Lepiej zostawić niewielką przerwę, niż dopuścić do ich wzajemnego przenikania, bo już na samym starcie symulacji obiekty będą się odpychać, wywołując ruch, którego nikt nie planował. Aby zapobiec takim niepożądanym ruchom, należy dla tych obiektów włączyć opcję Start in Sleep Mode (rozpocznij w trybie uśpienia). Obiekty z włączoną tą opcją pozostają nieruchome do momentu uderzenia przez inny obiekt, nie reagują wtedy również na pole grawitacyjne. Każdemu obiektowi, niezależnie od jego typu, można przypisać konkretne właściwości fizyczne. Jeśli obiekt jest zaznaczony, można to zrobić, wpisując odpowiednie wartości w rolecie Physical Matrial w panelu poleceń lub w rolecie Physical Material Properties dostępnej w panelu Edit okna dialogowego MassFX Tools (patrz rysunek 43.4). Właściwości te można przypisywać także wielu obiektom naraz. Rysunek 43.4. W panelu Edit okna dialogowego MassFX Tools można ustalić fizyczne cechy obiektów geometrycznych w scenie

Większość ustawień dostępna jest zarówno w panelu poleceń, jak i w oknie MassFX Tools, ale w oknie MassFX Tools można je ustawiać również dla wielu obiektów naraz.

Gęstość, masa, tarcie i elastyczność Właściwości fizyczne mogą być rozmaite, ale dla systemu MassFX obliczającego czysto mechaniczne oddziaływania między obiektami najważniejsze są gęstość (Density), masa (Mass), tarcie statyczne (Static Friction), tarcie dynamiczne (Dynamic Friction) i sprężystość (Bounciness). Gęstość podaje, jaka masa przypada na jednostkę objętości, a więc jest nierozerwalnie związana z masą obiektu. Masa mówi nam, jak ciężki jest obiekt. Przykładowo kula do kręgli ma większą masę niż piłeczka do ping-ponga. Piłeczka pingpongowa jest też lżejsza od piłki golfowej, mimo że ich rozmiary są niemal takie same, bo ma znacznie mniejszą gęstość.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1185

Tarcie jest siłą, która ujawnia się na styku dwóch obiektów. Parametr Friction określa, jaki opór stawia obiekt przy toczeniu lub posuwaniu się po podłożu. Gdy przesuwasz krążek po stole do hokeja powietrznego, tarcie jest bardzo małe, a gdy przesuwasz papier ścierny po drewnie, jest o wiele większe. Tarcie może być statyczne lub dynamiczne. Tarcie statyczne jest siłą oporu, jaką należy pokonać, aby wprawić ciało w ruch, a tarcie dynamiczne — siłą oporu, jaką należy pokonać, aby utrzymać ciało w ruchu. Wartości obu tych sił można określić w systemie MassFX. Ciało sztywne o masie równej 0 stwarza problemy przy obliczeniach i dlatego, gdy próbujesz nadać jakiemuś obiektowi taką masę, system automatycznie przypisuje gęstość równą 0,01.

Zapisywanie gotowych zestawów właściwości Jeśli po wielu testach i eksperymentach udało Ci się w końcu dobrać właściwe wartości dla właściwości fizycznych jakiegoś obiektu, możesz je zapisać i potem wielokrotnie wykorzystywać. Do zapisywania zestawów właściwości służy przycisk Create Preset w rolecie Physical Material w oknie MassFX Tools. Zapisane zestawy są później dostępne na rozwijanej liście Preset. Jest to bardzo przydatna funkcja, bo pozwala na korzystanie z ustawień, o których wiadomo z całą pewnością, że są prawidłowe. Kroplomierz widoczny obok listy umożliwia z kolei pobieranie właściwości z dowolnego obiektu w scenie. Po wczytaniu zapisanego wcześniej zestawu właściwości wszystkie wartości są zablokowane, o czym informuje ikona w kształcie kłódki, jaka pojawia się wtedy w lewym górnym rogu rolety Physical Material Properties w oknie MassFX Tools. Jeśli klikniesz tę ikonę, wszystkie wartości zostaną odblokowane i będziesz mógł je edytować.

Definiowanie siatki kolizyjnej Inna, często używana cecha obiektu wiąże się ze sposobem wykrywania zderzeń. Na potrzeby symulacji możemy otoczyć obiekt obszarem, w którym pojawienie się innego obiektu będzie interpretowane jako zderzenie. Brzmi to śmiesznie, ponieważ możemy w ten sposób zdefiniować kolizję w przestrzeni poza rzeczywistą siatką obiektu (zderzenie może nastąpić nie przy zetknięciu z innym obiektem, lecz w pewnej od niego odległości). Należy jednak zdać sobie sprawę, że przeliczenie złożonej symulacji, z wieloma kolizjami i skomplikowanymi siatkami obiektów, mogłoby trwać bardzo długo. Gdy jednak system przelicza kolizje, opierając się na przybliżonym kształcie obiektu, a nie na jego rzeczywistej siatce, symulacja przebiega o wiele szybciej, a niedokładności są praktycznie niezauważalne. Zanim zdecydujemy się na to, jakiej siatki kolizyjnej użyć, musimy określić, czy kształt obiektu jest wypukły (convex), czy wklęsły (concave). Obiekt wypukły to taki, którego powierzchnia może być przebita przez dowolną prostą jedynie w dwóch punktach. W przypadku obiektu wklęsłego takich punktów przebicia może być więcej. Innymi słowy, powierzchnia obiektu wklęsłego zagina się do wewnątrz, jak na pączku wiedeńskim, a obiekt wypukły ma powierzchnię bez takich zagięć i pod tym względem jest podobny raczej do zwykłej sfery. Z punktu widzenia obliczeń korzystniejsze są siatki wypukłe.

1186

Część X  Animacja dynamiczna

Stosowanie siatek wypukłych Dla obiektu wypukłego możesz jako siatki kolizyjnej użyć następujących opcji z rolety Physical Meshes: Sphere (sfera), Box (prostopadłościan), Capsule (kapsuła) i Convex (siatka wypukła). Wybierz tę, która najlepiej pasuje do danego obiektu. Właściwości wybranej siatki są dostępne w rolecie Physical Mesh Parameters. Obiektowi, któremu przypisano jeden z typów symulacyjnych, automatycznie przydzielana jest siatka wypukła (opcja Convex). Jest to sfera geodezyjna rozpięta na 32 wierzchołkach. Jeśli zmniejszysz liczbę tych wierzchołków — lub wybierzesz siatkę typu Sphere, Box albo Capsule — możesz przyspieszyć obliczenia symulacyjne. Rozmiary siatki kolizyjnej można zmieniać za pomocą parametru Inflation (rozdęcie). Każdy typ siatki ma swoje własne parametry w rolecie Physical Mesh Parameters, na przykład dla sfery jest to promień (Radius), a dla prostopadłościanu — Length (długość), Height (wysokość) i Width (szerokość). Jeśli zmodyfikowałeś siatkę Convex i teraz działa niezbyt dobrze, możesz ją odbudować, klikając przycisk Regenerate from Original. Jeśli siatka kolizyjna ma właściwy kształt, ale jest źle usytuowana, zaznacz w stosie modyfikatorów pozycję Mesh Transform (przekształcenia siatki) i ustaw siatkę w sposób należyty.

Stosowanie siatek wypukłych Jeśli w symulacji występuje obiekt wklęsły, powinieneś najpierw spróbować użyć wypukłej siatki kolizyjnej, a jeśli to jest niemożliwe (jak w przypadku naczynia z poprzedniego ćwiczenia), wybierz opcję Composite (siatka złożona). Obiekt w kształcie pączka z dziurką, mimo że jest wklęsły, może mieć wypukłą siatkę kolizyjną w kształcie spłaszczonej sfery, bo jest raczej mało prawdopodobne, by jakiś mały obiekt chciał się przecisnąć przez środek pączka, ale gdy w grę wchodzi na przykład obręcz kosza, przez którą ma przelatywać piłka, konieczne jest zastosowanie siatki wklęsłej. Dla siatki typu Composite należy określić maksymalną liczbę wierzchołków i jeszcze kilka innych parametrów, a na koniec trzeba kliknąć przycisk Generate. To spowoduje automatyczne wygenerowanie siatki kolizyjnej w oparciu o rzeczywisty kształt obiektu. Gdy proces generowania zostanie zakończony, poniżej przycisku wyświetlą się liczby powłok (Hulls) i wierzchołków (Vertices). Jeśli te liczby okażą się zbyt duże, zmień wartości parametrów Max Vertices (maksymalna liczba wierzchołków), Split Levels (poziomy podziału) lub Size Difference (różnica rozmiarów) i wygeneruj siatkę jeszcze raz. Pamiętaj, że większa liczba wierzchołków oznacza większą precyzję symulacji, ale też większą czasochłonność obliczeń. Siatka typu Original przeznaczona jest dla obiektów statycznych, zarówno wypukłych, jak i wklęsłych. Siatka kolizyjna jest tu identyczna z rzeczywistą siatką obiektu. Opcja Custom umożliwia tworzenie własnych siatek kolizyjnych na bazie siatek obiektów obecnych w scenie. Zamiast parametrów dostępne są przyciski służące do wskazywania obiektów źródłowych i pobierania od nich siatek. Źródłem powinna być uproszczona wersja obiektu docelowego.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1187

Siatki kolizyjne typu Custom nie mogą mieć więcej niż 256 wierzchołków.

Ustalanie warunków początkowych Dla każdego obiektu dynamicznego można określić parametry początkowe jego ruchu i nie ma tu znaczenia, czy grawitacja jest włączona, czy nie. Parametry te, zwane Initial Motion, znajdują się w rolecie Advanced i można je ustawić jako bezwzględne (Absolute) lub względne (Relative). Gdy obiekt kinematyczny będący w ruchu zmienia się w dynamiczny (w klatce określonej w polu Until Frame), prędkość, jaką ma w tym momencie, jest dodawana do prędkości określonej w warunkach początkowych (przy wyborze opcji Relative) lub przez nią zastępowana (przy włączonej opcji Absolute). Parametry X, Y i Z wyznaczają kierunek prędkości początkowej, a parametr Speed określa jej wartość. Oprócz prędkości liniowej (Initial Velocity) można ustalić także początkową prędkość kątową (Initial Spin). W sekcji Damping (tłumienie) można ustalić opory ruchu liniowego (Linear) i obrotowego (Angular), zmuszając tym samym poruszające się obiekty do stopniowego wytracania prędkości. Wśród trybów podobiektowych modyfikatora MassFX Rigid Body, jaki jest przypisywany obiektom biorącym udział w symulacji, znajdują się pozycje Initial Velocity i Initial Spin. Jeśli zaznaczysz jedną z nich, w oknie widokowym pojawi się strzałka wskazująca kierunek i zwrot prędkości początkowej. Za pomocą narzędzia Select and Rotate możesz tą strzałką manipulować. Czasami może to być łatwiejsze niż ustawianie konkretnych wartości w rolecie. Modyfikator oferuje także możliwość ustalenia położenia środka masy (Center of Mass) i siatki kolizyjnej (Mesh Transform) obiektu.

Wyświetlanie elementów interaktywnych W panelu Display (wyświetlanie) znajdziesz mnóstwo opcji, których włączanie i wyłączanie powoduje wyświetlanie lub ukrywanie rozmaitych elementów służących do sterowania symulacją. Opcja Display Physical Meshes wyświetla siatki kolizyjne wszystkich obiektów lub tylko zaznaczonych — o tym decyduje opcja Selected Objects Only (tylko obiekty zaznaczone). Jeśli włączysz opcję Enable Visualizer, wówczas w trakcie symulacji wyświetlane będą takie elementy jak strzałki prędkości obiektów, punkty styczności między obiektami i siatki kolizyjne.

Ćwiczenie: Przewracanie baniek na mleko Obiekt uczestniczący w symulacji można wprawić w ruch na dwa sposoby. Pierwszy polega na ustawieniu warunków początkowych w rolecie Advanced panelu Edit okna dialogowego MassFX Tools. Sposób drugi to przypisanie obiektowi właściwości Kinematic

1188

Część X  Animacja dynamiczna

i animowanie go standardową metodą kluczowania aż do osiągnięcia klatki o numerze określonym w polu Until Frame (roleta Rigid Body Properties w oknie MassFX Tools), aby wtedy zmienić jego typ na Dynamic. Aby uzyskać symulację znanej zabawy karnawałowej polegającej na przewracaniu baniek na mleko, wykonaj następujące czynności: 1. Otwórz plik Tipping milk cans.max znajdujący się w folderze Chap 43 na płycie dołączonej do książki. Plik zawiera kilka baniek na mleko ustawionych na podstawce w kształcie walca i dwie piłki. 2. Kliknij prawym przyciskiem puste miejsce na głównym pasku narzędziowym i wybierz opcję MassFX Toolbar. Następnie zaznacz wszystkie bańki ustawione na walcu i kliknij przycisk Set Selected as Dynamic Rigid Body. Potem kliknij przycisk Display MassFX Tools Dialog i w panelu Edit ustaw dla wszystkich baniek wartość parametru Density równą 10. 3. Zaznacz walec oraz podłogę i na pasku MassFX Toolbar wybierz przycisk Set Selected as Static Rigid Body. 4. Zaznacz mniejszą piłkę i kliknij przycisk Set Selected as Dynamic Rigid Body. Następnie rozwiń roletę Advanced i w grupie parametrów Initial Velocity ustaw X na –1 oraz Speed na 2500. Potem na pasku MassFX Toolbar kliknij przycisk Start Simulation. Zauważ, że piłka nie trafia w cel. Kliknij przycisk Reset Simulation. 5. W dolnej części głównego interfejsu znajdź i kliknij przycisk Time configuration. W oknie Time Configuration ustaw End Time na 300. 6. Zaznacz drugą piłkę i na pasku MassFX Toolbar wybierz przycisk Set Selected as Kinematic Rigid Body. Następnie w rolecie Rigid Body Properties włącz opcję Until Frame i w polu obok wpisz 100. Ustaw Density na 3, X Initial Velocity na –1 i Speed na 2500. Na koniec kliknij przycisk Start Simulation. Tym razem piłka trafia w bańki i strąca je wszystkie2. Na rysunku 43.5 pokazano moment uderzenia dużej piłki w stertę baniek.

Stosowanie więzów Więzy stosuje się po to, by ograniczyć zakres ruchów jakiegoś obiektu. Więzy mogą też służyć do sterowania ruchami obiektów w scenie. Niewątpliwie najprostszym przykładem więzów jest całkowite unieruchomienie obiektu. Z taką sytuacją mamy do czynienia, gdy przypisujemy obiektowi typ Static. Inne rodzaje więzów są dostępne na pasku MassFX Toolbar. Do wyboru są: więzy sztywne (Rigid Constraint), przesuwne (Slide Constraint), przegubowe (Hinge Constraint), skrętne 2

Autor zapomniał dodać, że druga piłka strąci bańki, jeśli wyłączymy ją spod wpływu pola grawitacyjnego. O tym, że autor taką sztuczkę zastosował, można się przekonać, sprawdzając stan opcji Use Gravity dla dużej piłki w pliku Topping milk cans – final.max — przyp. tłum.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1189

Rysunek 43.5. Obiekt kinematyczny można wprawić w ruch w późniejszej klatce animacji

(Twist Constraint), uniwersalne (Universal Constraint) i kulisto-przegubowe (Ball & Socket Constrain). Aby utworzyć więzy, potrzebne są dwa obiekty i oba muszą być zaznaczone. Obiekt zaznaczony jako pierwszy staje się nadrzędnym (parent), a drugi jest obiektem podrzędnym (child). Więzy można także utworzyć, mając zaznaczony jeden obiekt — podrzędny. Obiekt nadrzędny można wskazać później, korzystając z przycisku Parent w panelu Modify.

W chwili utworzenia więzów w scenie pojawia się obiekt pomocniczy o nazwie UConstraint, którzy można przeciągnąć poza powiązane obiekty, aby zobaczyć zakres nałożonych więzów. Gdy obiekt pomocniczy jest zaznaczony, w panelu poleceń dostępne są wszystkie parametry więzów. Więzy mogą być zrywalne (Breakable), przy czym zerwanie następuje po przekroczeniu wartości siły lub momentu obrotowego określonych w polach Max Force i Max Torque. Więzy zerwane nie wpływają w żaden sposób na przebieg symulacji. W rolecie Connection (powiązanie) można zmienić obiekty połączone więzami — zarówno nadrzędny, jak i podrzędny. W pozostałych roletach dostępne są zakresy dopuszczalnych przesunięć, odchyleń i skręceń w ramach nałożonych więzów. Możliwość wykonywania ruchów w ramach więzów można całkowicie zablokować (opcja Locked), ograniczyć (Limited) lub dopuścić bez żadnych ograniczeń (Free). Dla opcji Limited można ustalić zakres dopuszczalnych wartości dla takich parametrów jak Limit Radius (promień graniczny), Bounce (sprężystość granicy), Spring (siła zawracająca) i Damping (tłumienie).

1190

Część X  Animacja dynamiczna

Wprawdzie obiekt pomocniczy można swobodnie przesunąć do miejsca, w którym powinien się znajdować, ale często łatwiej jest określić właściwe usytuowanie więzów względem środków obrotu powiązanych obiektów. W rolecie Advanced są dostępne przyciski umożliwiające przesunięcie obiektu pomocniczego do środka obrotu obiektu nadrzędnego (Move to Parent’s Pivot) lub podrzędnego (Move to Child’s Pivot).

Ćwiczenie: Otwieranie drzwi Niektóre rodzaje ruchów wymagają zastosowania kilku różnych ograniczeń w postaci więzów. Tak jest na przykład z ruchem drzwi. Aby zmusić drzwi do wykonywania właściwych ruchów, wykonaj następujące czynności: 1. Otwórz plik Door with hinge.max znajdujący się w folderze Chap 43 na płycie dołączonej do książki. Plik zawiera model jednoskrzydłowych drzwi zamocowanych między dwiema ścianami. 2. Otwórz pasek MassFX Toolbar. Następnie zaznacz wszystkie obiekty poza podłogą i kliknij przycisk Set Selected to Dynamic Rigid Body. Potem zaznacz podłogę i wybierz Set Selected to Static Rigid Body. 3. Zaznacz najpierw ścianę w głębi sceny, potem dołącz do zaznaczenia drzwi, a następnie wybierz na pasku MassFX Toolbar opcję Create Hinge Constraint. Przeciągnij myszą w oknie widokowym, aby ustalić rozmiar obiektu pomocniczego, po czym ustaw ten obiekt między ścianą a drzwiami i obróć go tak, aby drzwi mogły się otwierać na zewnątrz w stosunku do piłki. 4. Zaznacz obie ściany i nałóż na nie więzy sztywne (Create Rigid Constraint), aby uniemożliwić im przemieszczanie się3. Obiekty statyczne nie mogą uczestniczyć w tworzeniu więzów ani jako obiekty nadrzędne, ani jako podrzędne.

5. Zaznacz piłkę i ustaw jej parametry następująco: Density na 20, X Initial Velocity na –1 i Speed na 5000. To powinno wystarczyć do otwarcia drzwi. 6. Kliknij przycisk Start Simulation na pasku MassFX Toolbar. Na rysunku 43.6 pokazano drzwi otwierające się po uderzeniu piłką.

3

Aby ściany pozostały na swoich miejscach, trzeba na nie nałożyć sztywne więzy globalne, czyli bez wskazywania obiektu nadrzędnego, a więc zaznaczamy ściany pojedynczo i na każdą z nich nakładamy więzy typu Rigid — przyp. tłum.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1191

Rysunek 43.6. Ruch drzwi jest kontrolowany przez więzy typu Hinge

Rejestrowanie symulacji ruchu w postaci kluczy animacyjnych Gdy już symulacja przebiega prawidłowo, można występujące w niej ruchy przechwycić i zarejestrować w formie kluczy animacyjnych. Można to zrobić za pomocą funkcji Bake (wypiekanie). Przycisk Bake jest dostępny w rolecie Rigid Body Properties — zarówno w oknie MassFX Tools, jak i w panelu poleceń. Dodatkowe opcje wypiekania, takie jak Bake All (wypiekanie wszystkiego), Bake Selected (wypiekanie obiektów zaznaczonych), Unbake All (przywracanie całej symulacji) i Unbake Selected (przywracanie symulacji obiektów zaznaczonych), są dostępne w panelu Tools okna MassFX Tools. Po zakończeniu wypiekania każdy uczestniczący w tym procesie obiekt otrzymuje zestaw kluczy animacyjnych, które można edytować za pomocą narzędzi animacyjnych w oknie Track View. W panelu Tools znajduje się jeszcze jeden przydatny przycisk służący do uruchamiania funkcji Capture Transforms (przechwytywanie transformacji). Użycie go sprawia, że bieżący stan zaznaczonego obiektu staje się jego stanem początkowym. To właśnie ten stan będzie odtąd przywracany, gdy klikniesz przycisk Reset Simulation. Jest to doskonały sposób na ustawienie obiektów w położeniach spoczynkowych na początku symulacji. Panel Tools zawiera również roletę Utilities z trzema istotnymi przyciskami. Explore Scene (eksploracja sceny) otwiera okno dialogowe Scene Explorer, w którym wyświetlane

1192

Część X  Animacja dynamiczna

są wszystkie obiekty biorące udział w symulacji oraz ich właściwości, takie jak typ symulacyjny (SimType), tryb symulacyjny (SimMode), aktywność (SimEnabled) i wypiekanie (SimBaked). W oknie tym można łatwo zmieniać status symulacyjny poszczególnych obiektów bez konieczności ich zaznaczania w oknie widokowym. Przycisk Validate Scene (sprawdzanie sceny) przeprowadza szybką weryfikację symulacji i wyłapuje potencjalne problemy, jakie mogą wystąpić podczas eksportowania sceny. Wyniki weryfikacji wyświetlane są w oknie Validate PhysX Scene pokazanym na rysunku 43.7. Wskazywane są na przykład obiekty przeskalowane w sposób nieproporcjonalny albo przekrzywione. Przycisk Export Scene otwiera okno dialogowe, w którym można ustalić opcje eksportu. Symulacje można eksportować do formatów XML, Binary i Collada. Rysunek 43.7. Przed wyeksportowaniem symulacji można sprawdzić, czy nie zawiera potencjalnych błędów

Ćwiczenie: Upuszczanie talerza z pączkami Dobra książka powinna zawierać elementy tragedii, rozważmy więc sytuację, kiedy policjant niosący na talerzu tuzin pączków potyka się i upuszcza talerz. Pączki porozrzucane wokół, ależ dramat! Taka sekwencja animacji byłaby trudna, a już na pewno czasochłonna, ale nie wtedy, kiedy mamy do dyspozycji system MassFX. Aby za pomocą systemu MassFX dokonać animacji upadającego talerza z pączkami, wykonaj następujące czynności. 1. Otwórz plik Falling plate of donuts.max znajdujący się w folderze Chap 43 na płycie dołączonej do książki. Plik zawiera prosty model talerza z pączkami utworzonymi za pomocą obiektów parametrycznych.

Rozdział 43.  Wykorzystanie systemu MassFX do symulacji ruchów

1193

2. Otwórz pasek MassFX Toolbar. Następnie zaznacz wszystkie pączki oraz talerz i kliknij przycisk Set Selected to Dynamic Rigid Body. 3. Jako że podłoga jest tu na poziomie głównej siatki konstrukcyjnej, wystarczy, jeśli upewnisz się, że w panelu World okna dialogowego MassFX Tools włączona jest opcja Use Ground Plane. Sprawdź też, czy włączona jest opcja Gravity Enabled. 4. Kliknij przycisk Start Simulation na pasku MassFX Toolbar. 5. Jeśli symulacja przebiegła prawidłowo, otwórz panel Tools i kliknij przycisk Bake All. Na listwie czasu zaczną pojawiać się klucze animacyjne. 6. Kiedy już cała symulacja zostanie przeliczona, wciśnij przycisk Play Animation (lub wciśnij klawisz /), aby obejrzeć rezultat. Na rysunku 43.8 pokazano przewrócony talerz z pączkami. Cóż za tragedia, taka strata.

Rysunek 43.8. Animacja tych pączków za pomocą systemu MassFX była bardzo prosta

Podsumowanie W rozdziale przedstawiono podstawy symulacji dynamicznych z wykorzystaniem systemu MassFX. Omówiłem następujące tematy: 

podstawy dynamiki,



interfejs systemu MassFX,

1194

Część X  Animacja dynamiczna 

włączanie obiektów do symulacji i nadawanie im właściwości fizycznych,



ustalanie rodzaju siatki kolizyjnej,



ustalanie warunków początkowych,



stosowanie więzów,



wypalanie kluczy animacyjnych.

W następnym rozdziale zajmiemy się dynamicznymi właściwościami systemów włosów i tkanin.

Rozdział 44.

Animowanie włosów i tkanin W tym rozdziale: 

Włączanie dynamiki ruchu włosów



Symulowanie dynamiki tkanin

Wyspecjalizowane systemy włosów i tkanin są w stanie tworzyć realistycznie wyglądające fryzury i ubrania, ale aby je ożywić, musimy skorzystać z dynamicznych właściwości tych obiektów. W tym rozdziale przyjrzymy się właśnie takim właściwościom. Używając wspomnianych systemów, możemy symulować włosy rozwiane na wietrze i tkaniny układające się na rozmaitych obiektach. Tworzenie i modelowanie włosów oraz tkanin zostało omówione w rozdziale 29., „Tworzenie i układanie włosów, futer oraz tkanin”.

Dynamika włosów Możliwość stylizowania włosów to wspaniała funkcja, ale czy nie zdarzyło Ci się, że po wyjściu z salonu fryzjerskiego pozwoliłeś, by ostatecznie to wiatr ukształtował Twoją fryzurę? Roleta Dynamics modyfikatora Hair and Fur umożliwia definiowanie specyficznych sił kształtujących ułożenie włosów. W stosowaniu sił działających na włosy staraj się zachować umiar, bo zbyt duża liczba tych sił lub zbyt duże ich wartości mogą łatwo zniweczyć cały Twój wysiłek włożony w ułożenie fryzury.

Ożywianie włosów Roleta Dynamics jest dostępna tylko wtedy, gdy obiektowi został przypisany modyfikator Hair and Fur (WSM). W jej górnej części znajdują się trzy opcje: None, Live i Precomputed. Jeśli wybierzesz tryb Live, włosy natychmiast ulegną działaniu grawitacji oraz

1196

Część X  Animacja dynamiczna

innym siłom i obwisną wokół obiektu, z którego wyrastają. Co więcej, jeśli przesuniesz ten obiekt w oknie widokowym, włosy popłyną za nim zupełnie tak samo jak stałoby się to w rzeczywistości. Na rysunku 44.1 widać prosty model myszy z nałożonymi włosami. Lewa część tego rysunku ilustruje sytuację istniejącą po wybraniu opcji None, a prawa — po wybraniu Live. Zwróć uwagę, jak włosy opadły wzdłuż powierzchni modelu. Rysunek 44.1. W trybie dynamiki Live włosy reagują na siły obecne w scenie w czasie rzeczywistym

Jeśli podczas pracy w trybie Live wciśniesz klawisz Escape, pojawi się okno dialogowe z opcjami zamrożenia (Freeze), zatrzymania (Stop) lub kontynuowania (Continue) symulacji. Jeśli wybierzesz opcję Freeze, włosy pozostaną w takim położeniu, w jakim znajdowały się w chwili przerwania symulacji. Tryb Precomputed jest dostępny dopiero po ustaleniu nazwy pliku w sekcji Stat Files. Tryb ten pozwala na zapisanie ruchów włosów w specjalnych plikach w formacie stat.

Ustawianie właściwości Aby uaktywnić funkcję dynamiki włosów, wystarczy zdefiniować zaledwie kilka właściwości. Roleta Dynamics zawiera kontrolki grawitacji (Gravity), sztywności (Stiffness), sprężystości (Springiness), utrzymania nasady (Root Hold) oraz zamoknięcia (Dampen). Właściwości te decydują o tym, jak włosy zachowują się w reakcji na siły działające w otoczeniu. Grawitacji można nadać wartość ujemną, a wtedy włosy zamiast opadać na dół, będą się jeżyć ku górze. Stan nieważkości można symulować, ustawiając ten parametr na zero. Ustawienie parametru Stiffness na 1,0 eliminuje wszelkie dynamiczne ruchy włosów. Jeśli chcesz, aby włosy w niewielkim stopniu poruszały się względem obiektu, który porastają, ustaw ich sztywność na poziomie bliskim 1,0. Root Hold działa podobnie jak Stiffness, ale dotyczy tylko nasady włosa. Zamoknięcie włosów (Dampen) powoduje szybkie wygasanie ich ruchów. Każdą z dynamicznych właściwości, z wyjątkiem grawitacji, można sterować za pomocą mapy (w skali szarości). Do wczytywania map służą przyciski widoczne na prawo od pól z wartościami poszczególnych właściwości.

Włączanie zderzeń W symulacji ruchu włosów ważną rolę odgrywają zderzenia między nimi i z innymi obiektami w scenie. Aby włączyć zderzenia włosów z obiektem, który porastają, należy po prostu zaznaczyć opcję Use Growth Object. Opcja ta jest dostępna, jeśli w sekcji Collisions włączone jest wykrywanie kolizji (opcja Sphere lub Polygon). Można także utworzyć listę innych obiektów, z którymi włosy będą się zderzać. W tym celu należy kliknąć przycisk Add i w oknie widokowym wskazać obiekt, który ma być dodany do tej listy. Dla

Rozdział 44.  Animowanie włosów i tkanin

1197

obiektów można wybrać, czy wykrywanie kolizji ma być realizowane w oparciu o abstrakcyjną kulę otaczającą obiekt (opcja Sphere), czy też rzeczywistą geometrię jego powierzchni (opcja Polygon). Druga opcja wymaga dłuższych obliczeń, ale jest dokładniejsza.

Uaktywnianie sił Oprócz wszędobylskiej grawitacji, możesz uaktywnić funkcję sterowania zderzeniami włosów z innymi obiektami w scenie. Aby uwzględnić obiekt w obliczeniach kolizyjnych, kliknij przycisk Add i zaznacz nowy obiekt. Lista External Forces (siły zewnętrzne) umożliwia wprowadzenie „do gry” dodatkowych pól sił, np. wiatru (Wind).

Uruchamianie symulacji Tryb Precomputed pozwala na zapisanie dynamiki włosów w odrębnym pliku. Jeśli chcesz w ten sposób zarejestrować symulację, musisz najpierw przygotować plik w formacie Stat. Do tego celu służy przycisk znajdujący się z prawej strony sekcji Stat Files. Po wskazaniu pliku kliknij przycisk Run w sekcji Simulation, a uruchomisz proces obliczeniowy. Pola Start i End pozwalają określić zakres symulacji. Dla każdej klatki animacji zostanie wygenerowany oddzielny plik stat. Jeśli użyjesz trybu Precomputed przed wyrenderowaniem symulacji, podczas renderowania zostaną wykorzystane pliki stat. Do usuwania tych plików służy przycisk o nieco zatrważającej nazwie Delete all files (usuń wszystkie pliki).

Ćwiczenie: Symulacja dynamiki włosów Włosy dynamicznie przepływają wokół innych, animowanych obiektów sceny. Aby to zilustrować, wprawimy w ruch głowę kobiety z fryzurą w stylu irokeza. Wybrałem tę fryzurę, bo jestem trendy, cool i mam naturę prawdziwego buntownika. A mówiąc serio, fryzura irokeza jest prosta i stwarza okazję do wypróbowania działania parametru Stiffness. Aby utworzyć symulację dynamiki włosów, wykonaj następujące czynności. 1. Otwórz plik Female head with mohawk.max, zapisany w folderze Chap 44 na płycie dołączonej do książki. Plik zawiera model kobiecej głowy. Jest to fragment całego modelu kobiety opracowanego w Zygote Media. Włosy zostały już utworzone i wystylizowane. 2. Kliknij przycisk Auto Key, przeciągnij suwak czasu do klatki nr 5 i w oknie widokowym Top przesuń postać w prawo. Następnie przeciągnij suwak czasu do klatki nr 10 i przesuń postać z powrotem w lewo. Ten prosty ruch powinien wystarczyć do przechylenia włosów w jedną i w drugą stronę. Kliknij ponownie przycisk Auto Key, aby wyłączyć tryb automatycznego tworzenia kluczy. 3. Po upewnieniu się, że głowa jest zaznaczona, rozwiń roletę Dynamics i ustaw wartość parametru Stiffness na 0,8. To powinno wyprostować włosy i ustawić je prostopadle do powierzchni głowy. Aby to sprawdzić, włącz tryb Live i zobacz, jak włosy zareagują.

1198

Część X  Animacja dynamiczna

4. Ustaw zakres symulacji od klatki zerowej do dziesiątej, a następnie przygotuj plik stat. Ścieżka do tego pliku będzie wyświetlana w sekcji Stat Files. Teraz kliknij przycisk Run, aby rozpocząć symulację. Wyniki obliczeń zostaną zapisane w plikach stat. 5. Włącz tryb Precomputed i przeciągnij suwak czasu w zakresie animacji, aby zobaczyć, co dzieje się z włosami. Na rysunku 44.2 widać, jak włosy przechylają się podczas ruchu głowy.

Rysunek 44.2. Wykonanie symulacji w trybie Precomputed może znacznie skrócić czas jej renderowania

Symulowanie dynamiki tkanin System włosów nie jest jedynym, który może wykorzystywać dynamiczne właściwości obiektów. Analogiczne symulacje można realizować z systemem tkanin. Nawet poszczególne etapy przygotowywania takiej symulacji są w obu tych systemach podobne. Najpierw trzeba określić właściwości tkaniny i zdefiniować działające na nią siły, a potem pozostaje już tylko uruchomić proces obliczania kolejnych faz ruchu.

Ustalanie parametrów tkanin i sił Aby do symulacji włączyć określone obiekty (tkaniny i obiekty kolizyjne), kliknij przycisk Object Properties w rolecie Object. W ten sposób otworzysz okno dialogowe Object Properties pokazane na rysunku 44.3. Kliknięcie przycisku Add Objects pozwala na

Rozdział 44.  Animowanie włosów i tkanin

1199

Rysunek 44.3. Okno dialogowe Object Properties pozwala zdefiniować właściwości tkanin i obiektów kolizyjnych

wskazanie obiektów, które mają być uwzględniane w symulacji. Obiekty, które nie zostaną umieszczone na widocznej tu liście, zostaną zignorowane. Po zaznaczeniu obiektu na liście można określić go jako obiekt nieaktywny (Inactive), tkaninę (Cloth) lub obiekt kolizyjny (Collision Object). Tkaninom i obiektom kolizyjnym można przypisać szereg rozmaitych właściwości. W przypadku tkanin możliwe jest także zapisywanie i wczytywanie zestawów ustawień. Ustawienia materiałów zapisywane są w plikach z rozszerzeniem .sti. Jeśli materiał ma tendencję do przenikania przez obiekty kolizyjne, spróbuj zwiększyć wartość parametru Offset dla tych ostatnich.

Po dołączeniu i zdefiniowaniu ustawień wszystkich obiektów uczestniczących w symulacji możesz określić jej zakres w rolecie Simulation Parameters. Początkowy stan fałdowanego obiektu można wyznaczyć za pomocą przycisku Set Initial State. Przycisk Cloth Forces w rolecie Object otwiera proste okno dialogowe, w którym możesz wskazać dodatkowe siły biorące udział w symulacji. Grawitacja (Gravity) jest włączana domyślnie, ale roleta Simulation Parameters umożliwia zmianę jej wartości.

Tworzenie symulacji tkaniny Po zdefiniowaniu stanu początkowego można uruchomić proces symulacji, klikając przycisk Simulate. Widok obiektów w oknie widokowym jest uaktualniany wraz z przeliczaniem kolejnych klatek. Kiedy obliczone zostaną już wszystkie klatki, możesz wówczas obejrzeć

1200

Część X  Animacja dynamiczna

całą symulację, przeciągając suwak czasu lub klikając przycisk Play Animation. Jeśli chciałbyś udrapować tkaninę bez tworzenia animacji, kliknij przycisk Simulate Local. Z kolei przycisk Simulate Local (damped) uruchamia symulację lokalną (bez tworzenia animacji), ale z wysokim tłumieniem, co jest użyteczne w sytuacji, gdy materiał fałduje się zbyt mocno. Aby wymazać symulację po zamianie parametrów, kliknij przycisk Erase Simulation. Użycie przycisku Truncate Simulation spowoduje usunięcie wszystkich klatek animacji następujących po klatce bieżącej. Jeśli przeliczanie symulacji zajmuje zbyt wiele czasu, możesz je przerwać, wciskając klawisz Esc.

Gdy chcesz zmodyfikować właściwości tkaniny lub siły, kliknij przycisk Erase Simulation, wprowadź zmiany i uruchom symulację jeszcze raz. Poszczególne ruchy można zachowywać jako klucze tworzone za pomocą przycisku Create Key. Na rysunku 44.4 przedstawiono płaski obiekt zrzucony na krzesło w 100-klatkowej symulacji.

Rysunek 44.4. Po zdefiniowaniu właściwości tkaniny oraz sił i uruchomieniu symulacji tkanina sama układa się na krześle

Podgląd naprężeń występujących w tkaninie Dla obiektów tkaninowych utworzonych przy użyciu modyfikatora Garment Maker istnieje możliwość wizualizacji naprężeń wewnętrznych. Wartości tych naprężeń są obrazowane odpowiednimi kolorami1, a ich zakres można regulować parametrem Tension w rolecie 1

Kolorem czerwonym oznaczane są naprężenia wywołane rozciąganiem, kolorem niebieskim — naprężenia wywołane ściskaniem, a kolor zielony oznacza miejsca bez naprężeń — przyp. tłum.

Rozdział 44.  Animowanie włosów i tkanin

1201

Simulation Parameters. Na rysunku 44.5 pokazano naprężenia występujące w tkaninie, z której wykonywaliśmy strój dla modelu kobiety w ćwiczeniu z rozdziału 29., „Tworzenie i układanie włosów, futer oraz tkanin”. Można także wybrać szew, który ulegnie rozpruciu, jeśli tkanina zostanie poddana działaniu dostatecznie dużej siły.

Rysunek 44.5. Dla tkanin tworzonych przy użyciu modyfikatora Garment Maker można włączyć wyświetlanie naprężeń wewnętrznych

Ćwiczenie: Przykrywanie samolotu plandeką Jako większy przykład zastosowania systemu tkanin wymodelujemy teraz plandekę przykrywającą odrzutowiec. Aby utworzyć symulację dynamiki ruchu obiektu z tkaniny, wykonaj następujące czynności. 1. Otwórz plik Sheet over Mig jet.max, zapisany w folderze Chap 44 na płycie dołączonej do książki. W pliku tym zawarty jest model samolotu Mig-29, przygotowany przez Viewpoint Datalabs. 2. Wybierz polecenie Create/Standard Primitives/Plane i w oknie widokowym Top narysuj płaski obiekt pokrywający cały model odrzutowca. Wartości Length i Width ustaw na 150, a Length Segment oraz Width Segment ustaw na 100, by zapewnić modelowi tkaniny odpowiednią rozdzielczość. Następnie, w oknie widokowym Front, przesuń obiekt Plane tak, by znajdował się nad samolotem.

1202

Część X  Animacja dynamiczna Tkaninę możesz utworzyć także z prostokątnego splajnu przez zastosowanie modyfikatora Garment Maker. Dzięki temu podział obiektu na ścianki elementarne zostanie wykonany w oparciu o metodę Delaunaya, która daje lepsze efekty niż tradycyjny podział na prostokąty, z jakim mamy do czynienia w przypadku obiektu Plane.

3. Zaznacz obiekt tkaniny i nałóż nań modyfikator Cloth, wybierając polecenie Modifiers/Cloth/Cloth. 4. Otwórz panel Modify i kliknij przycisk Object Properties w rolecie Object, otwierając tym sposobem okno dialogowe Object Properties. Zaznacz pozycję Plane01 na liście z lewej strony i włącz opcję Cloth. Następnie wybierz opcję Silk z rozwijanej listy Presets. Ustaw grubość materiału (Thickness) na 0.5. 5. Nie zamykając okna Object Properties, kliknij przycisk Add Objects, a następnie All i Add. Zaznacz wszystkie dodane obiekty na liście po lewej i wybierz opcję Collision Object, a następnie kliknij przycisk OK, zamykając okno dialogowe. 6. W rolecie Simulation Parameters włącz opcję End Frame i ustaw klatkę 100 jako końcową. Kliknij przycisk Simulate w rolecie Object. Materiał opadnie, pokrywając samolot i fałdując się na jego sylwetce. Na rysunku 44.6 zaprezentowano plandekę przykrywającą model samolotu.

Rysunek 44.6. System tkanin umożliwia obliczanie dynamiki ruchu materiałów

Rozdział 44.  Animowanie włosów i tkanin

1203

Podsumowanie Dzięki symulacjom dynamicznym można kontrolować obliczać ruchy włosów, futer i tkanin. W symulacjach tych uwzględniane są rozmaite siły i zderzenia z pozostałymi obiektami w scenie. W rozdziale tym omówione zostały następujące tematy: 

włączanie dynamiki włosów,



symulowanie dynamiki ruchu tkanin poprzez zainicjowanie procesu symulacyjnego.

W części XI, „Zaawansowane techniki oświetlania i renderingu”, poznamy wiele rozbudowanych funkcji związanych z oświetleniem i renderingiem, a rozpoczniemy od zaawansowanego systemu oświetlania sceny.

1204

Część X  Animacja dynamiczna

Część XI

Zaawansowane techniki oświetlania i renderingu W tej części: Rozdział 45. „Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna” Rozdział 46. „Stosowanie efektów renderowanych i atmosferycznych” Rozdział 47. „Renderery mental ray i iray” Rozdział 48. „Rendering wsadowy i sieciowy” Rozdział 49. „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”

Rozdział 45.

Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna W tym rozdziale: 

System zaawansowanego oświetlenia



Śledzenie światła



Ustawianie lokalnych parametrów zaawansowanego oświetlenia



Metoda energetyczna



Ustawianie globalnych parametrów zaawansowanego oświetlenia



Materiały współpracujące z zaawansowanym oświetleniem i narzędzia analizy oświetlenia

Jeśli po wejściu do ciemnego pokoju sięgnąłbyś do przełącznika światła, zdziwiłbyś się, znajdując oddzielny przełącznik dla światła zaawansowanego. Stosowanie zaawansowanego oświetlenia w Maksie jest warte zachodu. Dzięki niemu oświetlenie, które będziesz wykorzystywał w scenach, nabierze bardziej profesjonalnego charakteru. Ustawienia zaawansowanego oświetlenia w Maksie pozwalają na oświetlenie sceny za pomocą dwóch globalnych metod oświetlenia, znanych jako śledzenie światła (light tracing) i metoda energetyczna (radiosity). Obie metody opierają się na zjawisku odbicia światła od obiektów znajdujących się na jego drodze. Śledzenie światła zazwyczaj stosowane jest do scen plenerowych, w których oświetlenie składa się z pojedynczego silnego źródła światła oddalonego od sceny. Metoda ta obsługuje przesączanie się kolorów (color bleeding) pomiędzy powierzchniami. Śledzenie światła oferuje także delikatniejsze cienie.

1208

Część XI  Zaawansowane techniki oświetlania i renderingu

Metoda energetyczna pozwala na wyliczenie o wiele bardziej realistycznego oświetlenia niż to, jakie można osiągnąć przy użyciu świateł standardowych. W miarę poznawania możliwości oferowanych przez tę metodę przekonasz się, jak skomplikowany jest system jej ustawień i jak wiele trzeba zabiegów, by osiągnąć pożądany efekt.

Wybieranie zaawansowanego oświetlenia Ustawienia zaawansowanego oświetlenia w scenie są dostępne w panelu Advanced Lighting, który jest częścią okna dialogowego Render Setup. Dostęp do niego możesz uzyskać, wybierając polecenie Rendering/Light Tracer albo Rendering/Radiosity (lub wciskając klawisz 9). Panel Advanced Lighting zawiera roletę z listą rozwijaną, na której wskazujesz metodę oświetlenia. Do wyboru masz None (brak), Light Tracer i Radiosity. Opcje Light Tracer i Radiosity nie są dostępne, jeśli włączony jest renderer mental ray.

Śledzenie światła i metoda energetyczna to dwie różne metody zaawansowanego oświetlania sceny. Chociaż diametralnie się różnią, symulują podstawowy element realistycznego oświetlenia — odbicia światła (light bouncing). W rzeczywistości, kiedy światło trafia na daną powierzchnię, jego część odbija się i pada na inne powierzchnie. W swoich starszych wersjach Max nie obejmował tego zagadnienia, przez co użytkownik musiał dodawać do sceny wiele świateł, aby uzyskać wspomniany efekt. Obecnie zarówno metoda śledzenia światła, jak i energetyczna uwzględniają w obliczeniach odbijanie światła.

Zasada działania systemu Light Tracer System śledzenia światła (Light Tracer) jest systemem oświetlenia globalnego (Global Illumination — GI), podobnym do śledzenia promieni (raytracing), ale koncentruje się bardziej na obliczeniu odbić światła. Pozwala osiągnąć dość realistyczne rezultaty, a jednocześnie nie wymaga zbyt wielkiej mocy obliczeniowej. Również rendering efektów śledzenia światła przeprowadzany jest o wiele szybciej, niż ma to miejsce przy zastosowaniu metody energetycznej. System Light Tracer jest bardzo podobny do raytracingu, który został szerzej opisany w rozdziale 47, „Renderery mental ray i iray”.

System Light Tracer działa na zasadzie dzielenia sceny na punkty próbkowania. Są one silnie zagęszczone w okolicach krawędzi obiektów. Następnie wyimaginowany promień światła jest wystrzeliwany w kierunku każdego z tych punktów i rejestrowane jest natężenia światła w miejscu kontaktu promienia z powierzchnią. W dalszej kolejności wyznaczany jest kierunek odbicia światła i spadek jego natężenia. Jedna z opcji pozwala określić ilość odbić promieni w scenie — im jest ich więcej, tym dłużej trwa obliczanie oświetlenia sceny. Po wyznaczeniu przebiegu wszystkich promieni z uwzględnieniem ich odbić obliczane są całkowite natężenia światła w poszczególnych punktach próbkowania. Przezroczyste obiekty dzielą każdy promień na dwa. Jeden promień ulega odbiciu, drugi przechodzi przez obiekt. Obecność w scenie przezroczystych obiektów szybko podwaja ilość czasu potrzebnego do obliczenia oświetlenia.

Rozdział 45.  Zaawansowane oświetlenie

1209

W wyniku zastosowania śledzenia światła obiekty zazwyczaj ukryte w cieniu są o wiele lepiej widoczne. Na rysunku 45.1 przedstawiono model domu, który został najpierw wyrenderowany przy zastosowaniu standardowej metody oświetlenia z cieniami uzyskanymi metodą raytracingu, a następnie ponownie wyrenderowany przy użyciu systemu Light Tracer — obie sceny otwarte zostały jednocześnie w oknie modułu RAM Player w celu łatwego ich porównania. Zauważ, że wiele szczegółów ukrytych w cieniach pierwszego obrazu dobrze widać na drugim. Rysunek 45.1. Scena z domem wyrenderowana przy użyciu oświetlenia standardowego (po lewej) i systemu śledzenia światła (po prawej)

Włączanie śledzenia światła Gdy chcesz zastosować śledzenie światła w scenie, wybierz polecenie Rendering/Light Tracer, aby otworzyć panel Advanced Lighting w oknie dialogowym Render Setup, tak jak przedstawiono to na rysunku 45.2. Wartość mnożnika globalnego (Global Multiplier) wpływa na ogólne oświetlenie sceny realizowane za pomocą systemu Light Tracer w sposób pokrewny temu, w jaki robi to mnożnik źródła światła. Mnożnik globalny pozwala rozjaśnić scenę. Możesz także zwiększyć wartość mnożnika świateł nieboskłonu (Sky Lights). Parametr Object Multiplier określa ilość energii świetlnej odbijanej od obiektów.

Przesączanie się kolorów (color bleeding) Kolejną cechą oświetlenia globalnego jest przesączanie się kolorów. Kiedy promień światła trafia w powierzchnię i odbija się od niej, przenosi kolor trafionego obiektu na następny. W wyniku tego zjawiska kolory z jednego obiektu przesiąkają na sąsiednie obiekty. Można sterować tym efektem przy użyciu ustawienia Color Bleed. Łatwo wzmocnić efekt przenikania kolorów, zwiększając wartość Object Multiplier razem z wartością Color Bleed. Możesz także wybrać kolory, które zostaną wykorzystane jako filtr (Color Filter)i dodatkowe światło z otoczenia (Extra Ambient).

1210

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 45.2. Roleta Parameters systemu Light Tracer pozwala zmieniać ustawienia oświetlenia globalnego (GI)

Efekt przesączania się kolorów nie występuje, kiedy wartość Bounces (odbicia) będzie mniejsza od 2.

Przy stosowaniu przesączania kolorów należy również włączyć kontrolowanie ekspozycji w scenie (Exposure Control). Opcja ta znajduje się w panelu Environment, który możesz otworzyć przy użyciu polecenia Rendering/Environment (skrót klawiszowy 8). Podczas modyfikowania ustawień funkcji Exposure Control można uzyskać podgląd sceny, klikając przycisk Render Preview w rolecie Exposure Control okna dialogowego Environment and Effects. Opcje kontrolowania ekspozycji omówione są w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Na rysunku 45.3 przedstawiono przenikanie kolorów na przykładzie kilku barwnych cylindrów wystających z szarego obiektu typu Box. Wartość Object Multiplier została ustawiona na 4.0, a Color Bleed na maksimum, czyli 25.0 przy Bounces równej 3. Przy użyciu ustawień Exposure Control możesz ograniczyć przenikanie kolorów.

Rysunek 45.3. Przenikanie kolorów powoduje rozprzestrzenianie ich po całej scenie. Do sterowania tym zjawiskiem użyto tutaj ustawień Exposure Control: Automatic (po lewej) i Logarithmic (po prawej)

Rozdział 45.  Zaawansowane oświetlenie

1211

Jakość kontra szybkość Przy stosowaniu oświetlenia globalnego musisz się liczyć z koniecznością równoważenia jakości i czasu renderowania. Im więcej promieni określisz dla danej próbki, tym lepsza będzie jakość obrazu i tym dłuższy czas renderowania. Za liczbę promieni odpowiada parametr Rays/Sample. Wartość tej opcji razem z wartością Bounces ma wielki wpływ na czas renderowania sceny. Opcja Ray Bias odchyla promienie w kierunku krawędzi obiektu. Jeśli chcesz zobaczyć podgląd sceny przy użyciu śledzenia światła, ustaw wartość Rays/Sample na poziomie około 10% jej normalnej wartości i wyrenderuj scenę. Uzyskany obraz jest ziarnisty, ale pokazuje w przybliżeniu oświetlenie sceny bez konieczności zmiany wartości Bounce.

Jeśli nie włączysz odpowiedniej ilości promieni w scenie, wystąpi zjawisko szumu. Wartość Filter Size pozwala regulować jego intensywność. Wartość Bounces określa liczbę odbić danego promienia przed jego zanikiem w scenie. Ustawienie jej na poziomie 0 równoważne jest z wyłączeniem śledzenia światła. Maksymalna wartość, czyli 10, wymaga długiego czasu na obliczenia. Wartość Cone Angle określa kąt stożka, w którym rzutowane są promienie. Opcja Volumes jest mnożnikiem dla efektów pogodowych, takich jak Volume Light (światło wolumetryczne) i Volume Fog (mgła wolumetryczna).

Podpróbkowanie adaptacyjne Jeśli włączysz opcję Adaptive Undersampling, śledzenie światła skupi się na obszarach o największych kontrastach, które zazwyczaj pojawiają się wzdłuż krawędzi obiektów. Opcja ta pozwala na określenie odstępów pomiędzy próbkami i stopnia ich podpodziału. Parametr Initial Sample Spacing (wstępne odstępy między próbkami) może przybrać wartość od 1×1 do 32×32, co daje bardzo gęstą siatkę próbek. Wartość Subdivision Contrast wpływa na gęstość próbek na krawędzi kontrastu pomiędzy obiektami a cieniami. Jest to maksymalna dozwolona wartość kontrastu. Jeśli natężenie kontrastu jest większe niż to, które określono za pomocą tej wartości, obszar zostaje podzielony na więcej próbek. Dla obszarów o dużym kontraście program korzysta z parametru Subdivide Down To określającego minimalne odstępy między próbkami. Opcja Show Samples wyświetla w zrenderowanym obrazie każdą próbkę jako czerwoną kropkę.

Ćwiczenie: Podgląd przesączania się kolorów Jednym z najłatwiejszych do uzyskania efektów śledzenia światła jest przesączanie się kolorów. Często jest to efekt niepożądany, ale stanowi wyraźny dowód na to, że zastosowano oświetlenie globalne. Aby porównać różnice pomiędzy zwykłym renderingiem a śledzeniem światła, wykonaj następujące czynności. 1. Otwórz plik Hotplate.max z folderu Chap 45 znajdującego się na płycie dołączonej do książki. Plik ten zawiera prosty model płytki grzejnej.

1212

Część XI  Zaawansowane techniki oświetlania i renderingu

2. Otwórz panel Advanced Lighting, wybierając polecenie Rendering/Light Tracer (lub wciskając klawisz 9). W rolecie Parameters ustaw wartość Object Multiplier na 10, wartość Color Bleed na 25 i wartość Bounces na 1. 3. Z menu wybierz polecenie Rendering/Environment (8), aby otworzyć panel Environment and Effects. W rolecie Exposure Control wskaż opcję Linear Exposure Control i włącz opcję Process Background and Environment Maps. W rolecie Linear Exposure Control Parameters ustaw Brightness na 40. Wróć do rolety Exposure Control i kliknij przycisk Render Preview, aby obejrzeć podgląd uzyskanego rezultatu. 4. W oknie dialogowym Render Scene kliknij przycisk Render. Scena zostanie wyrenderowana w oknie Rendered Frame. Pamiętaj, że korzystanie z opcji zaawansowanego oświetlenia znacznie zwiększa czas renderowania.

Na rysunku 45.4 przedstawiono scenę wyrenderowaną przy zastosowaniu systemu zaawansowanego oświetlenia. Rysunek 45.4. Przesączanie się kolorów ma miejsce jedynie przy włączonym oświetleniu globalnym

Używanie lokalnych ustawień zaawansowanego oświetlenia Dla wybranych obiektów możesz ustawić opcje zaawansowanego oświetlenia na poziomie lokalnym przy użyciu okna dialogowego Object Properties, które jest pokazane na rysunku 45.5. U góry panelu Advanced Lighting w oknie dialogowym Object Properties znajduje się informacja o liczbie zaznaczonych obiektów i świateł. Okno dialogowe Object Properties można otworzyć za pomocą polecenia Edit/Object Properties. Opcja Exclude from Adv.

Rozdział 45.  Zaawansowane oświetlenie

1213

Rysunek 45.5. Panel Advanced Lighting w oknie dialogowym Object Properties pozwala wyłączyć zaawansowane oświetlenie

Lighting Calculations pozwala na określenie, czy dany obiekt powinien być wyłączony z obliczeń zaawansowanego oświetlenia. Właściwości można ustawiać dla obiektu (By Object) lub warstwy (By Layer). Jeśli obiekt bierze udział w obliczeniach, możesz ustalić, czy rzuca cienie (Cast Shadows), czy jest oświetlany (Receive Illumination) i jak współpracuje z metodą energetyczną (Radiosity). Parametr Number Regathering Rays Multiplier pozwala ustalić liczbę promieni rzucanych przez wybrany obiekt. W przypadku wielkich i gładkich powierzchni zwiększenie tego parametru może posłużyć do zmniejszania liczby artefaktów. Pozostałe ustawienia w tym panelu odnoszą się do metody energetycznej.

Ćwiczenie: Wyłączanie obiektów z systemu śledzenia światła Przy użyciu okna dialogowego Object Properties możesz wybrane obiekty wyłączyć z obliczeń śledzenia światła. Aby wyłączyć obiekty z procesu śledzenia światła, wykonaj następujące czynności. 1. Otwórz plik Hotplate.max z folderu Chap 45 znajdującego się na płycie dołączonej do książki. Plik zawiera prosty model płyty grzejnej. 2. Otwórz panel Advanced Lighting, wybierając polecenie Rendering/Light Tracer (lub wciskając klawisz 9). W rolecie Parameters ustaw wartość Bounces na 2.

1214

Część XI  Zaawansowane techniki oświetlania i renderingu

3. W oknie widokowym Front zaznacz obiekty wtyczki, kabla i podłoża, a następnie wybierz polecenie Edit/Object Properties, aby otworzyć okno dialogowe Properties dla wybranych obiektów. W oknie tym otwórz panel Advanced Lighting i włącz opcję Exclude from Advanced Lighting Calculations. Następnie kliknij przycisk OK. 4. W oknie dialogowym Render Setup kliknij przycisk Render. Spowoduje to wyrenderowanie sceny w oknie Rendered Frame. Na rysunku 45.6 przedstawiono scenę wyrenderowaną przy użyciu zaawansowanego oświetlenia, z którego wykluczono część obiektów. Rysunek 45.6. Przy wysokiej wartości Bounces przesączanie kolorów staje się o wiele bardziej wyraziste

Metoda energetyczna (Radiosity) Wyobraź sobie scenę, w której na parasol skierowane jest światło ze źródła umieszczonego bezpośrednio nad nim. Po wyrenderowaniu takiej sceny obiekt w cieniu parasola byłby praktycznie niewidoczny. Aby uniknąć takiej sytuacji, należałoby dodać kilka dodatkowych świateł pod parasolem i ustawić ich właściwości tak, by nie powodowały rzucania cieni. Chociaż taka metoda daje dobre rezultaty, należy pamiętać, że w rzeczywistości sprawa ma się nieco inaczej. Różnica pomiędzy sztuczką przedstawioną powyżej a rzeczywistością polega na efekcie odbijania energii świetlnej od powierzchni oświetlanych obiektów. To zjawisko pomaga mi zerknąć w głąb korytarza i stwierdzić, że światło w pokoju moich dzieci jest włączone, mimo iż powinny już dawno spać. Chociaż nie mogę zobaczyć światła bezpośrednio, wiem, że jest włączone, ponieważ odbija się od innych ścian. Metoda energetyczna to algorytm oświetlenia, który analizuje rozchodzenie się energii świetlnej w scenie. Za każdym razem, gdy cząstka światła, zwana fotonem, pada na jakąś powierzchnię, traci część swojej energii na rzecz obiektu, z którym się zderzyła. Im większa liczba takich zderzeń, tym bardziej realistyczny efekt oświetlenia, ale też dłuższy

Rozdział 45.  Zaawansowane oświetlenie

1215

czas obliczania efektu. Tak więc przy użyciu metody energetycznej obiekty pod parasolem będą dobrze widoczne, mimo że znajdują się w cieniu. Jednak w metodzie tej nie można wygenerować odbłysków. Metoda energetyczna używana jest zazwyczaj do symulowania oświetlenia scen we wnętrzach, ponieważ to w nich efekt odbijania światła jest najbardziej widoczny. Metoda ta, obok śledzenia światła, jest kolejnym sposobem na obliczanie oświetlenia globalnego. Na rysunku 45.7 przedstawiono muzealny eksponat dinozaura wyrenderowany przy użyciu metody energetycznej i bez niej. Łatwo zauważyć, jak ciemne są cienie w przypadku obrazu z normalnym oświetleniem. Rysunek 45.7. Scena oświetlona tradycyjnie (po lewej) i przy użyciu metody energetycznej (po prawej)

Oświetlenie dla metody energetycznej Ustawienia dla śledzenia światła i metody energetycznej zawarte są w panelu Advanced Lighting okna dialogowego Render Setup. Jest on dostępny po wybraniu polecenia Rendering/Radiosity lub wciśnięciu klawisza 9. Oświetlenie metodą energetyczną nie jest pokazywane, dopóki Max go nie obliczy. Możesz polecić, by to zrobił, klikając przycisk Start w rolecie Radiosity Processing Parameters. Wyniki obliczeń są zapisywane jako mapy światła (light maps). Można je łatwo nałożyć na scenę i oglądać w oknach podglądu. Jednak przy zmianie geometrii lub świateł sceny należy dokonać ponownego obliczenia oświetlenia. Roleta Radiosity Processing Parameters, widoczna na rysunku 45.8, pozwala na ustawienie jakości metody energetycznej. Możesz także określić liczbę iteracji dla całej sceny i wybranych obiektów. Iteracje są to kolejne etapy obliczeń. Wartość Initial Quality (jakość początkowa) określa dokładność rozprowadzenia energii świetlnej w scenie. Etap ten pomaga ustawić jasność sceny. Iteracje poprawiające (Refine Iterations) polepszają jakość oświetlenia wszystkich obiektów (All Objects) lub tylko wybranych (Selected Objects). Pozwala to ograniczyć ogólną liczbę iteracji w całym procesie. Sekcja Interactive Tools (narzędzia interaktywne) pozwala określić wartość filtrowania (Filtering). Większe wartości powodują usuwanie szumu między sąsiednimi powierzchniami poprzez uśrednianie oświetlenia pochodzącego ze wszystkich okolicznych powierzchni. Przycisk Setup zapewnia dostęp do rolety Exposure Control w panelu Environment. Możesz także wyłączyć wyświetlanie metody energetycznej w oknach podglądu (opcja Display Radiosity in Viewport).

1216

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 45.8. Roleta Radiosity Processing Parameters zawiera przyciski pozwalające na obliczenie oświetlenia

Rozdział 46., „Stosowanie efektów renderowanych i atmosferycznych”, zawiera omówienie rolety Exposure Control.

Zagęszczanie siatek na potrzeby metody energetycznej Kiedy zaczniesz eksperymentować z metodą energetyczną, szybko zorientujesz się, iż do osiągnięcia precyzyjnych efektów potrzebujesz dobrych, czystych modeli. Jeśli modele mają długie, wąskie ścianki, rezultaty zastosowania metody energetycznej stają się nieprzewidywalne. Roleta Radiosity Meshing Parameters zawiera opcję pozwalającą na włączenie podziału siatki i parametry Mesh Size określające stopień jej zagęszczenia. Ustawienia te przypominają wartość Size dla modyfikatora Subdivide, z tą różnicą, że mają zasięg globalny. Jeśli modelujesz pomieszczenie przy użyciu obiektu Box, pamiętaj, że obiekty tego typu mają wektory normalne jedynie po stronie zewnętrznej, a zatem ich wnętrza nie są prawidłowo oświetlane. Możesz to łatwo naprawić, nakładając na obiekt modyfikator Shell. Dzięki temu obiekt uzyska komplet dodatkowych ścianek z wektorami normalnymi skierowanymi do środka.

Używanie modyfikatora Subdivide Menu Modifiers zawiera podmenu dla modyfikatorów metody energetycznej. Znajdziemy w nim jedynie modyfikator Subdivide i jego wersję działającą w skali globalnej (World-Space Modifier). Modyfikator ten ma bardzo proste zastosowanie. Tworzy siatki o regularnych i jednakowych trójkątnych ściankach, doskonale sprawdzające się przy obliczaniu oświetlenia metodą energetyczną.

Rozdział 45.  Zaawansowane oświetlenie

1217

Chociaż modyfikator ten powstał na potrzeby metody energetycznej, jest przydatny również w innych sytuacjach, gdy wymagane są ścianki o regularnych kształtach, np. podczas konstruowania obiektów złożonych, takich jak Boolean czy Terrain.

Roleta Parameters zawiera wartość Size, która określa gęstość siatki. Im mniejsza wartość, tym gęściejsza siatka i lepszy wynik obliczania oświetlenia metodą energetyczną, ale też dłuższy czas przeprowadzania obliczeń. Ten sam parametr Subdivision Size można znaleźć (i ustawić globalnie) w rolecie Radiosity Meshing Parameters w panelu Advanced Lighting. Został on również umieszczony w panelu Advanced Lighting okna dialogowego Object Properties. Na rysunku 45.9 widoczny jest prosty sześcian z nałożonym modyfikatorem Subdivide o wartości Size ustawionej na 50, 30, 25, 20 i 12 (od lewej do prawej). Rysunek 45.9. Modyfikator Subdivide nadaje wszystkim ściankom siatki jednakową, trójkątną formę Jeśli chcesz zmieniać wartość parametru Size przez przeciąganie spinera, ustaw funkcję Update na tryb Manual; inaczej będziesz musiał długo czekać, zanim Max obliczy bardzo gęstą siatkę. Możesz także wyłączyć opcję Display Subdivision.

Ćwiczenie: Przygotowywanie siatki do zastosowania metody energetycznej Jeżeli szukasz kształtów z długimi, wąskimi i nieregularnymi ściankami, wystarczy przypomnieć sobie o złożonych obiektach boolowskich (Boolean). Zazwyczaj zawierają one dziwne kąty, które szpecą cały kształt. Nie należy się jednak martwić, ponieważ takie siatki dają się łatwo dzielić na regularne trójkąty. Aby podzielić nieregularny kształt, który potem zostanie wykorzystany w obliczeniach metody energetycznej, wykonaj następujące czynności. 1. Otwórz plik Boolean object.max z folderu Chap 45 znajdującego się na płycie dołączonej do książki. Plik zawiera dwie kopie obiektu typu Box z odjętymi od nich łukowymi kształtami boolowskimi. 2. Zaznacz górny obiekt i wybierz polecenie Modifiers/Radiosity/Subdivide. Spowoduje to nałożenie modyfikatora Subdivide na obiekt. 3. W rolecie Parameters wybierz opcję aktualizacji Manual, ustaw wartość Size na 5.0 i kliknij przycisk Update Now. Jeśli włączona jest opcja Display Subdivision, wprowadzone zmiany będą widoczne w oknie widokowym. 4. Otwórz panel Advanced Lighting przy użyciu polecenia Rendering/Radiosity (lub wciskając klawisz 9). Z rozwijanej listy wybierz Radiosity.

1218

Część XI  Zaawansowane techniki oświetlania i renderingu

Na rysunku 45.10 przedstawiono dwa obiekty z nałożonym modyfikatorem Subdivide i bez niego. Górny obiekt jest gotów do zastosowania metody energetycznej.

Rysunek 45.10. Dzielenie nieregularnej siatki przygotowuje ją do użycia metody energetycznej

Malowanie światłem (Light Painting) Roleta Light Painting (znajdująca się w panelu Advanced Lighting okna dialogowego Render Setup), widoczna na rysunku 45.11, zawiera przyciski pozwalające na dodawanie oświetlenia (Add illumination to a surface), odejmowanie oświetlenia (Subtract illumination from a surface) i wybieranie wartości oświetlenia ze sceny (Pick illumination from a surface). Przy użyciu tych narzędzi możesz malować oświetleniem obiekty w scenie. Przycisk Clear usuwa wszystkie zmiany, które w ten sposób zostały wprowadzone.

Rysunek 45.11. Ponieważ oświetlenie jest zapisywane w postaci mapy światła, możesz je modyfikować za pomocą pędzla

Parametry i statystyki renderowania Ustawienia w rolecie Rendering Parameters (widocznej na rysunku 45.12) są wykorzystywane w procesie renderowania. Opcje Re-Use i Render Direct Illumination pozwalają na ponowne użycie istniejącego efektu metody energetycznej przy renderowaniu lub też

Rozdział 45.  Zaawansowane oświetlenie

1219

Rysunek 45.12. Rolety Rendering Parameters i Statistics zawierają opcje i statystyki metody energetycznej

ponowne obliczenie takiego efektu jako części procesu renderingu. Dzięki temu będziesz mógł zaoszczędzić trochę czasu. Opcja Regather Indirect Illumination włącza do obliczeń etap podobny do tego, jaki jest stosowany w metodzie śledzenia światła, co w rezultacie daje obraz wykorzystujący najlepsze elementy obu metod. Opcje dostępne w ramach tego ustawienia są takie same jak te, które można określić dla śledzenia światła. Roleta Statistics zawiera informacje na temat procesu metody energetycznej. Wykorzystując je, możesz określić, czy ustawienia są zbyt wysokie, czy też zbyt niskie.

Ćwiczenie: Oświetlenie wnętrza budynku przy użyciu metody energetycznej Metoda energetyczna najlepiej sprawdza się we wnętrzach lub terenie zabudowanym. W scenie, którą wykorzystamy w tym ćwiczeniu, jedynymi źródłami światła są: system Daylight i umieszczona z przodu lampa Omni. Aby przy użyciu metody energetycznej oświetlić wnętrze budynku, wykonaj następujące czynności. 1. Otwórz plik House interior.max z folderu Chap 45 znajdującego się na płycie dołączonej do książki. 2. Otwórz panel Advanced Lighting za pomocą polecenia Rendering/Radiosity (lub klawisza 9). Z rozwijanej listy w rolecie Select Advanced Lighting wybierz opcję Radiosity. 3. W rolecie Radiosity Processing Parameters ustaw wartość Refine Iterations na 2 i kliknij przycisk Start, aby obliczyć efekt metody energetycznej. 4. W rolecie Rendering Parameters włącz opcje Render Direct Illumination, Regather Indirect Illumination i Adaptive Sampling. Na koniec kliknij przycisk Render, aby rozpocząć proces renderowania. Na rysunku 45.13 przedstawiono wyrenderowane wnętrze domu. Zauważ, że wszystkie powierzchnie są dobrze oświetlone, chociaż w scenie znajduje się tak niewiele źródeł światła.

1220

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 45.13. Metoda energetyczna w tej scenie sprawia, że cały pokój jest odpowiednio oświetlony

To samo wnętrze wyrenderujemy z użyciem renderera mental ray w rozdziale 47., „Renderery mental ray i iray”.

Używanie lokalnych i globalnych ustawień zaawansowanego oświetlenia Analogicznie do ustawień śledzenia światła, możesz użyć ustawień oświetlenia zaawansowanego na poziomie lokalnym dla wybranych obiektów, korzystając z okna dialogowego otwieranego poleceniem Edit/Object Properties. Okno to zawiera panel Advanced Lighting i kilka ustawień, które pozwalają kontrolować metodę energetyczną. Dla wybranych obiektów możesz ustalić, czy rzucają cienie (Cast Shadows) i są oświetlane (Receive Illumination). Przy stosowaniu metody energetycznej możesz również włączyć lub wyłączyć dyfuzję (Diffuse), odblaski (Specular), wykluczenie z procesu ponownego zbierania energii świetlnej (Exclude from Regathering) i podpodziały (Subdividing). Wartość Radiosity Refine Iterations pozwala na określenie liczby powtórzeń procesu zmniejszania różnic między sąsiednimi ściankami obiektu. Parametr ten można traktować jak ustawienie jakości oświetlenia. Można go stosować w odniesieniu do wszystkich obiektów lub tylko zaznaczonych. Jeśli zaznaczone jest jakiekolwiek źródło światła, za pomocą opcji z rolety Light Object Radiosity Properties możesz wyłączyć go z obliczeń metody energetycznej lub zapisać wartości oświetlenia wraz z siatką. Okno dialogowe Preference Settings również zawiera panel Radiosity, widoczny na rysunku 45.14. Przy jego użyciu możesz ustawić właściwości oświetlenia zaawansowanego dla wszystkich obiektów.

Rozdział 45.  Zaawansowane oświetlenie

1221

Rysunek 45.14. Przy użyciu panelu Radiosity w oknie dialogowym Preference Settings możesz ustawić parametry globalne metody energetycznej

W sekcji Material Editor panelu Radiosity okna dialogowego Preference Settings znajduje się opcja Display Reflectance & Transmittance Information (wyświetl informacje o odbijaniu i przepuszczalności). Jeśli jest włączona, informacje te (średnia i maksymalna wartość procentowa) zostaną wyświetlone bezpośrednio pod próbkami materiałów. Możesz również ustawić wyświetlanie efektu metody energetycznej w oknach widokowych i automatyczne obliczanie wszystkich iteracji poprawiających jakość oświetlenia określonych w oknie dialogowym Object Properties dla danego obiektu. Obliczanie efektu metody energetycznej spowoduje, zależnie od sytuacji, wyświetlenie okien dialogowych z ostrzeżeniami. Jedno z nich pojawia się przy zmianie aktualnych ustawień, a drugie — kiedy następuje aktualizacja efektu po kliknięciu przycisku Start. Możesz wyłączyć pojawianie się tych ostrzeżeń. Ostatnia z dostępnych opcji pozwala zapisać efekt metody energetycznej w pliku Maksa. To nieznacznie zwiększy jego rozmiar, ale nie wymaga ponownego obliczania oświetlenia po ponownym otwarciu pliku.

Materiały współpracujące z oświetleniem zaawansowanym Zastosowanie zaawansowanego oświetlenia może mieć bezpośredni wpływ na materiały użyte w scenie. Edytor materiałów zawiera dwa materiały, Advanced Lighting Override i Lightscape, które mogą być przydatne przy stosowaniu zaawansowanego oświetlenia.

Materiał typu Advanced Lighting Override Materiał Advanced Lighting Override zawiera parametry, które nadpisują globalne ustawienia oświetlenia zaawansowanego. Pozwalają one na ustawienie wartości Reflectance (odbijanie), Color Bleed (przesączanie się koloru), Transmittance (przepuszczalność),

1222

Część XI  Zaawansowane techniki oświetlania i renderingu

Luminance (luminancja) i Bump Map Scale (skala mapy nierówności) wykorzystywanych przez materiał. Dzięki temu możesz określić własne parametry oświetlenia dla danego materiału. Materiał Advanced Lighting Override nie musi być nakładany na wszystkie obiekty, które będą korzystały z oświetlenia zaawansowanego. Można go używać do zastępowania istniejących ustawień sceny w przypadku konkretnych materiałów.

Przykładem zastosowania tego materiału może być wspomniana wcześniej płytka grzejna. Zamiast wykluczania obiektów z obliczeń oświetlenia zaawansowanego możesz użyć panelu Light Tracer, aby ustawić właściwości globalne dla sceny i nałożyć na zwój grzałki materiał typu Advanced Lighting Override z wyższą wartością Color Bleed. Wtedy przesączanie się koloru będzie dotyczyło tylko grzałki, ale nie całej sceny. Innym powszechnym zastosowaniem tego materiału jest wykorzystanie wartości Luminance Scale do samooświetlenia materiałów, aby zwiększyć ogólną ilość energii świetlnej do obliczeń oświetlenia globalnego. Inaczej mówiąc, zwiększanie tej wartości sprawia, że materiał staje się dodatkowym źródłem światła. Parametry materiału typu Advanced Lighting Override, widoczne na rysunku 45.15, pozwalają na ustawienie wykorzystywanych przez niego wartości Reflectance, Color Bleed, Transmittance, Luminance i Indirect Light Bump Scale. Rysunek 45.15. Roleta Advanced Lighting Override Material określa interakcję światła z materiałem

Materiał typu Lightscape Materiał typu Lightscape można nałożyć na obiekty importowane z programu Lightscape. Są one wykorzystywane do sterowania mapowaniem efektu energetycznego na obiektach. Roleta Basic Parameters zawiera wartości Brightness (jasność), Contrast (kontrast), Ambient Light (światło z otoczenia) i Bump Amount (współczynnik nierówności). Możesz także włączyć opcje Daylight (światło dzienne) i Exterior Scene (scena plenerowa). Wartości te są dodawane do materiału podstawowego.

Rozdział 45.  Zaawansowane oświetlenie

1223

Korzystanie z analizy oświetlenia (Lighting Analysis) Do uzyskania informacji o aktualnie stosowanej metodzie oświetlenia możesz użyć narzędzia Lighting Analysis Assistant. Aby było dostępne, scena musi korzystać z jakiejś metody oświetlenia. Możesz uzyskać do niego dostęp za pomocą polecenia Lighting Analysis, które otwiera okno dialogowe Lighting Analysis Assistant, widoczne na rysunku 45.16. Rysunek 45.16. Okno dialogowe Lighting Analysis Assistant wyświetla wartości światła w wybranym miejscu sceny

Analiza oświetlenia jest dostępna tylko w 3ds Max 2012 Design.

Aby narzędzie Lighting Analysis Assistant mogło zadziałać, należy wcześniej włączyć renderer mental ray i skonfigurować system oświetleniowy w oparciu o rzeczywiste parametry i światła fotometryczne. Jeśli któryś z tych warunków nie będzie spełniony, na liście ustawień w panelu General pojawi się stosowna informacja wypisana pogrubioną czcionką. Po wprowadzeniu zmian możesz kliknąć przycisk Update Status, aby dokonać ponownego sprawdzenia prawidłowości ustawień. Panel General pozwala także skonfigurować spektrum barw, które zostaną nałożone na scenę w celu zobrazowania rozkładu natężenia światła. Jest to bardzo pomocne w identyfikowaniu obszarów zbyt ciemnych lub za mocno oświetlonych. Panel Lighting wyświetla ustawienia systemu oświetleniowego i umożliwia ich modyfikowanie. Jeśli jakieś światło okaże się niewłaściwe, zostanie tutaj wskazane. Kliknięcie przycisku Select Invalid Light pozwala wybrać takie światło i wyłączyć je w panelu Modify.

1224

Część XI  Zaawansowane techniki oświetlania i renderingu

Narzędzie analizujące oświetlenie wymaga także, aby wszystkie materiały w scenie miały odpowiednie parametry fizyczne — powinny to być materiały mental ray z grupy architektonicznych lub profesjonalne (ProMaterials). Materiały niewłaściwe zostaną wypisane, a ich lista może być długa, jeśli scena jest mocno rozbudowana. Korzystając z przycisku Assign Generic Valid Materials to Selected Objects, można szybko zastąpić takie materiały właściwymi. Panel z wynikami analizy (Analysis Output) zawiera przycisk do tworzenia światłomierza (Create a Light Meter), którym można mierzyć natężenie światła w określonych miejscach sceny. Światłomierze można kreować także za pomocą polecenia Create/ Helpers/LightMeter. Gdy klikniesz przycisk Calculate All Light Meters Now w panelu Analysis Output, scena zostanie zrenderowana, a wyniki pomiarów poszczególnych światłomierzy zostaną wyświetlone w oknach widokowych. Wyniki te mogą być także wyeksportowane do pliku CSV. Światłomierze mogą rejestrować natężenie oświetlenia całkowitego (Total Illuminance), bezpośredniego (Direct Illuminance), pośredniego (Indirect Illuminance) lub dziennego (Daylight Factor). Panel Analysis Output zawiera także przycisk Create Image Overlay Render Effect, którego włączenie powoduje nałożenie na wyrenderowany obraz efektu w postaci siatki danych z poziomami oświetlenia w całej scenie. Dane są widoczne w oknie Rendered Frame (patrz rysunek 45.17). Rysunek 45.17. Narzędzie Lighting Analysis Assistant może wyrenderować scenę z wartościami natężenia oświetlenia

Podsumowanie Oświetlenie zaawansowane to nowa metoda rozświetlania scen. Zaawansowane metody oferują szeroki wachlarz opcji. Dostępne są dwie globalne metody oświetlenia, czyli śledzenie światła (light tracing) i metoda energetyczna (radiosity). W tym rozdziale zapoznałeś się z następującymi zagadnieniami:

Rozdział 45.  Zaawansowane oświetlenie

1225



włączanie oświetlenia zaawansowanego,



używanie metody śledzenia światła,



określanie lokalnych ustawień oświetlenia zaawansowanego,



stosowanie metody energetycznej,



korzystanie z modyfikatora Subdivide,



ustawianie lokalnych i globalnych opcji oświetlenia zaawansowanego,



używanie materiałów oświetlenia zaawansowanego i narzędzia analizy oświetlenia (Lighting Analysis Assistant).

W następnym rozdziale zajmiemy się ogniem, dymem i efektami atmosferycznymi. Poznasz również rozmaite efekty renderowane, jakie Max może generować.

1226

Część XI  Zaawansowane techniki oświetlania i renderingu

Rozdział 46.

Stosowanie efektów renderowanych i atmosferycznych W tym rozdziale: 

Ustawianie ekspozycji sceny



Ustawianie efektów atmosferycznych za pomocą gizm



Efekt ognia (Fire)



Mgła (Fog)



Dodawanie efektów renderowanych (Render Effects)



Symulowanie efektów obiektywu w postaci blasku, promieni i smug



Objaśnienie innych typów efektów renderowanych

W prawdziwym świecie wszystkie obiekty występują w określonym środowisku. Środowisko to ma duży wpływ na klimat sceny. Przykładowo animacja, której akcja osadzona jest w nocy, w lesie, będzie miała zupełnie inne otoczenie niż animacja wyścigów konnych w środku dnia. Max zawiera okna dialogowe służące do określania koloru lub obrazu tła oraz innych ustawień środowiska; opcje te pomagają nadać charakter naszej scenie. W rozdziale tym omówimy ustawienia ekspozycji, efekty atmosferyczne, takie jak chmury, mgła i ogień. Efekty te widoczne są dopiero na wyrenderowanym obrazie sceny. Max posiada także pewien rodzaj efektów, które możemy interaktywnie dodawać w oknie Rendered Frame, bez korzystania z opcji postprodukcyjnych, takich jak okno Video Post. Są to tzw. efekty renderowane (Render Effects). Stosowanie ich może oszczędzić mnóstwo czasu, który normalnie musiałbyś poświęcić na renderowanie obrazu, retuszowanie go i powtarzanie tego procesu w kółko.

1228

Część XI  Zaawansowane techniki oświetlania i renderingu

Ustawianie ekspozycji Roleta Exposure Control panelu Environment pozwala kontrolować wyjściowe poziomy i zakresy renderowania kolorów. Aby uzyskać dostęp do panelu Environment, należy z głównego menu wybrać polecenie Rendering/Environment lub wcisnąć klawisz 8. Ustawienie ekspozycji należy do podstawowych procedur wykonywanych podczas filmowania lub fotografowania i może zaowocować odmiennym wyglądem sceny. Włączenie sterowania ekspozycją może nadać renderowanym obrazom większy zakres dynamiki, dzięki czemu stają się one bliższe tego, co widzimy w prawdziwym świecie. Jeśli wcześniej pracowałeś z narzędziem Histogram w Photoshopie, powinieneś rozumieć znaczenie i siłę kontrolek z rolety Exposure Control. Domyślny wybór to Automatic Exposure Control. Opcja Active pozwala włączać i wyłączać tę funkcję. Opcja Process Background and Environment Maps powoduje, że ustawienia ekspozycji mają też wpływ na tło i mapy środowiska. Kiedy opcja ta jest wyłączona, ustawienia ekspozycji wpływają tylko na wygląd obiektów w scenie. Roleta Exposure Control zawiera także przycisk Render Preview, który wyświetla zrenderowaną scenę w malutkim okienku. Podgląd jest mały, ale dla większości typów ekspozycji wystarczający. Po kliknięciu przycisku Render Preview scena zostanie zrenderowana. Podgląd aktualizuje się automatycznie przy każdej zmianie ustawień.

Kontrole ekspozycji: automatyczna, liniowa i logarytmiczna Wybranie z rozwijanej listy opcji Automatic Exposure Control automatycznie dopasuje wyrenderowany rezultat, aby był bliższy tego, co mogą dostrzec nasze oczy. Ta opcja tak ustawia parametry renderingu, aby maksymalnie dopasować obraz do szerokiego zakresu dynamiki naszych oczu. Trzeba jednak liczyć się z tym, że monitory często ograniczają zakres dynamiki wyświetlanego obrazu. Kiedy wybierzemy opcję Automatic Exposure Control, w panelu Environment pojawi się nowa roleta z parametrami Brightness (jasność), Contrast (kontrast), Exposure Value (wartość ekspozycji) i Physical Scale (skala fizyczna). Możemy tu także włączyć funkcję korekcji kolorów (Color Correction), wybrać dla niej kolor i włączyć opcję odbarwiania ciemnych obszarów (Desaturate Low Levels). Ustawienia parametrów Brightness i Contrast mogą przybierać wartości z zakresu od 0 do 100. Wartość parametru Contrast równa 0 wyświetli wszystkie obiekty sceny w tym samym odcieniu szarości, a wartość Brightness równa 100, wyświetli wszystkie obiekty sceny w tym samym ostrym białym kolorze. Wartość Exposure Value może przybrać wartość od –5 do 5 i określa dopuszczalną zawartość światła w scenie. Inną opcją kontrolującą ekspozycję jest Linear Exposure Control. Mimo że zawiera te same ustawienia, co opcja Automatic Exposure Control, różni się od niej tym, że stosuje liniowy rozkład poszczególnych wartości. Opcja Logarithmic Exposure Control zastępuje parametr Exposure Value ustawieniem Mid Tones (tony średnie). Kontroluje ono kolory pomiędzy najniższymi a najwyższymi wartościami. Pojawiają się także nowe opcje: Affect Indirect Only (wpływaj tylko na oświe-

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1229

Trudno dokładnie powiedzieć, kiedy należy użyć odpowiednich ustawień ekspozycji. Dla obrazów statycznych najlepsza jest opcja Automatic Exposure Control, ale przy animacji powinniśmy skorzystać z Logarithmic Exposure Control. Opcja Automatic jest także dobrym wyborem dla scen z wieloma efektami świetlnymi. Opcja Linear Exposure Control powinna być używana dla scen o niskiej dynamice kolorów, takich jak sceny nocne lub z zachmurzonym niebem.

tlenie pośrednie) i Exterior Daylight (zewnętrzne światło dzienne). Powinniśmy uaktywnić opcję Affect Indirect Only, jeśli w scenie korzystamy tylko ze standardowych świateł, ale jeśli scena zawiera światło IES Sun, wtedy uaktywniamy opcję Exterior Daylight, aby stonować intensywność oświetlenia. Gdy włączamy oświetlenie zaawansowane, zawsze powinniśmy używać ustawienia Logarithmic Exposure Control, ponieważ działa dobrze z tego typu oświetleniem. Więcej o zaawansowanym oświetleniu radiosity dowiesz się w rozdziale 45., „Zaawansowane oświetlenie, śledzenie światła i metoda energetyczna”.

Kontrola ekspozycji metodą Pseudo Color Podczas pracy z zaawansowanym oświetleniem i radiosity określenie, czy wewnętrzne przestrzenie i obiekty mają zbyt dużo światła, czy też za mało, może być trudne, szczególnie przy porównaniu obiektów po przeciwnych stronach sceny. W takich sytuacjach przydatna staje się opcja Pseudo Color Exposure Control. Ta opcja kontroli naświetlania pokazuje zamiast koloru materiału lub obiektu skalę kolorów (lub odcieni szarości), która reprezentuje wartości natężenia oświetlenia (Illuminance) lub luminancji (Luminance). Za pomocą tych pseudokolorów możemy szybko ustalić, gdzie skupia się całe światło i gdzie powinno być skierowane. W rolecie Pseudo Color Exposure Control, pokazanej na rysunku 46.1, możemy przypisać kolory, aby ukazać rozkład natężenia oświetlenia i luminancji. Możemy także wybrać wersję Colored (kolory) lub Greyscale (skala szarości), a także sprawić, że skala stanie się liniowa (Linear) lub logarytmiczna (Logarythmic). Ustawienia Min i Max pozwalają na kontrolę zakresu kolorów, jest także ustawienie Physical Scale. Skala koloru (lub odcieni szarości) pokazana jest na dole rolety. Rysunek 46.1. Funkcja Pseudo Color Exposure Control wyświetla wartości luminancji lub natężenia oświetlenia w postaci odpowiednich kolorów

Po wybraniu tego typu kontroli naświetlania odpowiedni element renderingu zostaje automatycznie ustawiony w rolecie Render Elements okna dialogowego Render Setup. Gdy zrenderujemy scenę, zrenderowany zostanie także właściwy (Illumination lub Luminance) element renderingu.

1230

Część XI  Zaawansowane techniki oświetlania i renderingu Więcej na temat elementów renderingu znajdziesz w rozdziale 49., „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”.

Ustawianie ekspozycji metodą fotograficzną Osobom obeznanym z takimi pojęciami jak czas otwarcia migawki (Shutter Speed), przysłona (Aperture) i czułość filmu (Film Speed) Max oferuje roletę mr Photographic Exposure Control, umożliwiającą ustawianie ekspozycji za pomocą takich właśnie parametrów. Ale nawet ci, którzy nigdy nie ustawiali ekspozycji w aparacie fotograficznym, mogą skorzystać z gotowych zestawów ustawień dostępnych na liście rozwijanej w górnej części rolety (patrz rysunek 46.2). Rysunek 46.2. Roleta mr Photographic Exposure Control umożliwia ustawienie ekspozycji za pomocą parametrów stosowanych w fotografii

Ustawianie ekspozycji metodą fotograficzną jest możliwe tylko po wybraniu renderera mental ray.

Ćwiczenie: Stosowanie logarytmicznej kontroli ekspozycji Gdy zaczniesz używać nowych świateł fotometrycznych, przekonasz się, jak trudno uzyskać prawidłowe ustawienia. Uzyskiwany obraz często staje się przesycony lub niedosycony, ale na szczęście funkcja Logarithmic Exposure Control potrafi szybko rozwiązać takie problemy. Aby wyregulować efekt światła fotometrycznego, korzystając z opcji Logarithmic Exposure Control, wykonaj następujące czynności. 1. Otwórz plik Array of chrome spheres.max znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera mnóstwo chromowanych kul oraz ma włączone oświetlenie zaawansowane.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1231

2. Wybierz polecenie Rendering/Render Setup (lub wciśnij klawisz F10), aby otworzyć okno dialogowe Render Setup, po czym kliknij przycisk Render. Rendering zajmie chwilę, ale zwróć uwagę na rezultat pokazany w lewej części rysunku 46.3. Rysunek 46.3. Ten rendering pokazuje obraz przed aktywacją kontroli naświetlania i po jej włączeniu

3. Wybierz polecenie Rendering/Environment (lub wciśnij klawisz 8), aby otworzyć okno dialogowe Environment and Effects. W rolecie Exposure Control wybierz z rozwijanej listy pozycję Logarithmic Exposure Control i uaktywnij opcje Active oraz Process Background and Environment Maps. Teraz kliknij przycisk Render Preview. 4. W rolecie Logarithmic Exposure Control ustal wartość parametru Brightness na 60, Contrast na 100 i uaktywnij opcję Desaturate Low Levels. 5. W oknie dialogowym Render Scene kliknij ponownie przycisk Render, aby zobaczyć zaktualizowany rendering. W prawej części rysunku 46.3 pokazano zrenderowany obraz z włączoną kontrolą ekspozycji.

Tworzenie efektów atmosferycznych Okno dialogowe Environment and Effects (skrót klawiszowy 8) zawiera rolety, w których możemy dodawać do sceny efekty atmosferyczne, ale najpierw należy zadać sobie pytanie, w jakim dokładnie miejscu efekty te mają być zlokalizowane. Efekt atmosferyczny umieszczany jest w obrębie pojemnika zwanego gizmem, który wyznacza miejsce występowania danego efektu, ale tylko ogień (Fire) i wolumetryczna mgła (Volume Fog) wymagają utworzenia takiego gizma. Aby utworzyć gizmo efektu atmosferycznego, wybieramy polecenie Create/Helpers/Atmospherics i zaznaczamy typ gizma. Do wyboru są trzy typy gizma efektów atmosferycznych: Box Gizmo (gizmo sześcienne), Sphere Gizmo (kuliste) i Cylinder Gizmo (cylindryczne). Każde z nich ma odmienny kształt zbliżony do brył parametrycznych.

Praca z gizmami efektów atmosferycznych Po zaznaczeniu gizma i otwarciu panelu Modify pojawią się dwie rolety — jedna służy do określania podstawowych parametrów, takich jak wymiary gizma, a druga, o nazwie Atmospheres & Effects, używana jest do dodawania lub usuwania z gizma efektów

1232

Część XI  Zaawansowane techniki oświetlania i renderingu

atmosferycznych. Każda roleta z parametrami gizma zawiera parametr Seed i przycisk New Seed. Wartość Seed ustala losową liczbę używaną do przeliczenia efektu atmosferycznego, a przycisk New Seed automatycznie generuje nową, losową wartość Seed. Dwa gizma o takich samych wartościach Seed dają prawie identyczne rezultaty.

Dodawanie efektów do sceny Przycisk Add otwiera okno dialogowe Add Atmosphere, gdzie możemy wybrać efekt atmosferyczny. Wybrany efekt znajdzie się wtedy na liście w rolecie Atmospheres & Effects. Efekty usuwamy, wybierając je z listy i klikając przycisk Delete. Po wybraniu efektu z listy dostępny jest przycisk Setup. Otwiera on okno dialogowe Environment and Effects. Możliwość dodawania efektów w panelu Modify została wprowadzona jedynie dla naszej wygody. Równie dobrze mogą być one dodane w oknie dialogowym Environment and Effects. Niezależnie od panelu Modify możemy dodać efekty atmosferyczne do sceny, korzystając z pokazanej na rysunku 46.4 rolety Atmosphere, w oknie dialogowym Environment and Effects. Roleta ta wygląda nudnawo, dopóki nie dodamy jakiegoś efektu. A robimy to za pomocą przycisku Add. Otwiera się wtedy okno dialogowe Add Atmospheric Effect, zawierające domyślnie cztery efekty atmosferyczne: Fire Effect, Fog, Volume Fog i Volume Light. Korzystając z odpowiednich dodatków, możemy zwiększyć liczbę efektów dostępnych na tej liście. Wybrany efekt dodawany jest do listy Effects w rolecie Atmosphere. Rysunek 46.4. W oknie dialogowym Environment and Effects można dodawać efekty atmosferyczne

Usuwać efekty z listy Effects okna Environment and Effects możemy poprzez wybranie efektu i kliknięcie przycisku Delete. Efekty przypisywane są w takiej kolejności, w jakiej znajdują się na liście, tak więc efekt na samym dole listy przypisany zostaje ponad wszystkimi innymi. Na prawo od listy Effects znajdują się przyciski Move Up i Move Down, za pomocą których można zmieniać kolejność efektów. Poniżej znajduje się pole Name, gdzie można zmienić nazwę efektu. Umożliwia to wielokrotne użycie danego efektu z tymi samymi ustawieniami. Przycisk Merge otwiera okno dialogowe wyboru plików. Po wskazaniu pliku, z którego chcemy pobrać efekt, zostanie otwarte okno Merge Atmospheric Effects, w którym należy wskazać efekt, jaki chcemy dołączyć do bieżącej sceny.

Efekt ognia (Fire Effect) Aby do sceny dodać efekt ognia (Fire), wybieramy polecenie Rendering/Environment (8) i otwieramy panel Environment; następnie klikamy przycisk Add i wybieramy opcję

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1233

Fire Effect. Otwiera to roletę Fire Effect Parameters, pokazaną na rysunku 46.5. Na górze znajduje się przycisk Pick Gizmo; kliknięcie go pozwoli wybrać w scenie gizmo, które pojawi się wtedy na liście po prawej. Można w ten sposób wybrać wiele gizm. Aby usunąć gizmo z listy, zaznaczamy je i klikamy przycisk Remove Gizmo. Rysunek 46.5. Roleta Fire Effect Parameters pozwala modyfikować wygląd ognia

Efekt Fire renderowany jest tylko w oknach nieortogonalnych, takich jak Perspective lub Camera.

Trzy próbki koloru określają kolor wewnętrzny (Inner Color), zewnętrzny (Outer Color) i kolor dymu (Smoke Color). Smoke Color używany jest po włączeniu opcji Explosion. Domyślne kolory, czerwony i żółty, tworzą stosunkowo realistyczny ogień. W sekcji Shape możemy wybrać typ ognia — Tendril (języki ognia) lub Fireball (kula ognista). Kształt Tendril tworzy ogniste płaty, a Fireball jest bardziej okrągły i nabrzmiały. Na rysunku 46.6 pokazano cztery efekty ognia. Dwa po lewej mają kształt Tendril, a dwa po prawej — Fireball. Istnieje też różnica w ustawieniach Density (gęstość) i Flame Detail (szczegóły płomieni).

Rysunek 46.6. Efekt Fire może przyjąć kształt Tendril lub Fireball

Parametr Stretch wydłuża pojedyncze płomienie wzdłuż osi Z gizma, co zostało pokazane na rysunku 46.7. Wartości Stretch dla tych gizm to, od lewej do prawej, 0,1, 1,0, 5,0 i 50.

1234

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 46.7. Parametr Stretch umożliwia wydłużanie płomieni

Parametr Regularity określa, jak bardzo wypełnione jest gizmo atmosferyczne. Gizma kuliste na poprzednich rysunkach miały wartość 0.2, tak więc kula nie była całkowicie wypełniona. Ustawienie Regularity na 1.0 dodaje efektowi Fire kulistego wyglądu, ponieważ efekt wypełnia całe gizmo. Dla uzyskania bardziej losowego kształtu należy korzystać z niskich wartości Regularity. Wartość Flame Size wpływa na całkowity rozmiar każdego pojedynczego płomienia (choć zależne jest to także od rozmiaru gizma). Parametr Flame Detail kontroluje ostrość krawędzi płomieni i może przybierać wartość z zakresu od 1 do 10. Niższe wartości dają rozmyte, gładkie płomienie, a wartości większe owocują ostrzejszymi, bardziej zdecydowanymi płomieniami. Parametr Density określa grubość każdego płomienia w jego centrum; wyższa wartość Density to płomienie jaśniejsze w środku, podczas gdy niższe wartości dają drobniejsze, bardziej cienkie płomienie. Na rysunku 46.8 ukazano różnicę spowodowaną wartościami parametru Density, od lewej jest to 10, 20, 50 i 100.

Rysunek 46.8. Jasność efektu Fire jest ściśle związana z wartością parametru Density

Parametr Samples ustala częstotliwość, z jaką efekt jest próbkowany. Wyższe wartości są wskazane dla uzyskania bardziej szczegółowych rezultatów, ale powodują wydłużenie czasu renderingu. Część Motion zawiera parametry Phase i Drift. Wartość parametru Phase określa dzikość, z jaką ogień płonie. Dla szalonego ognia, nad którym nie ma kontroli, należy animować gwałtowne zmiany parametru Phase. Dla stałego, spokojnego ognia niech wartość pozostanie stała. Wartość parametru Drift ustala wysokość płomieni. Wysoki Drift daje wysokie, bardzo palące płomienie. Gdy zaznaczona jest opcja Explosion, ogień przybiera właściwości eksplozji. Czasy eksplozji, początkowy (Start Time) i końcowy (End Time), możemy ustalić w oknie dialogowym Setup Explosion Phase Curve, które pojawi się, gdy klikniemy przycisk Setup

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1235

Explosion. Jeśli zaznaczona jest opcja Smoke, kolory ognia zmieniają się w kolory dymu dla wartości Phase pomiędzy 100 a 200. Parametr Fury zmienia gwałtowność płomieni. Wartości wyższe niż 1,0 generują szybszy, bardziej gwałtowny ogień, a wartości poniżej 1,0 dają spokojniejszy rezultat.

Ćwiczenie: Tworzenie Słońca Korzystając z efektu Fire, możemy utworzyć realistyczne Słońce. Faza modelowania jest prosta — potrzebna jest tylko zwykła kula — ale prawdziwe fajerwerki dadzą materiały i efekt Fire. Aby utworzyć Słońce, wykonaj następujące czynności. 1. Otwórz plik Sun.max znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera prostą kulę z przypisanym jaskrawożółtym materiałem. 2. Wybierz z menu Create/Helpers/Atmospherics/Sphere Gizmo i przeciągnij myszą w oknie widokowym Front, aby utworzyć kulę, która będzie zawierała w sobie obiekt Słońca. 3. Przy zaznaczonym obiekcie SphereGizmo otwórz panel Modify i kliknij przycisk Add w rolecie Atmospheres and Effects. W oknie dialogowym Add Atmosphere wybierz Fire Effect i kliknij OK. Następnie zaznacz ten efekt na liście i kliknij przycisk Setup. Otworzy się okno Environment and Effects. 4. W rolecie Fire Effects Parameters pozostaw domyślne kolory w obecnym stanie, czyli Inner Color — żółty, Outer Color — czerwony i Smoke Color — czarny. Jako Flame Type wybierz Tendrill z wartościami Stretch i Regularity równymi 1. Ustal Flame Size na 30, Density na 15, Flame Detail na 10, a Samples na 15. Na rysunku 46.9 pokazano wyrenderowane Słońce.

Ćwiczenie: Tworzenie chmur Obrazy nieba są stosunkowo łatwe do znalezienia, można też po prostu wziąć aparat i zrobić zdjęcie. Trudności pojawiają się, gdy chcemy, aby obiekt kluczył między chmurami, raz widoczny, a raz znikający. Mimo że możemy zrobić to za pomocą maski Shadow/Matte, łatwiej będzie, jeśli chmury będą rzeczywistymi obiektami 3D. W tym ćwiczeniu utworzymy kilka prostych chmur z wykorzystaniem efektu Fire. Aby do tła sceny dodać kilka chmur, wykonaj następujące czynności. 1. Otwórz plik Clouds.max, znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera kilka gizm atmosferycznych o kształcie półkuli.

1236

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 46.9. Obraz Słońca utworzony z prostej kuli, materiału z mapą nierówności Noise i efektu Fire

2. Wybierz Rendering/Environment (lub wciśnij klawisz 8), aby otworzyć okno dialogowe Environment and Effects. Kliknij próbkę koloru Background Color i wybierz kolor jasnobłękitny. W rolecie Atmosphere kliknij przycisk Add, wybierz Fire Effect z listy Add Atmospheric Effect i kliknij OK. 3. Nadaj efektowi nazwę Clouds (chmury), po czym klikając po kolei każdą z próbek koloru w rolecie Fire Effect Parameters, zmień Inner Color na ciemnoszary, Outer Color na jasnoszary, a Smoke Color na biały. Ustaw Shape na Fireball z wartościami Stretch równą 1 i Regularity równą 0,2. Ustaw też Flame Size na 35, Flame Detail na 3, Density na 15 i Samples na 15. Jeśli zechcesz, aby chmury ruszały się, kliknij przycisk Auto Key, przeciągnij suwak czasu do ostatniej klatki i zmień wartość parametru Phase na 45, a Drift na 30. Chmury będą powoli płynąć po niebie. Po skończeniu wyłącz przycisk Auto Key.

4. W rolecie Fire Effect Parameters kliknij przycisk Pick Gizmo, po czym wskaż jedno z gizm w oknie widokowym. Powtórz tę czynność dla każdego z gizm. Na rysunku 46.10 pokazano ostateczny widok chmur na tle nieba. Zmieniając wartości parametrów ognia, możemy tworzyć różne typy chmur.

Efekt mgły (Fog) Fog to efekt atmosferyczny powodujący przesłanianie obiektów lub tła przez wprowadzenie półprzezroczystej warstwy; obiekty umieszczone dalej stają się mniej widoczne. Standardowy efekt Fog nie wykorzystuje gizma atmosferycznego i pojawia się w miejscu określonym parametrami Near Range i Far Range ustalającymi zasięg środowiska dla kamery.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1237

Rysunek 46.10. Efektu Fire możemy użyć także do tworzenia chmur

Kiedy do listy efektów dodamy pozycję Fog, w oknie dialogowym Environment and Effects pojawi się roleta Fog Parameters. Roleta ta, pokazana na rysunku 46.11, zawiera próbkę koloru do ustalenia barwy mgły oraz przycisk Environment Color Map, za pomocą którego możemy załadować mapę otoczenia. Jeśli dodamy mapę, opcja Use Map włączy lub wyłączy jej wykorzystanie. Możemy także użyć mapy Environment Opacity, która wpłynie na gęstość naszej mgły. Rysunek 46.11. Roleta Fog Parameters pozwala wybrać typ mgły Standard lub Layered

Opcja Fog Background powoduje zamglenie obrazu w tle sceny. Dostępne typy mgły to Standard i Layered (warstwowa). Wybranie jednego z nich spowoduje udostępnienie odpowiednich parametrów. Ustawienia dla typu Standard zawierają opcję Exponential powodującą zwiększanie gęstości wraz z odległością. Wyłączenie tej opcji spowoduje, że gęstość mgły będzie taka sama, niezależnie od odległości. Pola Near i Far służą do ustalenia zakresu gęstości mgły.

1238

Część XI  Zaawansowane techniki oświetlania i renderingu

Opcja Layered symuluje warstwy mgły, od obszarów gęstych do bardziej przejrzystych. Wartości Top i Bottom ustalają granice mgły, a parametr Density — jej gęstość. Opcja Falloff pozwala określić, gdzie gęstość mgły osiągnie 0. Horizon Noise dodaje szum do warstwy mgły na horyzoncie zgodnie z ustawieniami Size (rozmiar), Angle (kąt) i Phase (faza). Na rysunku 46.12 pokazano różne wersje mgły. Górny, lewy obrazek to scena bez mgły; górny, prawy obrazek zawiera mgłę typu Standard; dolny, lewy obrazek przedstawia mgłę typu Layered z wartością Density równą 50. Obrazek dolny, prawy pokazuje mgłę z włączoną opcją Horizon Noise. Rysunek 46.12. Zrenderowany obraz z kilkoma różnymi typami mgły

Efekt mgły wolumetrycznej (Volume Fog) Do sceny możemy dodać efekt mgły wolumetrycznej, klikając przycisk Add i wybierając Volume Fog. Efekt ten różni się od efektu Fog tym, że umożliwia większą kontrolę nad umiejscowieniem mgły. Pozycja jest ustawiana przez gizmo efektu atmosferycznego. Roleta Volume Fog Parameters, pokazana na rysunku 46.13, pozwala wybrać gizmo za pomocą przycisku Pick Gizmo. Wskazane gizmo pojawia się na rozwijanej liście na prawo od przycisków. Możemy użyć wielu gizm. Przycisk Remove Gizmo usuwa wybrane gizmo z listy. Gizmo efektu atmosferycznego zawiera tylko część całkowitego efektu Volume Fog. Po przesunięciu lub przeskalowaniu gizmo pokaże inny fragment mgły.

Parametr Soften Gizmo Edges wygładza efekt mgły na krawędziach gizma. Parametr ten może przyjąć wartość z przedziału od 0 do 1. Wiele ustawień efektu Volume Fog to ustawienia takie same jak efektu Fog, jednak Volume Fog posiada kilka specyficznych tylko dla siebie. Ustawienia te pomagają w określeniu plamistej natury mgły wolumetrycznej. Parametr Step Size określa, jak małe są plamki. Max Steps ogranicza próbkowanie dla tak małych plamek, aby zbytnio nie wydłużać czasu renderingu.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1239

Rysunek 46.13. Roleta Volume Fog Parameters zawiera parametry umożliwiające ustalenie typu i gęstości mgły

Ustawienia szumu w części Noise pozwalają ustalić różnorodność mgły. Typy szumu to: Regular, Fractal, Turbulence i Invert. Progi Noise Threshold ograniczają efekt szumu. Ustawienia Wind zawierają kierunek i siłę wiatru. Parametr Phase określa przesunięcie mgły.

Ćwiczenie: Tworzenie mokradeł Kiedy myślę o mgle, od razu wyobrażam sobie mokradła. W tym ćwiczeniu wykreujemy scenę z bagnami. Aby utworzyć scenę z wykorzystaniem efektu Volume Fog, wykonaj następujące czynności. 1. Otwórz plik Dragonfly in a foggy swamp.max znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera kilka wysokich roślin i ważkę siedzącą na szczycie jednej z nich. 2. Wybierz z menu Create/Helpers/Atmospheric/Box Gizmo i przeciągnij myszą tak, aby ująć dolną połowę roślin w oknie widokowym Top. 3. Wybierz Rendering/Environment (lub wciśnij klawisz 8), aby otworzyć okno dialogowe Environment and Effects. Po kliknięciu przycisku Add zobaczysz okno Add Atmospheric Effect, w nim wskaż Volume Fog i kliknij OK. W rolecie Volume Fog Parameters kliknij przycisk Pick Gizmo i w oknie widokowym wybierz obiekt BoxGizmo. 4. Ustal wartość Density na 0,5, włącz opcję Exponential, a Noise Type ustaw na Turbulence. Następnie ustaw Uniformity na 1,0, Wind Strength na 10 i wskaż kierunek Left (z lewej). Na rysunku 46.14 przedstawiono ukończony rendering. Korzystając z gizm atmosferycznych, możemy wstawiać mgłę dokładnie tam, gdzie chcemy.

1240

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 46.14. Zrenderowany obraz wykorzystujący efekt Volume Fog

Efekt światła wolumetrycznego (Volume Light) Ostatnim efektem w oknie Environment and Effects jest efekt światła wolumetrycznego (Volume Light). Dzieli on wiele parametrów z innymi efektami atmosferycznymi. Mimo że jest jednym z efektów atmosferycznych, dotyczy świateł i lepiej pasuje do tejże części książki. Aby dowiedzieć się więcej o efekcie Volume Light, zajrzyj do rozdziału 20., „Podstawowe techniki oświetlania sceny”.

Dodawanie efektów renderowanych W wielu przypadkach rendering sceny jest jedynie początkowym etapem produkcji obrazu wyjściowego. Niektóre efekty dodawane są dopiero w procesie postprodukcji, o czym się przekonamy, omawiając moduł Video Post. Jednak to, że możemy dodać efekt w postprodukcji, nie znaczy, że musimy go dodawać właśnie na etapie postprodukcji. Efekty renderowane pozwalają tworzyć niektóre triki jako część procesu renderingu. Efekty takie możemy określić w panelu Effects okna dialogowego Environment and Effects, które otwieramy, wybierając polecenie Rendering/Effects. Na rysunku 46.15 przedstawiono to okno dialogowe. Lista Effects wyświetla wszystkie efekty zawarte w obecnej scenie. Aby dodać nowy, klikamy przycisk Add otwierający okno Add Effect, w którym możemy wybierać z dziewięciu efektów, takich jak Hair and Fur (włosy i futra), Lens Effects (efekty obiektywu), Blur (rozmycie), Brightness and Contrast (jasność i kontrast), Color Balance (równowaga kolorów), Depth of Field (głębia ostrości), File Output (plik wyjściowy), Film Grain (ziarnistość) i Motion Blur (rozmycie ruchu). Efekt usuwamy z listy, wybierając go i klikając przycisk Delete.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1241

Rysunek 46.15. Panel Effects pozwala stosować efekty postprodukcyjne na etapie renderowania

Pod listą Effects znajduje się pole Name, tam wprowadzamy nazwę dla każdego efektu; umożliwia to wielokrotne wykorzystanie efektów tego samego typu. Efekty przypisywane są w takiej kolejności, w jakiej ułożone są na liście. Kolejność tę możemy zmieniać za pomocą przycisków Move Up i Move Down. Możliwe jest zakrywanie jednego efektu przez inny. Zmiana kolejności na liście może pomóc w rozwiązaniu tego problemu.

Przycisk Merge otwiera okno wyboru plików, gdzie możemy wybrać oddzielny plik Maksa. Jeśli wybierzemy taki plik i klikniemy Open, pojawi się okno Merge Rendering Effects, przedstawiające listę efektów renderingu zawartych w tym pliku. Do naszej sceny możemy wybrać i załadować którykolwiek z nich. Część Preview zawiera kontrolki do interaktywnego podglądu różnych efektów. Podglądy pokazywane są w oknie Rendered Frame i mogą być ustawione na wyświetlanie wszystkich efektów (All) lub tylko obecnie wybranego (Current). Przycisk Show Original wyświetla scenę bez efektów, a przycisk Update Scene aktualizuje rendering, jeśli w scenie zostaną dokonane jakieś zmiany. Jeśli okno Rendered Frame nie jest otwarte, którykolwiek z tych przycisków otwiera je i renderuje scenę zgodnie z aktualnymi ustawieniami okna Render Setup.

Opcja Interactive aktualizuje obraz automatycznie, za każdym razem kiedy nastąpi zmiana parametru efektu lub obiektów sceny. Jeśli opcja ta będzie wyłączona, możemy użyć przycisku Update Effect, aby ręcznie zaktualizować obraz. Jeśli opcja Interactive jest aktywna, a panel Effects otwarty, obraz jest renderowany w oknie Rendered Frame, za każdym razem kiedy nastąpią zmiany w scenie. Może to drastycznie spowolnić działanie systemu.

Pasek Currently Updating pokazuje postęp renderingu aktualizacji. Pozostała część panelu Effects zawiera globalne parametry i rolety dla wybranych efektów. Rolety opisane są w tym rozdziale tam, gdzie omawiany jest dany efekt.

1242

Część XI  Zaawansowane techniki oświetlania i renderingu Efekt Hair and Fur oferuje możliwość dodawania do modeli włosów i futra. Opcje Hair and Fur wraz z tym efektem renderingu opisane zostały w rozdziale 29., „Tworzenie i układanie włosów, futer oraz tkanin”.

Tworzenie efektów obiektywu (Lens Effects) Spośród wszystkich efektów najczęściej używany jest Lens Effect. Opcja ta zawiera wiele różnych efektów, od poświat i pierścieni do smug i gwiazdek. Efekty obiektywu symulują zjawiska świetlne występujące w rzeczywistych obiektywach i filtrach optycznych. Gdy opcję Lens Effect dodamy do listy Effects i zaznaczymy ją, kilka różnych efektów stanie się dostępnych w rolecie Lens Effects Parameters. Są to: Glow (poświata), Ring (pierścień), Ray (promień), Auto Secondary (drugorzędny automatyczny), Manual Secondary (drugorzędny ręczny), Star (gwiazdka) i Streak (smuga). Kiedy umieścimy jeden z nich na liście, rolety i parametry dla tego efektu także zostaną dodane do panelu. Wiele efektów Lens Effects może być użytych jednocześnie. Aby dodać efekt, otwieramy okno Environment and Effects poprzez polecenie Rendering/Effects, klikamy przycisk Add i z dostępnych efektów wybieramy Lens Effects. Następnie udajemy się do rolety Lens Effects Parameters, wybieramy żądany efekt z listy po lewej i klikamy przycisk ze strzałką skierowaną w prawo. Dany efekt pojawi się na liście po prawej. Aby usunąć go z tej listy, używamy przycisku ze strzałką skierowaną w lewo.

Parametry globalne Pod roletą Lens Effects Parameters w panelu Effects znajduje się roleta Lens Effects Globals. Wszystkie efekty dostępne w Lens Effects korzystają w tej rolecie z dwóch wspólnych paneli, czyli Parameters i Scene. Oba panele pokazane są na rysunku 46.16. Rysunek 46.16. Panel Parameters w rolecie Lens Effects Globals pozwala wczytywać i zapisywać zestawy ustawień. Panel Scene umożliwia ustalenie rozmiarów i intensywności efektu

Panel Parameters Panel Parameters rolety Lens Effects Globals zawiera przyciski Load i Save, służące do wczytywania i zapisywania ustawień parametrów z innych rolet. Ustawienia te zapisywane są jako pliki LZV.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1243

Wartość parametru Size określa całkowity rozmiar efektu, jako procentową część renderowanego obrazu. Na rysunku 46.17 pokazano środkową część efektu Star z wartością Intensity równą 500, a Size — 5, 10, 20, 50 i 100. Parametr Size zwiększa rozmiar całego efektu i szerokość każdego promienia. Rysunek 46.17. Te efekty gwiazdki różnią się wartością parametru Size

Parametr Intensity kontroluje jasność i przezroczystość efektu. Duże wartości dają jaśniejszy i mniej przezroczysty rezultat, małe wartości to efekt słabszy i bardziej przezroczysty. Parametry Size i Intensity mogą być łączone. Oba mogą osiągać wartości z przedziału od 0 do 500. Na rysunku 46.18 zademonstrowano efekt poświaty z wartościami Intensity (od lewej do prawej) 50, 100, 200, 350 i 500. Rysunek 46.18. Efekty obiektywu mogą także różnić się intensywnością, tak jak te efekty typu Glow

Wartość Seed nadaje efektowi losowość. Wprowadzając zmiany wartości parametru Seed, zmieniamy wygląd efektu. Parametr Angle obraca efekt wokół osi kamery. Parametr Squeeze wydłuża poziome osi dla dodatnich wartości, a pionowe dla ujemnych. Może on przyjmować wartość z przedziału od –100 do 100. Na rysunku 46.19 pokazano efekt Ring z wartościami Squeeze (od lewej do prawej) –30, –15, 0, 10 i 20. Rysunek 46.19. Te efekty Ring mają różne wartości parametru Squeeze

Wszystkie efekty przypisywane są do źródeł światła, a przycisk Pick Light pozwala wybrać odpowiednie światło w oknie widokowym. Każde wybrane światło pojawia się na rozwijanej liście. Do ich usuwania służy przycisk Remove Light.

Panel Scene Drugi panel rolety Lens Effects Globals, wspólny dla wszystkich efektów, to Scene. Zawiera on opcję Affect Alpha, pozwalającą efektowi na oddziaływanie na kanał alfa obrazu. Kanał alfa przechowuje informacje o przezroczystości renderowanych obiektów, a także przezroczystości efektów, jeśli wybraliśmy tę opcję. Gdy w kompozycji zamierzamy użyć obrazu z efektem, powinniśmy włączyć tę funkcję. Klikając przycisk Display Alpha Channel w oknie Rendered Frame, wyświetlamy kanał alfa.

Opcja Affect Z Buffer zapisuje informacje o efekcie w buforze głębi, który używany jest do określenia głębokości obiektów z punktu widzenia kamery.

1244

Część XI  Zaawansowane techniki oświetlania i renderingu

Opcja Distance Affects dostosowuje rozmiar i (lub) intensywność efektu w zależności od odległości od kamery. Opcja Off/Center Affects jest podobna, ale wpływa na rozmiar i intensywność efektu w oparciu o odległość od centrum pola widzenia kamery. Opcja Direction Affects wpływa na rozmiar i intensywność efektu w zależności od kierunku, w którym zwrócony jest snop światła. Ustawienia Occlusion mogą spowodować chowanie efektu za obiektem znajdującym się bliżej kamery. Parametr Inner Radius określa obszar, który obiekt musi zasłonić, aby ukryć efekt. Outer Radius ustala, gdzie efekt zaczyna być widoczny. Dla tego efektu możemy także ustawić opcje Size (rozmiar) i Intensity (natężenie). Opcja Affected by Atmospheres pozwala, aby dany efekt mógł być przesłaniany przez inne efekty atmosferyczne.

Poświata (Glow) Roleta Glow Element, pokazana na rysunku 46.20, zawiera parametry efektu Glow Lens Effects. Roleta ta posiada dwa panele — Parameters i Options. Rysunek 46.20. Roleta Glow Element pozwala ustalić parametry efektu poświaty

Panel Parameters dla efektu poświaty W panelu Parameters rolety Glow Element znajduje się pole Name. Do sceny można dodać wiele efektów poświaty i każdemu nadać inną nazwę. Opcja On włącza lub wyłącza dany efekt. Panel Parameters zawiera też wartości Size i Intensity. Działają one z globalnymi ustawieniami, aby określić rozmiar efektu Glow, i mogą przyjmować dowolne, dodatnie wartości. Wartości Occlusion (zasłanianie) i Use Source Color (zastosuj kolor źródłowy) podajemy w procentach. Pierwsza z nich określa, jaka część ustawień Occlusion z panelu Scene rolety Lens Effects Globals zostanie zastosowana. Wartość Use Source Color ustawiona na 100 oznacza, że efekt Glow będzie określony przez kolor światła; jeśli będzie ustawiona na jakąkolwiek wartość mniejszą niż 100, kolory wskazane w częściach Source i Circular Color będą pomieszane z kolorem światła. Panel ten zawiera też opcje Glow Behind i Squeeze. Opcja Glow Behind sprawia, że efekt poświaty będzie widoczny zza obiektów. Squeeze włącza ustawienia Squeeze nadane w ustawieniach globalnych.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1245

Jeśli wartość parametru Use Source Color wynosi 0%, kolory efektu określają tylko kolory próbek Radial Color. Kolory Radial postępują od środka okręgu poświaty do krawędzi zewnętrznej. Pierwsza próbka to kolor wewnętrzny, a druga — zewnętrzny. Przycisk Falloff Curve (krzywa zaniku) otwiera okno dialogowe krzywej Radial Falloff, pokazane na rysunku 46.21. Tu możemy użyć krzywej do ustalenia, jak szybko lub wolno mają się zmieniać kolory. Rysunek 46.21. Okno dialogowe Radial Falloff pozwala kontrolować, jak kolor wewnętrzny przechodzi w kolor zewnętrzny

Próbki Circular Color określają kolory wzdłuż okręgu poświaty, zaczynając od góry i postępując zgodnie z kierunkiem wskazówek zegara. Wartość Mix określa procentowo mieszanie kolorów Circular z kolorami Radial; wartość 0 wyświetla tylko kolory Radial, a wartość 100 — tylko kolory Circular. Możemy także uzyskać dostęp do okna dialogowego Falloff Curve, aby edytować krzywą opadania Circular Color Falloff. Rozmiar efektu (Radial Size) możemy kontrolować za pomocą krzywej, klikając przycisk Size Curve (krzywa rozmiaru). Kliknięcie go daje dostęp do okna Radial Size. Na rysunku 46.22 przedstawiono kilka efektów Glow, z różnymi ustawieniami krzywej rozmiaru. Krzywe to, od lewej do prawej, ostro opadająca liniowa, o kształcie litery V, szeroka o kształcie litery U, o kształcie litery M i sinusoidalna. Rysunek 46.22. Te efekty poświaty zostały zniekształcone przy użyciu krzywej funkcyjnej Radial Size

Wszystkie kolory i krzywe funkcyjne posiadają przyciski dodawania mapy (domyślnie opisane None). Użyteczne mapy to Falloff, Gradient i Gradient Ramp, Noise oraz Swirl. Mapę możemy uaktywnić, korzystając z pola wyboru, tuż po prawej.

Panel Options dla efektu poświaty W panelu Options rolety Glow Element możemy określić, gdzie powinien być przypisany efekt poświaty. W części Apply Element To pierwsza opcja to przypisanie efektu do świateł (Lights). Światła wybierane są w części Lights rolety Lens Effects Globals, przy użyciu

1246

Część XI  Zaawansowane techniki oświetlania i renderingu

przycisku Pick Light. Pozostałe dwie opcje — Image i Image Centers — dodają efekt poświaty, korzystając z pozostałych ustawień w panelu Options. W części Image Sources przypisujemy efekt do konkretnych obiektów, stosując identyfikator Object ID. Identyfikatory obiektów ustalane są w oknie dialogowym Object Properties. Jeśli jakiś identyfikator jest wybrany i uaktywniony w panelu Options, odpowiadający mu obiekt będzie miał przypisany efekt Glow. Opcja i wartość Effects ID działają podobnie jak Object ID, ale efekty przypisywane są materiałom zdefiniowanym w edytorze materiałów. Możemy w ten sposób przypisać Glow tylko części obiektu pokrytej danym materiałem. Opcja i wartość odblokowania (Unclamp) pozwalają kolorom przybierać jasność większą niż czysta biel. Czysta biel ma wartość 1. Wartość Unclamp jest najniższą wartością, która daje efekt poświaty. Opcja Surf Norm (Surface Normal) pozwala przypisać poświatę obszarom obiektu w oparciu o kąt pomiędzy normalnymi powierzchni i kamery. Przycisk I po prawej odwraca tę wartość. Na rysunku 46.23 pokazano szyk kul z uaktywnioną opcją Surf Norm. Ponieważ efekt poświaty ulega pomnożeniu, parametrowi Surf Norm przypisano jedynie wartość 2. Łatwo zauważymy silniejszą poświatę kul w środku szyku. Rysunek 46.23. Opcja Surf Norm wywołuje żarzenie obiektów, opierając się na kącie pomiędzy normalnymi powierzchni i kamery

Pozostałe opcje w części Image Sources pozwalają przypisać efekt Glow całej scenie (Whole), kanałowi alfa lub buforowi głębi z określonymi wartościami Hi i Lo1. Część Image Filters umożliwia dalsze określanie, którym obiektom przypisać efekt poświaty. Zawiera opcje All, Edge, Perim Alpha, Perim, Brightness i Hue. Opcja All przypisuje efekt wszystkim pikselom źródła. Opcje Edge, Perim Alpha i Perim przypisują 1

Dokładniej rzecz biorąc, efekt jest przypisywany obiektom w zależności od ich odległości od kamery (odległość jest zapisywana w buforze Z). Wartość Z Hi jest odległością maksymalną, a Z Lo — minimalną. Obiekty znajdujące się w tym przedziale zostaną rozjaśnione — przyp. tłum.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1247

efekt do krawędzi, obrzeży kanału alpha lub obrzeża źródła. Brightness zawiera wartość i przycisk jej odwracania I. Przypisuje efekt tylko do obszarów o jasności wyższej niż podana wartość. Opcja Hue także zawiera wartość i próbkę koloru do ustalenia barwy, której nadany zostanie efekt. Opcja Apply (zastosuj) w części Additional Effects pozwala wzbogacać poświatę dodatkowymi efektami wprowadzanymi za pomocą odpowiedniej mapy. Intensywność tych efektów możemy kontrolować poprzez ich gęstość radialną (Radial Density) definiowaną za pomocą krzywej lub dodatkowej mapy.

Ćwiczenie: Porażająca elektryczność z gniazdka Światło w scenie może pochodzić nie tylko z obiektów typu Light, ale także z obiektów samoświecących. Źródłem światła może być także efekt Glow. Obiekt samoświecący tworzymy przez przypisanie mu materiału z wartością Self-Illumination większą niż 0 lub określamy tę wartość kolorem innym niż czarny. Efekt Glow kreujemy, korzystając z okna dialogowego Environment and Effects lub okna Video Post. Aby uzyskać więcej informacji na temat przypisywania poświaty z wykorzystaniem interfejsu Video Post, przeczytaj rozdział 49., „Komponowanie przy użyciu interfejsu Video Post i elementów renderingu”.

Posługiwanie się z niesprawnym gniazdkiem elektrycznym może być szokującym doświadczeniem. W tym ćwiczeniu utworzymy łuk elektryczny, biegnący od gniazdka do wtyczki. Aby uzyskać efekt strzelającej elektryczności, możemy użyć renderowalnej krzywej z kilkoma wierzchołkami i przypisać jej modyfikator Noise, który sprawi, że będzie tańczyć dookoła. Możemy ustalić, żeby krzywa świeciła, przypisując jej materiał samoświecący lub renderowany efekt Glow. Aby utworzyć łuk elektryczny pomiędzy gniazdkiem a wtyczką, wykonaj następujące czynności. 1. Otwórz plik Electricity.max znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera modele gniazdka i wtyczki. Pomiędzy nimi biegnie splajn z przypisanym modyfikatorem Noise. To będzie nasz łuk elektryczny. 2. Otwórz edytor materiałów, wciskając klawisz M, i wybierz pierwszą próbkę materiału. Ustaw jaskrawożółtą barwę kolorów dla Diffuse i Self-Illumination. Ustaw Material Effects Channel na 1. W tym celu kliknij przycisk Material Effects ID i przytrzymaj go, dopóki nie rozwinie się tablica z numerami. Wtedy przeciągnij kursor na numer 1 i zwolnij przycisk myszy. Przeciągnij nowy materiał na łuk elektryczny (electric arc). 3. Otwórz okno dialogowe Environment and Effects, wybierając polecenie Rendering/ Effects. Kliknij przycisk Add, wskaż opcję Lens Effects i kliknij OK. Następnie wskaż na liście pozycję Lens Effects i dwukrotnie kliknij pozycję Glow w rolecie Lens Effects Parameters. W rolecie Glow Element ustal parametr Size na 1, a Intensity na 50. Otwórz panel Options, włącz opcję Material ID i ustaw jej wartość na 1.

1248

Część XI  Zaawansowane techniki oświetlania i renderingu

Gotowy łuk elektryczny przedstawiono na rysunku 46.24. Rysunek 46.24. Łuk elektryczny możemy utworzyć, wykorzystując splajn, modyfikator Noise i efekt Glow

Ćwiczenie: Tworzenie neonu Efektu Glow możemy użyć także do opracowania reklam neonowych. Litery tych reklam mogą być po prostu zwykłymi renderowalnymi splajnami, tak jak w tym ćwiczeniu. Aby uzyskać neonowy znak, wykonaj następujące czynności. 1. Otwórz plik Blues neon.max znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera prosty znak z napisem „Blues”. 2. Otwórz edytor materiałów, wciskając klawisz M, wybierz pierwszą próbkę i nazwij materiał Blue Neon (niebieski neon). Ustal barwę Diffuse na niebieską, a Self-Illumination — na granatową. Ustaw Material Effects Channel na 1 i przypisz materiał do znaku. 3. Otwórz okno Environment and Effects i kliknij przycisk Add. Dwukrotnie kliknij opcję Lens Effects, aby dodać ją do listy Effects. W rolecie Lens Effects dwukrotnie kliknij opcję Glow i wybierz ją z listy, aby uaktywnić jej rolety. W rolecie Lens Effects Globals ustal parametry Size i Intensity na 1. W rolecie Glow Element ustal parametr Size na 10, a Intensity na 100 i upewnij się, że wybrana jest opcja Glow Behind. Dla koloru neonu ustal Use Source Color na 100. Ostatecznie otwórz panel Options, włącz opcję Material ID i ustaw jej wartość na 1. Jako alternatywę dla użycia koloru źródła możemy skorzystać z wartości Use Source Color równej 0 i ustalić próbkę koloru Radial Color na niebieską. Daje to większą kontrolę nad kolorem poświaty.

Na rysunku 46.25 przedstawiono zrenderowany efekt neonu.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1249

Rysunek 46.25. Żarzenie świateł neonu, utworzone łatwo z użyciem efektów renderingu

Pierścień (Ring) Efekt Ring jest także oparty na okręgu i zawiera te same kontrolki i ustawienia co efekt Glow. Jedyne dodatkowe parametry to Plane (płaszczyzna) i Thickness (grubość). Parametr Plane ustawia środek pierścienia względem środka ekranu, a Thickness określa szerokość obręczy pierścienia. Na rysunku 46.26 pokazano kilka efektów Ring z różnymi wartościami Thickness (od lewej do prawej): 1, 3, 6, 12 i 24. Rysunek 46.26. Efekty Ring mogą różnić się grubością

Promień (Ray) Efekt Ray emituje ze źródła we wszystkich kierunkach jasne, półprzezroczyste promienie. Korzysta z tych samych ustawień co efekt Glow, z wyjątkiem parametrów Num (Number — liczba) i Sharp (ostrość). Wartość Num ustala liczbę promieni, a Sharp określa stopień ich rozmycia i może przybierać wartość od 0 do 10. Na rysunku 46.27 pokazano efekt Ray przypisany do prostego światła typu Omni, ze zwiększającymi się wartościami Num: 6, 12, 50, 100 i 200. Zauważmy, że promienie nie są symetryczne i rozmieszczone są losowo. Rysunek 46.27. Efekt Ray wypuszcza podaną ilość promieni w losowo wybranych kierunkach

1250

Część XI  Zaawansowane techniki oświetlania i renderingu

Gwiazdka (Star) Efekt Star emituje w regularnych odstępach kątowych półprzezroczyste pasma świetlne. Korzysta z tych samych ustawień, co efekt Glow, dodatkowo posiada parametry Width (szerokość), Taper (zwężanie), Qty (Quantity — ilość) i Sharp (ostrość). W parametrze Width ustawisz szerokość każdego pasma. Wartość Taper określa, jak szybko szerokość się zmniejsza. Parametr Qty ustala liczbę pasm, a Sharp — jak są one rozmyte. Na rysunku 46.28 ukazano kilka efektów Star z liczbą pasm (od lewej do prawej) 3, 4, 5, 6 i 12. Rysunek 46.28. Efekt Star pozwala ustalić liczbę pasm emitowanych ze środka

Smuga (Streak) Efekt Streak dodaje poziome pasmo przez środek wybranego obiektu. Jest podobny do efektu Star, ale ma tylko dwa pasma rozchodzące się w przeciwnych kierunkach. Na rysunku 46.29 przedstawiono kilka efektów Streak o kącie 45 stopni z wartościami Width (od lewej do prawej): 2, 4, 10, 15 i 20. Rysunek 46.29. Efekt Streak pozwala tworzyć jednokierunkowe smugi

Auto Secondary Kiedy kamera kieruje się w stronę jasnego światła, na obrazie pojawia się kilka jasnych okręgów położonych w jednej linii, biegnącej od źródła światła. Te tzw. flary wywoływane są przez światło załamujące się w soczewkach obiektywu. Możemy to symulować, wykorzystując efekt Auto Secondary. Wiele ustawień w rolecie Auto Secondary Element przypomina ustawienia efektu Glow, które zostały opisane wcześniej. Posiada ona jednak kilka wyjątkowych parametrów. Na rysunku 46.30 przedstawiono te roletę. Parametry Min i Max określają minimalny i maksymalny rozmiar flar. Axis to długość osi, wzdłuż której flary są umieszczone. Większa wartość bardziej je rozprasza. Rzeczywisty kąt flar zależy od kąta pomiędzy kamerą a źródłem światła. Wartość Quantity określa liczbę flar. Rozwijana lista Sides pozwala wybrać flarę typu Circular lub flary z bokami w liczbie od trzech do ośmiu. Poniżej rozwijanej listy Sides na innej rozwijanej liście znajduje się kilka ustawień domyślnych, które zawierają m.in. Brown Ring (brązowy pierścień), Blue Circle (niebieski okrąg) i Green Rainbow (zielona tęcza).

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1251

Rysunek 46.30. Roleta Auto Secondary Element ustala parametry efektu flary

Możemy także zabarwić flary, wykorzystując cztery próbki z sekcji Radial Colors. Próbki te, od lewej do prawej, określają kolory od wewnątrz na zewnątrz. Spinery pod każdą z próbek ustalają, gdzie dany kolor ma się kończyć. Na rysunku 46.31 pokazano Auto Secondary Effect z opcją Rainbow i wartością Intensity równą 50. Rysunek 46.31. Auto Secondary Effect wyświetla wiele flar ułożonych w linii prostej

1252

Część XI  Zaawansowane techniki oświetlania i renderingu

Manual Secondary Poza efektem Auto Secondary, istnieje też efekt Manual Seconday, dodający więcej flar, o różnym rozmiarze i wyglądzie. Efekt ten posiada parametr Plane, który umieszcza flarę z przodu (dodatnia wartość) lub z tyłu (ujemna wartość) jej źródła. Na rysunku 46.32 pokazano te same flary, co na poprzednim rysunku, z dodanym efektem Manual Secondary. Rysunek 46.32. Efekt Manual Secondary umożliwia tworzenie flar o charakterze losowym

Ćwiczenie: Nadawanie błysku samolotowi Kiedy błyszczące, metalowe samoloty lecą przez niebo, często dają efekt migotania światła. Za pomocą efektów obiektywu (Lens Effects) możemy symulować to zjawisko. Aby sprawić, że obiekt będzie jasny i błyszczący, wykorzystując Lens Effects, wykonaj następujące czynności. 1. Otwórz plik Spruce Goose.max znajdujący się w folderze Chap 46 na płycie dołączonej do książki. Plik zawiera model słynnego samolotu Spruce Goose, utworzony przez Viewpoint Datalabs. 2. Otwórz panel Create i kliknij przycisk kategorii Lights. Utwórz kilka świateł typu Omni i rozmieść je dookoła sceny, aby odpowiednio ją oświetlić. Umieść jedno światło blisko powierzchni samolotu, tam gdzie chcesz uzyskać efekt rozbłysku, i ustal wartość parametru Multiplier na 0.5. 3. Otwórz panel Effects, wybierając polecenie Rendering/Effects (lub wciskając klawisz 8). Kliknij przycisk Add i wybierz Lens Effects. Następnie w rolecie Lens Effects Parameters wybierz w oknie po lewej efekt Glow i kliknij przycisk ze strzałką w prawo.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1253

4. W panelu Parameters kliknij przycisk Pick Light i wybierz światło umieszczone blisko samolotu. Ustal parametr Size na około 30, a Intensity na 100. Następnie przejdź do rolety Glow Element i w panelu Parameters ustaw wartość Use Source Color na 0. W części Radial Color kliknij drugą próbkę koloru i w oknie dialogowym Color Selector wybierz kolor zbliżony do żółtego, po czym kliknij przycisk OK. 5. Z powrotem w rolecie Lens Effects Parameters wybierz efekt Star i dodaj go do listy. Automatycznie skorzysta on z tego samego światła, co efekt Glow. W rolecie Star Element ustaw wartość Quantity (Qty) na 6, Size na 200, a Intensity na 100. Na rysunku 46.33 pokazano samolot z efektownym rozbłyskiem. Rysunek 46.33. Samolotowi Spruce Goose dodaliśmy trochę blasku, korzystając z efektów Glow oraz Star Lens Effects

Stosowanie pozostałych efektów renderowanych Teraz, kiedy główne efekty renderingu zostały omówione, powróćmy do okna dialogowego Add Effect, gdzie dostępnych jest sześć innych trików. Jeśli jednak wciąż byłoby Ci mało, Max pozwala na dodanie jeszcze większej ilości efektów przy użyciu modułów dodatkowych.

Efekt rozmycia (Blur) Efekt Blur oferuje trzy różne metody rozmycia: Uniform (równomierne), Directional (kierunkowe) i Radial (promieniste). Opcje te możemy znaleźć w panelu Blur Type będącym częścią rolety Blur Parameters, pokazanej na rysunku 46.34. Metoda Uniform ustawia rozmycie równomiernie na całej przestrzeni obrazu. Parametr Pixel Radius określa siłę rozmycia. Metoda Directional może być użyta, aby rozmyć obraz w określonym kierunku. Parametry U Pixel Radius i V Trail określają rozmycie w poziomie, a V Pixel Radius i V Trail — rozmycie w pionie. Parametr Rotation obraca oś rozmycia.

1254

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 46.34. Roleta Blur Parameters pozwala wybrać typ rozmycia Uniform, Directional lub Radial

Metoda Radial tworzy odchodzące ze środka rozmyte pierścienie, określone parametrami Radius i Trail. Kiedy wybrana jest opcja Use Object Center, aktywne stają się przyciski None i Clear. Kliknięcie przycisku None pozwala wybrać obiekt, względem którego chcemy wyśrodkować efekt rozmycia. Przycisk Clear anuluje ten wybór. Na rysunku 46.35 przedstawiono model dinozaura utworzony przez Viewpoint Datalabs. Rzeczywisty, zrenderowany obraz pokazuje ostre krawędzie wielokątów. Efekt Blur może tu pomóc, wygładzając wszystkie ostre krawędzie. Obraz po lewej to oryginalny rendering dinozaura, a ten po prawej to rendering z przypisanym rozmyciem metodą Directional. Rysunek 46.35. Efekt Blur może wygładzić zbyt ostry model

Roleta Blur Parameters zawiera także panel Pixel Selections, pokazany na rysunku 46.36, w którym znajdują się parametry służące do ustalania, jakie części obrazu zostaną rozmyte. Dostępne opcje to Whole Image (cały obraz), Non-Background (wszystko oprócz tła), Luminance (luminancja), Map Mask (mapa maski), Material ID i Object ID. Aby zdefiniować krzywe rozjaśniania (Brighten) i mieszania (Blend), możemy użyć wykresu Feather Falloff (zanik rozmycia) u dołu rolety. Przyciski nad wykresem służą do dodawania punktów, skalowania i przesuwania ich na krzywej.

Efekt jasności i kontrastu (Brightness and Contrast) Efekt Brightness and Contrast może zmienić jasność i kontrast renderowanego obrazu. Roleta Brightness and Contrast Parameters zawiera parametry jasności i kontrastu, mogące przybierać wartości od 0 do 1. Zawiera ona także opcję Ignore Background, wyłączającą z ustawień efektu tło sceny.

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1255

Rysunek 46.36. Panel Pixel Selection (ukazany w dwóch częściach) rolety Blur Parameters pozwala wybrać części obrazu, którym nadany zostanie efekt Blur

Efekt równowagi barw (Color Balance) Efekt Color Balance pozwala zabarwić obraz przy użyciu osobnych kanałów Cyan/Red, Magenta/Green i Yellow/Blue. Aby zmienić balans kolorów, przeciągamy suwaki w rolecie Color Balance Parameters. Inne opcje to: Preserve Luminosity i Ignore Background. Opcja Preserve Luminosity zabarwia obraz, utrzymując jego jaskrawość, a Ignore Background zabarwia zrenderowane obiekty, ale nie tło.

Efekt File Output Efekt File Output pozwala zapisać renderowany obraz do pliku (File) lub urządzenia (Device) w którymkolwiek momencie postprodukcyjnego procesu nadawania efektów. Na rysunku 46.37 pokazano roletę File Output Parameters. Rysunek 46.37. Roleta File Output Parameters pozwala zapisać renderowany obraz, zanim nadany zostanie efekt renderingu

Korzystając z rozwijanej listy Channel w części Parameters, możemy zapisywać zarówno całe obrazy (Whole Image), jak i jaskrawość w skali szarości (Greyscale Luminance), głębię (Depth) i kanał alfa (Alpha).

1256

Część XI  Zaawansowane techniki oświetlania i renderingu

Efekt ziarnistości (Film Grain) Efekt Film Grain nadaje obrazowi ziarnisty charakter, co sprawia, że całość jest ostrzejsza. Tego efektu możemy także użyć, aby dopasować renderowane obiekty do ziarnistości tła. Ułatwia to obiektom lepsze wtopienie się w scenę. Przykład zastosowania tego efektu widać na rysunku 46.38.

Rysunek 46.38. Efekt Film Grain tworzy ziarnisty szum w zrenderowanym obrazie

Parametr Film Grain może przybierać wartości od 0 do 1. Opcja Ignore Background przypisuje efekt tylko do obiektów sceny, a nie dotyczy tła.

Efekt rozmycia ruchu (Motion Blur) Efekt Motion Blur przypisuje renderowanemu obrazowi proste rozmycie ruchu. Roleta Motion Blur Parameters zawiera opcję Work with transparency, włączającą rozmycie obiektów znajdujących się za obiektami przezroczystymi, oraz pozwala ustalić czas otwarcia wirtualnej migawki (Duration). Obiekty poruszające się szybko stają się rozmyte.

Efekt głębi ostrości (Depth of Field) Efekt Depth of Field rozszerza poczucie głębi, rozmywając obiekty znajdujące się blisko lub daleko od kamery. Przycisk Pick Cam w rolecie Depth of Field, pokazanej na rysunku 46.39, pozwala wybrać w oknie widokowym kamerę, dla której efekt ma być zastosowany. Możemy wskazać wiele kamer i wszystkie zostaną wyświetlone na rozwijanej liście. Przycisk Remove usuwa kamerę z listy. W części Focal Point przycisk Pick Node umożliwia wybranie obiektu, który ma być wykorzystany jako punkt ogniskowania. Na tym obiekcie skupi się kamera. Obiekty położone dalej od niego zostaną rozmyte. Obiekt ten zostanie także wyświetlony na rozwijanej liście. Możemy usunąć go z listy, wybierając go i klikając przycisk Remove. Opcja Use Camera korzysta z ustawień kamery, aby określić punkt ogniskowania. Jeśli w części Focal Parameters (parametry ogniskowania) wybierzemy opcję Custom (własne), możemy określić wartości Horizontal i Vertical Focal Loss oraz Focal Range

Rozdział 46.  Stosowanie efektów renderowanych i atmosferycznych

1257

Rysunek 46.39. Roleta Depth of Field Parameters pozwala wybrać dla efektu kamerę lub punkt ogniskowania

i Focal Limit. Parametr Loss ustala, jak mocne rozmycie występuje. Focal Range to zakres odległości, dla których obraz jest ostry, a Focal Limit to odległość, dla której rozmycie jest największe. Na rysunku 46.40 pokazano plażę utworzoną przez Viewpoint Datalabs. Do tego rysunku został przypisany efekt Depth of Field przez wybranie przycisku Pick Node i wskazanie liścia na drzewie. Następnie ustalono Focal Range na 100, Focal Limit na 200, a Focal Loss na 10 dla obu opcji Horizontal i Vertical. Rysunek 46.40. Efekt Depth of Field ogniskuje obiektyw kamery na wskazanym obiekcie i rozmywa obiekty znajdujące się bliżej i dalej

Efekty Depth of Field i Motion Blur mogą także zostać przypisane za pomocą kamery typu Multi-Pass, omówionej w rozdziale 19., „Operowanie kamerami”.

Podsumowanie Tworząc odpowiednie środowisko, możemy urealnić renderowaną scenę. Okno Environment and Effects umożliwia pracę nad efektami atmosferycznymi, takimi jak Fire, Fog, Volume Fog i Volume Light. Efekty renderowane są użyteczne, ponieważ umożliwiają tworzenie i interaktywną aktualizację rozmaitych trików. Daje to, wcześniej niedostępny, poziom kontroli. W rozdziale tym wyjaśniliśmy, jak używać elementów i efektów renderingu oraz opisaliśmy ich różne typy.

1258

Część XI  Zaawansowane techniki oświetlania i renderingu

W tym rozdziale omówiliśmy następujące zagadnienia: 

tworzenie gizm efektów atmosferycznych w celu pozycjonowania tych efektów,



pracę z efektem atmosferycznym Fire,



budowanie efektów mgły i mgły wolumetrycznej,



przypisywanie efektów renderingu,



użycie efektów obiektywu, aby tworzyć poświatę, promienie i gwiazdy,



pracę z pozostałymi efektami renderingu, aby kontrolować jasność i kontrast, ziarnistość, rozmycie i inne,



sterowanie ekspozycją sceny.

W następnym rozdziale dogłębnie omówimy niezwykły silnik renderujący mental ray.

Rozdział 47.

Renderery mental ray i iray W tym rozdziale: 

Aktywacja renderera mental ray



Praca ze światłami mental ray



Tworzenie kaustyki i globalnej iluminacji



Korzystanie z obiektów zastępczych mental ray

Max ma architekturę modułową, która umożliwia wymianę lub poszerzanie dowolnej części programu. Dotyczy to także silnika renderującego. Zamiennikiem domyślnego renderera Scanline jest mental ray oferujący wiele zaawansowanych funkcji. Przy jego użyciu można renderować sceny z niespotykaną dotąd precyzją, a dostęp do takich funkcji jak kaustyka czy globalna iluminacja pozwala nadać renderowanym scenom niezwykle realistyczny wygląd. Renderer mental ray jest znakomity, ale żeby za jego pomocą uzyskać dobry rezultat, trzeba poświęcić trochę czasu na ustawienie parametrów. Wygodniejszy pod tym względem jest iray. Jest to renderer, który większość parametrów renderingu ustawia automatycznie, a jakość końcowego rezultatu uzależnia głównie od czasu, jaki mu przydzielimy. Krótko mówiąc, jest to mental ray dla początkujących.

Włączanie renderera mental ray Jeśli jesteś już przyzwyczajony do używania domyślnego renderera (Default Scanline Renderer) i zastanawiasz się, czy nie lepszy byłby silnik renderujący mental ray, odpowiem twierdząco. Powinieneś najpierw wykonać kilka testowych renderingów i pobawić się rozmaitymi ustawieniami, gdyż ja byłem zadziwiony rezultatami pracy tego renderera. Jak na renderer korzystający z metody śledzenia promieni świetlnych, mental ray jest bardzo szybki.

1260

Część XI  Zaawansowane techniki oświetlania i renderingu Jeśli w imię szybkości jesteś gotów poświęcić trochę jakości, wypróbuj renderer Quicksilver Hardware. Współpracuje on z większością materiałów i świateł typu mental ray. Silnik renderujący mental ray jest zewnętrznym modułem, z którego Max korzysta. Został opracowany w firmie o nazwie mental images i jest rozwijany niezależnie od Maksa. Jego odmiany można znaleźć również w takich programach jak Maya i Softimage. Dostępny jest również w wersji samodzielnej.

Renderery mental ray i iray obsługują też metodę oświetlenia globalnego (Global Illumination) bez potrzeby uaktywniania zaawansowanych ustawień oświetlenia (Advanced Lightning). Dodatkowo mental ray może korzystać z wszystkich istniejących materiałów Maksa, bez potrzeby używania materiałów specjalistycznych, takich jak materiał Raytrace. Każdy materiał posiada teraz nową roletę, pozwalającą ustawić parametry współpracy z rendererem mental ray. Jednak iray wymaga stosowania wyłącznie materiałów takich jak Arch & Design oraz tych, które są zawarte w bibliotece Autodesk Material Libray. Renderer mental ray nie korzysta z ustawień Advanced Lighting — ma własny, niezależny system oświetlenia. Opisy wielu materiałów mental ray znajdziesz w rozdziale 30., „Stosowanie materiałów specjalnych”.

Renderer mental ray zawiera także obsługę świateł obszarowych (Area Lights), shaderów (Shaders), głębi ostrości (Depth of Field) i rozmycia ruchu (Motion Blur). Umieszczono w nim też kilka specjalistycznych funkcji, takich jak efekt kaustyczny, niedostępnych przy użyciu renderera Scanline. Aby wyrenderować scenę za pomocą modułu mental ray lub iray, wybieramy go po prostu z listy dostępnych rendererów w rolecie Assign Renderer panelu Common okna dialogowego Render Setup. Możemy wybrać inny renderer dla trybów Production, Material Editor i ActiveShade. Aby sprawić, by mental ray był domyślnym rendererem, klikamy w tej rolecie przycisk Save as Defaults. Po wybraniu renderera mental ray dla trybu Production nie ma potrzeby zmieniania żadnych innych ustawień, aby zadziałał. Ustawienia w edytorze materiałów, kategoriach świateł i w oknie właściwości obiektów uaktywniają dodatkowe opcje, z których może korzystać mental ray, ale nie są one wymagane do zrenderowania sceny. Obecnie używany jest mental ray w wersji 3.9. Prawdopodobnie zauważyłeś już, że nawet wtedy, gdy włączony jest renderer Scanline, w oknie Render Setup obecna jest roleta Raytracer, a w standardowym zestawie materiałów dostępna jest pozycja o nazwie Raytrace. Wszystko po to, aby renderer Scanline mógł obsługiwać metodę śledzenia światła. Jednak za pomocą renderera mental ray można uzyskiwać rezultaty o wiele lepsze, a zatem proponuję skoncentrować się na nauce obsługi tego renderera, a nie jego uboższych w możliwości poprzedników.

Rozdział 47.  Renderery mental ray i iray

1261

Obsługa renderera iray Gdy tylko włączysz renderer iray, od razu zauważysz, że liczba paneli w oknie Render Setup znacznie zmalała. Renderer ten został tak opracowany, aby cały proces jego konfigurowania był jak najprostszy. Spośród wszystkich paneli służących do ustawiania parametrów pracy renderera pozostał tylko jeden — Renderer (patrz rysunek 47.1). Rysunek 47.1. Renderer iray ma tylko jeden panel konfiguracyjny w oknie Render Setup

W panelu tym możesz określić czas trwania renderingu lub liczbę iteracji, ale możesz też wybrać opcję Unlimited (nieograniczony). W tym ostatnim przypadku renderer wykonuje swoją pracę, dopóki nie zostanie zatrzymany. Przez cały ten czas udoskonala swoje dzieło i na bieżąco wyświetla je w oknie Rendered Frame. W rolecie Advanced Parameters (parametry zaawansowane) znajdują się kontrolki do ustawiania maksymalnej liczby odbić światła (Maximum Number of Light Bounces), wyboru filtra wygładzającego obraz (Antialiasing) — dostępne opcje to Box (prostokąt), Gauss (dzwon gaussowski) i Triangle (trójkąt) — i obsługi map przemieszczenia. Opcja Material Override (zastępowanie materiałów) umożliwia zastąpienie wszystkich materiałów w scenie jednym, wskazanym po kliknięciu przycisku obok. Dzięki takiemu zabiegowi można dokładnie zbadać jakość cieni lub po prostu wyrenderować scenę w sytuacji, gdy użyte materiały nie są obsługiwane. Jednym z mankamentów renderera iray jest to, że obiekty pokryte materiałami, których nie obsługuje, renderuje jak szare, płaskie kształty. Materiały obsługiwane to te, które zawierają informacje o ich oddziaływaniu na światło. W Maksie są to następujące materiały i mapy:

1262

Część XI  Zaawansowane techniki oświetlania i renderingu

Arch & Design, materiały z biblioteki Autodesk Material Library (z wyjątkiem materiału Metallic Paint), Bitmap, Mix, Noise, Normal Bump, RGB Multiply i mr Physical Sky. Spośród świateł obsługiwane są tylko fotometryczne. Na rysunku 47.2 pokazana jest przykładowa scena wyrenderowana za pomocą renderera iray. Obraz z lewej strony uzyskano po zaledwie kilku sekundach renderingu, a ten z prawej — po znacznie dłuższym czasie.

Rysunek 47.2. Renderer iray poprawia jakość obrazu, dopóki nie zostanie wyłączony

Ćwiczenie: Uruchamianie renderera iray Gdy już nauczysz się posługiwać rendererem iray, z pewnością dojdziesz do wniosku, że najlepiej włączyć mu opcję Unlimited i wyjść na obiad, aby po powrocie mieć już rendering całkiem niezłej jakości. Aby wyrenderować sceną za pomocą renderera iray, wykonaj następujące czynności: 1. Otwórz plik Plant in corner.max znajdujący się w folderze Chap 47 na płycie dołączonej do książki. Plik zawiera kilka prostych obiektów i kwiat. Obiekty mają już przypisane materiały z biblioteki Autodesk Material Library. 2. Otwórz okno Render Setup (wciśnij F10) i w rolecie Assign Renderer panelu Common ustaw jako produkcyjny renderer iray. 3. W panelu Renderer włącz opcję Unlimited i kliknij przycisk Render. 4. Niech renderer przez chwilę popracuje i gdy obraz będzie już wyglądał przyzwoicie, kliknij w oknie Rendering przycisk Cancel. Aktualny stan renderingu będzie wyświetlany w oknie Rendered Frame. Jeśli chcesz, możesz uzyskany obraz zapisać. Na rysunku 47.3 pokazano scenę z kwiatem wyrenderowanym za pomocą renderera iray.

Rozdział 47.  Renderery mental ray i iray

1263

Rysunek 47.3. Opcja Unlimited sprawia, że renderer iray pracuje dotąd, dopóki go nie wyłączymy

Preferencje renderera mental ray W oknie dialogowym Preference Settings znajduje się panel, pokazany na rysunku 47.4, z globalnymi ustawieniami dla mental ray. W tym panelu możemy wybrać opcję aktywacji rozszerzeń (Enable mental ray Extenstions). Dodają one do niektórych paneli mental ray nowe kontrolki. Rysunek 47.4. Okno dialogowe Preference Settings zawiera panel z ustawieniami renderera mental ray

1264

Część XI  Zaawansowane techniki oświetlania i renderingu

Kiedy renderujemy scenę za pomocą renderera Scanline, przetwarza on jedną linię pikseli naraz, podążając w dół obrazu, natomiast mental ray renderuje obraz, rozbijając go na kilka bloków i opracowując każdy blok pojedynczo. W czasie renderingu opcja Show Brackets on Current Buckets wyświetla wokół obecnie przetwarzanego bloku białą ramkę. Podczas renderingu sieciowego lub na komputerze wieloprocesorowym może być widocznych kilka białych ramek jednocześnie.

Opcja Show Visual Final Gather Progress wyświetla przybliżony wygląd renderowanej sceny bez oczekiwania na ukończenie obliczeń w fazie Final Gather. Umożliwia to oglądanie sceny w trakcie obliczeń.

Światła i cienie w mental ray Jeśli zerkniemy do kategorii świateł w menu Create/Lights/Standard Lights, zobaczymy dwa specjalne światła dla mental ray, czyli mr Area Omni i mr Area Spot. Źródła te emitują światło z obszaru określonego w rolecie Area Light Parameters. Domyślnie wszystkie światła mental ray dla swych wartości iluminacji korzystają z ustawień Global Settings, ale za pomocą rolety mental ray Indirect Illumination (patrz rysunek 47.5), znajdującej się w panelu Modify, możemy zastąpić ustawienia globalne. Rysunek 47.5. Roleta mental ray Indirect Illumination pozwala określić ustawienia dla poszczególnych świateł

Uaktywnianie map cieni mental ray W sekcji Shadows rolety General Parameters znajduje się rozwijana lista, z której można wybrać algorytm mental ray Shadow Map. Mapy generowane przez ten algorytm są bardziej dokładne niż standardowe mapy cieni.

System światła dziennego mental ray Jeśli tworzysz scenę plenerową i zamierzasz renderować ją przy użyciu renderera mental ray, powinieneś skorzystać z systemu światła dziennego (Daylight), który używa świateł mr Sun i mr Sky. W tym celu włącz renderer mental ray w oknie dialogowym Render Setup.

Rozdział 47.  Renderery mental ray i iray

1265

Dodaj do sceny system Daylight i w panelu Modify z listy rozwijanej Sunlight wybierz opcję mr Sun, a z listy Skylight wybierz mr Sky. Przy pierwszym tworzeniu systemu Daylight pojawi się okno dialogowe sugerujące, aby zastosować fotograficzną metodę sterowania ekspozycją. Kliknij Yes, aby włączyć to sterowanie. Po wybraniu opcji mr Sky pojawi się kolejne okno z propozycją włączenia mapy środowiska mr Physical Sky symulującej prawdziwy nieboskłon. Tę propozycję również zaakceptuj kliknięciem przycisku Yes (Tak). Jeśli teraz otworzysz panel Environment, zobaczysz, że mapa środowiska (Environment Map) została określona i jest nią mr Physical Sky. Jej ustawienia domyślne sprawdzają się całkiem dobrze. System Daylight pozwala ustalić położenie Słońca zgodnie ze wskazanym położeniem geograficznym, datą i godziną. Przez zmianę tych danych można korygować położenie Słońca względem obiektów w scenie. Jeśli Słońce znajdzie się w polu widzenia kamery, zostanie zrenderowane włącznie z efektami w postaci flar obiektywu (rysunek 47.6). Rysunek 47.6. System Daylight można wyposażyć w światła mr Sun i mr Sky

Po skonfigurowaniu systemu światła dziennego można włączyć wyświetlanie jego efektów w oknie widokowym. W tym celu należy otworzyć okno dialogowe Viewport Background (Views/Viewport Background — Alt+B) i włączyć w nim opcję Use Environment Background. Należy także upewnić się, że włączona jest opcja Display Background. Jeśli teraz zaznaczysz obiekt Słońca i przeciągniesz go w inne miejsce lub zmienisz parametry daty i czasu, oświetlenie sceny i wygląd tła zostaną automatycznie dostosowane do nowego ustawienia. Dzięki temu można w sposób interaktywny ustawić właściwe oświetlenie, czego przykład widać na rysunku 47.7. Aby uzyskać właściwy efekt, należy włączyć opcję Enable Hardware Shading w menu Lighting and Shadows dostępnym po kliknięciu etykiety cieniowania okna widokowego.

1266

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 47.7. System światła dziennego może być oglądany i interaktywnie modyfikowany w oknie widokowym

Światło mental ray Sky Portal W kategorii świateł fotometrycznych znajdziemy typ światła o nazwie mr Sky Portal. Ten rodzaj światła umożliwia skupianie promieni słonecznych wpadających do pomieszczenia przez otwór w ścianie (zwany tutaj portalem). Można przyjąć, że jest to światło nieboskłonu, dla którego promienie wykorzystywane przez procedurę Final Gather1 są skupiane na określonym obszarze. Dzięki temu wyniki procedury Final Gather dają lepsze efekty nawet przy mniejszej liczbie promieni. Sky Portal jest kierunkowym źródłem światła, które daje nam za darmo jedno odbicie, gdy procedura Final Gather jest wyłączona. Aby zastosować oświetlenie typu Sky Portal, należy włączyć renderer mental ray, dołączyć do sceny światło nieboskłonu (Skylight) lub system Daylight i włączyć procedurę Final Gather. Następnie przeciągamy myszą w obszarze okna, przez które światło ma wpadać do pomieszczenia. W ten sposób tworzymy prostokątne gizmo światła Sky Portal. Strzałka umieszczona w środku tego prostokąta wskazuje kierunek przebiegu promieni świetlnych. Jeśli ta strzałka ma niewłaściwy zwrot, możemy ją odwrócić przez włączenie opcji Flip Light Flux Direction. Aby uzyskać lepsze rezultaty przy oświetlaniu wnętrz światłem zewnętrznym, włącz mr Photographic Exposure Control i wybierz predefiniowane ustawienie Physically Based Lighting, Indoor Daylight. 1

Procedura Final Gather oblicza efekt globalnego oświetlenia dla danego punktu sceny — przyp. tłum.

Rozdział 47.  Renderery mental ray i iray

1267

Do włączania i wyłączania światła Sky Portal służy opcja On znajdująca się w rolecie mr Skylight Portal Parameters. Parametry Multiplier i Filter Color pełnią taką samą rolę jak w przypadku innych świateł. Jeśli uzyskany obraz jest zbyt ziarnisty, można zwiększyć wartość parametru Shadow Samples (próbki cieni), co pozwoli też pozbyć się ewentualnych plam na ścianach, ale spowoduje wydłużenie czasu renderowania. Włączenie opcji Visible to Renderer dostępnej w rolecie Advanced Parameters sprawia, że obiekt Sky Portal jest renderowany i zasłania obiekty znajdujące się za oknem. W sekcji Color Source (źródło barwy) można ustalić, skąd światło ma pochodzić. Jeśli chcesz, aby tym źródłem była mapa środowiska, zaznacz opcję Use Scene Environment. Jako źródła mogą być wykorzystywane również mapy HDRI. Przykład wnętrza, którego oświetlenie zostało wygenerowane przy użyciu renderera mental ray, procedury Final Gather i dwóch świateł Sky Portals, jest pokazany na rysunku 47.8. Rysunek 47.8. Obiekty typu Sky Portal skupiają promienie z zewnętrznych źródeł światła, co skraca czas potrzebny na obliczenia Final Gather

Efekty kaustyczne i fotony Właściwości świateł odnoszące się do renderera mental ray zawierają cztery unikalne parametry: Energy, Decay, Caustic Photons i Global Illumination (GI) Photons. Ustawienia tych parametrów znajdziemy w rolecie mental ray Indirect Illumination. Przed bliższym poznaniem tych właściwości należy dowiedzieć się, czym są kaustyka i fotony. Efekty kaustyczne (Caustics) to te dziwne, świecące kształty widoczne na dnie basenu, wywołane przez załamujące się w wodzie światło. Są powszechnym zjawiskiem w naturze i teraz za pomocą renderera mental ray możemy dodać to zjawisko do naszych scen. Fotony (Photons) to małe cząstki światła, podobnie jak promienie raytracingu emitowane ze źródła światła z określoną energią. Wraz z przebytą drogą i uderzaniem w obiekty fotony tracą energię. Parametr Energy określa ilość energii świetlnej, z jaką każdy foton zaczyna podróż, natomiast Decay podaje, jak szybko ta energia zanika. Liczba fotonów Caustic i GI decyduje

1268

Część XI  Zaawansowane techniki oświetlania i renderingu

o dokładności oświetlenia. Większa ilość fotonów powoduje dokładniejsze wyliczenia, ale także znacznie wydłuża czas renderingu. Mnożnik (Multiplier) i próbka koloru służą do ustawiania intensywności i barwy efektów. Na rysunku 47.9 przedstawiono basen z efektem kaustycznym na ścianie. Obraz po lewej pokazuje scenę z wyłączoną kaustyką, a obraz po prawej — z włączoną. Rysunek 47.9. Ta scena z krytym basenem renderowana jest bez kaustyki (po lewej) i z kaustyką (po prawej)

Aby w naszej scenie umożliwić działanie kaustyce, musimy dodać mapę Raytrace, Flat Mirror lub Reflect/Refract do kanału Reflection w materiale, który ma generować kaustykę.

Ćwiczenie: Wykorzystanie fotonów kaustycznych do utworzenia kuli dyskotekowej Korzystając z renderera mental ray, możemy zobaczyć fotony odbijające się w pomieszczeniu, co pomoże określić odpowiednie ustawienia, a same fotony mogą posłużyć np. do utworzenia efektu kuli dyskotekowej. Popularnym sposobem na uzyskiwanie dobrych, wyrazistych efektów kaustycznych jest znaczne zwiększenie liczby fotonów ponad tę, jaka wystarcza dla globalnego oświetlenia — o wartość rzędu kilku milionów.

Aby opracować kulę dyskotekową, korzystając z fotonów kaustycznych, wykonaj następujące czynności. 1. Otwórz plik Disco ball.max znajdujący się w folderze Chap 47, na płycie dołączonej do książki. Plik zawiera proste pomieszczenie. 2. Otwórz okno Render Setup (wciśnij F10) i w rolecie Assign Renderer panelu Common ustaw jako produkcyjny renderer mental ray. 3. Wybierz polecenie Create/Standard Primitives/Sphere i kliknij w oknie widokowym Top, aby utworzyć kulę umieszczoną u góry pomieszczenia. 4. Wciśnij klawisz M, aby otworzyć rozszerzony edytor materiałów. W przeglądarce materiałów i map kliknij dwukrotnie materiał Standard, a potem zrób to samo z mapą Raytrace. Następnie przeciągnij gniazdo wyjściowe mapy Raytrace na gniazdo wejściowe parametru Reflection. Kliknij dwukrotnie węzeł materiału, aby wyświetlić jego parametry. W rolecie Shader Basic Parameters uaktywnij opcję Faceted; ustaw parametr Opacity na 50, Specular Level na 95 a Glossiness na 30, po czym przeciągnij węzeł wyjściowy materiału na obiekt kuli.

Rozdział 47.  Renderery mental ray i iray

1269

5. Wybierz polecenie Create Lights/Standard Lights/mr Area Omni i kliknij w oknie widokowym Top, aby utworzyć cztery światła otaczające obiekt kuli. Z głównego menu wybierz także polecenie Tools/Light Lister i zmień wartość parametru Multiplier na 0.3 dla każdego z tych świateł. Za pomocą narzędzia Select and Move umieść światła na różnych wysokościach. 6. Zaznacz i kliknij prawym przyciskiem myszy kolejno każde światło, wybierając za każdym razem z podręcznego menu polecenie Object Properties. W panelu mental ray okna Object Properties włącz dla każdego światła opcję Generate Caustics. 7. Otwórz okno dialogowe Render Setup (F10) i w panelu Indirect Illumination włącz opcję Enable dla sekcji Caustics, a następnie ustaw Multiplier na 10, włącz opcję Maximum Sampling Radius i ustaw jej wartość na 1.0. Uaktywnij opcję All Objects Generate & Receive GI and Caustics. Teraz kliknij przycisk Render. Jeśli efekty kaustyczne są niewidoczne, sprawdź, czy w oknie Render Setup włączyłeś opcję Use Advanced Lighting.

Na rysunku 47.10 przedstawiono pomieszczenie dyskotekowe z tysiącami światełek widocznych na ścianach. Rysunek 47.10. Ta kula dyskotekowa po prostu odbija fotony po całym pomieszczeniu

Uaktywnianie kaustyki i globalnej iluminacji dla obiektów Przy korzystaniu z kaustyki i globalnej iluminacji dla każdego obiektu z osobna możemy sprawić, aby generował oraz (lub) przyjmował efekty kaustyki i globalną iluminację. Ustawienia te dostępne są w panelu mental ray okna dialogowego Object Properties, pokazanego na rysunku 47.11. Okno to można otworzyć przez wybranie polecenia Edit/Object Properties. Jeśli nasza scena nie generuje kaustyki i nie możemy dojść, dlaczego tak się dzieje, należy sprawdzić to okno, ponieważ opcja Generate Caustics jest domyślnie wyłączona. Są tu także opcje służące do wykluczenia obiektu z obliczeń kaustyki i globalnej iluminacji.

1270

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 47.11. Okno dialogowe Object Properties zawiera opcje generowania i przyjmowania kaustyki oraz globalnej iluminacji

Panel mental ray okna dialogowego Object Properties zawiera również ustawienia wpływające na sposób traktowania obiektu przez procedurę Final Gather. Wybierając opcje Return Black (zwróć czarny) lub Pass through (przejdź przez), możemy sprawić, że obiekt nie będzie cieniowany lub stanie się niewidoczny dla procedury Final Gather. Panel Indirect Illumination okna dialogowego Render Setup zawiera opcję All Objects Generate & Receive GI and Caustic. Uaktywnienie jej włącza generowanie oraz przyjmowanie kaustyki i globalnej iluminacji przez wszystkie obiekty, niezależnie od ustawień w oknie Object Properties.

Oświetlenie pośrednie (Indirect Illumination) W panelu Indirect Illumination okna Render Setup możemy poza parametrami światła ustawić wiele właściwości kontrolujących wyliczenia kaustyki, globalnej iluminacji i procedury Final Gather. Odpowiednie opcje zostały rozmieszczone w dwóch roletach, Final Gather i Caustics and Global Illumination (GI), pokazanych na rysunku 47.12. Pierwsza z tych rolet jest podzielona na dwie części. Część górna zawiera opcje podstawowe i kilka ustawień predefiniowanych. Wystarczy za pomocą suwaka FG Precision Presets wybrać określoną pozycję, aby wartości kluczowych parametrów zostały ustawione automatycznie. Do wyboru mamy tu ustawienia zgrubne (Draft), niskie (Low), średnie (Medium), wysokie (High) i bardzo wysokie (Very High). Mnożnik (Multiplier) i próbka koloru umożliwiają zmianę intensywności i barwy oświetlenia pośredniego. Waga (Weight) decyduje o wpływie tego oświetlenia na wyniki obliczeń procedury Final Gather.

Rozdział 47.  Renderery mental ray i iray

1271

Rysunek 47.12. Panel Indirect Illumination zawiera ustawienia kaustyki, globalnej iluminacji i procedury Final Gather

W drugiej rolecie parametr Maximum Number of Photons per Sample decyduje o mieszaniu fotonów kaustyki. Wyższe wartości oznaczają silniejsze mieszanie fotonów, a tym samym łagodniejsze krawędzie. Opcja Maximum Sampling Radius ustala rozmiar każdego fotonu. Jeśli jest wyłączona, rozmiar fotonów jest ustalany automatycznie w określonej proporcji do rozmiarów sceny. Po włączeniu tej opcji możesz sam ustalić rozmiar fotonów. Ustawienia Volumes używane są przez shadery Volume, aby ustalić rozmiar fotonów. Ustawienia Trace Depth określają maksymalną ilość odbić i załamań, w jakich może wziąć udział foton przed zaniknięciem. Przy złożonych scenach tworzenie map dla fotonów i procedury Final Gather może zająć trochę czasu, ale po utworzeniu mogą one być zapisywane i ładowane ponownie. Pliki zawierające takie mapy zapisywane są z rozszerzeniami .pmap i .fgm. Do generowania map fotonowych służy przycisk Generate Photon Map File Now, a do generowania map procedury Final Gather — przycisk Generate Final Gather Map File Now. Procedura Final Gather wysyła do sceny, która już ma wyliczoną kaustykę i globalną iluminację, promienie w celu wyliczenia ilości światła w danym miejscu. Wszystkie te promienie są łączone, aby utworzyć całkowity obraz oświetlenia sceny, a następnie zlewane razem, by poprawić ewentualne anomalie występujące w oświetleniu. Parametr Samples określa, jak wiele promieni jest emitowanych do sceny. Wyniki obliczeń procedury Final Gather można zapisać w pliku.

Kontrola renderingu Główne ustawienia renderingu mental ray zawarte są w panelu Renderer okna dialogowego Render Setup. Dwie rolety tego panelu pokazano na rysunku 47.13. Korzystając z nich, możemy zwiększyć szybkość renderingu (kosztem jakości obrazu). Ustawienia Sampling używane są, by do renderowanego obrazu dodać antyaliasing. Próbki pobierane z obrazu mogą być filtrowane i możemy kontrolować szczegółowość kontrastu między nimi. Parametr Bucket Width to rozmiar bloków, na które obraz jest dzielony przed

1272

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 47.13. Panel Renderer zawiera kilka rolet z ustawieniami sterującymi pracą renderera mental ray

zrenderowaniem. Mniejsze bloki renderują się szybciej i umożliwiają bieżący podgląd w oknie Rendered Frame. Renderer mental ray korzysta z kilku różnych algorytmów i możemy ustalić, czy któryś z nich ma zostać pominięty, aby przyspieszyć proces renderingu. Jeśli dany algorytm jest wyłączony, efekty, których osiągnięcie umożliwia, są pomijane. Możemy także ustalić głębokość śledzenia (Trace Depth) dla odbić (Reflections) i załamań (Refractions) oraz sterować przyspieszeniem procesu śledzenia promieni (Raytrace Acceleration). Podczas renderowania sceny za pomocą renderera mental ray poniżej okna Rendered Frame wyświetlany jest specjalny panel (patrz rysunek 47.14), w którym można ustawić dokładność działania takich funkcji jak Antialiasing, Soft Shadows, Final Gather, Reflections i Refractions. Można także przyspieszyć powtórny rendering, włączając ponowne użycie obliczeń dla geometrii sceny i funkcji Final Gather. Do uruchamiania ponownego renderingu służy przycisk Render.

Zaawansowany mental ray Renderer mental ray zawiera także dodatkowe opcje, z których możemy skorzystać. Należą do nich głębia ostrości (Depth of Field), rozmycie ruchu (Motion Blur), kontury (Contours), odkształcanie (Displacement) i shadery kamery (Camera Shaders). Ustawienia dla tych dodatkowych opcji znajdują się w roletach u dołu panelu Renderer. Przykładowo, jeśli w sekcji Camera Shaders przypiszesz mapę Glare shaderowi Output, możesz uzyskać silny blask światła w scenie, tak jak we wnętrzu pokazanym na rysunku 47.15.

Korzystanie z obiektów zastępczych mental ray Złożone sceny mogą zawierać setki obiektów i ich renderowanie za pomocą renderera mental ray może trwać wiele godzin. W takich warunkach testowanie oświetlenia i efektów atmosferycznych staje się problematyczne. Jeśli jednak masz pewność, że obiekty wyglądają prawidłowo, możesz je zastąpić prostszymi i skrócić czas próbnego renderowania. Aby skorzystać z obiektu zastępczego typu mental ray, wstaw go do sceny za pomocą polecenia Create/mental ray/mr Proxy, otwórz panel Modify, kliknij przycisk Source Object i w oknie widokowym wskaż obiekt, który chcesz zastąpić.

Rozdział 47.  Renderery mental ray i iray

1273

Rysunek 47.14. Podczas renderowania sceny za pomocą renderera mental ray poniżej okna Rendered Frame wyświetlany jest dodatkowy panel z ustawieniami

Rysunek 47.15. Przez przypisanie mapy Glare shaderowi Output uzyskano silny blask światła wpadającego przez okno

Obiekt źródłowy można wybrać jedynie za pośrednictwem przycisku w panelu Modify.

Obiekt źródłowy po wskazaniu można zapisać w pliku z rozszerzeniem .mib. Odtąd obiekt będzie widoczny w scenie jako chmura punktów (opcja Point Cloud) lub zwykły prostopadłościan (Bounding Box), a podgląd obiektu źródłowego będzie wyświetlany w rolecie Parameters. Możliwe jest także określenie liczby punktów wyświetlanych w oknach widokowych (parametr Viewport Verts).

1274

Część XI  Zaawansowane techniki oświetlania i renderingu

Podczas renderingu w miejsce obiektu zastępczego wstawiany jest obiekt źródłowy pobrany z pliku.

Podsumowanie Jeśli poszukujesz metody renderingu, która doskonale przelicza odbicia, załamania i przezroczystość, mental ray jest dokładnie tym, czego potrzebujesz. Jeśli nie radzisz sobie z ustawianiem parametrów tego renderera, skorzystaj z jego łatwiejszej odmiany o nazwie iray. W tym rozdziale omówiliśmy następujące zagadnienia: 

aktywacja rendererów mental ray i iray,



progresywne renderowanie scen za pomocą renderera iray,



tworzenie świateł i materiałów mental ray,



pracę z kaustyką i fotonami,



posługiwanie się obiektami zastępczymi mental ray.

Poznałeś już opcje renderingu, w następnym rozdziale przeczytasz o pomocnych metodach renderingu wsadowego i sieciowego.

Rozdział 48.

Rendering wsadowy i sieciowy W tym rozdziale: 

Konfiguracja renderingu wsadowego



Korzystanie z renderingu sieciowego



Renderowanie w sieci



Stosowanie serwerów renderingu sieciowego



Informacje o błędach



Używanie narzędzia Monitor



Informowanie o zdarzeniach

Max pomaga tworzyć niesamowite obrazy i animacje, ale jego moc ma swoją cenę — czas. Modelowanie scen i sekwencji animacji samo w sobie wymaga czasu, a kiedy zakończymy ten etap, wciąż jeszcze będziemy musieli poczekać na zrenderowanie sceny, co w przypadkach mocno skomplikowanych może zająć nawet kilka dni. Ponieważ czas renderingu zależy od mocy obliczeniowej komputera, Max pozwala korzystać z renderingu sieciowego, aby umożliwić zastosowanie dodatkowego sprzętu do przyspieszenia tych szczególnie powolnych procesów. W rozdziale tym pokazano, jak rozdzielić pracę między różne maszyny w sieci, co pozwala szybciej realizować poszczególne zadania renderingu.

Wsadowy rendering scen Spędziliśmy cały dzień na modelowaniu, teksturowaniu i animowaniu sekwencji, a teraz przekonujemy się, że większą część dnia zajmie proces renderingu, jednak, na szczęście, mamy w zanadrzu kilka rozwiązań. Możemy postarać się o drugi komputer i użyć go do renderingu, w tym samym czasie pracując na pierwszym, lub też skorzystać z opcji renderingu sieciowego. Ale istnieje też trzecia możliwość — możemy skorzystać z narzędzia Batch Render.

1276

Część XI  Zaawansowane techniki oświetlania i renderingu

Jeśli nie pracujemy przez okrągłą dobę (co jest często spotykane wśród ekip tworzących gry), możemy, korzystając z narzędzia Batch Render, ustawić kolejkę renderingu wsadowego, zanim udamy się na odpoczynek. Kolejka taka realizowana jest w nocy i rano mamy już gotowe efekty do przeglądnięcia.

Korzystanie z narzędzia Batch Render Okno Batch Render, pokazane na rysunku 48.1, dostępne jest po wybraniu polecenia Rendering/Batch Render. Zadania dla renderera mogą być dodawane do listy po kliknięciu przycisku Add. Natomiast wyłączane są przez usunięcie zaznaczenia pola wyboru na lewo od nazwy zadania. Rysunek 48.1. Okno Batch Render pozwala określić zadania renderera uruchamiane w formie procesu wsadowego

Dla każdego zadania możemy ustawić takie parametry jak Name (nazwa), Camera (kamera), Output Path (ścieżka pliku docelowego) i Preset (predefiniowane ustawienia renderera). Rozwijana lista Scene State pozwala wybierać spośród stanów sceny, które mogą być definiowane przy użyciu polecenia Tools/Manage Scene States. Każde nowe zadanie dodane do listy korzysta z domyślnych ustawień renderingu dla zakresu klatek, wymiarów i proporcji pikseli, ale jeśli uaktywnimy opcję Override Preset, możemy każdy z tych parametrów skonfigurować sami. Kolejka Batch Render może być renderowana w sieci, jeśli uaktywnimy opcję Net Render na dole okna Batch Render.

Zarządzanie stanami scen Jedna scena może mieć wiele różnych ustawień, które chcielibyśmy sprawdzić, przeprowadzając rendering. Możemy np. skonfigurować scenę z różnymi ustawieniami świateł, rozmaitymi parametrami kamer lub ze specyficznymi materiałami. Stany scen (Scene States)

Rozdział 48.  Rendering wsadowy i sieciowy

1277

pozwalają określić różne zestawy parametrów, które mogą być przywołane do wykorzystania przez rendering wsadowy. Każdy z tych stanów może być częścią pliku Maksa. Po wybraniu polecenia Tools/Manage Scene States otwiera się okno Manage Scene States, pokazane na rysunku 48.2, pozwalające zapisać (Save), przywrócić (Restore), zmienić nazwę (Rename) i usunąć (Delete) istniejący stan. Kliknięcie przycisku Save otwiera okno Save Scene State, także pokazane na rysunku 48.2. W oknie tym możemy wprowadzić nazwę dla stanu sceny i wybrać, z którego zestawu ustawień ma korzystać. Do wyboru są: Light Properties (właściwości światła), Light Transforms (transformacje światła), Object Properties (właściwości obiektu), Camera Transforms (transformacje kamery), Camera Properties (właściwości kamery), Layer Properties (właściwości warstwy), Layer Assignment (przypisanie warstwy), Materials (materiały), Environment (środowisko) i Anim Layer Properties (właściwości warstwy animacyjnej). Rysunek 48.2. Okna Manage Scene State i Save Scene State pozwalają określać, jakie parametry sceny zapisać jako stan, który będzie mógł być przywołany podczas wykonywania renderingu wsadowego

Tworzenie pliku wykonawczego Po ustawieniu kolejki renderingu wsadowego możemy kliknąć przycisk Export to .bat, aby otworzyć okno dialogowe Batch Render Export to Batch File, gdzie możemy zapisać plik wsadowy z rozszerzeniem .bat. Plik taki może być uruchamiany z wiersza poleceń lub poprzez agenta.

Zasady renderingu sieciowego Przy korzystaniu z renderingu sieciowego do renderowania animacji Max rozdziela pracę na różne maszyny, przypisując każdej z nich określone klatki do zrenderowania. Wzrost szybkości zależy od tego, ilu maszyn możemy użyć do renderowania klatek: dodając jeden komputer, podwajamy tempo renderingu. Dodajmy siedem lub osiem komputerów i zamiast tygodniowego spóźnienia zakończymy pracę wcześniej, a wtedy będziemy mogli wziąć sobie dzień wolny. Połączone komputery zajmujące się renderingiem często określane są terminem farma renderująca (rendering farm). Przykładowy proces renderingu sieciowego wygląda następująco. Jeden komputer zarządza całym procesem i rozdziela pracę na wszystkie komputery farmy. Każdy komputer daje sygnał komputerowi zarządzającemu, kiedy jest gotowy do pracy nad kolejną klatką. Wtedy zarządca wysyła nową klatkę, a ukończona zapisywana jest w wybranym przez nas formacie.

1278

Część XI  Zaawansowane techniki oświetlania i renderingu

Moduł Maksa umożliwiający rendering sieciowy nazywa się Backburner. Mogłeś go zauważyć przy instalacji programu. Max udostępnia kilka opcji mogących przyspieszyć proces renderingu. Jeśli jeden z komputerów farmy zawiesi się lub straci połączenie z maszyną zarządzającą, ta rozpozna klatkę, nad którą pracował uszkodzony komputer, i przypisze ją innemu komputerowi. Możemy monitorować status każdego zadania, a nawet dostać wiadomość e-mail, kiedy praca zostanie ukończona. Jednym z problemów renderingu sieciowego jest to, że nie mamy pewności, czy klatki animacji renderowane będą w należytej kolejności. Każdy komputer w sieci renderuje klatki najszybciej, jak to możliwe, i zapisuje je jako bitmapy, więc nie możemy korzystać z renderingu sieciowego do tworzenia plików .avi lub .mov. Renderujemy scenę z każdą klatką zapisywaną jako oddzielna bitmapa. Następnie możemy użyć narzędzi, takich jak RAM Player, Video Post lub zewnętrznego programu (np. Adobe Premiere), aby połączyć te klatki w jeden plik animacji, np. .avi. Do przeprowadzenia renderingu sieciowego wymagana jest licencjonowana wersja Maksa, ale dobrą wiadomością jest to, że w całej farmie tylko jedna maszyna musi mieć zainstalowaną kopię autoryzowaną. Na komputerach w sieci używanych tylko do renderingu nie musimy mieć autoryzowanej kopii Maksa. Po prostu instalujemy program i każdy komputer sieci pobiera autoryzację z komputera, na którym uruchomiliśmy proces renderingu.

Konfiguracja systemu renderingu sieciowego Zanim zagłębimy się w szczegóły konfiguracji Maksa i samej sieci, musimy poznać różne składniki systemu renderingu sieciowego. Poniższa lista przedstawia główne elementy biorące w nim udział. 

Menedżer — to program (manager.exe), który sprawuje rolę zarządcy sieci. To jego zadaniem jest koordynacja pracy pozostałych komputerów farmy renderującej. Tylko na jednym komputerze w sieci musi być uruchomiony menedżer, ten sam komputer może też być wykorzystany do renderingu.



Serwer — to każdy z komputerów sieci, używany do renderingu klatek animacji. Kiedy uruchomimy program serwera (server.exe), łączy się on z menedżerem sieci i informuje, że komputer jest gotowy do przyjęcia zadania. Serwer uruchamia Maksa, kiedy menedżer wyśle mu klatkę do zrenderowania.



3ds Max — któryś komputer farmy musi mieć autoryzowaną kopię Maksa, jednak nie musi to być ten sam komputer, na którym uruchomiony jest menedżer. To na tej maszynie zaczynamy proces renderingu.



Monitor — to specjalny program (monitor.exe) pozwalający monitorować farmę renderującą. Korzystamy z niego, aby sprawdzić aktualny stan zadania bieżącego lub czekającego w kolejce. Możemy go także użyć, aby zaplanować czas pracy renderingu. Monitor jest zupełnie niezależny od obecnego procesu renderingu, tak więc możemy korzystać z niego na jednym z komputerów farmy albo zdalnie sprawdzić stan rzeczy, przyłączając się do sieci.

Rozdział 48.  Rendering wsadowy i sieciowy

1279

Uruchamianie systemu renderingu sieciowego Jeżeli dysponujesz tymi wszystkimi elementami, możesz przystąpić do skonfigurowania sieci i zainstalowania Maksa na komputerach, które będą używane do renderowania. Wybierz opcję Compact, aby zainstalować tylko minimalną ilość plików, potrzebną do przeprowadzenia renderingu. Musisz także wskazać docelowy folder, gdzie Max ma zostać zainstalowany. Jeśli to możliwe, zaakceptuj domyślną ścieżkę i kliknij Next. Zainstalowanie Maksa w tym samym katalogu na każdym komputerze oszczędzi później problemów. Zarządzanie katalogami z mapami i modułami dodatkowymi jest o wiele łatwiejsze, jeśli każdy komputer ma tę samą strukturę katalogów.

Musisz także wskazać foldery dostępne dla wszystkich komputerów w sieci. Tam będą przechowywane sceny i materiały, tam też będą zapisywane rezultaty renderingu. Po wykonaniu czynności przygotowawczych możesz uruchomić system renderingu sieciowego.

Ćwiczenie: Inicjacja systemu renderingu sieciowego Przy pierwszym uruchomieniu farmy renderującej musimy trochę wspomóc Maksa w inicjacji systemu. Aby zainicjować system renderingu sieciowego, wykonaj następujące czynności. 1. Uruchom menedżera sieci na jednym z komputerów farmy. Program ten, manager.exe, znajduje się w folderze Backburner. Uruchamiamy menedżera, zaznaczając ten plik w eksploratorze Windows i wciskając Enter. Po uruchomieniu najpierw zobaczysz okno dialogowe Backburner Manager General Properties. Okno to pojawia się tylko przy pierwszym uruchomieniu menedżera lub po wybraniu Edit/General Settings. Do szczegółów tych ustawień jeszcze powrócimy. Po ustawieniu właściwości kliknij przycisk OK. Otworzy się okno Backburner Manager, pokazane na rysunku 48.3. Rysunek 48.3. Uruchamianie menedżera sieci

2. Teraz uruchom serwer sieciowy na każdym komputerze, którego zamierzasz użyć do renderingu. W tym celu znajdź i uruchom program server.exe, tak jak zrobiłeś to w przypadku manager.exe. Przy pierwszym uruchomieniu programu pojawi się okno Backburner Server General Properties. Okno to omówione zostało dalej w tym rozdziale. Kliknij OK. Pojawi się okno Backburner Server, pokazane na rysunku 48.4.

1280

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 48.4. Uruchamianie serwera sieciowego. Zwróć uwagę, że serwer już szuka menedżera

Gdy serwer odnajdzie menedżera, wyświetli wiadomość, że rejestracja została zaakceptowana. Okno Backburner Manager także pokaże podobną wiadomość. Jeśli serwer ma problemy z połączeniem się z menedżerem, musisz wykonać dodatkowe czynności: 1. Jeśli zawiedzie automatyczna detekcja menedżera, serwer będzie próbował aż do limitu ilości prób. Gdy osiągnie limit lub po prostu znudzi Ci się czekanie, wybierz Edit/General Settings, aby otworzyć okno Backburner Server General Properties, pokazane na rysunku 48.5. W tym oknie usuń zaznaczenie pola Automatic Search i wprowadź nazwę lub adres IP komputera, na którym działa menedżer. W sytuacji pokazanej na rysunku serwer próbował, ale nie mógł odnaleźć menedżera, więc trzeba było go poinformować, że menedżer działa na komputerze, którego adres IP to 150.150.150.150. Rysunek 48.5. Ręczne wybieranie adresu IP menedżera

2. Kliknij OK, aby zamknąć okno Backburner Server General Properties i kliknij Close, aby wyłączyć serwer (czyniąc to, nakazujemy serwerowi zapisanie wprowadzonych zmian). Uruchom ponownie serwer w taki sam sposób jak poprzednio, teraz serwer i menedżer mogą się już kontaktować. Menedżer sieci nie musi mieć całego komputera tylko dla siebie, możemy na tym komputerze uruchomić też serwer sieciowy i wykorzystać go do renderingu.

Ćwiczenie: Przeprowadzenie pierwszego renderingu sieciowego Nasza farma renderująca już działa i pała chęcią zrenderowania czegoś, a więc zaprzęgnijmy maszyny do pracy. Aby rozpocząć rendering sieciowy, wykonaj następujące czynności.

Rozdział 48.  Rendering wsadowy i sieciowy

1281

1. Uruchom Maksa i utwórz prostą animację. Powinna być tak prosta, jak tylko jest to możliwe, ponieważ chcemy tylko sprawdzić poprawność działania farmy renderującej. 2. W Maksie wybierz Rendering/Render Setup (F10), aby otworzyć okno Render Setup. W sekcji Time Output tego okna włącz opcję Range, aby renderować wiele klatek zamiast domyślnie pojedynczej klatki. 3. W sekcji Render Output kliknij przycisk Files, aby otworzyć okno Render Output File. W polu Save In (Zapisz w) wybierz docelowy dysk i folder, który utworzyłeś wcześniej jako ogólnie dostępny. 4. W polu File name (Nazwa pliku) okna Render Output File wprowadź nazwę pierwszej klatki. Max automatycznie numeruje każdą kolejną klatkę. Wybierz format bitmapy z listy typów Save as type (Zapisz jako typ) (pamiętaj, format animacyjny nie może być tu używany). 5. Kliknij Save (Zapisz), aby zamknąć okno Render Output File. (Niektóre formaty plików wymagają podania dodatkowych informacji; jeśli tak jest, kliknij OK, aby zaakceptować domyślne opcje). W oknie dialogowym Render Setup Max wyświetli pełną ścieżkę folderu docelowego. 6. W części Render Output okna dialogowego Render Setup włącz opcję Net Render, tak jak pokazano na rysunku 48.6. Zmień wszystkie inne pożądane ustawienia, takie jak np. wybór okna widokowego (Viewport), po czym kliknij Render. Rysunek 48.6. Opcja Net Render musi być włączona, aby rozpocząć rendering sieciowy

Otworzy się okno dialogowe Network Job Assignment, pokazane na rysunku 48.7. 7. W części Enter Subnet Mask okna Network Job Assignment kliknij przycisk Connect, jeśli pole Automatic Search jest zaznaczone. Jeśli nie jest lub serwery w ćwiczeniu „Inicjacja systemu renderingu sieciowego” miały problemy z odnalezieniem menedżera, wprowadź adres IP komputera, na którym działa menedżer, i kliknij Connect. 8. Max zacznie szukać dostępnych serwerów renderujących, połączy się z nimi i doda ich nazwy do listy dostępnych serwerów. Wskaż nazwę serwera i kliknij Submit.

1282

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 48.7. Okna dialogowego Network Job Assignment używamy, aby zlokalizować menedżera, który będzie nadzorował proces renderingu

Jeśli spróbujesz zlecić ponownie to samo zadanie (po nieudanej lub udanej próbie renderingu), Max poinformuje Cię, że zadanie to znajduje się już w kolejce. Zadanie możemy usunąć, korzystając z narzędzia Monitor, lub kliknąć przycisk + w oknie dialogowym Network Job Assignment, wtedy Max nada zadaniu numer, co sprawi, że stanie się unikalne.

Po zleceniu zadania w menedżerze i serwerach pojawią się informacje (takie jak te na rysunkach 48.8 i 48.9) mówiące o tym, że zadania zostały przyjęte. Wkrótce Max uruchomi się na każdym serwerze i zobaczymy okno Rendering, ukazujące postęp pracy. Wyświetla ono przydatne informacje, takie jak klatka aktualnie renderowana i czas pracy renderingu. Kiedy animacja zostanie wyrenderowana, możemy otworzyć folder docelowy, gdzie znajdziemy pliki z wyrenderowanymi obrazami. Serwery i menedżer pozostaną aktywne, czekając na kolejne zadania. Rysunek 48.8. Menedżer sieci wykrył nowe zadanie

Rysunek 48.9. Jeden z serwerów sieciowych otrzymał polecenie rozpoczęcia nowego zadania

Rozdział 48.  Rendering wsadowy i sieciowy

1283

Opcje zlecania zadania Okno dialogowe Network Job Assignment, pokazane poprzednio na rysunku 48.7, posiada ważną sekcję, której nie używaliśmy w pierwszym przykładowym renderingu sieciowym; jest to sekcja Options. Sekcja Options zawiera następujące ustawienia: 

Enabled Notifications — pozwala ustawić Maksa tak, by informował o określonych zdarzeniach w konkretnym czasie. Jeśli zaznaczymy opcję Enabled Notifications, przycisk Define stanie się aktywny. Przycisk Define otwiera okno Notifications, pokazane na rysunku 48.10.

Rysunek 48.10. Okno Notifications pozwala określić, jakiego typu informacje chcemy otrzymywać



Split Scan Lines — opcja ta dzieli renderowany obraz na pasy, które mogą być renderowane oddzielnie. Przycisk Define pozwala określić parametry Strip Height (wysokość pasa), Number of Strips (liczba pasów) i Overlap (nachodzenie pasów na siebie).



Ignore Scene Path — korzystamy z tej opcji, aby wymusić na serwerach pobieranie pliku sceny poprzez TCP/IP. Jeśli wyłączymy tę opcję, menedżer skopiuje pliki scen na serwer.



Rendered Frame Window — korzystamy z tej opcji, jeśli chcemy mieć możliwość oglądania na serwerze obrazu w czasie jego renderowania.



Include Maps — zaznaczenie tego pola sprawia, że Max kompresuje wszystko, czego potrzebuje do renderingu scen (łącznie z mapami) w jeden plik i rozsyła go do każdego serwera. Opcja jest przydatna, jeśli ustawiamy farmę renderującą w internecie, jednak przesłanie dodatkowych informacji zajmuje trochę czasu i przepustowości łącza.



Initially Suspended — opcja ta zatrzymuje rendering przed jego rozpoczęciem, tak że możemy ręcznie uruchomić go, kiedy sieć będzie gotowa.



Use Selected/Use Group/All Servers — opcje w części Server Usage służą do wybierania serwerów przeznaczonych do renderingu. Mogą to być serwery aktualnie zanaczone na liście, może to być ich grupa lub wszystkie.



Use Alternate PathFile — opcja ta pozwala określić alternatywną ścieżkę dostępu do map oraz innych plików. Po zaznaczeniu opcji nową ścieżkę należy wpisać w polu poniżej.

1284

Część XI  Zaawansowane techniki oświetlania i renderingu

Konfigurowanie menedżera i serwerów sieciowych Możemy konfigurować menedżery i serwery, korzystając z ich okien dialogowych General Properties. Aby otworzyć te okna, wybieramy polecenie Edit/General Settings.

Ustawienia menedżera renderingu Menedżer renderingu posiada kilka opcji, które pozwalają zmodyfikować jego zachowanie. Opcje te ustalamy w oknie Backburner Manager General Properties, pokazanym na rysunku 48.11. Aby je otworzyć, wybieramy Edit/General Settings w oknie Backburner Manager. Rysunek 48.11. Okno dialogowe Backburner Manager General Properties

Okno to zawiera sekcje omówione niżej. 

TCP/IP — tu możemy zmienić porty komunikacyjne używane przez menedżera i serwery. Generalnie nie powinno się ich zmieniać. Jeśli jednak jakiś inny program korzysta z tych portów, Max nie przeprowadzi renderingu sieciowego, więc będziemy musieli je zmienić. Jeśli zmienimy Server Port, musimy upewnić się, że będzie on taki sam na wszystkich serwerach. Jeśli zmienimy Manager Port, musimy także zmodyfikować dwa pliki na dysku twardym — queueman.ini (w folderze 3dsmax) i client.ini (w folderze 3dsmax\network). Oba te pliki zawierają wiersze z ustawieniem portu menedżera. Możemy edytować je za pomocą każdego edytora tekstu.



General — pole Max Concurrent Assignments używane jest do określania liczby zadań przesyłanych jednorazowo przez menedżera. Jeśli ustawimy tę wartość na zbyt wysoką, menedżer może wysyłać zadania szybciej, niż serwery będą w stanie je wykonać. Domyślna wartość jest odpowiednia dla większości przypadków.

Rozdział 48.  Rendering wsadowy i sieciowy

1285

Menedżer sieci może sam automatycznie restartować serwery, na których wystąpiły problemy, co daje farmie renderującej o wiele większą stabilność działania. 

Failed Servers — zazwyczaj Max nie wysyła klatek do serwerów, które poprzednio nie wykonały zadania. Jeśli zaznaczymy pole Restarts Failed Servers, Max da serwerowi jeszcze jedną szansę. Pole Number of Retries informuje program, ile razy powinien restartować serwer, zanim na dobre wykluczy go z udziału w renderingu. Minutes Between Retries określa, ile minut Max powinien czekać, zanim spróbuje przydzielić takiemu serwerowi kolejne zadanie. Menedżer renderingu zapisuje ustawienia na dysku, w pliku, który zostaje odczytany podczas uruchomienia menedżera. Jeśli zmienimy jakieś ustawienia, zamknięcie menedżera i ponowne uruchomienie go gwarantuje, że zmiany zostaną na pewno wprowadzone.



Direct Access to Jobs Path — ustawienie to pozwoli określić różne ścieżki obecne w sieci, niezależnie od tego, na którym komputerze działa menedżer. Dostępne są oddzielne pola dla ścieżek Win32 i Unix. Jeśli opcja Use Jobs Path jest zaznaczona, określona ścieżka będzie używana.



Default Job Handling — sekcja ta informuje menedżer, co ma robić po zakończeniu pracy renderingu. Dostępne opcje to brak akcji (Do Nothing), usunięcie (Delete it) lub archiwizacja (Archive it) oraz usunięcie bądź archiwizacja po określonej liczbie dni (Delete After lub Archive After). Opcja ta to sposób na wyczyszczenie kolejki.

Ustawienia serwerów sieciowych Jak już wiadomo, wybranie polecenia Edit/General Settings w oknie Backburner Server otwiera okno dialogowe Backburner Server General Properties, gdzie można ustalić pewne parametry serwera. Okno to zawiera numery portów, które służą temu samemu, co w przypadku menedżera. Jeśli zmieniamy je we właściwościach menedżera, zmieńmy je też tutaj. Jeśli zmienimy je tutaj, należy je także zmienić we właściwościach menedżera. Ustawienie Manager Name or IP Address pozwala zastąpić automatyczną detekcję menedżera i określić samodzielnie jego adres w sieci. Zazwyczaj najlepszym rozwiązaniem jest pozwolenie Maksowi na znalezienie menedżera; jeśli to się nie uda, blokujemy automatyczną detekcję, usuwając zaznaczenie pola wyboru Automatic. Jeśli przypadkiem w jednej sieci uruchomiono kilka menedżerów, serwer łączy się z pierwszym, który odnajdzie. W takim przypadku musimy ręcznie wybrać odpowiedni serwer.

Należy pamiętać, że właściwości serwera nie są dzielone z innymi serwerami, jeśli więc chcemy coś zmienić na wszystkich serwerach, musimy uczynić to na każdym komputerze z osobna. Tak jak w ustawieniach menedżera, jeśli zmienimy cokolwiek w oknie Network Servers Properties, należy wyłączyć i ponownie uruchomić serwer.

1286

Część XI  Zaawansowane techniki oświetlania i renderingu

Informacje o działaniu farmy renderującej W oknach Backburner Manager i Backburner Server znajdziemy też polecenia Edit/Log Settings, które otwierają okno Logging Properties, gdzie możemy ustawić obsługę informacji o działaniu farmy. Okno to, pokazane na rysunku 48.12, wygląda tak samo dla menedżera, jak i dla serwerów. Rysunek 48.12. Opcje rejestracji wiadomości dla menedżerów i serwerów pozwalają określić, gdzie i co Max ma zgłaszać

Max generuje następujące typy wiadomości. 

Error — błąd, cokolwiek, co pójdzie źle i jest na tyle poważne, że przerywa rendering klatki.



Warning — ostrzeżenie, problem, z którym Max może się uporać. Jeśli np. serwer przestanie działać, generowane jest ostrzeżenie, ale Max kontynuuje pracę, korzystając z pozostałych serwerów.



Info — ogólna wiadomość informacyjna, taka jak zgłoszenie otrzymania zadania lub informacja o ukończeniu klatki.



Debug — wiadomość niższego poziomu, dostarczająca informacji pomagających usunąć błędy farmy renderującej w kodzie programu.



Debug Extended — to samo, co Debug, ale z większą ilością szczegółów.

Max wyświetla typ wiadomości i samą jej treść w dwóch miejscach — w oknie listy i w pliku rejestracyjnym (w folderze 3dsmax\network). Okno Logging Properties pozwala wybrać, czy dany typ wiadomości ma się pojawiać na ekranie, ma zostać zapisany do pliku, w obu miejscach, czy też ma się nie pojawiać w ogóle. Możemy także użyć przycisków Clear, aby usunąć stare wiadomości.

Korzystanie z narzędzia Monitor Monitor to użyteczne narzędzie, pomagające zarządzać farmą renderującą i wszystkimi zadaniami. Jeśli często korzystamy z renderingu sieciowego, Monitor szybko stanie się naszym najlepszym przyjacielem. Uruchamiamy go w taki sam sposób jak serwer lub menedżer. W folderze Backburner odnajdujemy plik monitor.exe i dwukrotnie go klikamy.

Rozdział 48.  Rendering wsadowy i sieciowy

1287

Każdy komputer z zainstalowanym Maksem posiada kopię narzędzia Monitor, tak więc możemy korzystać z niego w całej sieci. Główny ekran tego narzędzia pokazany jest na rysunku 48.13. Rysunek 48.13. Monitor ułatwia i przyspiesza zarządzanie farmą renderującą

Kiedy Monitor się uruchomi, automatycznie odszukuje menedżera renderingu i łączy się z nim. (Jeśli uruchomiono więcej menedżerów, będziemy musieli wybrać ten, z którym ma się połączyć). Główny ekran podzielony jest na trzy panele. Lewy górny pokazuje kolejkę zadań i ich wartości Priority oraz Status, prawy górny pokazuje informacje o pozycji wybranej w panelu lewym. Panel prawy zawiera zakładki z następującymi kategoriami informacji: Job Summary (stan pracy), Task Summary (stan zadania), Job Details (szczegóły pracy) i Errors (błędy). Panel u dołu wyświetla wszystkie dostępne serwery. Obok każdego z nich znajduje się ikona odzwierciedlająca obecny status serwera. Zielona ikona oznacza, że serwer jest aktywny i ciężko pracuje. Żółta oznajmia, że serwer jest bezczynny. Czerwona zaś, że coś poszło źle, a szara, iż zadanie zostało przerwane lub serwer jest przypisany do zadania, ale nie działa. Kiedy zadanie zostanie ukończone, może zostać usunięte z kolejki.

Zadania Jeśli wybierzemy zadanie w lewym górnym panelu, to prawy górny panel wyświetli informacje o nim. Zakładki w prawym górnym panelu są następujące. 

Job Summary — wyświetla wejściowe i wyjściowe opcje renderingu wybrane przed zleceniem zadania.



Task Summary — wyświetla szczegóły renderingu każdej klatki animacji, czas potrzebny do ukończenia renderingu i użyty serwer.



Job Details — wyświetla parametry renderingu, dane statystyczne dotyczące sceny i ustawienia gamma.

1288

Część XI  Zaawansowane techniki oświetlania i renderingu 

Errors — wyświetla nazwy klatek, przy których wystąpił błąd, nazwy serwerów, w których błędy wystąpiły i opisy tych błędów, np. brak mapy lub współrzędnych tekstury czy niewłaściwa ścieżka folderu wyjściowego.

Kiedy wskażemy zadanie w lewym górnym panelu i klikniemy je prawym przyciskiem myszy, otworzy się małe menu. Za pomocą poleceń tego menu możemy usunąć zadanie z kolejki (Delete) lub je aktywować (Activate) bądź dezaktywować (Suspend). Jeśli dezaktywujemy zadanie, wszystkie serwery pracujące nad tym zadaniem zapisują postęp pracy na dysku i przechodzą do następnego w kolejce. Opcja ta jest pomocna, gdy mamy zadania o niższym priorytecie, które chcemy uruchomić, gdy nie będzie już innych zadań w kolejce; gdy pojawi się coś bardziej ważnego, dezaktywujemy zadanie, aby je aktywować ponownie, gdy serwery będą znów wolne. Jeszcze jedną przydatną opcją dotyczącą zadań jest to, że możemy zmieniać ich kolejność, przeciągając powyżej lub poniżej innych zadań. Zadania znajdujące się wyżej na liście będą realizowane wcześniej, co umożliwia podwyższenie priorytetu konkretnego zadania, bez potrzeby dezaktywowania innych. Plik z priorytetem Critical jest renderowany natychmiast.

Serwery Jeśli klikniesz prawym przyciskiem myszy serwer i z podręcznego menu wybierzesz Properties, otworzy się okno dialogowe Server Properties, pokazane na rysunku 48.14. To okno zawiera informacje o wybranym serwerze. Rysunek 48.14. Okno dialogowe Server Properties wyświetla informacje o serwerze

W menu podręcznym dostępne są jeszcze inne polecenia. Korzystając z nich, możemy przypisać serwer do wybranego zadania, odwołać zlecone mu zadanie, wyświetlić szczegółowe informacje o serwerze, utworzyć grupę serwerów lub przejrzeć Week Schedule (plan tygodniowy), jak to pokazano na rysunku 48.15. Korzystając z okna Week Schedule, możemy ustalić okresy czasu pracy serwera. Okno dialogowe Week Schedule pozwala określić, kiedy konkretny komputer będzie dostępny do renderingu. (Możemy np. sprawić, że komputer kolegi z biura będzie automatycznie dostępny dla renderingu, kiedy ten uda się do domu).

Rozdział 48.  Rendering wsadowy i sieciowy

1289

Rysunek 48.15. W okno dialogowym Week Schedule możemy określić czas w ciągu tygodnia, kiedy serwer jest dostępny do renderowania

Klikając i przeciągając myszą nad różnymi godzinami, wybieramy zakres godzin. Możemy też kliknąć dzień tygodnia, aby wybrać cały dzień, lub kliknąć godzinę, aby wybrać tę godzinę dla każdego dnia. W przykładzie pokazanym na rysunku 48.15 serwer ustawiony jest na renderowanie wieczorami i w weekendy. Po wybraniu zakresu godzin klikamy Allow, by serwer stał się dostępny do renderingu w wybranym okresie czasu, lub klikamy Disallow, by uniemożliwić renderowanie. Po skończeniu klikamy OK, żeby zamknąć okno Week Schedule i powrócić do okna Monitor. Jeśli mamy kilka zadań działających jednocześnie, a nagle zachodzi potrzeba szybkiego wykonania jednego z nich, możemy odwołać serwer od zadania i przydzielić mu inne. Aby usunąć serwer, klikamy jego nazwę w lewym panelu okna Monitor prawym przyciskiem myszy i wybieramy Delete Server (Ctrl+Enter). Ikona obok serwera zmieni się na czarną, co wskazuje, że serwer nie jest przydzielony. Aby przydzielić ten serwer do innego zadania, klikamy prawym przyciskiem myszy jego nazwę na liście serwerów danego zadania i wybieramy Assign to Selected Jobs.

Podsumowanie Jeśli naszym celem jest mieć więcej czasu na modelowanie, a mniej czasu poświecić na rendering, użycie usługi renderingu sieciowego w programie 3ds Max to krok we właściwym kierunku. Po przebyciu początkowo skomplikowanej procedury konfiguracji farmy renderującej, sieciowy rendering stanie się bardzo użytecznym elementem, pomagającym zmieścić się w krótkich terminach pracy i wcześniej cieszyć z jej efektów. Jeśli nawet możemy dodać tylko jeden lub dwa komputery do zestawu, zobaczymy ogromny wzrost wydajności — wzrost, którego nie docenimy, póki nie uświadomimy sobie, że wykonanie zadania zajęło tylko cząstkę czasu potrzebnego do jego realizacji na jednym komputerze. W tym rozdziale omówiliśmy następujące tematy: 

okno Batch Render i tworzenie kolejki renderingu wsadowego,



korzystanie z menedżera renderingu i serwerów podczas obsługi zadania,



monitorowanie priorytetów zadań,

1290

Część XI  Zaawansowane techniki oświetlania i renderingu 

system powiadamiania przez Maksa o zakończeniu pracy lub o problemach, kiedy te wystąpią,



przeprowadzanie renderingu wsadowego nawet bez posiadania sieci.

W następnym rozdziale dowiesz się, jak dodawać efekty postprodukcyjne, korzystając z interfejsu Video Post i elementów renderingu.

Rozdział 49.

Komponowanie przy użyciu interfejsu Video Post i elementów renderingu W tym rozdziale: 

Nauka postprodukcji



Komponowanie z użyciem programów Photoshop, Premiere i After Effects



Wprowadzenie do Composite



Stosowanie elementów renderingu



Posługiwanie się interfejsem Video Post



Praca z sekwencjami



Korzystanie z różnych typów filtrów



Dodawanie zdarzeń i ich edycja



Określanie zasięgów zdarzeń



Stosowanie filtrów Lens Effects

Po wymodelowaniu i zrenderowaniu scena jest zakończona, tak? Cóż, nie do końca. Wciąż jeszcze pozostaje praca postprodukcyjna — to tu pracujemy nad zrenderowanymi obrazami i dodajemy do nich różne efekty. Ten etap często przeprowadzany jest w innym programie, takim jak Photoshop, Composite lub After Effects, i umiejętność obsługi tych aplikacji niejednokrotnie może nas ocalić, kiedy klient zechce wprowadzić poprawki w ostatniej chwili (a oni zawsze tego chcą).

1292

Część XI  Zaawansowane techniki oświetlania i renderingu

Max może zrealizować każdą część procesu renderowania oddzielnie. Części te nazywane są elementami renderingu (render elements). Zrenderowanie oddzielnie samej warstwy odbić lub cieni daje nam większe pole manewru podczas późniejszych zabiegów kompozycyjnych. Gdy nie mamy programu do kompozycji lub jeśli nawet mamy, to warto skorzystać z prostego interfejsu Maksa, który może zostać użyty do dodania efektów postprodukcyjnych. Ten interfejs to Video Post. Okno Video Post może posłużyć do komponowania końcowego renderingu z innymi obrazami i efektami filtrów. Filtry pozwalają dodać efekty obiektywu, takie jak poświata czy flary, oraz inne efekty, jak rozmycie lub tonowanie. Video Post to środowisko postprodukcyjne wbudowane w Maksa. Wiele efektów postprodukcyjnych, takich jak poświata czy rozmycie, jest także dostępnych jako efekty renderowane, ale Video Post może dużo więcej. O efektach renderowanych możesz przeczytać w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Komponowanie za pomocą odrębnych programów Przed bliższym poznaniem interfejsu Video Post zerknijmy szybko na niektóre pakiety służące do komponowania obrazów i animacji. Kilka z nich posiada bezpośrednie połączenie z Maksem, co ułatwia i przyspiesza proces postprodukcji.

Komponowanie z użyciem Photoshopa Prawdopodobnie najpopularniejszym narzędziem do komponowania obrazów jest Photoshop. Może on połączyć kilka obrazów w jednym pliku, z określonymi zależnościami między nimi. Praca z warstwami ułatwia przypisywanie filtrów i efektów do różnych elementów kompozycji. Na rysunku 49.1 pokazano okno programu Photoshop z kompozycją, której elementy rozłożono na kilku warstwach. Aby wykonać kompozycję z użyciem Photoshopa, musimy załadować do niego wszystkie składowe obrazy i wybrać fragmenty, które chcemy połączyć. Przy zapisywaniu obrazów w Maksie upewnijmy się, że załączyliśmy kanał alfa. Kanał ten można zobaczyć w oknie Rendered Frame po kliknięciu przycisku Display Alpha Channel, co pokazano na rysunku 49.2. W Photoshopie możemy obejrzeć kanał alfa, wskazując go na palecie Channels (Kanały). Wybranie kanału alfa i użycie narzędzia Magic Wand (Różdżka) sprawia, że zaznaczanie zrenderowanych obiektów staje się łatwym zadaniem. Zaznaczone elementy możemy kopiować i wklejać na inny obraz w postaci nowej warstwy.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1293

Rysunek 49.1. Photoshop to ważne narzędzie do komponowania statycznych obrazów Rysunek 49.2. Okno Rendered Frame może wyświetlać kanał alfa

Nie wszystkie formaty plików obsługują kanał alfa. Gdy renderujemy obrazy z przeznaczeniem do kompozycji, należy upewnić się, że korzystamy z odpowiedniego formatu, takiego jak RLA, RPF, PNG lub TGA.

Po umieszczeniu wszystkich elementów na obrazie tła możemy przypisać filtr, taki jak Gaussian Blur, aby wygładzić krawędzie między komponowanymi obrazami.

1294

Część XI  Zaawansowane techniki oświetlania i renderingu

Edycja wideo z użyciem programu Premiere Photoshop nadaje się do statycznych obrazów, ale kiedy pracujemy z animacjami, warto skorzystać z programu Premiere firmy Adobe, który jest pomocny w edycji wideo. Możliwości edycyjne, jakich dostarcza Premiere, to łączenie kilku klipów animacji, dodawanie dźwięku, korekcja koloru klatek i dodawanie przejść między klipami. Do Premiere importowane mogą być różne animacje (lub można je po prostu przeciągnąć z okna eksploratora Windows do panelu Project). Tutaj klipy umieszczamy na linii czasu (Timeline) w żądanej kolejności. Panel Monitor pokazuje obecną animację lub poszczególne klipy. Klipy dźwiękowe mogą być umieszczane na linii czasu, na ścieżce Audio. Menu Title używane jest do dodawania tekstu do animacji. Inną częstą czynnością w Premiere jest dodawanie efektów przejść pomiędzy klipami. Czynimy to, klikając zakładkę Effects w panelu Project i przeciągając efekt przejścia na linię czasu pomiędzy dwoma klipami animacji. Kiedy cała sekwencja jest zakończona, możemy ją zrenderować, korzystając z polecenia Sequence/Render Work Area. Ukończony plik animacji może zostać zapisany za pomocą polecenia File/Export. Na rysunku 49.3 pokazano interfejs programu Premiere z wczytanymi klipami animacji, umieszczonymi w panelu Timeline.

Kompozycja wideo z użyciem programu After Effects Jeśli potrzebujemy dodać do naszych animacji coś więcej, a nie tylko przejścia, powinniśmy zainteresować się programem After Effects, który pozwala łączyć klipy 2D i 3D w pojedyncze obrazy lub animacje. Możemy malować bezpośrednio na klatkach animacji, dodawać światła i kamery oraz tworzyć efekty wizualne, takie jak Distort, Shatter lub Warp. After Effects zawiera bibliotekę zasobów, tak jak Premiere. Zasoby te mogą być umieszczane w oknie Composition. Efekty przypisane załadowanym klipom animacji wyświetlone są na liście w panelu Effects wraz z wszystkimi ustawieniami efektu. After Effects zawiera wiele narzędzi, znajdujących się także w programach Photoshop i Illustrator. Narzędzia te pozwalają malować przez wybieranie fragmentów klipów animacji, zupełnie jakby to były statyczne obrazy, a rezultaty mogą być dodawane lub usuwane na przestrzeni czasu.

Ćwiczenie: Dodawanie efektów animacyjnych przy użyciu After Effects Niektóre efekty o wiele łatwiej dodać, korzystając z pakietu, takiego jak After Effects, niż uczynić to w Maksie. Dobrym przykładem jest dodanie do animacji topniejącego bałwana, którą tworzyliśmy w rozdziale 22., efektu rozmycia i fal ciepła rozchodzących się od źródła. Aby dodać efekt wideo, korzystając z After Effects, wykonaj następujące czynności.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1295

Rysunek 49.3. Program Premiere może być wykorzystany do łączenia kilku sekwencji animacji

1. Uruchom After Effects i przeciągnij plik Melting snowman.avi znajdujący się w folderze Chap 49 do panelu Project. 2. Wybierz polecenie Composition/New Composition, włącz opcję NTSC, wybierz pozycję 640480 z listy Preset i kliknij OK. 3. Przeciągnij plik Melting snowman.avi z panelu Project do okna Composition. 4. Z animacją wybraną w oknie Composition kliknij polecenie Effect/Distort/Wave Warp. Efekt Wave Warp pojawi się w panelu. Ustaw parametr Wave Height na 4, Wave Width na 30, Direction na Vertical, a Wave Speed na 1. Uzyskasz efekt fali ciepła w całej animacji. 5. Wybierz z menu Effect/Blur & Sharpen/Gaussian Blur i ustaw Blurriness na 3,0. 6. W panelu Timeline przeciągnij ikonę Work Area End tak, aby znajdowała się na końcu animacji. 7. Wybierz z menu Composition/Make Movie. W oknie Render Queue kliknij przycisk Render, aby zrenderować animację wraz z efektami. Na rysunku 49.4 widać interfejs programu After Effects z wczytanym klipem animacji.

Wprowadzenie do programu Composite Autodesk dostarcza kompletne rozwiązania dla producentów filmów; teraz Max wyposażony jest we własne narzędzie kompozycyjne o nazwie Composite, którego interfejs pokazano na rysunku 49.5. Jest to broń innego typu niż Max, ale jej siła rażenia jest po

1296

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 49.4. W After Effects można dodawać do animacji efekty specjalne

prostu zabójcza, tyle że stosowana na nieco innym polu walki. Największą różnicą między programem Combustion a Photoshopem jest fakt, że ten pierwszy obsługuje animacje, podczas gdy drugi radzi sobie tylko ze statycznymi obrazami. Composition umożliwia tworzenie ruchomej grafiki, kompozycji i efektów wizualnych, co nie brzmi zbyt oryginalnie w porównaniu z Maksem, poza tym jednym małym słowem — kompozycja. Jeśli zrenderowany obraz jest czymś, do czego muszą zostać dodane inne elementy, takie jak tekst, logo, inne obrazy lub nawet menu DVD, można powiedzieć, że zaczynamy rozumieć, jak działają ekipy postprodukcyjne. Komponowanie to proces łączenia kilku różnych elementów w jeden, końcowy produkt. Pozycjonowania tych elementów można dokonać nawet w trzech wymiarach, umieszczając obrazy za lub przed innymi obrazami czy też rozmieszczać je w czasie podczas pracy z animacją. Ale zaraz, ktoś powie, że to książka o Maksie, a nie o Composition. Tak, ale Composition bardzo ładnie integruje się z Maksem i właśnie o tym chcę opowiedzieć. Kilka punktów wspólnych to m.in. mapy typu Composition i elementy renderingu.

Stosowanie elementów renderingu Nasza grupa zawiera silną ekipę postprodukcyjną zajmującą się tworzeniem kompozycji i zdarza się, że chcemy wyrenderować tylko pewne, konkretne elementy sceny, np. informacje o kanale alfa lub efekt atmosferyczny. Możliwość użycia w kompozycji indywidualnych elementów daje lepszą kontrolę nad nimi. Możemy np. przemieścić lub rozjaśnić cień bez konieczności ponownego renderingu całej sceny.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1297

Rysunek 49.5. Composite jest kompletnym narzędziem do komponowania obrazów

Korzystając z panelu Render Elements okna dialogowego Render Setup, pokazanego na rysunku 49.6, możemy wyrenderować pojedynczy efekt i zapisać go w postaci obrazu. Możemy wybrać i wyrenderować kilka elementów naraz. Dostępne elementy renderingu zawierają Alpha, Atmosphere, Background, Blend, Diffuse, Hair and Fur, Material ID, Matte, Object ID, Paint, Reflection, Refraction, Self-Illumination, Shadow, Specular, Velocity i Z Depth. Jeśli włączony jest renderer mental ray, dostępne stają się także elementy związane z materiałami typu Arch & Design, a także elementy o nazwach mental ray Shader Element i mental ray Labeled Render Element. Przycisk Add w rolecie Render Elements otwiera okno dialogowe Render Elements, gdzie możemy wybrać te, które mają być renderowane. Przycisk Merge pozwala dołączać elementy z innej sceny, a przycisk Delete usuwa je z listy. Aby elementy mogły być renderowane, trzeba zaznaczyć opcję Elements Active. Opcja Display Elements powoduje, że dane efekty będą renderowane i pokazywane w oknie Rendered Frame. Pole wyboru Enable umożliwia wyłączanie pojedynczych elementów; Enable Filtering włącza filtrowanie antyaliasingowe zgodnie z ustawieniami w rolecie Default Scanline Renderer. Osobne okno Rendered Frame jest otwierane dla każdego uaktywnionego elementu renderingu.

1298

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 49.6. Z rolety Render Elements korzystamy, aby renderować tylko wybrane elementy

Kliknięcie przycisku Browse otwiera okno dialogowe wyboru pliku, gdzie elementowi możemy nadać nazwę. Max automatycznie dodaje na końcu nazwy pliku nazwę elementu. Jeśli np. zatytułujemy plik myScene (moja scena) i wskażemy element Alpha, nazwa tego pliku będzie brzmiała myScene_alpha. Gdy wybierzemy elementy Blend i Z Depth, pojawi się dodatkowa roleta z parametrami. Rolety Blend Element Parameters używamy do łączenia kilku elementów razem. Roleta ta zawiera pola wyboru dla każdego typu elementów. Dla elementu Z Depth można ustalić głębię minimalną i maksymalną. Na rysunku 49.7 pokazano okno Rendered Frame z wyrenderowanym elementem Alpha. Przy użyciu rolety Render Elements możemy także tworzyć pliki, które będzie mógł obsługiwać program Composite. Pliki takie posiadają rozszerzenie .cws. Aplikacja Composite to narzędzie do tworzenia kompozycji umożliwiające pracę z pojedynczymi elementami, co pozwala wzmacniać odblaski, zmieniać barwy, przyciemniać lub rozmywać cienie oraz wykonywać wiele innych rzeczy bez konieczności ponownego renderowania sceny.

Przeprowadzanie postprodukcji w oknie Video Post Postprodukcja to praca wykonywana już po wyrenderowaniu sceny. To na tym etapie dodawane są efekty, takie jak poświata i odbłyski, a także efekty przejść w animacji. Jeśli np. chcemy umieścić logo w dolnym, prawym rogu naszej animacji, tworzymy i rende-

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1299

Rysunek 49.7. Element renderingu Alpha pokazany w oknie Rendered Frame

rujemy logo, a następnie w czasie postprodukcji komponujemy kilka wyrenderowanych obrazów w jeden. Video Post to wbudowany w Maksa interfejs postprodukcyjny, którego używamy do łączenia sceny z różnymi obrazami, efektami i filtrami. Komponowanie to proces łączenia kilku różnych obrazów w jeden. Każdy element kompozycji jest traktowany jako oddzielne zdarzenie (event). Zdarzenia te ustawione są w kolejce (queue) i przetwarzane w kolejności określonej przez pozycję w tej kolejce. Kolejka może też zawierać zdarzenia zapętlające się. Interfejs Video Post, tak jak okno Render Setup (opisane w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”), oferuje kolejną metodę tworzenia plików wyjściowych. Video Post można przyrównać do artystycznej linii produkcyjnej. W miarę jak obraz przesuwa się po taśmie, każda pozycja w kolejce dodaje nowy obraz, zrzuca zrenderowany obraz na stos lub przypisuje jakiś filtr. Proces ten trwa dopóty, dopóki nie dotrze do ostatniego zdarzenia. Interfejs Video Post, pokazany na rysunku 49.8, zawiera pasek narzędziowy, okno ze zdarzeniami i zasięgami (ranges) oraz pasek stanu. Okno Video Post otwieramy za pomocą polecenia Rendering/Video Post. Rysunek 49.8. Interfejs Video Post pozwala komponować obrazy z końcowym renderingiem

1300

Część XI  Zaawansowane techniki oświetlania i renderingu

Pod wieloma względami interfejs Video Post podobny jest do interfejsu Track View. Każde zdarzenie wyświetlane jest jako ścieżka w okienku Queue po lewej. Na prawo znajduje się okienko Range, gdzie wyświetlane są zakresy każdej ścieżki w postaci linii z kwadratami na końcach. Możemy edytować zakresy, przesuwając te kwadraty. Pasek czasu, powyżej okienka Range, wyświetla klatki bieżącej sekwencji, a pasek stanu u dołu interfejsu zawiera informacje i przyciski nawigacyjne.

Pasek narzędziowy Video Post U góry interfejsu Video Post znajduje się pasek narzędziowy z licznymi przyciskami służącymi do zarządzania opcjami Video Post. W tabeli 49.1 pokazano te przyciski i objaśniono ich znaczenie.

Kolejka i zasięgi zdarzeń w Video Post Poniżej paska narzędziowego znajdują się panele z kolejką i zasięgami zdarzeń. Panel kolejki, po lewej, zawiera listę wszystkich zdarzeń, jakie mają być zastosowane w sekwencji postprodukcji, w kolejności, w jakiej są przetwarzane. Możemy zmieniać kolejność zdarzeń, przeciągając je w górę lub w dół. Możemy wybierać wiele zdarzeń, trzymając wciśnięty klawisz Ctrl i klikając ich nazwy, lub wybrać jedno zdarzenie i z wciśniętym klawiszem Shift kliknąć inne, aby wybrać ciąg kolejnych zdarzeń. Każde zdarzenie ma swój zasięg, widoczny w panelu Range, po prawej. Zasięg reprezentowany jest przez linię z kwadratami na końcach. Kwadrat po lewej oznacza pierwszą klatkę zdarzenia, a kwadrat po prawej — ostatnią. Możemy rozszerzać i zawężać zasięgi, przeciągając kwadrat na którymś z końców linii. Jeśli klikniemy linię pomiędzy dwoma kwadratami, możemy przeciągnąć cały zasięg. Jeśli przeciągniemy zasięg poza maksymalną liczbę klatek, utworzone zostaną nowe klatki. Pasek czasu znajduje się u góry panelu Range i pokazuje całkowitą liczbę klatek zawartych w animacji. Pasek czasu możemy przeciągać w górę lub w dół, przybliżając go do wybranej ścieżki.

Pasek stanu okna Video Post Pasek stanu zawiera wiersz zachęty, kilka pól z wartościami i przyciski nawigacyjne. Pola na prawo od wiersza zachęty zawierają dane o początku (S), końcu (E), liczbie klatek (F) i szerokości (W) oraz wysokości (H) obrazu. Przyciski nawigacyjne to (kolejno, od lewej do prawej) Pan, Zoom Extents, Zoom Time oraz Zoom Region.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1301

Tabela 49.1. Przyciski paska narzędziowego Video Post Przycisk

Nazwa

Opis

New Sequence

Tworzy nową sekwencję.

Open Sequence

Otwiera istniejącą sekwencję.

Save Sequence

Zapisuje bieżącą sekwencję.

Edit Current Event

Otwiera okno Edit Current Event, gdzie możemy edytować zdarzenia.

Delete Current Event

Usuwa bieżące zdarzenie z sekwencji.

Swap Events

Zamienia dwa zdarzenia miejscami w kolejce.

Execute Sequence

Uruchamia bieżącą sekwencję.

Edit Range Bar

Pozwala edytować zasięg zdarzeń.

Align Selected Left

Wyrównuje do lewej zasięgi wybranych zdarzeń.

Align Selected Right

Wyrównuje do prawej zasięgi wybranych zdarzeń.

Make Selected Same Size Sprawia, że zasięgi wybranych zdarzeń przyjmują taki sam rozmiar. Abut Selected

Umieszcza zdarzenia bezpośrednio jedno po drugim.

Add Scene Event

Dodaje zrenderowaną scenę do kolejki.

Add Image Input Event

Dodaje do kolejki obraz.

Add Image Filter Event

Dodaje do kolejki filtr obrazu.

Add Image Layer Event

Dodaje do kolejki kompozycyjny moduł dodatkowy, kiedy wybrane są dwa zdarzenia.

Add Image Output Event

Wysyła ukończoną kompozycję do pliku lub urządzenia.

Add External Event

Dodaje do kolejki zewnętrzne zdarzenie przetwarzające obraz.

Add Loop Event

Powoduje zapętlanie zdarzeń.

1302

Część XI  Zaawansowane techniki oświetlania i renderingu

Praca z sekwencjami Wszystkie zdarzenia dodane do kolejki tworzą sekwencję (sequence). Możemy zapisywać te sekwencje i wczytywać je później. Przycisk Execute Sequence (Ctrl+R), znajdujący się na pasku narzędziowym, rozpoczyna proces komponowania. Skróty klawiszowe interfejsu Video Post działają pod warunkiem, że w głównym interfejsie programu włączony został przycisk Keyboard Shortcut Override Toggle.

Aby zapisać sekwencję, klikamy przycisk Save Sequence na pasku narzędziowym, otworzy się okno dialogowe Save, gdzie możemy zapisać kolejkę sekwencji. Sekwencje zapisywane są w pliku sceny Maksa, ale mogą być też zapamiętane niezależnie od sceny. Domyślnie pliki te otrzymują rozszerzenia .vpx i umieszczane są w folderze vpost. Zapisanie sekwencji w pliku VPX pozostawia elementy kolejki, ale unieważnia ustawienia wszystkich parametrów. Zapisanie sekwencji razem ze sceną w pliku Maksa utrzymuje zarówno wszystkie pozycje kolejki, jak i ustawienia parametrów.

Możemy wczytywać zapisane sekwencje, korzystając z przycisku Open Sequence na pasku narzędziowym. Gdy otwieramy zapisaną sekwencję, wszystkie aktualne zdarzenia zostają usunięte. Kliknięcie przycisku New Sequence także usuwa wszystkie aktualne zdarzenia. Przycisk Execute Sequence otwiera interfejs Execute Video Post, pokazany na rysunku 49.9. Ustawienia w tym oknie działają dokładnie tak samo jak te w oknie Render Setup. Rysunek 49.9. Interfejs Execute Video Post zawiera kontrolki określające parametry wyjściowego pliku

Ustawienia czasu i rozdzielczości w oknie Execute Video Post są niezależne od analogicznych ustawień w oknie Render Setup.

Część Time Output pozwala ustalić, które klatki mają być zrenderowane, a w części Output Size określamy wymiary obrazów wyjściowych. Opcja Custom ułatwia wprowadzanie własnych wartości Width (szerokość) i Height (wysokość), możemy też użyć jednego z zestawów ustawień dostępnych na liście rozwijanej lub w postaci przycisków z rozdzielczościami. Okno to zawiera także opcje wprowadzenia wartości Image Aspect (proporcje obrazu) i Pixel Aspect (proporcje piksela).

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1303

Opcje Output pozwalają utrzymywać okno Progress otwarte, wyprowadzać wyniki renderowania do okna Rendered Frame i (lub) skorzystać z renderingu sieciowego. Kiedy jesteśmy gotowi do zrenderowania kolejki, klikamy przycisk Render.

Dodawanie i edycja zdarzeń Siedem typów zdarzeń, które możemy dodać do kolejki, to Image Input (wprowadzenie obrazu), Scene (scena), Image Filter (filtr obrazu), Image Layer (warstwa obrazu), Loop (pętla), External (zewnętrzne) i Image Output (wyprowadzenie obrazu). Jeśli nie jest zaznaczone żadne zdarzenie, dodanie nowego umieści je na dole listy. Jeśli jakieś zdarzenie jest zaznaczone, dodane zdarzenie stanie się jego podzdarzeniem. Okno dialogowe każdego zdarzenia, takie jak Add Image Input Event, pokazane na rysunku 49.10, zawiera pole Label, gdzie można wprowadzić nazwę zdarzenia. Nazwa ta wyświetlana jest w panelu kolejki i używana do identyfikacji zdarzenia. Rysunek 49.10. Okno dialogowe Add Image Input Event pozwala wczytać obraz i dodać go do kolejki

Każde okno dialogowe zdarzenia ma także część Video Post Parameters, która zawiera wartości VP Start Time i VP End Time określające dokładnie zasięg danego zdarzenia. Zawiera także opcję Enabled, włączającą lub wyłączającą zdarzenie. Wyłączone zdarzenia oznaczone są w kolejce kolorem szarym. W celu edycji zdarzenia klikamy dwukrotnie jego nazwę w kolejce (lub wciskamy Ctrl+E), aby otworzyć okno dialogowe Edit Event. Aby móc korzystać ze skrótów klawiszowych w oknie Video Post, należy wcześniej włączyć przycisk Keyboard Shortcut Override Toggle.

Dodawanie zdarzeń Image Input Okno dialogowe Add Image Input Event pozwala dodać obraz do kolejki. Możemy np. dodać obraz tła, używając tego okna zamiast okna Environment. Aby otworzyć okno Add Image Input Event, klikamy na pasku narzędziowym przycisk Add Image Input Event (Ctrl+I).

1304

Część XI  Zaawansowane techniki oświetlania i renderingu Jeśli nie nadamy nazwy zdarzeniu z obrazem, w okienku kolejki jako zdarzenie pojawi się nazwa pliku.

Przycisk Files otwiera okno dialogowe Select Image File for Video Post Input, gdzie możemy wskazać plik z obrazem do załadowania z dysku twardego lub z sieci. Obsługiwane typy plików to AVI, BMP, MPEG, Kodak Cineon, Combustion, FLC, GIF, IFL, JPEG, PIC, PNG, PSD, MOV, SGI Image, RLA, RPF, TGA, TIF i YUV. Przycisk Devices daje dostęp do zewnętrznego urządzenia, takiego jak magnetowid. Przycisk Options staje się dostępny dopiero wtedy, gdy załadujemy obraz. Opcja Cache powoduje załadowanie obrazu do pamięci, co może przyspieszyć pracę, gdyż nie wymaga każdorazowego ładowania obrazu dla każdej kolejnej klatki. Część Image Driver okna Add Image Input Event pozwala określić ustawienia sterownika obrazu, takie jak ustawienia kompresji pliku AVI. Kliknięcie przycisku Setup otworzy okno z opcjami wybranego formatu, ale przycisk ten nie jest dostępny dla każdego formatu. W oknie dialogowym Image Input Options, pokazanym na rysunku 49.11, ustalamy położenie, rozmiar i klatki, w których obraz się pojawia. Część Alignment zawiera dziewięć ustawień wyrównania obrazu. Ustawienia te to lewy górny narożnik, górny wyśrodkowany, prawy górny narożnik, wyrównany do lewej, wyśrodkowany, wyrównany do prawej, lewy dolny narożnik, dolny wyśrodkowany i prawy dolny narożnik. Możemy także skorzystać z opcji Coordinates, aby w pikselach określić położenie lewego górnego narożnika obrazu. Rysunek 49.11. Okno dialogowe Image Input Options pozwala ustalić położenie i wymiary obrazu

W części Size możemy ustalić wymiary obrazu, używając opcji Do Not Resize (nie zmieniaj wymiarów), Resize to Fit (zmień wymiary, aby dopasować) lub Custom Size (wymiary dowolne). Ostatnia opcja pozwala wprowadzić szerokość (Width) i wysokość (Height) obrazu. Część Frames (klatki) dotyczy tylko plików animacji. Wartości From (od) i To (do) określają, które klatki animacji mają być odtwarzane. Parametr Step pozwala odtwarzać każdą n-tą klatkę. Parametr Loop at the End powoduje, że animacja po zakończeniu zapętla się do początku.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1305

Dodawanie zdarzeń Scene Zdarzenie Scene to renderowana scena, którą utworzyliśmy w Maksie. Kiedy klikniemy przycisk Add Scene Event, otworzy się okno Add Scene Event, pokazane na rysunku 49.12. Okno to pozwala określić zasięg zdarzenia i opcje renderingu. Rysunek 49.12. Okno dialogowe Add Scene Event pozwala określić, które okno widokowe ma być użyte do zrenderowania sceny

Poniżej pola Label, gdzie możemy nazwać zdarzenie, znajduje się rozwijana lista pozwalająca wybrać, które okno widokowe będzie użyte do zrenderowania sceny. Domyślnie wybrane jest aktywne okno widokowe. Przycisk Render Setup otwiera okno Render Setup, w którym przycisk Render zastąpiony jest przyciskami OK i Cancel, ponieważ rendering uruchamiany jest przyciskiem Execute Sequence. Aby dowiedzieć się więcej o oknie Render Setup, zajrzyj do rozdziału 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Sekcja Scene Options okna dialogowego Add Scene Event zawiera też opcję Scene Motion Blur (rozmycie ruchu sceny). Ten typ rozmycia ruchu różni się od rozmycia ruchu obiektu, ustawianego w oknie Object Properties. Typ Scene Motion Blur przypisywany jest do całego obrazu i przydatny przy pokazywaniu szybko poruszających się obiektów. Parametr Duration określa (w klatkach), jak długo trwa efekt rozmycia. Parametr Duration Subdivisions ustawia ilość przeliczeń dokonywanych każdorazowo. Parametr Dither % ustala stopień ditheringu w rozmywanych obszarach. Więcej informacji o rozmyciu ruchu obiektu znajdziemy w rozdziale 6., „Zaznaczanie obiektów i ustawianie ich właściwości”.

W części Scene Range parametry Scene Start i Scene End pozwalają określić zasięg renderowanej sceny. Opcja Lock Range Bar to Scene Range utrzymuje zasięg zdarzenia na poziomie liczby klatek w scenie, ale mimo to wciąż możemy przemieścić moment startowy renderowanej sceny. Opcja Lock to Video Post Range ustala zasięg na poziomie zasięgu Video Post.

1306

Część XI  Zaawansowane techniki oświetlania i renderingu

Dodawanie zdarzeń Image Filter Przycisk Add Image Filter Event (Ctrl+F) na pasku narzędziowym otwiera okno dialogowe Add Image Filter Event pokazane na rysunku 49.13, gdzie możemy wybierać spośród wielu typów filtrów. Dostępne filtry zawarte są w rozwijanej liście pod polem Label. Rysunek 49.13. Okno dialogowe Add Image Filter Event pozwala wybierać spośród wielu typów filtrów

Poniżej rozwijanej listy z filtrami znajdują się dwa przyciski — About i Setup. Przycisk About udziela informacji o twórcy filtra. Przycisk Setup otwiera nowe okno dialogowe, w którym określamy parametry filtra. To, jakie okno zostanie otwarte, zależy od typu filtra wybranego z rozwijanej listy. Kilka filtrów wymaga maski, tak jak filtr Image Alpha. Aby użyć bitmapy jako maski, klikamy przycisk Files w części Mask i wybieramy plik w oknie dialogowym Select Mask Image. Rozwijana lista pozwala wybrać odpowiedni kanał. Możliwe do wyboru kanały to Red, Green, Blue, Alpha, Luminance, Z Buffer, Material Effects i Object. Możemy też wybrać opcje włączenia (Enabled) lub odwrócenia (Inverted) maski. Przycisk Options otwiera okno Image Input Options, służące do wyrównywania i ustalania rozmiaru maski. Na rozwijanej liście znajduje się także kilka filtrów typu Lens Effects. Filtry te korzystają z zaawansowanych okien dialogowych, z wieloma opcjami, opisanymi w podrozdziale „Praca z filtrami efektów obiektywu (Lens Effects)”, dalej w tym rozdziale.

Filtr Contrast Filtra Contrast używamy, aby wyregulować jasność i kontrast. Wybranie tego filtra i kliknięcie przycisku Setup otwiera okno Image Contrast Control. To proste okno dialogowe zawiera ustawienia jasności (Brightness) i kontrastu (Contrast). Oba parametry mogą przyjmować wartości od 0 do 1. Opcja Absolute oblicza średni poziom jasności w oparciu o najwyższą wartość koloru. Opcja Derived wykorzystuje średnią wartość wszystkich trzech składowych kolorów (czerwonej, zielonej i niebieskiej).

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1307

Filtr Fade Filtr Fade stosujemy do powodowania blaknięcia obrazu na przestrzeni czasu. Wybieramy go z rozwijanej listy. Kliknięcie przycisku Setup otwiera okno Fade Image Control, gdzie wybieramy typ In lub Out. Proces blaknięcia rozmieszczony jest na przestrzeni czasu, ustalonej w panelu zasięgów.

Filtr Image Alpha Filtr Image Alpha ustawia kanał alfa w oparciu o maskę. Filtr ten nie posiada okna dialogowego z ustawieniami.

Filtr Negative Filtr Negative odwraca wszystkie kolory, tak jak na negatywie zdjęcia. Okno dialogowe Negative Filter zawiera prosty parametr mieszania (Blend).

Filtr Pseudo Alpha Filtr Pseudo Alpha ustala kanał alfa w oparciu o piksel znajdujący się w lewym górnym rogu obrazu. Filtr ten może sprawić, że niezrenderowane tło stanie się przezroczyste. Kiedy filtr ten jest wybrany, przycisk Setup jest nieaktywny, ponieważ filtr nie posiada okna dialogowego z ustawieniami.

Filtr Simple Wipe Filtr Simple Wipe usuwa obraz, zastępując go czarnym tłem. Czas działania filtra określany jest zasięgiem zdarzenia. Okno dialogowe Simple Wipe Control, pokazane na rysunku 49.14, pozwala wymazywać obraz od lewej do prawej lub od prawej do lewej. Możemy także ustalić tryb na Push (stopniowe odkrywanie obrazu) lub na Pop (zakrywanie). Rysunek 49.14. Okno dialogowe Simple Wipe Control pozwala wybrać kierunek wymazywania obrazu

Filtr Starfield Filtr Starfield tworzy obraz pola gwiazd. Korzystając z kamery, możemy nadać gwiazdom rozmycie ruchu. Okno dialogowe Stars Control, pokazane na rysunku 49.15, zawiera rozwijaną listę Source Camera, z której można wybrać kamerę. Część General kontroluje jasność i wielkość gwiazd. Możemy określić wartość jasności dla gwiazdy najciemniejszej (Dimmest Star) i najjaśniejszej (Brightest Star). Opcje Linear

1308

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 49.15. Okno dialogowe Stars Control pozwala załadować bazę danych z gwiazdami

i Logarithmic wykorzystują dwa różne algorytmy do wyliczenia jasności gwiazd jako funkcji odległości. Parametr Star Size (Pixels) określa rozmiar gwiazd w pikselach. Może on przybierać wartości od 0.001 do 100. Ustawienie Motion Blur pozwala aktywować rozmycie ruchu, ustalić jego współczynnik (Amount) i określić wartość przyciemniania (Dimming). Część Star Database (baza danych o gwiazdach) zawiera ustawienia do określania sposobu, w jaki gwiazdy się pojawiają. Opcja Random wyświetla gwiazdy z oparciu o wartość Count, a losowa wartość Seed określa różnorodność rozmieszczenia gwiazd. Opcja Custom odczytuje bazę danych, określoną w polu Database. Max zawiera bazę danych pola gwiazd nazwaną earth.stb, zawierającą gwiazdy widziane z Ziemi.

Możemy także ustalić, czy gwiazdy komponowane są w tle, czy na pierwszym planie.

Ćwiczenie: Tworzenie gwiezdnego tła Kosmiczne tła są popularne, a Max zawiera specjalny filtr Video Post do tworzenia tła z gwiaździstym niebem. Normalnie prawdopodobnie użylibyśmy interfejsu Video Post do zrenderowania pola gwiazd wraz z utworzoną animacją, ale w tym ćwiczeniu zrenderujemy pole gwiazd dla jednej planety, która została już wykreowana i której przypisano materiał. Aby utworzyć pole gwiazd w tle, wykonaj następujące czynności. 1. Otwórz plik Planet with starfield background.max znajdujący się w folderze Chap 49 na płycie dołączonej do książki. Plik zawiera prostą scenę kosmosu z kamerą, ponieważ filtr Starfield wymaga użycia kamery.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1309

2. Wybierz polecenie Rendering/Video Post, aby otworzyć interfejs Video Post. Żeby można było wykonać sekwencję, do kolejki musi zostać dodane zdarzenie Scene. Kliknij przycisk Add Scene Event, wpisz planet scene (scena z planetą) w polu Label, jako źródło obrazu wybierz Camera01 i kliknij OK. W ten sposób dodasz to zdarzenie do panelu Queue. 3. Kliknij przycisk Add Image Filter Event (lub wciśnij Ctrl+F), aby otworzyć okno Add Image Filter Event, i w polu Label wpisz nazwę starfield bg (gwiaździste tło). Wybierz Starfield z rozwijanej listy i kliknij przycisk Setup, by otworzyć okno Stars Control. Ustal wartość Star Size na 3.0, a Count (liczba gwiazd) na 150000, po czym kliknij OK. 4. Kliknij przycisk Execute Sequence (lub wciśnij Ctrl+R), wybierz opcję wyjściowego czasu Single i określ Output Size, po czym kliknij przycisk Render. Na rysunku 49.16 pokazano końcową scenę kosmiczną. Rysunek 49.16. Scena kosmosu z tłem utworzonym w Video Post

Dodawanie zdarzeń Image Layer Poza standardowymi filtrami, które mogą być przypisane do pojedynczych obrazów, istnieje też kilka innych filtrów, zwanych zdarzeniami warstw (layer events), które można zastosować do wielu obrazów lub zrenderowanych scen. Przycisk Add Layer Event (Ctrl+L) dostępny jest na pasku narzędziowym tylko wtedy, gdy w oknie kolejki zaznaczone są dwa zdarzenia Image Event. Pierwszy obraz (który jest najwyżej w kolejce) staje się obrazem źródłowym, a drugi — kompozytorem (compositor). Oba te zdarzenia stają się podzdarzeniami zdarzenia warstwy. Jeśli zdarzenie warstwy zostanie usunięte, dwa podzdarzenia Image Event pozostają.

Okno dialogowe Add Image Layer Event jest takie samo jak Add Image Filter Event, pokazane wcześniej, z tym wyjątkiem, że rozwijana lista zawiera filtry działające z dwoma obrazami.

1310

Część XI  Zaawansowane techniki oświetlania i renderingu

Filtr Adobe Premiere Transition Adobe Premiere ma w swym arsenale tyle przejść, że najlepiej po prostu z nich korzystać. W Maksie dostęp do tych filtrów możemy uzyskać poprzez okno dialogowe Adobe Premiere Transition Filter Setup. Okno to zawiera przycisk Add path, który informuje Maksa, gdzie szukać filtrów. Wszystkie dostępne filtry wyświetlone są na liście Filter Selection. Dostęp do interfejsu filtrów możemy uzyskać poprzez przycisk Custom Parameters. Dwa okna podglądu po prawej wyświetlają efekty filtrów. Mamy także opcje Swap Input (która zamienia obraz źródłowy) i Use Stand-In (która pozwala określić, na jakim obrazie wyświetlany jest podgląd efektu).

Kompozytor Simple Wipe Kompozytor Simple Wipe podobny jest do filtra Simple Wipe, z tym wyjątkiem, że przesuwa on obraz w jedną lub drugą stronę zamiast wymazywania go. Jego okno dialogowe wygląda tak samo jak okno Simple Wipe Control.

Inne filtry warstwowe Pozostałe filtry warstwowe zawierają proste metody komponowania obrazów i kilka prostych przejść. Żaden z pozostałych filtrów nie posiada okna z ustawieniami. Z kompozytora Alpha możemy skorzystać podczas komponowania dwóch obrazów przy użyciu kanału alfa obrazu na pierwszym planie. Kompozytor Cross Fade Transition przyciemnia jeden obraz, a w jego miejsce stopniowo pojawia się drugi. Kompozytora Pseudo Alpha możemy użyć do połączenia dwóch obrazów, jeśli żaden z nich nie ma kanału alfa. Kompozytor ten wykorzystuje górny lewy piksel, aby ustalić kolor przezroczystości obrazu. Kompozytor Simple Additive łączy dwa obrazy w oparciu o intensywność drugiego obrazu.

Dodawanie zdarzeń zewnętrznych Przycisk Add External Event na pasku narzędziowym pozwala skorzystać z zewnętrznego programu do edycji obrazów. Przycisk ten jest dostępny tylko wtedy, gdy wybrane jest zdarzenie Image Event, które staje się podzdarzeniem zdarzenia External Event. Okno dialogowe Add External Event, pokazane na rysunku 49.17, zawiera przycisk Browse, do wskazania zewnętrznego programu. Zawiera ono także pole Command Line Options, w którym wprowadzamy polecenia tekstowe dla zewnętrznych programów. Wiele takich programów korzysta przy pracy z systemowego schowka, a więc opcje Write image to clipboard (zapisz obraz do schowka) i Read image from clipboard (pobierz obraz ze schowka) umożliwiają zastosowanie tej funkcji.

Używanie zdarzeń Loop Przycisk Add Loop Event na pasku narzędziowym jest aktywny wtedy, gdy wybrane jest jakiekolwiek zdarzenie. Użycie tego przycisku powoduje powtórzenie zdarzenia określoną liczbę razy lub powtarzanie go przez cały zasięg Video Post. Okno dialogowe Add Loop

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1311

Rysunek 49.17. Okno dialogowe Add External Event pozwala skorzystać z zewnętrznego programu do edycji obrazów

Event, pokazane na rysunku 49.18, zawiera pole Number of Times ustalające liczbę powtórzeń zdarzenia oraz opcje Loop i Ping Pong. Opcja Loop powtarza zdarzenie od początku do końca, aż zostanie osiągnięta wartość Number of Times. Opcja Ping Pong odtwarza zdarzenie w przód, a następnie w tył. Zdarzeniom Loop możemy nadawać nazwy, korzystając z pola Label. Rysunek 49.18. Okno dialogowe Add Loop Event pozwala na odtwarzanie zdarzenia określoną liczbę razy

Dodawanie zdarzenia Image Output Jeśli już dodaliśmy i odpowiednio skonfigurowaliśmy zdarzenia, a po kliknięciu przycisku Execute Sequence nic się nie dzieje, prawdopodobnie spowodowane jest to tym, że zapomnieliśmy dodać zdarzenie Image Output. Zdarzenie to definiuje miejsce, do którego wszystkie zdarzenia zapisują swoje wyniki, i powinno być ostatnie w kolejce. Okno dialogowe Add Image Output Event (Ctrl+O) wygląda tak samo jak okno Add Image Input Event, pokazane wcześniej. Wyniki (output) mogą być zapisywane do pliku lub urządzenia za pomocą któregokolwiek ze standardowych typów plików.

1312

Część XI  Zaawansowane techniki oświetlania i renderingu Jeśli zdarzeniu Image Output nie nadamy nazwy, automatycznie stanie się nią nazwa pliku.

Praca z zasięgami zdarzeń Panel Range interfejsu Video Post znajduje się na prawo od panelu Queue. Wyświetla on zasięg każdego zdarzenia. Zasięgi zaznaczone stają się czerwone. Punkty zasięgu początkowy i końcowy oznaczone są kwadratami. Możemy przesuwać te punkty, przeciągając kwadraty. Przesuwamy wtedy początkowe i końcowe punkty wszystkich zaznaczonych zdarzeń. Zanim będziemy mogli przesunąć zasięg lub przeciągnąć końcowy jego punkt, musimy na pasku narzędziowym wybrać przycisk Edit Range Bar. Przycisk aktywny podświetlony jest na żółto.

Kiedy wybrane są dwa zdarzenia lub więcej, na pasku narzędziowym uaktywnia się kilka innych przycisków, takich jak Swap Events, Align Selected Left, Align Selected Right, Make Selected Same Size i Abut Selected. (Każdy z tych przycisków przedstawiony został wcześniej, w tabeli 49.1). Przycisk Swap Events jest aktywny tylko wtedy, gdy wybrane są dwa zdarzenia. Kliknięty zamienia miejscami te zdarzenia. Ponieważ kolejność zdarzeń ma znaczenie, może to zmienić końcowy rezultat. Przyciski Align Selected Left i Align Selected Right przesuwają początkowy lub końcowy punkt każdego zaznaczonego zasięgu, dopóki nie wyrówna się on z początkowym lub końcowym punktem zdarzenia, które spośród zaznaczonych znajduje się najwyżej w kolejce. Przycisk Make Selected Same Size zmienia rozmiar zasięgu każdego zaznaczonego zdarzenia, tak aby zrównało się ono rozmiarem ze zdarzeniem położonym najwyżej wśród zaznaczonych. Przycisk Abut Selected przesuwa każde zaznaczone zdarzenie, aż początkowy punkt jego zasięgu zrówna się z końcowym punktem zasięgu powyżej. Na rysunku 49.19 pokazano cztery zdarzenia Image, które rozmieszczone zostały przy użyciu przycisku Abut Selected. Zauważmy, że zasięg kolejki obejmuje całą odległość. Rysunek 49.19. Przycisku Abut Selected używamy, aby rozmieścić zdarzenia jedno za drugim

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1313

Praca z filtrami efektów obiektywu (Lens Effects) Rozwijana lista w oknie Add Image Filter Event posiada kilka filtrów z efektami obiektywu (Lens Effects), takich jak Lens Effects Flare, Focus, Glow i Highlight. Każdy z nich został przedstawiony i omówiony na następnych stronach, jednak wszystkie mają kilka parametrów wspólnych. Dostęp do okien dialogowych z ustawieniami tych filtrów uzyskasz po kliknięciu przycisku Setup w oknie Add Image Filter Event. Wiele parametrów tych efektów może być animowanych, np. rozmiar (Size), odcień (Hue), kąt (Angle) czy intensywność (Intensity). W oknach dialogowych z ustawieniami są one oznaczone przyciskiem z zieloną strzałką, po prawej stronie pola parametru. Przyciski te działają w ten sam sposób, co przycisk Auto Key w głównym interfejsie. Aby animować parametr, klikamy po prostu odpowiadający mu przycisk ze strzałką, przesuwamy suwak czasu do innej klatki i zmieniamy wartość parametru. Na rysunku 49.20 pokazano, jak wyglądają te przyciski w oknie dialogowym efektu flary (Lens Effects Flare). Rysunek 49.20. Przyciski z zieloną strzałką w oknie Lens Effects Flare wskazują te parametry efektu, które mogą być animowane

Okno każdego efektu Lens Effects zawiera też w lewym górnym rogu okienko podglądu z trzema znajdującymi się pod spodem przyciskami. Kliknięcie przycisku Preview renderuje wszystkie aktywne efekty w oknie podglądu. Przycisk VP Queue renderuje aktualną kolejkę Video Post. W okienku podglądu widzimy, jak w przybliżeniu powinien wyglądać efekt końcowy. Przy włączonym przycisku Preview każda zmiana parametru w oknie dialogowym powoduje automatyczną aktualizację widoku w okienku podglądu. Przycisk Update pozwala ręcznie aktualizować podgląd. Klikając prawym przyciskiem myszy okienko Preview, możemy zmienić jego rozdzielczość, jeśli zależy nam na szybszych rezultatach lub lepszej jakości.

1314

Część XI  Zaawansowane techniki oświetlania i renderingu Jeśli włączony jest przycisk VP Queue, wyświetlany jest domyślny obraz Lens Effects1. Korzystając z tego obrazu, testujemy różne ustawienia, a w aktywnym trybie Preview możemy zauważyć, jak działają poszczególne z nich.

Dodawanie efektu flary (Lens Effect Flare) W oknie dialogowym Lens Effects Flare znajdziesz ustawienia różnych typów flar dodawanych do obrazu. Okno to zawiera główne okno podglądu i kilka mniejszych okienek z podglądami każdego efektu. Pola wyboru poniżej małych okienek podglądu pozwalają je włączać i wyłączać. Pod głównym oknem podglądu znajduje się kilka globalnych ustawień, a na prawo od nich — seria zakładek z panelami zawierającymi ustawienia każdego typu efektu. Pierwszy panel nosi nazwę Prefs i ustala, które efekty mają być renderowane (Render), które mają być renderowane, gdy ich źródło znajduje się poza kadrem (Off Scene), które mają być ściśnięte (Squeeze), które mają przypisany filtr szumu Inferno i jaki mają ustawiony parametr przysłaniania (Occlusion). Ustawienia poszczególnych typów flar zawarte są w kolejnych panelach. Są to: poświata (Glow), pierścień (Ring), efekty drugorzędne tworzone automatycznie (A Sec), efekty drugorzędne tworzone ręcznie (M Sec), promienie (Rays), gwiazda (Star), smuga (Streak) i efekt Inferno. Panele te zawierają paski kolorów gradientu do określania koloru promienistego (Radial Color), przezroczystości promienistej (Radial Transparency), koloru okrężnego (Circular Color), przezroczystości okrężnej (Circular Transparency) i rozmiaru promienia (Radial Size). Każdy z tych paneli posiada inne ustawienia, ale na rysunku 49.21 pokazano panele efektów Glow i Ring.

Rysunek 49.21. Panele Glow i Ring przedstawiają wszystkie ustawienia różnych efektów soczewkowych

Kolory gradientu znajdujące się w tych panelach kontrolowane są przez znaczniki (flagi) widoczne pod paskiem gradientu. Dwukrotne kliknięcie flagi otwiera okno dialogowe Color Selector, gdzie możemy wybrać nowy kolor. Przeciągnięcie tych flag spowoduje przesunięcie koloru gradientu. Możemy utworzyć nową flagę, klikając miejsce pod gra1

Dokładniej rzecz ujmując, wyświetlany jest obraz będący sumarycznym efektem wszystkich zdarzeń poprzedzających w kolejce zdarzenie bieżące — przyp. tłum.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1315

dientem z dala od istniejącej flagi. Aktywna flaga oznaczona jest kolorem zielonym. Aby usunąć flagi, wybieramy je i wciskamy klawisz Delete. Klikając pasek gradientu prawym przyciskiem myszy, uzyskujemy dostęp do menu z funkcjami, pozwalającymi na zmianę różnych opcji wpływających na kolor. Możemy nawet zapisywać i wczytywać gradienty. Gradienty zapisywane są jako pliki z rozszerzeniem .dgr. Panel znajdujący się najbardziej na prawo, pokazany na rysunku 49.22, nazwany jest Inferno i umożliwia dodanie szumu do każdego efektu. Panel Prefs zawiera pole wyboru uaktywniające opcję Inferno dla poszczególnych efektów. Szum Inferno może być ustawiony na jeden z trzech stanów: Gaseous, Fiery i Electric. Jeśli efekt jest nienaturalnie doskonały, możemy dodać do niego trochę przypadkowości właśnie przy użyciu opcji Inferno. Rysunek 49.22. Panel Inferno zawiera ustawienia szumu dla flar obiektywu

Dodawanie efektu Focus Okno dialogowe Lens Effects Focus, pokazane na rysunku 49.23, zawiera opcje dodawania efektów rozmycia sceny (Scene Blur), rozmycia promienistego (Radial Blur) i ogniskowania obiektywu (Focal Node). Jeśli klikniemy przycisk Select, otworzy się okno dialogowe Select Focal Object, pozwalające wybrać obiekt mający być punktem ustawiania ostrości w scenie. Możemy także ustalić wartości parametrów rozmycia w kierunku poziomym i pionowym (Horizontal Focal Loss i Vertical Focal Loss) lub uaktywnić przycisk Lock w celu zblokowania tych parametrów razem. Wartości Focal Range i Focal Limit określają odległość od punktu ogniskowego, gdzie rozmycie się rozpoczyna lub osiąga maksymalną siłę. Możemy także sprawić, by rozmycie miało wpływ na kanał alfa.

Dodawanie efektu Glow Okno dialogowe Lens Effects Glow, pokazane na rysunku 49.24, pozwala rozżarzyć całą scenę lub konkretne obiekty w oparciu o identyfikatory Object ID bądź Effects ID. Inne opcje w polu Source to: Unclamped (bez odcięcia), Surf Norm (normalne powierzchni), Mask (maska), Alpha (kanał alfa), Z High i Z Lo (zakres głębi). Okno to umożliwia także filtrowanie poświaty, wykorzystując opcje krawędzi (Edge), obrzeża alfa (Perimeter Alpha), obrzeża (Perimeter), jasności (Bright) oraz barwy (Hue).

1316

Część XI  Zaawansowane techniki oświetlania i renderingu

Rysunek 49.23. Okna dialogowego Lens Effects Focus używamy, aby dodać do obrazu rozmycie

Rysunek 49.24. Okna dialogowego Lens Effects Glow używamy do nadawania obiektom i scenom efektu poświaty

Dodatkowe panele z zakładkami pod okienkiem podglądu to panele z ustawieniami Preferences, Gradients i Inferno. W panelu Preferences możemy ustalić, aby kolor poświaty

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1317

był oparty o gradient określony w panelu Gradients, o wartość piksela (Pixel) lub o kolor zdefiniowany przez użytkownika (User Defined). W panelu Preference możemy także ustalić wartość intensywności (Intensity).

Dodawanie odbłysków (highlights) Okno dialogowe Lens Effects Highlight, pokazane na rysunku 49.25, zawiera te same panele Properties, Preferences i Gradients, co okno Glow, z tą różnicą, że generuje efekt odbłysków zamiast poświaty. W panelu Geometry znajdziemy opcje Size i Angle dla odblasku oraz określimy, jak odblaski mają się zachować z dala od obiektu. Rysunek 49.25. Korzystając z okna dialogowego Lens Effects Hightlight, możemy dodawać odblaski do obiektów

Ćwiczenie: Tworzenie blasku aureoli Kiedy mowa o żarzących obiektach, od razu przychodzą na myśl materiały radioaktywne, ciała niebieskie, takie jak komety i meteoryty, lub stworzenia niebiańskie, takie jak anioły. W tym ćwiczeniu skłaniamy się ku niebu w próbie stworzenia blasku chwały. Ponieważ jednak nie udało mi się znaleźć anioła, zajmiemy się tworzeniem prostej aureoli. Aby dodać aureoli blasku, korzystając z interfejsu Video Post, wykonaj następujące czynności. 1. Otwórz plik Glowing halo.max znajdujący się w folderze Chap 49, na płycie dołączonej do książki. Plik zawiera model głowy i aureoli. Obiekt aureoli ma ustawiony kanał G-Buffer Object ID na 1 w oknie Object Properties.

1318

Część XI  Zaawansowane techniki oświetlania i renderingu

2. Wybierz polecenie Rendering/Video Post, aby otworzyć interfejs Video Post. Kliknij przycisk Add Scene Event na pasku narzędziowym. Pojawi się okno dialogowe Add Scene Event. 3. Wprowadź nazwę zdarzenia w polu tekstowym Label i kliknij OK. Zdarzenie zostanie dodane do okienka Queue. 4. Wyselekcjonuj obiekt aureoli w oknie widokowym i na pasku narzędziowym kliknij przycisk Add Image Filter Event (lub wciśnij Ctrl+F), aby otworzyć odpowiednie okno dialogowe. Wybierz z rozwijanej listy Lens Effects Highlight i kliknij przycisk Setup. Otworzy się okno dialogowe Lens Effects Highlight. 5. Kliknij przycisk VP Queue, a następnie Preview, aby zobaczyć zrenderowaną scenę. W zakładce Properties wybierz opcję Object ID i ustaw Object ID na 1, żeby dopasować kanał identyfikatora G-Buffer do obiektu aureoli. W części Filter uaktywnij opcję All. W zakładce Preferences ustaw parametr Size na 3.0, Points na 4, opcję Color na Pixel, a Intensity na 100. Teraz kliknij OK. 6. Kliknij przycisk Execute Sequence na pasku narzędziowym (lub wciśnij Ctrl+R), a następnie kliknij Render w oknie dialogowym Execute Video Post. Na rysunku 49.26 przedstawiono ukończoną aureolę w całym swym blasku. Rysunek 49.26. Korzystając z okna dialogowego Lens Effects Highlight, możemy dodać efekt blasku do obiektów, takich jak ta aureola

Dodawanie tła i filtrów w Video Post Jako przykład działania Video Post skomponujemy obraz tła przedstawiający wodospad, ze zrenderowaną sceną zawierającą model samolotu, utworzony przez Viewpoint Datalabs. Następnie dodamy kilka efektów filtrów. Aby skomponować obraz przy użyciu Video Post, wykonaj następujące czynności.

Rozdział 49.  Komponowanie przy użyciu interfejsu Video Post

1319

1. Otwórz plik Airplane over waterfall.max znajdujący się w folderze Chap 49, na płycie dołączonej do książki. Plik zawiera model samolotu. W folderze znajduje się także obraz o nazwie waterfall.tif, który też zostanie wykorzystany. 2. Otwórz interfejs Video Post, wybierając polecenie Rendering/Video Post. 3. Dodaj obraz tła do kolejki przez kliknięcie przycisku Add Image Input Event (lub wciskając Ctrl+I). Kliknij przycisk Files. Wskaż plik waterfall.tif w folderze Chap 49, na płycie dołączonej do książki, po czym kliknij OK. Kliknij ponownie OK, aby opuścić okno dialogowe Add Image Input Event. 4. Następnie dodaj zrenderowany obraz, klikając przycisk Add Scene Event i wybierając widok Perspective. Nazwij zdarzenie rendered airplane (zrenderowany samolot). Kliknij przycisk Render Setup, aby otworzyć okno Render Setup, po czym wybierz panel Renderer. Wyłącz wszystkie opcje Anti-Aliasing w rolecie Default Scanline Renderer i kliknij OK. Kliknij ponownie OK, aby opuścić okno dialogowe Edit Scene Event. 5. Wybierz zdarzenia tła (waterfall.tif) i zrenderowanego samolotu (rendered airplane), i kliknij przycisk Add Image Layer Event (lub wciśnij Ctrl+L). Wybierz opcję Alpha Compositor i kliknij OK. Skomponuje to obraz tła ze zrenderowanym obrazem, usuwając całe zielone tło ze zrenderowanej sceny. 6. Aby uruchomić przetwarzanie, kliknij przycisk Execute Sequence na pasku narzędziowym (lub wciśnij Ctrl+R), co otworzy interfejs Video Post, następnie wybierz opcję zasięgu Single, kliknij przycisk rozmiaru 640×480 i kliknij Render. Na rysunku 49.27 pokazano ukończony skomponowany obraz. Rysunek 49.27. W tym obrazie samolot jest zrenderowany, a tło jest efektem kompozycji

1320

Część XI  Zaawansowane techniki oświetlania i renderingu

Podsumowanie Postprodukcja jest ważną, często niedostrzeganą częścią procesu tworzenia renderowanych obrazów. Korzystając z pakietów do tworzenia kompozycji, takich jak Photoshop i Premiere, lub bardziej zaawansowanych, jak Composite i After Effects, możemy dokonać niezbędnych zmian po renderingu. Elementy renderingu pozwalają renderować rozmaite aspekty sceny niezależnie od całości. Korzystanie z tych elementów na etapie postprodukcji znacznie ułatwia komponowanie ostatecznego obrazu. Za pomocą interfejsu Video Post możemy łączyć wiele różnych obrazów, filtrów i efektów. Wszystkie elementy kompozycji wyświetlone są jako zdarzenia w kolejce. Wykorzystanie interfejsu Video Post w połączeniu z oknem dialogowym Render Setup to jeden z możliwych sposobów uzyskiwania odpowiednich efektów wyjściowych. W tym rozdziale omówiliśmy następujące tematy: 

proces postprodukcji,



użycie Photoshopa do komponowania obrazów,



wykorzystanie pakietów Premiere i After Effects do komponowania animacji,



interfejs Composite,



stosowanie elementów renderingu,



tajniki interfejsu Video Post,



praca z sekwencjami,



rozmaite typy filtrów,



dodawanie i edytowanie zdarzeń i manipulowanie ich zasięgami,



filtry Lens Effects.

No i udało się. Dobrnęliśmy do końca książki. Gratulacje! Przed samodzielną pracą z Maksem proponujemy przeczytać dodatki, a książkę warto mieć zawsze pod ręką, jako że wiele razy może się przydać.

Dodatki

Dodatek A

Co nowego w 3ds Max 2012? W tym dodatku: 

Odnajdywanie nowych funkcji Maksa



Drobniejsze udoskonalenia oferowane przez nowego Maksa

W każdej kolejnej wersji Maksa odkrywamy nowe, zadziwiające funkcje dodane przez producentów. Max jest ogromnym i bardzo złożonym programem, mimo to zawsze wtedy, kiedy wydaje mi się, że już nic więcej nie można do niego dodać, pojawia się następna wersja i mnóstwo nowych możliwości. Max 2012 nie jest pod tym względem wyjątkiem. Dokładny opis nowych funkcji znajdziesz w poszczególnych rozdziałach, a w tym dodatku krótko podsumujemy nowości i podamy odnośniki do miejsc, w których możesz się więcej o nich dowiedzieć. W całej książce ikona z napisem Nowa funkcja oznacza opcje będące nowością w 3ds Max 2012. Jeśli uważasz, że Max mógłby być jeszcze lepiej dopasowany do Twoich potrzeb, możesz wziąć udział w propagowanym przez Autodesk programie angażowania użytkowników w rozwijanie Maksa. Temu celowi służy polecenie Help/Customer Involvement Program. Zgłaszając swój udział w tym programie, dostarczysz twórcom Maksa informacji, które pozwolą na dalsze udoskonalenie aplikacji.

Główne udoskonalenia 3ds Max 2012 zawiera wiele ulepszeń. Niektóre uznawane są za generalne, ponieważ wpływają na każdy aspekt pracy z programem, a inne są drobniejsze, ponieważ ich zasięg jest ograniczony. Jednak nawet ulepszenie uznawane za drobniejsze może być dokładnie tym, na co czekaliśmy. W części Introduction pomocy Maksa jest strona zatytułowana What’s New in Autodesk 3ds Max 2012. Łącze do tej strony znajduje się także w menu Help.

1324

Dodatki

Sterownik Nitrous W najnowszej wersji Maksa system renderowania okien widokowych został gruntownie zmodernizowany. Dzięki zastosowaniu nowego sterownika grafiki o nazwie Nitrous uzyskano nie tylko większą szybkość renderowania, ale i lepszą jakość. Teraz na bieżąco można śledzić skutki wprowadzanych zmian i nie trzeba w tym celu wykonywać próbnych renderingów. Nowy sterownik skutecznie wykorzystuje wszelkie możliwości najnowocześniejszych kart graficznych. Jeśli komputer dysponuje kilkoma procesorami lub przynajmniej procesorem wielordzeniowym, odświeżanie okien odbywa się jeszcze szybciej, ponieważ każde z nich obliczane jest w innym wątku. Wprowadzone usprawnienia pozwalają na wyświetlanie większej liczby szczegółów, włącznie z miękkimi cieniami, efektami procedury Ambient Occlusion, przezroczystością itp. Więcej informacji na temat tych nowości znajdziesz w rozdziale 2., „Sterowanie oknami widokowymi oraz ich konfigurowanie”.

Renderingi stylizowane Sterownik Nitrous pozwala także renderować okna widokowe i obrazy finalne w różnych stylach. Dostępne opcje to ołówek, akryl, tusz, kredka, węgiel, pastel i rysunek techniczny. Więcej informacji na ten temat znajdziesz w rozdziale 24., „Stylizowanie sceny”.

Nowe narzędzia modelujące Graphite Zestaw modelujący Graphite wzbogacił się o kilka nowych narzędzi, na przykład Conform Brush. Ten nowy pędzel umożliwia dopasowywanie siatki wielokątnej do wzorcowego obiektu przez obracanie, przesuwanie, skalowanie i rozluźnianie wierzchołków. Poza tym doszły takie narzędzia jak Shift Rotate, Shift Scale i Constrain to Spline. Pełniejszy opis tych narzędzi znajduje się w rozdziale 14., „Korzystanie z narzędzi Graphite i malowanie obiektami”.

Proceduralne tekstury substancyjne Edytor materiałów zawiera teraz nową bibliotekę tekstur proceduralnych. Tekstury te, zwane substancyjnymi, zostały opracowane w firmie Allegorithmic, a ich podstawową zaletą jest to, że są definiowane za pomocą kodu, a nie mapy bitowej. Mimo że są tak samo szczegółowe jak tekstury bitmapowe, mieszczą się w plikach wielokrotnie mniejszych i dają się łatwo różnicować. Dostępne tekstury tego typu są opisane w rozdziale 31., „Proceduralne tekstury substancyjne”.

Ulepszony interfejs edytora współrzędnych UVW Okno Edit UVWs zostało gruntownie przebudowane. Nowy interfejs umożliwia szybszą pracę. Wiele funkcji, które wcześniej dostępne były tylko poprzez polecenia menu, teraz można wywołać jednym kliknięciem przycisku. Pojawiły się też nowe narzędzia do rozwijania współrzędnych i opracowywania klastrów. Bardziej szczegółowo nowości edytora zostały opisane w rozdziale 33., „Rozwijanie współrzędnych UV i mapowanie tekstur”.

Dodatek A  Co nowego w 3ds Max 2012?

1325

Ulepszony edytor krzywych Nowy edytor krzywych w Maksie jest teraz taki sam jak w programach Maya, Softimage i MotionBuilder. Jego twórcy zgromadzili najlepsze cechy edytorów stosowanych w poszczególnych aplikacjach i zbudowali na tej podstawie jeden uniwersalny produkt. Użytkownik ma teraz większą kontrolę nad krzywymi i może manipulować wieloma punktami naraz. Ulepszony edytor został opisany w rozdziale 37., „Praca z krzywymi funkcyjnymi w oknie Track View”.

Fizyka MassFX Nowy system dynamiki, MassFX, umożliwia symulowanie ruchów zgodnych z zasadami dynamiki bezpośrednio w oknie widokowym. System zbudowano na bazie silnika dynamiki PhysX opracowanego w firmie NVIDIA. Pozwala na szybkie definiowanie obiektów uczestniczących w symulacji oraz kilku rodzajów więzów. System jest w stanie także sterować ruchami całej gromady obiektów, na przykład lawiny kamieni. Opis systemu MassFX znajdziesz w rozdziale 43., „Wykorzystanie systemu MassFX do symulacji ruchów zgodnych z zasadami dynamiki”.

Renderer iray Renderer mental ray pozwala uzyskać znakomite rezultaty, ale mnogość jego parametrów sprawia, że najczęściej trzeba je ustawiać metodą prób i błędów, a to oczywiście jest czasochłonne. Silnik renderujący iray eliminuje te niedogodności. Renderuje scenę progresywnie, poprawiając stopniowo jakość generowanego obrazu, i umożliwia przerwanie tej operacji, gdy uznasz, że rezultat jest już wystarczająco dobry. Więcej informacji na ten temat znajdziesz w rozdziale 47., „Renderery mental ray i iray”.

Drobniejsze ulepszenia Poza głównymi udoskonaleniami wprowadzono wiele mniejszych, ułatwiających pracę z obiektami, materiałami i innymi elementami Maksa. Drobniejsze udoskonalenia w wersji 2012 obejmują: 

ciemniejszy motyw domyślny — domyślny interfejs Maksa jest teraz znacznie ciemniejszy, dzięki czemu nie męczy oczu w słabszych warunkach oświetleniowych;



pliki pomocy w trybie online — pliki pomocy Maksa można teraz przeglądać bezpośrednio na stronach internetowych firmy Autodesk, a to gwarantuje dostęp do najnowszej wersji tych plików;



szybszy start programu — Max 2012 uruchamia się szybciej i zajmuje mniej pamięci operacyjnej niż wersje poprzednie, ponieważ wczytuje tylko te narzędzia, które są potrzebne;



mental ray 3.9 — Max 2012 wykorzystuje najnowszą wersję renderera mental ray;



funkcja Undo w rozszerzonym edytorze materiałów — w rozszerzonym edytorze materiałów można teraz cofać operacje i ponawiać je;

1326

Dodatki 

wektorowe mapy przemieszczeń — eksportowane z Mudboksa wektorowe mapy przemieszczeń są teraz obsługiwane przez Maksa;



funkcja klonowania ekranu — Viewport Canvas umożliwia teraz klonowanie obrazu z dowolnego miejsca ekranu monitora — może to być na przykład okno Photoshopa;



usprawniony modyfikator ProOptimizer — teraz działa szybciej i daje lepsze rezultaty, zezwala także na optymalizację siatki w oparciu o współrzędne UV i normalne;



jednoetapowe przenoszenie scen do innych programów firmy Autodesk — menu otwierane za pomocą przycisku aplikacji zawiera polecenie Send To, które automatycznie przenosi bieżącą sceną do MudBoksa, Softimage lub MotionBuildera;



obsługa plików WIRE — w 3ds Max 2012 można importować pliki WIRE z programu Autodesk Alias Design jako obiekty typu Body.

Dodatek B

Zawartość płyty CD W tym dodatku: 

Wymagania systemowe



Korzystanie z CD w systemie Windows



Zawartość płyty CD



Rozwiązywanie problemów

W książce zamieszczono wiele ćwiczeń mających ułatwić zrozumienie omawianych zagadnień. Wszystkie pliki potrzebne do wykonania tych ćwiczeń znajdują się na płycie CD dołączonej do książki. Umieszczono tam również sporą grupę modeli rozmaitych obiektów trójwymiarowych. Dodatek zawiera garść informacji o zawartości płyty.

Wymagania systemowe Sprawdź, czy Twój komputer spełnia wymienione niżej wymagania. Jeśli nie spełnia większości z nich, możesz mieć problemy z wykorzystaniem zawartości płyty. Dla systemów operacyjnych Windows 7 (zalecane), Windows Vista, Windows XP Professional SP2 lub Windows XP Home Edition SP2: 

procesor Intel® Pentium® III lub AMD®, 500 MHz lub więcej (dual Intel),



zalecany procesor to 32-bitowy dwurdzeniowy Intel Xeon®, dual AMD Athlon® lub Opteron®,



512 MB RAM (zalecane 1 GB),



500 MB na plik wymiany (zalecane 2 GB),



karta graficzna obsługująca rozdzielczość 1024×768 z 16-bitowym kolorem, 64 MB RAM (zalecany akcelerator sprzętowy 3D zgodny z OpenGL® i Direct3D®, rozdzielczością 1280×1024, głębią kolorów 32-bitową i pamięcią 256 MB),

1328

Dodatki 

urządzenie wskazujące zgodne z Microsoft® Windows® oraz ze standardem Microsoft IntelliMouse®,



Microsoft Internet Explorer 6,



napęd CD.

Zawartość płyty DVD W tej części znajdziesz krótki opis programów oraz innych materiałów zamieszczonych na płycie. Niektóre pliki zamieszczone na płycie są skompresowane w formacie zip. Do ich rozpakowania możesz użyć programu WinZip (www.winzip.com).

Materiały przygotowane przez autora książki Pliki wykorzystywane podczas wykonywania ćwiczeń zamieszczonych w książce znajdują się w folderze Chapter Example Files. Wewnątrz tego folderu umieszczono podfoldery odpowiadające poszczególnym rozdziałom książki. Tam, oprócz głównych plików ćwiczeniowych, znajdziesz także pliki uzupełniające z teksturami, obrazami itp. Dla scen animowanych zamieszczono wyrenderowane pliki AVI. Również dla każdego ćwiczenia zamieszczono plik z efektem końcowym. Takie pliki mają w nazwie słowo final. Mogą one być pomocne w ocenie poprawności wykonania poszczególnych ćwiczeń.

Programy Na płycie umieszczone zostały następujące programy: 

Adobe Reader — darmowa aplikacja służąca do przeglądania zawartości plików PDF (Adobe Portable Document Format).

Programy typu shareware są w pełni funkcjonalnymi darmowymi wersjami testowymi programów objętych prawami autorskimi. Jeśli po przetestowaniu zapragniesz mieć taki program, zarejestruj się u producenta, by za określoną opłatę otrzymać licencję, rozszerzoną wersję programu i pomoc techniczną. Programy freeware są darmowe i możesz je instalować na dowolnej liczbie komputerów — bez żadnych opłat — ale nie możesz liczyć na pomoc techniczną. Oprogramowanie GNU podlega własnej licencji, która nie nakłada żadnych ograniczeń na rozpowszechnianie tego typu programów. Wersje testowe i demonstracyjne programów mają zwykle ograniczony czas użytkowania lub wyłączone niektóre funkcje (np. po zakończeniu pracy nie będziesz mógł zapisać jej efektów).

Dodatek B  Zawartość płyty CD

1329

Modele 3D W folderze 3D Models znajdziesz mnóstwo gotowych modeli dostarczonych przez firmy Viewpoint Datalabs i Zygote Media. Wiele z tych modeli zostało wykorzystanych w ćwiczeniach prezentowanych w książce.

Rozwiązywanie problemów Jeśli masz problemy z instalacją lub wykorzystaniem materiałów zamieszczonych na płycie dołączonej do książki, skorzystaj z następujących rad: 

wyłącz wszelkie programy antywirusowe — programy instalacyjne czasami zachowują się jak wirusy, co może sprowokować program antywirusowy do ich zablokowania (nie zapomnij później włączyć programu antywirusowego),



zamknij wszystkie działające programy — im więcej działających programów, tym mniej pamięci dla kolejnych programów, które chcesz uruchomić; poza tym w trakcie instalacji nowego programu często modyfikowane są (lub zastępowane nowszymi wersjami) pliki należące do programów zainstalowanych wcześniej.

1330

Dodatki

Dodatek C

Instalacja i konfigurowanie programu 3ds Max 2012 W tym dodatku: 

Wybór systemu operacyjnego



Wymagania sprzętowe



Instalowanie programu 3ds Max 2012



Rejestracja i aktywacja programu



Wybór sterownika grafiki

Aby móc w pełni wykorzystać wszystkie funkcje Maksa, musisz prawidłowo zainstalować aplikację i odpowiednio skonfigurować system komputerowy. W tym dodatku znajdziesz stosowne wskazówki. Gdy przebrniesz przez proces instalacji i konfiguracji, będziesz mógł rozpocząć zabawę.

Wybór systemu operacyjnego Jeśli masz zamiar zainstalować Maksa na zupełnie nowym komputerze, możesz tak skonfigurować pewne rzeczy, aby późniejsza praca była nieco łatwiejsza. Przede wszystkim możesz wybrać odpowiedni system operacyjny. Program 3ds Max 2012 może działać zarówno w środowisku Windows XP, jak i Windows Vista oraz Windows 7. Można go uruchomić także w systemie Mac, używając oprogramowania Boot Camp lub Parallels Desktop. 3ds Max 2012 nie działa w systemie Windows XP Home.

Bez względu na to, jaki system operacyjny wybierzesz, zadbaj o zainstalowanie najnowszego pakietu aktualizacji (Service Pack), który możesz pobrać bezpłatnie z witryny

1332

Dodatki

internetowej Microsoftu (www.microsoft.com). Wszystkie wymienione wyżej systemy umożliwiają uruchomienie na tym samym komputerze kilku kopii Maksa jednocześnie. Do uruchomienia 64-bitowej wersji programu potrzebny jest system również 64-bitowy. Jeśli zamierzasz zainstalować Maksa na komputerze z systemem Windows Vista, musisz wcześniej wyłączyć w panelu sterowania funkcję kontroli konta użytkownika.

Pamiętaj, że Max w swej najnowszej wersji nie będzie działał na komputerze z systemem Windows 2000, NT, Windows 98 i Windows ME.

Wymagania sprzętowe Do sprawnego funkcjonowania Max potrzebuje wydajnego sprzętu. Komputer powinien być wyposażony w procesor klasy przynajmniej Pentium i5 lub i7, albo AMD Athlon, 4 GB lub więcej pamięci RAM (i 4 GB na plik wymiany) oraz pojemny dysk twardy. Teoretycznie można pracować na komputerze z 2 GB pamięci RAM (i plikiem wymiany o wielkości 2 GB), ale wtedy musisz się liczyć z długimi czasami oczekiwania na rezultaty swoich poczynań. Zalecana konfiguracja to dwurdzeniowy Intel Xeon, również dwurdzeniowy AMD Athlon lub 64-bitowy Opteron. Max jest zoptymalizowany pod kątem współdziałania z systemami obsługującymi rozszerzony zestaw instrukcji SSE2.

Max może działać na komputerach zarówno 32-bitowych, jak i 64-bitowych. W tym drugim przypadku może obsługiwać znacznie większe zbiory danych. W wersji 64-bitowej potrzebuje co najmniej 4 GB pamięci operacyjnej, a ilość zalecana to 8 GB. Ważnym elementem systemu komputerowego, mającym największy wpływ na sprawność Maksa, jest karta grafiki. Dobra karta powinna mieć własny, wyspecjalizowany procesor, który odciążyłby główny procesor komputera, umożliwiając mu wykonywanie innych zadań. Max intensywnie wykorzystuje możliwości graficzne komputera i dlatego inwestycja w dobrą kartę może znacząco poprawić ogólną wydajność systemu. Na szczęście karty graficzne z akceleratorami sprzętowymi stają się coraz tańsze — obecnie niezłą kartę można kupić za 600 złotych. Wymagania, jakie powinna spełniać karta graficzna, to rozdzielczość nie mniejsza niż 2048×1024 przy 16-bitowej głębi koloru, akceleracja 3D z obsługą bibliotek OpenGL i (lub) DirectX 9.0c lub 10 oraz minimum 512 MB pamięci, a najlepiej, gdyby tej pamięci było co najmniej 1 GB. Możesz wybrać kartę dedykowaną do gier komputerowych, ale powinieneś wiedzieć, że niektóre z nich, mimo zapewnień producentów, nie obsługują w pełni biblioteki OpenGL. Przed zakupem zajrzyj na stronę internetową firmy Autodesk i zapoznaj się z wynikami testów wydajności popularnych kart graficznych (możesz skorzystać z polecenia Help/3ds Max on the Web/ Certified Hardware). O jakości karty graficznej w dużej mierze decyduje jakość dostępnych sterowników. To od nich głównie zależy funkcjonowanie Maksa. Jeśli sterownik jest niedopracowany, obraz może być niestabilny, szybkość działania niska, a może się nawet zdarzyć, że Max w ogóle nie będzie działał. Obecnie najlepsze sterowniki kart graficznych tworzą firmy nVidia i ATI.

Dodatek C  Instalacja i konfigurowanie programu 3ds Max 2012

1333

Do pełnej instalacji programu potrzebujesz 3 GB wolnej przestrzeni dyskowej. Jeśli nie masz zbyt pojemnego dysku, możesz wybrać instalację kompaktową (opcja Compact). Jeśli chodzi o samą obsługę Maksa, bardzo przydatnym urządzeniem jest mysz z rolką. Ułatwia ona wybieranie poleceń z menu i przewijanie zawartości panelu poleceń, ale przede wszystkim oferuje trzeci przycisk, dzięki któremu nawigacja w oknach widokowych staje się dużo prostsza. Max jest dostarczany na płytach DVD, a zatem do jego instalacji niezbędny jest napęd DVD. Przy wykonywaniu niektórych prac przydatny może okazać się także tablet graficzny. Znaczne przyspieszenie działania Maksa możesz uzyskać przez zainstalowanie go na innym dysku fizycznym niż ten, z którego uruchamiany jest system Windows. Max nie musi wtedy rywalizować z systemem operacyjnym o dostęp do zasobów dyskowych.

Instalacja programu 3ds Max 2012 Instalacja Maksa jest bardzo prosta. Oto czynności, jakie musisz wykonać: 1. Włóż płytę instalacyjną Maksa do napędu DVD. Program instalacyjny powinien uruchomić się automatycznie. Jeśli z jakichś powodów to nie nastąpi (bo na przykład masz wyłączoną w systemie funkcję autoodtwarzania), uruchom bezpośrednio z płyty program Setup.exe. 2. Gdy instalator rozpocznie pracę, na ekranie monitora zobaczysz okno dialogowe, pokazane na rysunku C.1, z trzema opcjami do wyboru: Install, Create Deployments i Install Tools and Utilities. Opcja Create Deployments uruchamia kreatora instalacji sieciowej wersji Maksa, a opcja Install Tools and Utilities umożliwia zainstalowanie aplikacji pomocniczych, takich jak Max SDK. Aby rozpocząć instalację głównego programu, kliknij łącze Install. Rysunek C.1. Pierwszy ekran instalatora oferuje trzy opcje do wyboru

1334

Dodatki Opcja Install Tools and Utilities umożliwia zainstalowanie następujących aplikacji: 3ds Max 2012 SDK i SDK Help for Visual Studio, Network License Manager, Allegorithmic Substance Designer, ArchVision Dashboard, SAMreport-Lite (wymaga licencji), RPC Plug-in z przykładami, EASYnat 2.5 w wersji testowej, Craft Director Studio, PixelActive CityScape, wersje demonstracyjne modułów dodatkowych Okino PolyTrans i NuGraf oraz TurboSquid Tentacles. Opcja ta udostępnia także łącza do informacji o tych aplikacjach oraz łącza do miejsc, z których można pobrać wersje testowe innych produktów firmy Autodesk.

3. Zawartość kolejnego ekranu stanowi umowa licencyjna programu 3ds Max 2012 (patrz rysunek C.2). Wybierz swój kraj i przeczytaj umowę. Po zapoznaniu się z jej treścią kliknij opcję I Accept (akceptuję), a następnie kliknij przycisk Next, aby przejść do kolejnego etapu instalacji. Rysunek C.2. Aby kontynuować proces instalacji, musisz zaakceptować warunki umowy licencyjnej

Niektóre funkcje Maksa są wyszczególnione na liście produktów jako odrębne elementy instalacji. Wśród nich są Composite 2012, Autodesk Backburner (do renderingu sieciowego) i Autodesk Material Library. Jeśli którejś z tych opcji nie zaznaczysz, zaoszczędzisz trochę miejsca na dysku twardym, ale nie będziesz mógł z danej funkcji korzystać. Oczywiście w razie potrzeby będziesz mógł ją zainstalować później.

4. W następnym ekranie, pokazanym na rysunku C.3, możesz wybrać, czy Max ma być zainstalowany jako aplikacja samodzielna (Stand-Alone) lub sieciowa (Network). Tutaj też możesz wpisać numer seryjny programu lub wybrać instalację 30-dniowej wersji próbnej. Po włączeniu odpowiednich opcji kliknij przycisk Next. 5. Kolejny ekran instalatora wyświetla listę dostępnych składników (patrz rysunek C.4). Po zapoznaniu się z listą zaznacz te aplikacje, które chcesz zainstalować. Upewnij się, że wybrałeś wersję zgodną z Twoim systemem operacyjnym. 6. Po tym proces instalacji rozpocznie się, a jego postęp będzie sygnalizowany za pomocą dwóch pasków (patrz rysunek C.5).

Dodatek C  Instalacja i konfigurowanie programu 3ds Max 2012

1335

Rysunek C.3. Ekran Product Information wymaga podania numeru seryjnego lub wybrania opcji z instalacją 30-dniowej wersji testowej

Rysunek C.4. Ekran Configure Installation wyświetla listę produktów, które można zainstalować

7. O zakończeniu instalacji zostaniesz poinformowany stosownym komunikatem, takim jak na rysunku C.6. Wtedy też będziesz mógł włączyć opcję wyświetlenia zawartości pliku Readme. Plik Readme Maksa zawiera szczegółowe informacje o pewnych specyficznych cechach niektórych funkcji oraz wskazówki, jak należy postępować w sytuacjach problematycznych. Jeśli masz kłopot z jakąś funkcją, zajrzyj do tego pliku.

1336

Dodatki

Rysunek C.5. Ten ekran pokazuje stan zaawansowania procesu instalacyjnego

Rysunek C.6. Ekran końcowy zawiera listę zainstalowanych składników

Po zainstalowaniu Maksa nie musisz ponownie uruchamiać systemu.

Dodatek C  Instalacja i konfigurowanie programu 3ds Max 2012

1337

Rejestracja i aktywacja programu Po zainstalowaniu Maksa możesz go uruchomić za pomocą skrótu na pulpicie lub w menu Start. Możesz również zacząć go używać, ale jeśli masz zamiar korzystać z niego przez okres dłuższy niż 30 dni, musisz go zarejestrować w firmie Autodesk i przeprowadzić proces aktywacji. W przeciwnym razie po upływie tego okresu Max przestanie działać. Przy pierwszym uruchomieniu Maksa zobaczysz ekran aktywacji. Tutaj możesz włączyć kreatora aktywacji lub uruchomić program w ramach okresu próbnego. Jeśli wybierzesz opcję Activate the product i klikniesz przycisk Next, uruchomiony zostanie kreator aktywacji. Pierwszy ekran kreatora aktywacji umożliwi Ci pobranie kodu aktywacyjnego lub wpisanie tego kodu, jeśli takowy już posiadasz. Aby pobrać kod, musisz podać swoje nazwisko, adres i nazwę firmy. Możesz także wybrać opcję uaktualnienia programu. W tym przypadku będziesz musiał podać numer seryjny poprzedniej wersji. Pola Serial Number i Request Code są wypełniane automatycznie tymi danymi, które podałeś w trakcie instalacji. Autoryzacji zainstalowanej wersji Maksa możesz dokonać bezpośrednio na stronie internetowej producenta, faksem, e-mailem lub zwykłą pocztą. Jeśli masz już kod aktywacyjny, wybierz w pierwszym oknie kreatora opcję Already have an activation code i kliknij Next. Kreator otworzy kolejne okno, w którym będziesz mógł wpisać posiadany kod. Kod zostanie zarejestrowany i na tym zakończy się proces aktywacji. Kod aktywacyjny jest tworzony dla konkretnego komputera i nie będzie działał na innym komputerze. Jeśli zechcesz zainstalować program na innej maszynie, będziesz musiał zdobyć nowy kod. Po aktywacji Maksa pojawi się okno dialogowe Customer Involvment Program, za pośrednictwem którego możesz wysłać do firmy Autodesk swoją opinię na temat programu. Dostęp do tego okna uzyskasz także przez wybranie polecenia Help/Customer Involvment Program. Opinię możesz wysłać anonimowo lub z podaniem danych kontaktowych, ale możesz też nie wysyłać niczego.

Wybór sterownika grafiki Po uruchomieniu Max wyświetla okno dialogowe o nazwie Learning Movies z dostępem do kilku krótkich filmów objaśniających podstawowe funkcje programu. Zestaw tych filmów dla 3ds Max jest inny niż dla 3ds Max Design. W ramach standardowej instalacji Maksa instalowany jest także sterownik Nitrous. Dzięki temu Max „wie”, że ten sterownik jest dostępny i dlatego wybiera go jako domyślny. W każdej chwili możesz zmienić domyślny Nitrous na Direct3D lub OpenGL. Aby zmienić sterownik grafiki w trakcie pracy z Maksem, należy wybrać polecenie Customize/Preferences i w panelu Viewports okna dialogowego Preference Settings kliknąć przycisk Choose Driver. To spowoduje otwarcie okna dialogowego Display Driver Selection, pokazane na rysunku C.7. Tutaj możesz dokonać zmiany sterownika, ale by ta zmiana zaczęła obowiązywać, musisz ponownie uruchomić Maksa.

1338

Dodatki

Rysunek C.7. W tym oknie dialogowym możesz wybrać sterownik grafiki

Najnowsze karty graficzne obsługują zarówno OpenGL, jak i DirectX. Warto jednak sprawdzić, czy oba typy sterowników działają prawidłowo.

Poza opcją Nitrous dostępne są również Software (sterownik programowy), OpenGL i Direct3D. Sterownik grafiki można zmienić także przed uruchomieniem Maksa. W tym celu należy w menu Start wybrać Wszystkie programy/Autodesk/Autodesk 3ds Max 2012/Change Graphic Mode.

Opcja Nitrous Sterownik Nitrous jest najlepszy i powinno się go używać, jeśli tylko jest obsługiwany przez kartę grafiki. Bazuje na sterowniku Direct3D, ale został wyposażony w dodatkowe funkcje opracowane specjalnie dla Maksa. Jedną z takich funkcji jest możliwość renderowania sceny w sposób stylizowany. Wyspecjalizowany sterownik Nitrous jest nowością w 3ds Max.

Opcja Direct3D Sterownik tego typu wykorzystuje dostępne funkcje sprzętowe karty graficznej, a resztę symuluje w sposób programowy. Do właściwej pracy sterownik wymaga zainstalowanej biblioteki DirectX 9.0 lub nowszej. To jednak nie stanowi problemu, bo odpowiednie biblioteki są instalowane automatycznie razem z Maksem. Możliwość symulowania brakujących funkcji pozwala działać sterownikowi na dowolnym komputerze, ale oczywiście kosztem szybkości. Zasada jest prosta: im mniej funkcji sterownik musi symulować, tym szybciej działa.

Opcja OpenGL Jeśli karta graficzna obsługuje bibliotekę OpenGL, warto wybrać tę opcję. Sterowniki OpenGL działają we wszystkich odmianach systemu Windows i są sprzętowo obsługiwane przez bardziej zaawansowane karty graficzne. Max może współpracować ze sterownikami obsługującymi bibliotekę OpenGL 1.1 lub nowszą. Jedną z funkcji, z których korzystanie umożliwia sterownik OpenGL, są wirtualne okna widokowe (Virtual Viewports).

Dodatek C  Instalacja i konfigurowanie programu 3ds Max 2012

1339

Opcja Software Max dysponuje własnym sterownikiem grafiki i to właśnie ten sterownik będzie używany, jeśli włączysz opcję Software. Sterownik ten nie wykorzystuje sprzętowych możliwości karty graficznej, a zatem całą robotę związaną z wyświetlaniem obrazu musi wykonać główny procesor komputera. Zaletą takiego rozwiązania jest to, że działa ono na każdym komputerze, niezależnie od zastosowanej w nim karty graficznej. Jeśli masz problemy z prawidłowym wyświetlaniem obrazu, spróbuj uruchomić Maksa ze sterownikiem programowym, aby sprawdzić, czy wina nie leży po stronie wadliwej instalacji. Potem możesz spróbować użyć innych sterowników, aby zobaczyć, czy da się przyspieszyć działanie programu.

Uaktualnianie Maksa Max został wyposażony w funkcję sprawdzania aktualizacji i automatycznego ich instalowania. Za pomocą polecenia Help/3ds Max on the Web/Updates można otworzyć stronę internetową, na której umieszczane są wszystkie aktualizacje. Max może nawet sam sprawdzać dostępność aktualizacji i informować nas o tym. Jeśli na pasku InfoCenter klikniesz przycisk Communication Center, otworzy się panel, w którym znajdziesz informacje między innymi o nowych uaktualnieniach.

Przenoszenie Maksa na inny komputer Jednostanowiskowa licencja na używanie Maksa jest przypisana do konkretnego komputera. Jeśli chcesz przenieść program na inną maszynę, musisz to samo zrobić z licencją. Do eksportu licencji na inne komputery służy aplikacja License Transfer Utility, której interfejs jest pokazany na rysunku C.8. Aplikację tę znajdziesz w menu Start/Wszystkie programy/Autodesk/Autodesk 3ds Max 2012. W przypadku Maksa zainstalowanego w sieci zamiast eksportowania licencji pożyczamy ją za pomocą polecenia Help/License Borrowing/Borrow License i po uaktywnieniu programu zwracamy przy użyciu polecenia Help/License Borrowing/Return License.

W oknie Autodesk Licensing wyświetlane są wszystkie licencje przypisane do bieżącego komputera oraz kod tego komputera (na rysunku został on wymazany). Zaznacz odpowiednią licencją i kliknij przycisk Export. To spowoduje zapisanie licencji w pliku, z którego będziesz mógł ją zaimportować na drugim komputerze przy użyciu tej samej aplikacji. Po wyeksportowaniu licencji Max będzie działał na „starym” komputerze jeszcze przez 24 godziny.

1340

Dodatki

Rysunek C.8. Za pomocą okna Autodesk Licensing możesz przenieść licencję Maksa na inny komputer

Dodatek D

Skróty klawiszowe w 3ds Max 2012 W tym dodatku: 

Stosowanie skrótów klawiszowych



Korzystanie z mapy skrótów



Skróty głównego interfejsu



Skróty okien dialogowych



Skróty modułów Character Studio



Pozostałe skróty

Kluczem do wydajnej pracy w Maksie jest stosowanie skrótów klawiszowych. Unika się wtedy straty czasu na przesuwanie wskaźnika myszy po ekranie i klikanie w celu wybrania jakiegoś polecenia czy narzędzia.

Stosowanie skrótów klawiszowych Większość dużych okien dialogowych, takich jak Material Editor czy Track View, ma własny zestaw skrótów klawiszowych, a możliwość ich używania zależy od stanu przycisku Keyboard Shortcut Override znajdującego się na głównym pasku narzędziowym Maksa. Jeśli jest włączony, dostępne są skróty zarówno dla głównego interfejsu, jak i dla okna dialogowego, ale w przypadku pokrywania się tych skrótów pierwszeństwo ma skrót okna dialogowego. Przykładowo, w głównym oknie programu klawisz A włącza funkcję obrotu skokowego (Angle Snap), a w oknie Track View–Curve Editor ten sam klawisz włącza tryb dodawania kluczy (Add Keys). Przy otwartym oknie edytora krzywych i włączonym klawiszu Keyboard Shortcut Override wciśnięcie klawisza A spowoduje uaktywnienie trybu Add Keys. Natomiast przy wyłączonym przycisku Keyboard Shortcut Override nastąpi uaktywnienie funkcji Angle Snap.

1342

Dodatki

Każdy skrót klawiszowy możesz zmienić w panelu Keyboard okna dialogowego Customize User Interface. Okno to otworzysz za pomocą polecenia Customize/Customize User Interface. W rozdziale 4., „Modyfikowanie interfejsu i ustawianie jednostek” znajdziesz opis tworzenia własnych skrótów klawiszowych.

Korzystanie z mapy skrótów W menu Help znajduje się polecenie Keyboard Shortcut Map, które otwiera interaktywne okno pokazane na rysunku D.1. W oknie tym możesz przejrzeć wszystkie skróty klawiszowe obowiązujące w głównym interfejsie Maksa. Rysunek D.1. Funkcja Keyboard Shortcut Map umożliwia przeglądanie skrótów klawiszowych w sposób interaktywny

Interfejs Keyboard Shortcut Map jest aplikacją utworzoną w technologii Flash i uruchamia się w oknie przeglądarki internetowej. Aby ją zobaczyć, musisz zezwolić na działanie kontrolek ActiveX.

Przesuwanie kursora myszy po klawiaturze widocznej w prawym dolnym rogu interfejsu Keyboard Shortcut Map powoduje podświetlanie poszczególnych grup klawiszy i wyświetlanie skrótów przypisanych do tych klawiszy. Ikona w prawym górnym rogu służy do odświeżania interfejsu, a ikona w kształcie strzałki widoczna na prawo od klawiatury umożliwia cykliczne włączanie kolejnych grup klawiszy.

Skróty głównego interfejsu Skróty klawiszowe głównego interfejsu Maksa zawarte są w tabelach D.1 – D.17.

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1343

Tabela D1. Polecenia menu Polecenie

Skrót

Polecenie

Skrót

menu aplikacji/New

Ctrl+N

Views/Set Active Viewport/Bottom

B

menu aplikacji/Open

Ctrl+O

Views/Set Active Viewport/Left

L

menu aplikacji/Save

Ctrl+S

Views/ViewCube/Show the ViewCube

Alt+Ctrl+V

menu aplikacji/Manage/Asset Tracking Shift+T

Views/ViewCube/Home

Alt+Ctrl+H3

Edit/Undo Scene Operation

Ctrl+Z

Views/SteeringWheels/ Toggle SteeringWheels

Shift+W

Edit/Redo Scene Operation

Ctrl+Y

Views/SteeringWheels/ Tour Building Wheel

Shift+Ctrl+J

Edit/Hold

Ctrl+H

Views/Create Camera From View

Ctrl+C

Edit/Fetch

Alt+Ctrl+F

Views/Viewport Background/Viewport Background

Alt+B

Edit/Delete Objects

Delete

Views/Viewport Background/Update Background Image

Alt+Shift+Ctrl+B

Edit/Clone

Ctrl+V

Views/Adaptive Degradation

O

Edit/Move

W

Views/Expert Mode Toggle Ctrl+X

Edit/Rotate

E

Animation/Parameter Editor

Alt+1

Edit/Transform Type-In

F12

Animation/Parameter Collector

Alt+2

Edit/Select All

Ctrl+A

Animation/Wire Parameters/Wire Parameters

Ctrl+5

Edit/Select None

Ctrl+D

Animation/Wire Parameters/Parameter Wire Dialog

Alt+5

Edit/Select Invert

Ctrl+I

Graph Editors/Particle View 6

Edit/Select Similar

Ctrl+Q

Rendering/Render

Shift+Q

Edit/Select by/Name

H

Rendering/Render Setup

F10

Tools/Open Explorer: Container Explorer

Alt+Ctrl+O

Rendering/Environment

8

1344

Dodatki

Tabela D1. Polecenia menu — ciąg dalszy Polecenie

Skrót

Polecenie

Skrót

Tools/Isolate Selection

Alt+Q

Rendering/Advanced Lighting

9

Tools/Align/Align

Alt+A

Rendering/Render to Texture 0 (zero)

Tools/Align/Quick Align

Shift+A

Rendering/Material Editor

M

Tools/Align/Spacing Tool

Shift+I

Customize/Lock UI Layout

Alt+0 (zero)

Tools/Align/Normal Align

Alt+N

Customize/Show UI/Show/ Hide Main Toolbar

Alt+6

Tools/Grids and Snaps/Snaps Toggle S

MAXScript/MAXScript Listener

F11

Tools/Grids and Snaps/Angle Snap Toggle

menu aplikacji

Alt+F

Tools/Grids and Snaps/Percent Snap Shift+Ctrl+P Toggle

menu Edit

Alt+E

Tools/Grids and Snaps/Snaps Use Axis Constraints

Alt+D, Alt+F3

menu Tools

Alt+T

Views/Undo View Change

Shift+Z

menu Group

Alt+G

Views/Redo View Change

Shift+Y

menu Views

Alt+V

Views/Set Active Viewport/Redraw All Views

`

menu Create

Alt+C

Views/Set Active Viewport/Perspective

P

menu Rendering

Alt+R

Views/Set Active Viewport/ Orthographic

U

menu Customize

Alt+U

Views/Set Active Viewport/Front

F

menu MAXScript

Alt+M

Views/Set Active Viewport/Top

T

menu Help

Alt+H

Polecenie

Skrót

Polecenie

Skrót

Undo

Ctrl+Z

Snap to Edge/Segment Toggle

Alt+F10

Redo

Ctrl+Y

Snap to Face Toggle

Alt+F11

Select Object

Q

Snap to Frozen Objects Toggle

Alt+F2

Select by Name

H

Snaps Use Axis Constraints Alt+D, Alt+F3 Toggle

A

Tabela D.2. Paski narzędziowe

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1345

Tabela D.2. Paski narzędziowe — ciąg dalszy Polecenie

Skrót

Polecenie

Skrót

Rectangle, Circle, Fence, Lasso Selection — cyklicznie

Ctrl+F, Q

Snap Type — cyklicznie

Alt+S

Select and Move

W

Snap Hit — cyklicznie

Alt+Shift+S

Select and Rotate

E

Align

Alt+A

Select and Scale

R

Normal Align

Alt+N

Scale — cyklicznie

R, Ctrl+E

Place Highlight

Ctrl+H

Snap Toggle

S

Material Editor

M

Angle Snap Toggle

A

Render Setup

F10

Percent Snap Toggle

Shift+Ctrl+P

Quick Render

Shift+Q

Snap to Grid Points Toggle

Alt+F5

Restrict to X

F5

Snap to Pivot Toggle

Alt+F6

Restrict to Y

F6

Snap to Vertex Toggle

Alt+F7

Restrict to Z

F7

Snap to Endpoint Toggle

Alt+F8

Restrict Plane — cyklicznie F8

Snap to Midpoint Toggle

Alt+F9

Tabela D.3. Okna widokowe Polecenie

Skrót

Polecenie

Skrót

Front View

F

View Edged Faces

F4

Top View

T

Polygon Counter

7

Bottom View

B

Sound Toggle

\

Left View

L

Show Safeframes

Shift+F

Perspective View

P

Default Lighting

Ctrl+L

Isometric User View

U

See-Through Display

Alt+X

Camera View

C

Redraw All Views

`

Light View

Shift+4 ($)

Offset Snap

Alt+Ctrl+spacja

Disable Viewport

D

Show/Hide Cameras

Shift+C

Viewports Pop-up Menu

V

Show/Hide Geometry

Shift+G

Background Lock Toggle

Alt+Ctrl+B

Show/Hide Grids

G

Dynamiczna zmiana rozmiarów

Przeciąganie krawędzi okien widokowych

Show/Hide Helpers

Shift+H

Transform Gizmo Toggle

X

Show/Hide Lights

Shift+L

1346

Dodatki

Tabela D.3. Okna widokowe — ciąg dalszy Polecenie

Skrót

Polecenie

Transform Gizmo Size Down

-

Show/Hide Particle Systems Shift+P

Transform Gizmo Size Up

=

Show/Hide Shapes

Shift+S

Shade Selected Subobject Faces

F2

Show/Hide Space Warps

Shift+W

Wireframe/Smooth+Highlights Toggle F3

Skrót

Show/Hide Floating dialog Ctrl+` boxes

Tabela D.4. Kontrolki kluczowania i czasu Polecenie

Skrót

Polecenie

Skrót

Selection Lock Toggle

spacja

Backup Time One Unit

, (przecinek)

Auto Key Mode

N

Forward Time One Unit

. (kropka)

Set Key Mode



Go to Start Frame

Home

Set Keys

K

Go to End Frame

End

Play (Stop) Animation

/

Tabela D.5. Kontrolki nawigacyjne okien widokowych Polecenie

Skrót

Polecenie

Skrót

Zoom Mode

Alt+Z

Zoom Viewport In

[ lub obrót rolki myszy do przodu

Zoom Extents

Alt+Ctrl+Z

Zoom Viewport Out

] lub obrót rolki myszy do tyłu

Zoom Extents All

Shift+Ctrl+Z

Pan View

Ctrl+P lub przeciąganie myszą z wciśniętym środkowym przyciskiem

Zoom Extents Selected All

Z

Interactive Pan

I (wciskanie)

Zoom In 2X

Alt+Shift+Ctrl +Z

Walk Through mode

strzałka w górę

Zoom Out 2X

Alt+Shift+Z

Arc Rotate

Ctrl+R, Alt+przeciąganie myszą z wciśniętym środkowym przyciskiem

Zoom Region Mode

Ctrl+W

Min/Max Toggle

Alt+W

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1347

Tabela D.6. Tryb spacerowy (Walk Rhrough) Polecenie

Skrót

Polecenie

Skrót

Do przodu

W, strzałka w górę

Zwalnianie

Z

Do tyłu

S, strzałka w dół

Wydłużanie kroku

]

W lewo

A, strzałka w lewo

Skracanie kroku

[

W prawo

D, strzałka w prawo

Resetowanie kroku

Alt+[

W górę

E, Shift+ Poziom strzałka w górę

W dół

C, Shift+ strzałka w dół

Przyspieszanie

Q

Shift+spacja

Blokada pionowego obrotu spacja

Tabela D.7. Czteroczęściowe menu kontekstowe Polecenie

Skrót

Polecenie

Skrót

Menu animacji

Alt+prawy Menu okien widokowych przycisk myszy

V

Menu oświetlenia i renderingu

Ctrl+Alt+ Menu systemu MassFX prawy przycisk myszy

Shift+Alt+prawy przycisk myszy

Menu modelowania

Ctrl+prawy Menu własne 2 przycisk myszy

Shift+Ctrl+Alt+ prawy przycisk myszy

Menu przyciągania

Shift+prawy Menu własne 3 przycisk myszy

Shift+Ctrl+prawy przycisk myszy

Tabela D.8. Wirtualne okno widokowe Polecenie

Skrót

Polecenie

Skrót

Włączanie i wyłączanie wirtualnego okna widokowego

/ (klawiatura numeryczna)

Przesuwanie widoku w lewo 4 (klawiatura numeryczna)

zbliżanie widoku

+ (klawiatura numeryczna)

Przesuwanie widoku w prawo

6 (klawiatura numeryczna)

Oddalanie widoku

- (klawiatura numeryczna)

Przesuwanie widoku w górę

8 (klawiatura numeryczna)

Przesuwanie widoku w dół

2 (klawiatura numeryczna)

1348

Dodatki Wirtualne okno widokowe jest dostępne tylko wtedy, gdy używany jest sterownik OpenGL.

Tabela D.9. Podobiekty Polecenie

Skrót

Polecenie

Skrót

Włączanie i wyłączanie trybu podobiektowego

Ctrl+B

Poziom 4

4

Cykliczne przełączanie poziomów podobiektów

Insert

Poziom 5

5

Poziom 1

1

Usuwanie podobiektu

Delete

Poziom 2

2

Lokalne zaznaczanie podobiektów wg nazwy

Ctrl+H

Poziom 3

3

Tabela D.10. Hierarchie Polecenie

Skrót

Polecenie

Skrót

Zaznaczanie przodka

Page Up

Zaznaczanie dzieci

Ctrl+Page Down

Zaznaczanie dziecka

Page Down

Zaznaczanie całej hierarchii dwukrotne kliknięcie rodzica

Polecenie

Skrót

Polecenie

Skrót

Tryb edycji wierzchołków (Vertex)

1

Bevel

Ctrl+V, Ctrl+B

Tryb edycji krawędzi (Edge)

2

Chamfer

Ctrl+C

Tryb edycji ścianek (Face)

3

Extrude

Ctrl+E

Tryb edycji wielokątów (Polygon)

4

Ukrywanie krawędzi

Ctrl+I

Tryb edycji elementów (Element)

5

Obracanie krawędzi (Turn) Ctrl+T

Detach

Ctrl+D

Weld Selected

Ctrl+W

Cut

Alt+C

Tryb Weld Target

Alt+W

Tabela D.11. Edytowalna siatka

Skróty klawiszowe poleceń zapisanych w tabeli D.12 czcionką pogrubioną mają charakter tymczasowy — wywoływana funkcja jest aktywna tak długo, jak długo wciśnięty jest klawisz (lub klawisze). Gdy klawisz zostanie zwolniony, Max wraca do poprzedniego trybu pracy. Z tych skrótów można korzystać, jeśli w panelu Keyboard okna dialogowego Customize User Interface włączona jest opcja Overrides Active. Skróty o takim działaniu można zdefiniować także dla poleceń Bridge, Constrain to None, Constrain to Normal, Paint Deform Push (Pull lub Relax), Paint Soft Selection i Turn.

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1349

Nie należy mylić skrótów działających z modyfikatorem Edit Poly z tymi, które odnoszą się do obiektów typu Editable Poly. Tylko nieliczne działają w obu przypadkach.

Tabela D.12. Modyfikator Edit Poly Polecenie

Skrót

Polecenie

Skrót

Tryb edycji wierzchołków (Vertex)

1

Bevel

Shift+Ctrl+B

Tryb edycji krawędzi (Edge)

2

Bevel: Settings

Ctrl+B

Tryb edycji brzegów (Border)

3

Chamfer

Shift+Ctrl+C

Tryb edycji wielokątów (Polygon)

4

Chamfer: Settings

Alt+Ctrl+C

Tryb edycji elementów (Element)

5

Inset

I

Poziom obiektu (wyłącza tryb podobiektowy)

6

Inset: Settings

Ctrl+I

Zaznaczanie przez wierzchołki (By Vertex) Alt+V

Outline

O

Soft Selection: Affect Backfacing

Ctrl+F

Outline: Settings

Ctrl+O

Zaznaczanie z opcją Ignore Backfacing

Shift+Ctrl+I

Extrude

E

Shaded Face Toggle

Alt+F

Extrude: Settings

Ctrl+E

Grow Selection

Ctrl+Page Up Extrude Along Spline

Alt+E

Shrink Selection

Ctrl+Page Down

Hinge from Edge

L

Select Edge Loop

Alt+L

Hinge from Edge: Settings

Ctrl+L

Select Edge Ring

Alt+R

Auto Smooth

A

Use Soft Selection

Ctrl+S

MeshSmooth

M

Repeat Last Operation

;

MeshSmooth: Settings

Ctrl+M

Constraints: Face

X

Retriangulate

Shift+Ctrl+T

Constraints: Edge

Shift+X

Edit Triangulation

Shift+T

Create

C

Tessellate

T

Collapse Poly Object

Shift+L

Tessellate: Settings

Ctrl+T

Attach

Shift+A

Flip Normals

F

Attach List

Shift+Ctrl+A Hide

H

Detach

Ctrl+D

Hide Unselected

Alt+I

Break

Shift+B

Unhide All

Alt+U

Create Shape (tryb Edge)

Shift+M

Target Weld

Shift+Ctrl+W

Insert Vertex

Shift+I

Weld: Settings

Ctrl+W

1350

Dodatki

Tabela D.12. Modyfikator Edit Poly — ciąg dalszy Polecenie

Skrót

Polecenie

Skrót

Connect

Shift+Ctrl+E Make Planar

P

Connect Edge: Settings

Ctrl+N

Remove

Shift+R

Cut

Alt+C

Remove Isolated Vertices

Shift+Ctrl+R

Quickslice

Shift+Ctrl+Q Remove Unused Map Vertices

Alf+Shift+Ctrl+R

Slice

Shift+S

Align to Grid

G

Slice Plane

S

Align to View

V

Reset Plane

Alt+S

Cap Poly Object

Alt+P

Split (tryb Edge)

Shift+P

Podczas pracy z obiektami typu Editable Poly również można korzystać ze skrótów tymczasowych (w tabeli D.13 są wyróżnione pogrubioną czcionką). Tabela D.13. Obiekt Editable Poly Polecenie

Skrót

Polecenie

Skrót

Tryb edycji wierzchołków (Vertex)

1

Cut

Alt+C

Tryb edycji krawędzi (Edge)

2

Quickslice

Shift+Ctrl+Q

Tryb edycji brzegów (Border)

3

Bevel

Shift+Ctrl+B

Tryb edycji ścianek (Face)

4

Chamfer Mode

Shift+Ctrl+C

Tryb edycji elementów (Element)

5

Extrude

Shift+E

Poziom obiektu (wyłącza tryb podobiektowy)

6

Extrude Poly Face

Alt+E

Repeat Last Operation

;

MeshSmooth

Ctrl+M

Grow Selection

Ctrl+Page Up Hide

Alt+H

Shrink Selection

Ctrl+Page Down

Hide Unselected

Alt+I

Select Edge Loop

Alt+L

Unhide All

Alt+U

Select Edge Ring

Alt+R

Target Weld Mode

Shift+Ctrl+W

Connect

Shift+Ctrl+E Cap Poly Object

Constraints: Edge

Shift+X

Collapse Poly Object

Alt+P Alt+Ctrl+C

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1351

Tabela D.14. NURBS Polecenie

Skrót

Polecenie

Skrót

Blokada zaznaczenia 2D

spacja

Zaznacz następny wzdłuż V

Ctrl+strzałka w górę

CV Constrained Normal Move

Alt+N

Zaznacz następny wzdłuż V

Ctrl+strzałka w dół

CV Constrained U Move

Alt+U

Tessellation Preset 1

Ctrl+1

CV Constrained V Move

Alt+V

Tessellation Preset 2

Ctrl+2

Display Curves

Shift+Ctrl+C Tessellation Preset 3

Ctrl+3

Display Surfaces

Shift+Ctrl+S Włącz poziom Point

Alt+Shift+P

Display Lattices

Ctrl+L

Włącz poziom Curve

Alt+Shift+C

Display Shaded Lattice

Alt+L

Włącz poziom Curve CV

Alt+Shift+Z

Display Dependents

Ctrl+D

Włącz poziom Surface

Alt+Shift+S

Display Toolbox

Ctrl+T

Włącz poziom Surface CV

Alt+Shift+V

Display Trims

Shift+Ctrl+T Włącz poziom Imports

Alt+Shift+I

Zaznacz następny wzdłuż U

Ctrl+strzałka w prawo

Włącz poziom najwyższy

Alt+Shift+T

Zaznacz poprzedni wzdłuż U

Ctrl+strzałka w lewo

Transform Degrade

Ctrl+X

Polecenie

Skrót

Polecenie

Skrót

Włącz poziom Control Points

Alt+Shift+C

Włącz poziom Set Volume

Alt+Shift+S

Włącz poziom Lattice

Alt+Shift+L

Włącz poziom najwyższy

Alt+Shift+T

Tabela D.15. Deformacje swobodne

Tabela D.16. Modyfikator Edit Normals Polecenie

Skrót

Polecenie

Skrót

Poziom obiektu

Ctrl+0

Paste Normal

Ctrl+V

Poziom normalnej

Ctrl+1

Reset Normals

R

Poziom wierzchołka

Ctrl+2

Specify Normals

S

Poziom krawędzi

Ctrl+3

Unify Normals

U

Poziom ścianki

Ctrl+4

Make Explicit

E

Copy Normal

Ctrl+C

Break Normals

B

1352

Dodatki

Tabela D.17. Stylizowanie włosów Polecenie

Skrót

Polecenie

Skrót

Select Hair by Ends

Ctrl+1

Transformacja Puff Roots

Ctrl+P lub Shift+Ctrl+3

Select Whole Guide

Ctrl+2

Transformacja Clump

Ctrl+M lub Shift+Ctrl+4

Select Guide Vertices

Ctrl+3

Transformacja Rotate

Ctrl+R lub Shift+Ctrl+5

Select Hair by Roots

Ctrl+4

Transformacja Scale

Ctrl+E lub Shift+Ctrl+6

Invert Selection

Shift+Ctrl+N

Attenuate Hair

Shift+Ctrl+A

Rotate Selection

Shift+Ctrl+R

Pop Selected

Shift+Ctrl+P

Expand Selection

Shift+Ctrl+E

Pop Zero-sized

Shift+Ctrl+Z

Hide Selected Guides

Shift+Ctrl+H

Recomb Hair

Shift+Ctrl+M

Show Hidden Guides

Shift+Ctrl+W Replace Rest

Shift+Ctrl+T

Hair Brush

Ctrl+B

Toggle Collisions

Shift+Ctrl+C

Hair Cut

Ctrl+C

Toggle Hairs

Shift+Ctrl+I

Select Hair

Ctrl+S

Lock Guides

Shift+Ctrl+L

Distance Fade

Shift+Ctrl+F Unlock Guides

Shift+Ctrl+U

Ignore Back Hairs

Shift+Ctrl+B Undo Styling

Ctrl+Z

Transformacja Translate

Ctrl+T lub Shift+Ctrl+1

Split Selected Hair Groups

Shift+Ctrl+-

Transformacja Stand

Ctrl+N lub Shift+Ctrl+2

Merge Selected Hair Groups

Shift+Ctrl+=

Skróty okien dialogowych W tabelach D.18 – D.26 zawarte są skróty klawiszowe działające w rozmaitych oknach dialogowych. Aby taki skrót zadziałał, okno dialogowe musi być aktywne. Należy pamiętać, że okna niemodalne, mimo że są widoczne, nie muszą być aktywne. Tabela D.18. Kompaktowy edytor materiałów Polecenie

Skrót

Polecenie

Skrót

Background

B

Move to Sibling

strzałka w lewo lub strzałka w prawo

Backlight

L

Go to Parent

strzałka w górę

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1353

Tabela D.18. Kompaktowy edytor materiałów — ciąg dalszy Polecenie

Skrót

Polecenie

Skrót

Cykliczne przełączanie liczby próbek

X

Make Preview

P

Get Material

G

Material Editor Options

O

Tabela D.19. Rozszerzony edytor materiałów Polecenie

Skrót

Polecenie

Skrót

Assign Material to Selection

A

Zoom Region Tool

Ctrl+W

Delete Selected

Delete

Zoom Extents

Alt+Ctrl+Z

Update Selected Previews

U

Zoom Extents Selected

Z

Auto Update Selected Previews

Alt+U

Show Grid

G

Select Tool

S

Lay Out All

L

Select All

Ctrl+A

Lay Out Children

C

Select None

Ctrl+D

Hide Unused Nodeslots

H

Select Invert

Ctrl+I

Move Children

Alt+C

Select Children

Ctrl+C

Enable Global Rendering

Alt+Ctrl+U

Select Tree

Ctrl+T

Material/Map Browser

O

Pan Tool

Ctrl+P

Parameter Editor

P

Pan to Selected

Alt+P

Navigator

N

Zoom Tool

Alt+Z

Tabela D.20. Track View Polecenie

Skrót

Polecenie

Skrót

Filters

Q

Lock Tangents

L

Assign Controller

C

Nudge Keys Left

strzałka w lewo

Copy Controller

Ctrl+C

Nudge Keys Right

strzałka w prawo

Paste Controller

Ctrl+V

Move Highlight Down

strzałka w dół

Make Unique

U

Move Highlight Up

strzałka w górę

Add Keys

A

Backup Time One Unit

, (przecinek)

Move Keys

M

Forward Time One Unit

. (kropka)

Snap Frames

S

Scroll Down

Ctrl+strzałka w dół

Apply Ease Curve

Ctrl+E

Scroll Up

Ctrl+strzałka w górę

Apply Multiplier Curve

Ctrl+M

Undo Scene Operation

Ctrl+Z

1354

Dodatki

Tabela D.20. Track View — ciąg dalszy Polecenie

Skrót

Polecenie

Skrót

Add Parameters

Ctrl+1

Redo Scene Operation

Ctrl+A

Collect Parameters

Alt+4

Zoom

Z

Expand Track

T, Enter

Zoom Horizontal Extents All

Alt+X

Lock Selection

spacja

Pan

P

Polecenie

Skrót

Polecenie

Skrót

Connect Tool

C

Free All

Alt+F

Select Tool

S

Shrink Toggle

Ctrl+S

Select All Nodes

Ctrl+A

Move Children

Alt+C

Select None

Ctrl+D

Preferences

P

Select Inverted

Ctrl+I

Add Bookmark

B

Select Children

Ctrl+C

Next Bookmark

strzałka w lewo

Zoom Selected Extents

Z

Previous Bookmark

strzałka w prawo

Show Grid Toggle

G

Rename Object

R

Display Floater

D

Collect Parameters

Alt+3

Free Selected

Alt+S

Tabela D.21. Schematic View

Tabela D.22. Video Post Polecenie

Skrót

Polecenie

Skrót

New Sequence

Ctrl+N

Add Image Layer Event

Ctrl+L

Add New Event

Ctrl+A

Add Image Output Event

Ctrl+O

Add Scene Event

Ctrl+S

Edit Current Event

Ctrl+E

Add Image Input Event

Ctrl+I

Execute Sequence

Ctrl+R

Add Image Filter Event

Ctrl+F

Undo Scene Operation

Ctrl+Z

Polecenie

Skrót

Polecenie

Skrót

Load UVW

Alt+Shift+ Ctrl+L

Snap

Ctrl+S

Move Mode

W

Pan

Ctrl+P

Tabela D.23. Edit UVWs

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1355

Tabela D.23. Edit UVWs — ciąg dalszy Polecenie

Skrót

Polecenie

Skrót

Rotate Mode

E

Zoom

Alt+Z

Scale Mode

R

Zoom Region

Ctrl+X

Mirror Horizontal

Alt+Shift+ Ctrl+N

Zoom Extents

Alt+Ctrl+Z

Mirror Vertical

Alt+Shift+ Ctrl+M

Zoom Extents Selected

Z

Weld Selected

Ctrl+W

Zoom To Gizmo

Shift+spacja

Target Weld

Ctrl+T

Update Map

Ctrl+U

Break

Ctrl+B

Edit UVWs

Ctrl+E

Detach Edge Vertices

D, Ctrl+D

Lock Selected Vertices

spacja

Unwrap Options

Ctrl+O

Move Horizontal

Alt+Shift+Ctrl+J

Hide Selected

Ctrl+H

Move Vertical

Alt+Shift+Ctrl+K

Filter Selected Faces

Alt+F

Texture Vertex Contract Selection

-

Get Face Selection From Stack

Alt+Shift+ Ctrl+F

Texture Vertex Expand Selection

+

Get Selection From Viewport

Alt+Shift+ Ctrl+P

Show Seams in Viewports

Alt+E

Planar Map Faces/Patches

Enter

Freeze Selected

Ctrl+F

Polecenie

Skrót

Polecenie

Skrót

Close

Q

Select Object

S

Draw Region

D

Włączanie i wyłączanie paska narzędziowego

spacja

Render

R

Tabela D.24. ActiveShade

Tabela D.25. Partic Flow Polecenie

Skrót

Polecenie

Skrót

Okno Particle View

6

Select All

Ctrl+A

Particle Emission Toggle

;

Copy Selected

Ctrl+C

Selected Particle Emission Toggle

Shift+;

Paste Selected

Ctrl+V

1356

Dodatki

Tabela D.26. MAXScript Editor Polecenie

Skrót

Polecenie

Skrót

File/New

Ctrl+N

Edit/Box Comment

Ctrl+Shift+C

File/Open

Ctrl+O

Edit/Stream Comment

Ctrl+Shift+Q

File/Open Selected File

Ctrl+Shift+O Edit/Make Selection Uppercase

Ctrl+Shift+U

File/Close

Ctrl+W

Edit/Make Selection Lowercase

Ctrl+U

File/Save

Ctrl+S

Search/Find

Ctrl+F

File/Save As

Ctrl+Shift+S

Search/Find Next

F3

File/Save a Copy

Ctrl+Shift+P Search/Find Previous

Shift+F3

File/Revert

Ctrl+R

Search/Replace

Ctrl+H

File/Source Control/Add File

Ctrl+F5

Search/Find in Files

Ctrl+Shift+F

File/Source Control/Remove File

Ctrl+Shift+ F5

Search/Go to

Ctrl+G

File/Source Control/Check In

Shift+F5

Search/Next Bookmark

F2

File/Source Control/Check Out

F5

Search/Previous Bookmark Shift+F2

File/Print

Ctrl+P

Search/Toggle Bookmark

Ctrl+F2

Edit/Undo

Ctrl+Z

View/Full Screen

F11

Edit/Redo

Ctrl+Y

View/Whitespace

Ctrl+Shift+8

Edit/Cut

Ctrl+X

View/End of Line

Ctrl+Shift+9

Edit/Copy

Ctrl+C

Tools/Evaluate All

Ctrl+E

Edit/Paste

Ctrl+V

Tools/Evaluate Line/ Selection

Shift+Enter

Edit/Select All

Ctrl+A

Tools/Next Message

F4

Edit/Duplicate

Ctrl+Shift+D Tools/Previous Message

Shift+F4

Edit/Delete

Delete

Tools/Clear Output

Shift+F5

Tool/Delete All

Ctrl+Alt+D

Tools/Switch Pane

Ctrl+F6

Edit/Match Brace

Ctrl+B

Options/Change Indentation Settings

Ctrl+Shift+I

Edit/Select to Brace

Ctrl+Shift+B Options/Use Monospaced Font

Ctrl+F11

Edit/Complete Word

Ctrl+Enter

Shift+F11

Edit/Expand Abbreviation

Ctrl+Shift+A Windows/Previous

Language/Text

Shift+F6

Dodatek D  Skróty klawiszowe w 3ds Max 2012

1357

Tabela D.26. MAXScript Editor — ciąg dalszy Polecenie

Skrót

Polecenie

Edit/Insert Abbreviation

Ctrl+Shift+R Windows/Next

F6

Edit/Block Comment or Uncomment

Ctrl+Q

F1

Help/Help

Skrót

Skróty klawiszowe Character Studio Skróty zebrane w tabelach D.27 i D.28 odnoszą się do modułów Character Studio. Tabela D.27. Biped Polecenie

Skrót

Polecenie

Skrót

Change Leg State

Alt+Ctrl+S

Play Biped

V

Reset All Limbs

Alt+K

Lock Selected Keys

Alt+Ctrl+L

Set Range

Alt+R

Set Key

0 (zero)

Copy Posture

Alt+C

Scale In Transform

Alt+Ctrl+E

Paste Posture

Alt+V

Toggle Biped Keys in Trackbar

Alt+T

Paste Posture Opposite

Alt+B

Select End of Footsteps in Track View

Alt+D

Collapse Move All

Alt+M

Select Entire Footstep in Track View

Alt+S

Fix Graphs

Alt+Ctrl+F

Select Start of Footsteps in Track View

Alt+A

Polecenie

Skrót

Polecenie

Skrót

Solve

S

Next Selection Level

I

Copy Envelope

Ctrl+C

Previous Selection Level

Shift+I

Paste Envelope

Ctrl+V

Next

Page Down

Reset Envelope

Ctrl+E

Previous

Page Up

Delete

Ctrl+D

Tabela D.28. Physique

1358

Dodatki

Inne skróty klawiszowe Poza skrótami obowiązującymi w głównym interfejsie i oknach dialogowych Max oferuje kilka skrótów o charakterze ogólnym, których można używać w wielu rozmaitych miejscach. Skróty te zostały zebrane w tabeli D.29. Tabela D.29. Skróty ogólne Polecenie

Skrót

Obliczanie wyrażenia numerycznego

Ctrl+N przy Uaktywnianie pola zaznaczonym edycyjnego polu spinera

Podwójne kliknięcie aktualnej zawartości pola

Cut

Ctrl+X

Precyzyjne przesuwanie zaznaczenia

Klawisze ze strzałkami

Copy

Ctrl+C

Uaktywnianie okna widokowego

Kliknięcie prawym przyciskiem myszy w oknie nieaktywnym

Paste

Ctrl+V

Wyświetlanie czteroczęściowego menu kontekstowego

Kliknięcie prawym przyciskiem myszy w oknie aktywnym

Zatwierdzanie ustawień

Enter

Przejście do pierwszej zakładki

Alt+1

Przejście do następnego pola edycyjnego

Tab

Pomoc (Help)

F1

Przejście do poprzedniego pola edycyjnego Shift+Tab

Polecenie

Skrót

Dodatek E

Interfejs Asset Tracking W tym dodatku: 

Konfigurowanie systemu zarządzania zasobami



Używanie interfejsu Asset Tracking

Jak często zaglądasz do garażu w okresie zimowym? Jeśli Twój garaż nie jest ogrzewany, prawdopodobnie wrzucasz tam wszystkie niepotrzebne w danej chwili rzeczy — oświetlenie choinkowe, zapasowy pojemnik z olejem opałowym, rowerek dziecięcy — i w pośpiechu wracasz do ciepłego mieszkania. Efekt jest taki, że na wiosnę czeka Cię wielkie sprzątanie. Z projektami Maksa może być podobnie. Podczas intensywnej pracy nad złożonym projektem pliki ze scenami, teksturami i kolejnymi warstwami (przejściami) renderingu (render passes) często trafiają do różnych miejsc w sieci. Jeśli w takiej sytuacji zechcesz ponownie wykorzystać jakiś element, stracisz dużo czasu na odszukanie właściwego pliku. Problem staje się jeszcze poważniejszy, gdy pracujesz w jednej grupie z osobnikami umieszczającymi swoje pliki gdzie popadnie. W rozwiązaniu tego problemu może pomóc zastosowanie systemu zarządzania zasobami (asset tracking system). System taki działa jak sekretarka rejestrująca każdy obiekt umieszczany w sieci. Ta mała sekretarka jest w dodatku na tyle bystra, że rejestruje również uaktualnienia wszystkich plików. Ponadto nie zezwala na edycję pliku, który jest aktualnie używany.

Konfigurowanie systemu zarządzania zasobami W zakresie zarządzania zasobami Max może współpracować z różnymi zewnętrznymi systemami tego typu, np. z systemem Vault opracowanym w firmie Autodesk czy z systemem Visual SourceSafe autorstwa firmy Microsoft, a także z systemami CVS i Perforce. Dostęp do każdego z tych systemów można uzyskać z poziomu interfejsu Asset Tracking, wybierając polecenie Server/Launch Provider. Z kolei, aby otworzyć ten interfejs, należy w Maksie wybrać z menu aplikacji polecenie Manage/Asset Tracking (Shift+T).

1360

Dodatki Aby system zarządzania zasobami mógł współpracować z Maksem, musi spełniać wymogi standardu MSSCC.

Zespoły, które jeszcze nie korzystają z systemu zarządzania zasobami, zapewne ucieszy informacja, że firma Autodesk zamieściła kopię systemu Vault na płycie instalacyjnej programu 3ds Max 2012. Zarówno Vault Server, jak i Vault Client mogą być zainstalowane z tej płyty. W tym celu należy kliknąć łącze Vault setup w sekcji Install Tools & Utilities okna dialogowego kreatora instalacji Maksa. Instalację i skonfigurowanie programu Vault Server należy zlecić administratorowi sieci, który powinien także ustawić profile użytkowników, przydzielić każdemu z nich nazwę i hasło dające dostęp do systemu oraz utworzyć odpowiednie foldery dla danego projektu.

W systemie zarządzania zasobami każdy plik będący częścią projektu jest zasobem. Może to być plik zawierający scenę, odnośnik zewnętrzny, teksturę, skrypt napisany w języku MAXScript itp. Jedną z zalet systemu Vault jest to, że przechowuje dane dotyczące hierarchicznej zależności między plikami, np. plik z teksturą zostanie zarejestrowany jako połączony z plikiem zawierającym scenę.

Wpisywanie i wypisywanie Aby edytować plik zarejestrowany w systemie zarządzania zasobami, musisz go wypisać (check out) z systemu. To polecenie powoduje zablokowanie pliku, dzięki czemu możesz go edytować bez obawy, że w tym samym czasie inny użytkownik systemu dokona w tym pliku jakichkolwiek zmian. Jeśli ktoś inny spróbuje wypisać zablokowany plik, zostanie uprzejmie poinformowany, że żądany plik jest dostępny tylko do odczytu. Otrzyma również informację, że Ty jesteś osobą, która plik wypisała. Wówczas może otworzyć ten plik i obejrzeć, ale nie będzie mógł go edytować. Po zakończeniu edycji możesz plik wpisać (check in) do systemu, co sprawi, że będzie w pełni dostępny dla wszystkich użytkowników. Podczas wpisywania pliku wyświetlane jest okno dialogowe, w którym możesz umieścić informacje o wprowadzonych zmianach. Później informacje te zostaną zamieszczone w historii pliku obejmującej cały okres jego istnienia. Korzystając z systemu zarządzania zasobami, możesz odtworzyć dowolny, wcześniejszy stan pliku. Systemy zarządzania zasobami, takie jak Vault, przypominają użytkownikowi o konieczności wypisywania i wpisywania pliku, dzięki czemu historia pliku jest zawsze kompletna. Jeśli np. dokonałeś zmian w wypisanym pliku i spróbujesz otworzyć inny, wówczas zostanie wyświetlone okno dialogowe przypominające o konieczności wpisania zmodyfikowanego pliku na powrót do systemu.

Korzystanie z interfejsu Asset Tracking Interfejs Asset Tracking, pokazany na rysunku E.1 Jest on częścią interfejsu Maksa i pełni funkcję klienta systemu Vault. Dostęp do interfejsu Asset Tracking uzyskasz, wybierając polecenie Reference/Asset Tracking z menu aplikacji lub wciskając klawisze Shift+T. Po jego otwarciu nadal masz dostęp do poleceń głównego interfejsu Maksa.

Dodatek E  Interfejs Asset Tracking

1361

Rysunek E.1. W oknie interfejsu Asset Tracking wyświetlane są wszystkie pliki wypisane z systemu wraz z ich aktualnym statusem

Interfejs Asset Tracking wyświetla listę otwartych plików (zarządzanych przez system Vault) obejmującą również pliki powiązane, czyli te z teksturami, odnośnikami zewnętrznymi, danymi fotometrycznymi itp. W górnej części interfejsu znajdują się przyciski sterujące wyświetlaniem tej listy. Przycisk Refresh umożliwia odświeżenie jej zawartości, Status Log wyświetla listę wszystkich bieżących poleceń systemu Vault, Tree View włącza wyświetlanie listy plików w postaci drzewa hierarchii, a przycisk Table View włącza wyświetlanie listy w formie tabeli. Na lewo od nazwy każdego pliku znajduje się mała ikona oznaczająca aktualny status pliku. Ikony te są przydatne, gdy włączony jest widok drzewa hierarchii — w widoku tabelarycznym można ten status odczytać w odpowiedniej kolumnie. Tabela zawiera kolumny Name, Full Path, Status, Proxy Resolution i Proxy Status, wyświetlające odpowiednio: nazwę, pełną ścieżkę dostępu i status każdego pliku oraz rozdzielczość uproszczonych wersji obrazów i ich status. W prawej części interfejsu znajdują się dwa przyciski służące do filtrowania listy zasobów. Pierwszy z nich podświetla pozycje z materiałami i mapami, a drugi — zasoby związane z zaznaczonymi obiektami

Logowanie Aby korzystać z systemu zarządzania zasobami, musisz się do niego zalogować. To pozwala systemowi rozpoznać, kim jesteś, jakie masz uprawnienia i kogo ma zarejestrować w miejscu zasobów pobranych do edycji. Do logowania służy polecenie Server/Log in w oknie dialogowym Asset Tracking (patrz rysunek E.1). Jeśli nie masz zainstalowanego systemu Vault ani żadnego innego systemu zarządzania zasobami, polecenie Log in będzie niedostępne.

Wybór folderu roboczego Pliki wypisane z systemu są kopiowane do lokalnego folderu na Twoim komputerze. Tutaj zapisujesz wszystkie modyfikacje pliku do momentu zwrócenia (wpisania) go do systemu. Gdy pierwszy raz spróbujesz wypisać plik, system poprosi Cię o wskazanie folderu roboczego (working folder). Jest to folder, w którym przechowywane są pliki wypisane z systemu.

1362

Dodatki

Folder roboczy możesz utworzyć, wybierając polecenie Server/Options w oknie interfejsu Asset Tracking. Korzystając z polecenia Options/Prompts w menu interfejsu Asset Tracking, możesz ustalić, które okna z ostrzeżeniami i pytaniami mają być wyświetlane, a które z nich mają być obsługiwane automatycznie. Po wybraniu polecenia Options/Prompts wyświetlona zostanie lista wszystkich okien tego typu i — klikając każde z nich prawym przyciskiem myszy — możesz zdecydować, czy ma być wyświetlane (opcja Prompt), czy nie (opcja No Prompt). Menu File interfejsu Asset Tracking zawiera polecenia służące do wpisywania i wypisywania plików. Przy każdym wpisywaniu pliku wyświetlane jest okno dialogowe, pokazane na rysunku E.2, w którym możesz dopisać komentarz dotyczący zmian, jakie wprowadziłeś w danym pliku. Następnie taki plik jest zapisywany z kolejnym numerem wersji na serwerze systemu Vault. Możliwość zapisywania i wyszukiwania różnych wersji pliku, określana jako zarządzanie wersjami, jest jedną najważniejszych cech systemu zarządzania zasobami. Rysunek E.2. Okno umożliwiające opisanie wprowadzonych zmian pojawia się za każdym razem, gdy plik jest wpisywany do systemu

Menu File zawiera także polecenie Undo Checkout, które powoduje odrzucenie wprowadzonych zmian i przywrócenie pierwotnego stanu pliku w systemie.

Pobieranie i dodawanie plików w systemie Vault Po zalogowaniu się do bazy danych danego projektu możesz, korzystając z polecenia File/ Add Files, umieścić na serwerze systemu Vault pliki zapisane w Twoim lokalnym folderze roboczym. Jeśli zechcesz przesłać na systemowy serwer plik, nad którym aktualnie pracujesz, musisz go najpierw zapisać we wspomnianym folderze roboczym. Polecenie File/Add Files umożliwia przesyłanie wielu plików jednocześnie. Aby zaznaczyć kilka plików, kliknij każdy z nich, trzymając przy tym wciśnięty klawisz Ctrl. Polecenie File/Get From Provider wykonuje zadanie odwrotne — pobiera wybrane pliki z folderu systemu Vault i zapisuje je w lokalnym folderze roboczym. Jeśli zaginęły Ci jakieś pliki, np. z teksturami (może przeniosłeś je do innego folderu lokalnego), łatwo je odszukasz za pomocą polecenia File/Browse.

Dodatek E  Interfejs Asset Tracking

1363

Otwieranie starszych wersji pliku Za każdym razem, gdy plik jest wpisywany do systemu, otrzymuje kolejny numer wersji. Dzięki temu możliwy jest dostęp do wcześniejszych wersji pliku. Jeśli np. zechcesz ponownie wykorzystać model postaci wykonany do poprzedniej gry, ale bez przypisanych mu tekstur, możesz odszukać wersję zapisaną bezpośrednio przed przypisaniem tekstur. Do odszukiwania starszych wersji pliku służy okno dialogowe History otwierane poleceniem o takiej samej nazwie, które znajdziesz w menu File. W oknie tym wyświetlane są wszystkie wersje pliku wraz z datami ich utworzenia, autorami i komentarzami zamieszczanymi podczas wpisywania pliku do systemu (patrz rysunek E.3). Aby otworzyć jedną z tych wersji, zaznacz ją, a następnie kliknij przycisk Get Version. Rysunek E.3. Okno dialogowe History umożliwia dostęp do starszych wersji pliku

Zmienianie ścieżek dostępu do zasobów Menu Paths zawiera polecenia pozwalające ustalać i zmieniać ścieżki dostępu do różnych zasobów. Wybranie polecenia Highlight Editable Assets powoduje zaznaczenie w oknie Asset Tracking tych plików, których ścieżki mogą być modyfikowane. Zazwyczaj tylko ścieżka głównego pliku Maksa załadowanego z systemu Vault nie może być zmieniona. Polecenie Set Path otwiera okno dialogowe umożliwiające określenie nowej ścieżki do danego pliku. Szczególnie przydaje się to wtedy, gdy plik został przeniesiony w inne miejsce i jest oznaczony jako brakujący (missing). Polecenie Retarget Common Root pozwala zmienić główny katalog wszystkich zaznaczonych plików, czyli tę część ścieżki dostępu, która jest wspólna dla tych plików. Za pomocą polecenia Strip Path można spowodować, że wyświetlana będzie tylko nazwa pliku bez ścieżki dostępu. Istnieją tu także polecenia umożliwiające wyświetlanie ścieżek w formacie UNC (Universal Naming Convention).

Uproszczone wersje obrazów (proxies) System Proxy pozwala stosować uproszczone wersje map (zamiast obrazów w wysokiej rozdzielczości) w całej scenie. W menu Bitmap Performance and Memory znajdziesz polecenia służące do włączania sytemu Proxy (Enable Proxy System), ustawiania globalnych

1364

Dodatki

parametrów tego systemu (Global Settings) i ustalania rozdzielczości, jaka ma być zastosowana (Set Proxy Resolution). W widoku tabelarycznym wyświetlana jest zarówno rozdzielczość, jak i status uproszczonych map dla poszczególnych zasobów. Uproszczone wersje obrazów można stosować również niezależnie od systemu Vault, o czym była już mowa w rozdziale 23., „Renderowanie sceny i korzystanie z renderera Quicksilver”.

Podsumowanie W niniejszym dodatku opisane zostały ogólne zagadnienia związane z systemami zarządzania zasobami, a także konkretne szczegóły dotyczące konfigurowania i stosowania systemu Autodesk Vault. Opisywane zagadnienia obejmowały: 

wyjaśnienie, czym jest system zarządzania zasobami,



konfigurowanie takiego systemu pod kątem jego współpracy z Maksem, czyli logowanie i wskazywanie folderu roboczego,



stosowanie interfejsu Asset Tracking podczas pracy z plikami zarządzanymi przez system Vault.

Dodatek F

Modelowanie przy użyciu łat W tym dodatku: 

Tworzenie siatek łat



Edycja łat



Praca z podobiektami łat

Łata (Patch) to obiekt, którego kształt jest zdefiniowany za pomocą krzywych. Najprościej mówiąc, jest to wielokątna powierzchnia rozpięta na zamkniętym splajnie. Modyfikacja splajnu pociąga za sobą zmiany kształtu łaty. Łaty oferują szereg korzyści w stosunku do bardziej popularnych obiektów siatkowych. Zajmują mniej miejsca w pamięci, a edycja ich krawędzi jest łatwiejsza, podobnie jak ich wzajemne łączenie.

Wprowadzenie do powierzchni sklejanych Ponieważ łaty (fragmenty powierzchni sklejanych) rozciągane są na splajnach, to można je deformować metodami nieosiągalnymi w przypadku zwyczajnych wielokątów. Przykładowo wielokąty zawsze muszą być obiektami płaskimi. Oznacza to, że jeśli spojrzy się na nie od strony krawędzi, wówczas wyglądają one jak linie. Łaty nie stawiają takich wymagań, dzięki czemu można je dowolnie wyginać lub naciągać, co z kolei zapewnia o wiele większe możliwości sterowania ich kształtem. W rezultacie doskonale nadają się do modelowania ubrań i obiektów naturalnych, takich jak liście. Łaty mają wiele cech wspólnych z powierzchniami typu NURBS. NURBS to akronim wyrażenia Non-Uniform Rational B-Splines (niejednorodne wymierne krzywe i powierzchnie B-sklejane). Więcej informacji na ten temat znajduje się w dodatku G, „Praca z obiektami NURBS”.

Inną istotną zaletą obiektów typu Patch jest to, że pozwalają dokładnie odwzorowywać geometrię modelowanych obiektów. Jeśli przyjrzysz się obiektom siatkowym, zauważysz,

1366

Dodatki

że w miejscach przecięć wszystkich krawędzi, czyli we wszystkich narożnikach ścianek, występują wierzchołki. Jeśli zaś chodzi o siatki łat (patch grids), to wierzchołki można znaleźć jedynie w narożnikach łat. Każda łata może się składać z wielu ścianek. Redukcja liczby wierzchołków czyni strukturę powierzchni sklejanych znacznie bardziej przejrzystą, a ich edycję łatwiejszą. Mimo że łaty sprawiają wrażenie prostych obiektów, powierzchnie modelowane za ich pomocą zwykle generują duże liczby ścianek.

Tworzenie łat Łaty noszą nazwy pochodzące od liczby wierzchołków na ich brzegach, np. łata Tri Patch ma trzy wierzchołki, Quad Patch cztery itd. Powierzchnia Quad Patch domyślnie składa się z 36 prostokątnych ścianek, a Tri Patch z 72 trójkątnych. Widać to na rysunku F.1. Rysunek F.1. Powierzchnie typu Quad Patch i Tri Patch

Aby utworzyć łatę, wystarczy wybrać polecenie Create/Patch Grids/Quad Patch lub Tri Patch. Otwiera się wówczas panel Create i włącza przycisk tworzenia wybranej powierzchni. Jeśli chcesz tworzyć łaty bezpośrednio z poziomu tego panelu, musisz wybrać kategorię Geometry, a następnie pozycję Patch Grids z rozwijanej listy. Tworzenie powierzchni kończy kliknięcie i przeciągnięcie kursorem w oknie widokowym. Łaty można też tworzyć przy użyciu rolety Keyboard Entry, która pozwala na precyzyjne określenie wymiarów łaty. Aby użyć tej rolety, wpisz współrzędne oraz wymiary, po czym kliknij przycisk Create. Podane współrzędne X, Y i Z wyznaczają środek siatki. Roleta Parameters zawiera parametry długości (Length) i szerokości łaty (Width), a także definiujące liczbę segmentów w obu wymiarach (ale tylko w przypadku powierzchni typu Quad Patch). Ustawienie wartości Segments na 1 tworzy sześć rzędów oraz kolumn i dlatego łączna liczba wielokątów tworzących łatę Quad Patch nigdy nie jest mniejsza niż 36. Parametru Segments nie określa się w przypadku łat Tri Patch. W rolecie parametrów znajduje się też opcja generowania współrzędnych mapowania (Generate Mapping Coordinates). Nowo tworzone łaty zawsze są płaskie.

Ćwiczenie: Tworzenie szachownicy W ćwiczeniu utworzymy prosty model szachownicy. Aby oddzielić kwadraty białe od czarnych, użyjemy zarówno łat typu Quad Patch, jak i Tri Patch. Aby utworzyć szachownicę z łat, wykonaj następujące czynności.

Dodatek F  Modelowanie przy użyciu łat

1367

1. Kliknij prawym przyciskiem myszy przycisk przyciągania (Snap) na głównym pasku narzędziowym; otworzysz w ten sposób okno dialogowe Grid and Snap Settings. Upewnij się, że włączona jest opcja przyciągania do punktów siatki konstrukcyjnej (Grid Points). Następnie włącz przycisk Snap na głównym pasku narzędziowym (możesz w tym celu użyć skrótu klawiszowego S). 2. Wybierz polecenie Create/Patch Grids/Quad Patch i, wykorzystując siatkę konstrukcyjną, w oknie widokowym Top utwórz kwadrat. Kliknij próbkę koloru w rolecie Name and Color, po czym wybierz kolor czarny. 3. Kliknij przycisk Tri Patch w rolecie Object Type i, przeciągając myszą w oknie widokowym Top, narysuj kwadrat o tych samych wymiarach, co pierwszy. Zaznacz powstały obiekt Tri Patch, kliknij próbkę koloru i zmień go na biały. Po zmianie koloru obiektu Tri Patch na biały określenie, który z obiektów jest zaznaczony, może być trudne.

4. Powtórz czynności opisane w punktach 2. i 3., za każdym razem wybierając naprzemiennie biel i czerń jako kolor powierzchni, aż utworzysz pełną szachownicę 8×8. Podobną szachownicę można by utworzyć znacznie łatwiej, rysując dwa pierwsze kwadraty i generując resztę za pomocą okna dialogowego Array. Więcej informacji na temat tego okna znaleźć można w rozdziale 8., „Klonowanie i ustawianie obiektów w szyku”.

Gotowa szachownica przedstawiona jest na rysunku F.2.

Rysunek F.2. Szachownica utworzona przy użyciu powierzchni sklejanych

1368

Dodatki

Edycja łat Tworzenie i edytowanie łat nie jest trudne, ale ponieważ zawsze są one płaskie, toteż i ich funkcjonalność jest ograniczona. Kluczem do pełnej użyteczności tego typu obiektów jest ich konwersja do postaci łat edytowalnych (Editable Patch). Formę tę można nadać każdemu obiektowi geometrycznemu. Nawet łaty Quad Patch i Tri Patch, tworzone za pomocą opisanych wyżej przycisków, wymagają przekonwertowania, aby była możliwa ich edycja na poziomie podobiektów. Obiekty można przekształcać w Editable Patch kilkoma metodami. Pierwsza polega na kliknięciu obiektu prawym przyciskiem myszy i wybraniu polecenia Convert To/Convert to Editable Patch z czteroczęściowego menu kontekstowego. Druga metoda wymaga zastosowania modyfikatora Edit Patch przez wybranie go z listy Modifier List w stosie modyfikatorów albo przez użycie polecenia Modifiers/Patch/Spline Editing/Edit Patch. Obiekty Editable Patch tworzone tymi metodami nieco się różnią.

Obiekty Editable Patch a modyfikator Edit Patch Różnice pomiędzy obiektami przekształconymi do postaci Editable Patch a tymi, na które nałożony został modyfikator Edit Patch, są dość subtelne. Główna uwidacznia się w stosie modyfikatorów. W przypadku obiektów pierwszego rodzaju w stosie wyświetlany jest typ Editable Patch. Łaty powstałe na skutek użycia modyfikatora Edit Patch zachowują parametry obiektu pierwotnego, a nad typem obiektu w stosie modyfikatorów widnieje nazwa modyfikatora, czyli Edit Patch. Modyfikator można w dowolnym czasie przesunąć w hierarchii lub usunąć go całkowicie. Inną, istotną różnicą jest to, że transformacje obiektów Editable Patch mogą być animowane, a tych z modyfikatorem Edit Patch — nie. Dostęp do trybów podobiektów i parametrów łat edytowalnych oraz z nałożonym modyfikatorem Edit Patch uzyskuje się w ten sam sposób. Zagadnienia te omówione zostaną w kolejnych podrozdziałach. Obiekt Editable Patch zajmuje mniej pamięci niż obiekt, na który nałożono modyfikator Edit Patch, ale ten drugi oferuje większą elastyczność w fazie modelowania. Warto więc po zakończeniu modelowania wykonać konwersję do obiektu Editable Patch.

Edit Patch jest modyfikatorem, który można nakładać również na zamknięte splajny. W ten sposób można jednym ruchem utworzyć powierzchnię rozpiętą na splajnie i nie trzeba do tego celu stosować modyfikatorów CrossSection i Surface.

Zaznaczanie podobiektów powierzchni sklejanej Konwersja obiektu do postaci Editable Patch i modyfikator Edit Patch otwierają dostęp do edycji podobiektów. Podobiektami powierzchni sklejanych są wierzchołki (Vertex — skrót klawiszowy 1), uchwyty (Handle — 5), krawędzie (Edge — 2), łaty (Patch — 3) oraz elementy (Element — 4). Aby edytować podobiekty, należy je najpierw zaznaczyć. W celu wybrania danego trybu edycji podobiektów kliknij symbol plus widoczny po lewej stronie

Dodatek F  Modelowanie przy użyciu łat

1369

nazwy obiektu Editable Patch w stosie modyfikatorów. Możesz także użyć przycisków z czerwonymi ikonami znajdujących się w rolecie Selection. Po wybraniu trybu odpowiadający mu przycisk oraz pozycja w hierarchii wyróżnione zostają kolorem żółtym. Trzecia metoda włączania trybu podobiektu polega na kliknięciu obiektu Editable Patch prawym przyciskiem myszy i wybraniu odpowiedniej pozycji z czteroczęściowego menu kontekstowego. Ten sam efekt, co wymienione wyżej metody, przynosi użycie skrótu klawiszowego — 1 włącza tryb wierzchołków, 2 tryb krawędzi itd. Ponowne kliknięcie pozycji podobiektu w hierarchii lub odpowiadającego mu przycisku powoduje wyłączenie trybu pracy na poziomie podobiektów. Pamiętaj, że aby zaznaczyć inny obiekt, musisz najpierw wyłączyć tryb dotychczasowy. Możesz to zrobić, wybierając w menu kontekstowym opcję Top Level. Aby zaznaczyć wiele podobiektów jednocześnie, obrysuj je ramką wyboru. Podobiekty można też zaznaczać wybiórczo, klikając je kolejno z wciśniętym klawiszem Ctrl. Korzystając z klawisza Alt, możesz wykluczać poszczególne podobiekty z bieżącego zaznaczenia. Po zaznaczeniu podobiektu uaktywniają się kontrolki zgromadzone w rolecie Selection. Ułatwiają one zaznaczanie kolejnych podobiektów. Roleta Selection przedstawiona jest na rysunku F.3. Rysunek F.3. W rolecie Selection znajdują się przyciski pozwalające na włączanie trybów edycji poszczególnych podobiektów

1370

Dodatki

Kiedy zaznaczysz kilka podobiektów, możesz utworzyć z nich zestaw zaznaczenia i nadać mu nazwę, wpisując ją w polu listy Named Selection Sets, znajdującej się na głównym pasku narzędziowym. Zestawy zaznaczenia mogą być kopiowane i przenoszone na inne powierzchnie sklejane. Służą do tego przyciski Copy i Paste dostępne w rolecie Selection. Gdy włączony jest tryb Vertex, wówczas roleta Selection pozwala włączać i wyłączać wyświetlanie wierzchołków lub wektorów osobno albo łącznie. Opcja Lock Handles powoduje, że wszystkie zaznaczone uchwyty Béziera są przesuwane razem. Opcja By Vertex jest dostępna we wszystkich trybach, oprócz Vertex. Aby zaznaczyć krawędź, ściankę, łatę bądź element po jej włączeniu, należy kliknąć przynależący doń wierzchołek. W ten sposób zaznaczane są wszystkie elementy danego typu, połączone z wybranym wierzchołkiem. Jest to bardzo wygodny mechanizm, albowiem wskazywanie wierzchołków jest bardzo często łatwiejsze niż klikanie ścianek czy krawędzi. Po włączeniu opcji Ignore Backfacing zaznaczane są tylko te podobiekty, których wektory normalne zwrócone są w kierunku aktywnego okna widokowego. Jest ona bardzo użyteczna w sytuacji, kiedy jedne podobiekty zakrywają inne. Jeśli np. przekształciłeś model kuli w Editable Patch, to użycie opcji Ignore Backfacing pozwoli Ci zaznaczyć tylko te podobiekty, które znajdują się z przodu bryły. Przyciski Grow i Shrink umożliwiają rozszerzanie lub zawężanie obszaru zaznaczenia poprzez dodawanie do niego kolejnych podobiektów lub ich wykluczanie. Z przycisków Ring (pierścień) i Loop (pętla) można korzystać wyłącznie w trybie podobiektu Edge. Kliknięcie Ring powoduje zaznaczenie wszystkich krawędzi równoległych do bieżącej w obrębie danego segmentu powierzchni, a przycisk Loop umożliwia wyselekcjonowanie wszystkich krawędzi będących przedłużeniem bieżącej. Przycisk Select Open Edges (zaznacz otwarte krawędzie) jest dostępny tylko w trybie podobiektu Edge. Użycie go umożliwia zaznaczenie wszystkich krawędzi łaty, które połączone są tylko z jedną ścianką. Znacznie ułatwia to wyszukiwanie otworów w modelu. U dołu rolety Selection można odczytać informacje dotyczące bieżącego zaznaczenia, czyli rodzaj i liczbę zaznaczonych podobiektów. Roleta Soft Selection umożliwia modyfikowanie (w pewnym zakresie) podobiektów niezaznaczonych, ale sąsiadujących z zaznaczonym. Dzięki temu przejścia pomiędzy podobiektami stają się gładsze. Szczegółowy opis tej rolety znajdziesz w rozdziale 10., „Praca z podobiektami oraz obiektami pomocniczymi”.

Edycja geometrii łat Większość funkcji edycyjnych dla powierzchni sklejanych dostępna jest z poziomu rolety Geometry, przedstawionej na rysunku F.4. Za pomocą zgromadzonych tu kontrolek możesz przyłączać nowe łaty, spawać i usuwać wierzchołki, a także wiązać i ukrywać elementy. Niektóre przyciski w rolecie Geometry mogą być nieaktywne, co zależy od wybranego trybu edycji podobiektów.

Dodatek F  Modelowanie przy użyciu łat

1371

Rysunek F.4. Roleta Geometry (pokazana w dwóch częściach) zawiera kontrolki do edycji powierzchni sklejanych

Przyłączanie obiektów Przycisk Attach (przyłącz) dostępny jest we wszystkich trybach podobiektów nawet wtedy, gdy żaden z nich nie jest włączony. Służy do przyłączania do bieżącego obiektu Editable Patch nowych obiektów, takich jak obiekty podstawowe, siatkowe, a także innych obiektów Editable Patch. Pamiętaj jednak, że do grupy tej nie należą splajny. Obiekt dołączony do łaty edytowalnej staje się elementem tego samego typu, czyli Editable Patch. Większość funkcji edycyjnych dla edytowalnych łat działa wyłącznie wtedy, gdy wszystkie części łaty, których dotyczą wybierane funkcje, są elementami tego samego obiektu. Aby użyć funkcji przyłączania, zaznacz wybrany obiekt, kliknij przycisk Attach i ustaw wskaźnik myszy nad obiektem, który chcesz przyłączyć. Gdy wskaźnik znajdzie się nad akceptowalnym obiektem, obok niego pojawi się symbol plus. Kliknij wówczas dołączany obiekt. Na koniec wyłącz tryb dołączania, ponownie klikając przycisk Attach lub klikając prawym przyciskiem myszy w oknie widokowym. Opcja Reorient wyrównuje lokalny układ współrzędnych obiektu przyłączanego z układem współrzędnych obiektu docelowego. Konwersja obiektów siatkowych w powierzchnie sklejane powoduje, że powstają obiekty o dużej liczbie wierzchołków.

Parametry powierzchni łaty Wartość View Steps (stopnie wyświetlania) określa rozdzielczość wyświetlania łaty w oknie widokowym. Można ją określić osobno dla renderowania, zmieniając parametr Render Steps. W tej samej sekcji znajdziesz też opcję Show Interior Edges, która pozwala włączać i wyłączać wyświetlanie wewnętrznych krawędzi łaty. Z kolei opcja Use True Patch Normals wyznacza typ wektora normalnego, przy użyciu którego wygładzane będą połączenia pomiędzy łatami. Włączenie tej opcji skutkuje zwiększeniem dokładności cieniowania. Łata Quad Patch z wartością View Steps ustawioną na 0 wygląda jak zwykły kwadrat. Na rysunku F.5 przedstawiono pięć kul, które powstały jako klony jednego i tego samego obiektu, przekonwertowanego w Editable Patch, po czym przypisano im różne wartości View Steps. Wyliczając od lewej, wynosi ona: 0, 2, 4, 6 i 10.

1372

Dodatki

Rysunek F.5. Te kule zbudowane z łat różni jedynie ustawienie parametru View Steps

Wygładzanie łat Przycisk Patch Smooth wygładza powierzchnię obiektu Editable Patch poprzez dostosowanie położenia uchwytów wszystkich wierzchołków. Należy jednak pamiętać, że wygładzanie łaty może spowodować wyraźne zmiany powierzchni obiektu.

Rozluźnianie łat Gdy obiekt Editable Patch jest zaznaczony, ale żaden z trybów podobiektów nie został włączony, w rolecie Surface Properties pojawia się opcja rozluźniania łat (Relax). Działanie tej opcji polega na rozsuwaniu wierzchołków, które leżą zbyt blisko siebie. W efekcie następuje wygładzenie powierzchni w miejscach, w których wystąpiły większe napięcia, dzięki czemu cała powierzchnia łaty staje się bardziej gładka i pozbawiona uskoków. Po włączeniu opcji Relax dostępne stają się pozostałe opcje w rolecie. Pierwsza, Relax Viewports, włącza wyświetlanie rezultatów działania opcji Relax w oknach widokowych. Wartość Relax Value określa odległość rozsuwania wierzchołków. Z kolei kontrolka Iterations pozwala ustalić liczbę cykli wykonania operacji rozluźniania. Opcje Keep Boundary Points Fixed (zachowaj stałe punkty brzegowe) oraz Save Outer Corners (zachowaj zewnętrzne narożniki) dbają o zachowanie zewnętrznego profilu łaty i nie dopuszczają do rozluźnienia jej brzegów i narożników.

Edycja wierzchołków Gdy włączysz tryb Vertex, możesz przystąpić do przekształcania wyselekcjonowanych wierzchołków, korzystając przy tym z przycisków transformacji znajdujących się na głównym pasku narzędziowym. Możesz również deformować powierzchnię wokół zaznaczonych wierzchołków, posługując się uchwytami wyświetlanymi jako niewielkie zielone kwadraty. Przeciągnięcie uchwytu powoduje zmiany powierzchni łaty, co widać na rysunku F.6. Na pierwszym obrazku widać łatę przed przemieszczeniem któregokolwiek z uchwytów. Drugi przedstawia skutki przesunięcia jednego z uchwytów, przy włączonej opcji Lock Handles (zablokuj uchwyty). W przypadku łaty widocznej na trzecim obrazku przesunięty został tylko jeden uchwyt, a na czwartym widać tę samą łatę po przemieszczeniu obu uchwytów. Wierzchołki łat dzielą się na dwa rodzaje: współpłaszczyznowe (Coplanar) oraz narożne (Corner). Wierzchołki pierwszego typu zachowują gładkość przejść pomiędzy wierzchołkami, albowiem ich uchwyty są zblokowane. Powoduje to, że poruszają się one współbieżnie, co zapobiega zakłóceniom ciągłości powierzchni. Przeciągając uchwyty wierzchołków narożnych, można tworzyć na powierzchni otwory i szwy. Typ wierzchołka można zmienić, klikając go prawym przyciskiem myszy i wybierając odpowiednią opcję z czteroczęściowego menu kontekstowego.

Dodatek F  Modelowanie przy użyciu łat

1373

Rysunek F.6. Przesuwając uchwyty wierzchołków, możesz modyfikować sąsiednie ścianki

Wciśnięcie klawisza Shift podczas przeciągania uchwytu powoduje oswobodzenie go i jednoczesne przekształcenie wierzchołka w narożny.

Przyciski Bind i Unbind Przycisku wiązania (Bind) możesz użyć do łączenia wierzchołków brzegowych jednej łaty z brzegiem innej. Funkcja ta jest przydatna podczas łączenia krawędzi o różnej liczbie wierzchołków. Należy jednak pamiętać, że obie łaty muszą być częściami tego samego obiektu (w razie potrzeby możesz skorzystać z funkcji Attach), a wierzchołki narożne należy najpierw zespawać. Jeśli spróbujesz przykleić wierzchołek przed zespawaniem wierzchołków narożnych, funkcja Bind po prostu nie zadziała. Aby użyć tej funkcji, kliknij przycisk Bind, po czym przeciągnij linię od wierzchołka do krawędzi, z którą ma zostać związany. Przycisk Bind pozwala wiązać wierzchołki z krawędziami; aby połączyć ze sobą same wierzchołki, należy posłużyć się którymś z przycisków spawania (Weld). Po przyklejeniu wierzchołków miejsce styku łat jest niewidoczne, zaś wierzchołek staje się elementem wewnętrznym. Aby wyjść z trybu wiązania, kliknij ponownie przycisk Bind albo kliknij prawym przyciskiem myszy w oknie widokowym. Korzystając z przycisku Unbind, można odłączać wierzchołki, które zostały przyłączone za pomocą funkcji Bind.

Przycisk Create Włączenie przycisku Create w trybie Vertex umożliwia tworzenie nowych wierzchołków łat metodą klikania w oknie widokowym. Z kolei w trybach Patch i Element przycisk ów pozwala na łączenie utworzonych wierzchołków w trójboczne lub czteroboczne łaty. Wyjście z trybu Create następuje po ponownym kliknięciu tego przycisku lub kliknięciu prawym przyciskiem myszy w oknie widokowym. Kolejność, w jakiej tworzone są nowe wierzchołki, wyznacza zwrot wektora normalnego, który z kolei decyduje o widzialności łaty w oknach widokowych (gdy włączona jest opcja Force 2-Sided, zwrot ten zazwyczaj nie ma znaczenia). Jeżeli nowe wierzchołki są tworzone w kierunku przeciwnym do ruchu wskazówek zegara, wtedy wektor jest zwrócony w stronę, z której patrzysz na scenę. Gdy tworzysz wierzchołki w kierunku zgodnym z ruchem wskazówek zegara, wówczas wektor zwrócony będzie w głąb sceny.

1374

Dodatki Łatwy sposób określania zwrotu wektora normalnego polega na zgięciu palców prawej dłoni zgodnie z kierunkiem tworzenia wierzchołków. Kciuk wyznacza wówczas zwrot wektora normalnego. Jest to tak zwana reguła prawej dłoni.

Przycisk Delete Użycie przycisku Delete (lub wciśnięcie klawisza Delete) powoduje usunięcie wyselekcjonowanych wierzchołków. Działa on we wszystkich trybach edycji podobiektów. Usunięcie wierzchołka wiąże się z usunięciem wszystkich ścianek i krawędzi, które się z nim łączyły. Usuwając np. pojedynczy wierzchołek u samej góry kuli, która przekształcona została w obiekt Editable Patch, otrzymasz półkulę.

Przycisk Break Kliknięcie przycisku Break (przerwij) pozwala tworzyć oddzielne wierzchołki dla łat łączących się tylko jednym, zaznaczonym wierzchołkiem. Łaty łączą się poprzez wierzchołki. Przesunięcie jednego z nich powoduje zmianę położenia wszystkich połączonych z nim łat. Przycisk Break umożliwia utworzenie nowego wierzchołka dla każdej łaty i przesuwanie go niezależnie od pozostałych. Z przycisku tego można korzystać wyłącznie w trybie podobiektu Vertex.

Przyciski Hide i Unhide All Przycisk Hide służy do ukrywania, a Unhide All do odkrywania zaznaczonych wierzchołków. Przycisków tych można używać w każdym trybie podobiektu. Aby ukryć podobiekt, zaznacz go i kliknij przycisk Hide. Aby przywrócić widzialność ukrytych podobiektów, kliknij przycisk Unhide All. Kliknięcie tego ostatniego powoduje wyświetlenie wszystkich ukrytych podobiektów, niezależnie od ich typu.

Przyciski Weld/Selected i Weld/Target Przycisk Selected w sekcji Weld pozwala na zespawanie dwu lub więcej zaznaczonych wierzchołków w jeden. Aby skorzystać z tej funkcji, zbliż wierzchołki, zaznacz je, obrysowując ramką wyboru, po czym kliknij przycisk Selected. Skuteczność spawania możesz stwierdzić, sprawdzając liczbę zaznaczonych wierzchołków, która podawana jest w dolnej części rolety Selection. Gdy operacja spawania okaże się nieskuteczna, zwiększ wartość progową w polu obok przycisku i spróbuj jeszcze raz. Przycisk Target umożliwia zaznaczenie wierzchołka i nasunięcie go na inny. Jeżeli wierzchołek docelowy znajdzie się w odległości (wyrażonej liczbą pikseli) równej lub mniejszej, niż wskazuje to wartość w polu obok przycisku, wówczas oba wierzchołki zostaną zespawane. Aby wyjść z trybu spawania, ponownie kliknij przycisk Target albo kliknij prawym przyciskiem myszy w oknie widokowym. Na rysunku F.7 przestawiono dwie odwrócone, pochyłe łaty, które zostały połączone. Rozdzielczość łaty z prawej jest dwukrotnie większa niż tej po lewej. Za pomocą przycisku Bind środkowy wierzchołek jednej łaty został sklejony z krawędzią drugiej. Zwróć uwagę, że miejsce połączenia obu łat jest bardzo gładkie.

Dodatek F  Modelowanie przy użyciu łat

1375

Rysunek F.7. Dwie łaty, o różnej rozdzielczości, zostały połączone przy użyciu funkcji Bind oraz Weld

Przyciski Tangent/Copy i Tangent/Paste Dokładne ustawienie uchwytów pomiędzy wierzchołkami bywa trudne, ale kiedy się to uda, wówczas warto użyć przycisków Copy i Paste znajdujących się w sekcji Tangent, które pozwalają kopiować ułożenie uchwytów z jednych wierzchołków na inne. Opcja Paste Length pozwala też kopiować długość uchwytów.

Roleta Surface Properties w trybie Vertex W trybie edycji wierzchołków roleta Surface Properties pozwala nadać obiektowi kolor poprzez przypisanie kolorów jego wierzchołkom. Dla każdego z nich z osobna można też zdefiniować kolor Illumination oraz wartość Alpha, która decyduje o przezroczystości. Kolory wierzchołków można też określać w trybach Patch oraz Element. Więcej informacji na temat kolorów wierzchołków znajdziesz w rozdziale 34., „Tworzenie wypiekanych tekstur i map normalnych”.

Po przypisaniu kolorów możesz zaznaczać wierzchołki o tej samej barwie, wybierając kolor (Color) lub luminancję (Illumination) w sekcji Select Vertices By i klikając przycisk Select. Wartości składowe RGB w polach Range określają zakres kolorów wierzchołków brany pod uwagę przy zaznaczaniu. Jeśli np. wszystkie te wartości ustawisz na 255, wówczas zaznaczony zostanie każdy wierzchołek obiektu.

1376

Dodatki

Edycja uchwytów (tryb Handle) Tryb Handle zapewnia użytkownikowi bezpośredni dostęp do uchwytów wierzchołków. Z uchwytów można korzystać również w trybie Vertex, ale użycie trybu Handle jest znacznie wygodniejsze, a przy tym nie trzeba się martwić o przypadkowe przesunięcie wierzchołków. Po włączeniu trybu Handle uwidaczniają się uchwyty wszystkich wierzchołków całego obiektu łaty. Można zaznaczać i przesuwać wiele uchwytów jednocześnie. W trybie tym dostępne są także funkcje Copy i Paste w sekcji Tangent.

Edycja krawędzi (tryb Edge) Krawędź to linia biegnąca pomiędzy dwoma wierzchołkami. Krawędzie można zaznaczać w dowolnej liczbie, klikając je z wciśniętym klawiszem Ctrl. Natomiast wciśnięcie klawisza Alt pozwala z bieżącego zestawu zaznaczenia wykluczać poszczególne krawędzie. Wiele funkcji dostępnych z poziomu rolety Geometry działa tu w taki sam sposób jak w trybie Vertex, ale są one uzupełnione funkcjami specyficznymi dla trybu Edge, które omówione zostaną w kolejnych podrozdziałach.

Przycisk Subdivide Przycisk Subdivide daje możliwość zwiększania rozdzielczości łat. Osiągane jest to poprzez podział każdej zaznaczonej krawędzi na dwie równe części. Gdy chcesz skorzystać z funkcji zagęszczania, zaznacz krawędź lub krawędzie, a następnie kliknij przycisk Subdivide. Opcja Propagate powoduje, że zagęszczeniu ulegają też krawędzie sąsiadujących łat. Użycie Subdivide bez opcji Propagate może spowodować powstanie szczelin. Przycisk zagęszczania funkcjonuje także w trybie Patch. Na rysunku F.8 widać łatę Quad Patch, trzykrotnie zagęszczoną po zaznaczeniu krawędzi w prawym górnym narożniku. Rysunek F.8. Przez podział krawędzi, możesz kontrolować, w którym miejscu rozdzielczość będzie największa

Przyciski Add Tri i Add Quad Przyciski Add Tri oraz Add Quad pozwalają na dołączenie łat do dowolnych, otwartych krawędzi łaty. Aby wykonać taką operację, zaznacz otwartą krawędź bądź krawędzie i kliknij przycisk Add Tri lub Add Quad. Otwarte krawędzie możesz odnaleźć, klikając przycisk Select Open Edges, który znajduje się w rolecie Selection. Aby dołączyć łatę do zamkniętej powierzchni, np. sześcianu, należy najpierw odłączyć od bryły jedną łatę, tworząc w ten sposób otwartą krawędź. Funkcja ta umożliwia rozbudowywanie łat.

Dodatek F  Modelowanie przy użyciu łat

1377

Na rysunku F.9 przedstawiono zwykłą czworoboczną łatę, która została zagęszczona, a potem poszerzona przez dołączanie kolejnych łat przy użyciu przycisku Add Quad. Metodą tą można szybko tworzyć zgrubne zarysy obiektów, które zamierza się modelować.

Rysunek F.9. Wstępny zarys klucza utworzony przez zaznaczanie odpowiednich krawędzi i dodawanie kolejnych łat

Przycisk Create Shape Przycisku Create Shape, znajdującego się u dołu rolety Geometry, można użyć w trybie Edge do tworzenia splajnów z zaznaczonych krawędzi. Gdy chcesz użyć tej funkcji, zaznacz kilka krawędzi i kliknij wspomniany przycisk. Pojawi się okno dialogowe, w którym będziesz mógł nadać nowemu kształtowi nazwę. Ów nowo utworzony kształt można później wyselekcjonować, korzystając z okna dialogowego Select by Name (skrót klawiszowy H).

Ćwiczenie: Modelowanie muszli Skoro poznałeś już tyle narzędzi, czas wypróbować je w praktyce. Obiekt łaty może posłużyć do wymodelowania typowej muszli, jaką można znaleźć na plaży. Tym właśnie zajmiesz się w bieżącym ćwiczeniu. Aby utworzyć model muszli, wykorzystując obiekt łaty, wykonaj następujące czynności. 1. Otwórz plik Patch seashell.max, który znajdziesz na płycie dołączonej do książki, w folderze Bonus Chapter F. Plik zawiera prosty dysk, który został przekonwertowany w obiekt Editable Patch, zaś jego dolne wierzchołki zespawano.

1378

Dodatki

2. Zaznacz obiekt i otwórz panel Modify. Kliknij mały symbol plus widoczny po lewej stronie nazwy obiektu Editable Patch w stosie modyfikatorów i zaznacz pozycję Edge w hierarchii (albo wciśnij klawisz 2). W ten sposób włączysz tryb edycji krawędzi. 3. W oknie widokowym Front zaznacz co drugą z wewnętrznych, promieniście rozchodzących się krawędzi, klikając je kolejno z wciśniętym klawiszem Ctrl. Upewnij się też, że zaznaczyłeś zarówno krawędzie z przodu, jak i z tyłu bryły. Możesz to sprawdzić, zerkając na informacje wyświetlane u dołu rolety Selection (powinno być zaznaczonych 14 krawędzi). Gdy zaznaczysz te krawędzie, wciśnij klawisz spacji, by zablokować selekcję. 4. Kliknij przycisk Select and Move (albo wciśnij klawisz W), po czym w oknie widokowym Top przesuń krawędzie ku górze. Na powierzchni łaty powstanie zygzakowaty wzór. Gotowy model muszli przedstawiono na rysunku F.10.

Rysunek F.10. Ta muszla to obiekt Editable Patch wymodelowany przez przesunięcie co drugiej krawędzi wewnętrznej

Edycja łat i elementów (tryby Patch i Element) W przypadku obiektów składających się z pojedynczych łat transformacje na poziomie podobiektów działają tak samo jak w przypadku całych obiektów. Włączenie trybu Patch podczas edycji obiektu złożonego z wielu łat pozwala przekształcać poszczególne łaty

Dodatek F  Modelowanie przy użyciu łat

1379

indywidualnie. Podstawową zaletą tego trybu jest możliwość korzystania z przycisków i funkcji, jakie oferuje roleta Geometry. Poniżej omówione zostały dodatkowe funkcje, których możesz użyć w trybie Patch.

Przycisk Detach Przycisk Detach odłącza zaznaczone łaty lub elementy od reszty obiektu. Po kliknięciu przycisku pojawia się okno dialogowe Detach, w którym możesz wpisać nazwę odłączanego obiektu. Jeśli wcześniej włączyłeś opcję Reorient, odłączona łata zostanie wyrównana i obrócona względem bieżącej. Włączona opcja Copy powoduje, że odłączana jest kopia zaznaczonej łaty, a ona sama pozostaje na miejscu. Funkcja ta różni się od funkcji Delete, bo Detach pozostawia łatę w scenie, nadając jej, jako nowemu obiektowi, odrębną nazwę. Funkcja Delete natomiast usuwa podobiekt ze sceny.

Przycisk Extrude Przycisk wytłaczania (Extrude) pozwala przekształcić płaską łatę w trójwymiarową bryłę, przez zduplikowanie jej i dodanie ścian bocznych łączących nową powierzchnię z oryginalną. Przykładowo kwadratowa łata po wytłoczeniu formuje prostopadłościan. Aby użyć tej funkcji, zaznacz łatę, kliknij przycisk Extrude i przeciągnij w oknie widokowym — głębokość wytłoczenia będzie ustalana ruchem kursora. Zwolnij przycisk myszy, gdy uznasz, że jest ona wystarczająca. Alternatywna metoda wytłaczania polega na użyciu kontrolki Extrusion. Parametr Outlining (konturowanie) pozwala zmieniać wymiary wytłoczonej łaty. Wartości dodatnie ją powiększają, a ujemne — zmniejszają. Opcja Normal Group pozwala wytłaczać wszystkie zaznaczone łaty wzdłuż wypadkowej normalnej. Natomiast włączenie opcji Normal Local powoduje, że każda łata jest wytłaczana wzdłuż własnej normalnej. Aby wyłączyć tryb wytłaczania, należy ponownie kliknąć przycisk Extrude bądź kliknąć prawym przyciskiem myszy w oknie widokowym. Jednym z zastosowań funkcji Extrude może być np. modelowanie ramion postaci. Jeśli zbudowałeś już z łat model torsu, możesz zaznaczyć boczne łaty w górnej części obiektu i wytłoczyć je, tworząc ramiona.

Na rysunku F.11 przedstawiono powierzchnię sklejaną o kształcie klucza, wytłoczoną przy użyciu funkcji Extrude.

Przycisk Bevel Funkcja Bevel (fazowanie) wytłacza łatę, po czym pozwala ją fazować. Gdy chcesz użyć tej funkcji, musisz zaznaczyć łatę, kliknąć przycisk Bevel i przeciągnąć myszą w oknie widokowym, definiując głębokość wytłoczenia. Drugim przeciągnięciem ustala się fazowanie. Włączając przycisk Bevel, można korzystać z tych samych opcji, jakie są dostępne po włączeniu przycisku Extrude. Dodatkowo funkcja Bevel oferuje opcje wygładzania, takie jak gładkie (Smooth), liniowe (Linear) lub żadne (None), tak na początku wytłoczenia (Start), jak i na końcu (End).

1380

Dodatki

Rysunek F.11. Prosta powierzchnia sklejana w kształcie klucza po wytłoczeniu

Właściwości powierzchni łat i elementów Gdy włączony jest tryb Patch bądź Element, pojawia się roleta Surface Properties. Za jej pomocą możesz sterować wektorami normalnymi oraz przypisywać podobiektom identyfikatory materiałów oraz grupy wygładzania. Roleta Surface Properties zawiera przyciski odwracania normalnych (Flip) oraz ich unifikowania (Unify), pozwalające zmieniać zwrot wektorów. Przycisk pierwszy powoduje odwrócenie zwrotu wektorów normalnych dla wszystkich zaznaczonych ścianek; z kolei kliknięcie przycisku Unify sprawia, że zwrot tych wektorów zostaje ujednolicony, zgodnie z aktualnym zwrotem normalnych dla większości ścianek. Przycisk Flip Normal Mode aktywuje tryb, w którym, klikając pojedyncze ścianki, możesz odwracać ich wektory. Tryb ten pozostaje aktywny do chwili ponownego naciśnięcia przycisku lub kliknięcia prawym przyciskiem myszy w oknie widokowym. Parametr Material ID jest wykorzystywany przez materiały typu Multi/Sub-Object do identyfikowania łat, którym mają zostać przypisane różne materiały. Zaznaczając łaty i wprowadzając odpowiednią liczbę w polu Material ID, przypisujesz tym łatom określony numer identyfikacyjny materiału. Więcej informacji na temat typu materiałów Multi/Sub-Object znajdziesz w rozdziale 18., „Materiały złożone i modyfikatory materiałów”.

Każdej łacie można też przypisać odrębną grupę wygładzania. W tym celu należy zaznaczyć łatę i kliknąć przycisk z numerem grupy w polu Smoothing Groups.

Dodatek F  Modelowanie przy użyciu łat

1381

Ćwiczenie: Tworzenie modelu liścia klonowego z wykorzystaniem łat Ponieważ łaty są materiałem doskonale nadającym się do modelowania obiektów organicznych, spróbuj wykorzystać tę ich zaletę, modelując liść klonowy. Z uwagi na to, że liść jest symetryczny, wystarczy wymodelować tylko jedną jego połowę, a następnie użyć narzędzia Mirror, aby utworzyć drugą. Aby wymodelować liść klonowy przy użyciu łat, wykonaj następujące czynności. 1. Otwórz plik Maple leaf.max zapisany w folderze Bonus Chapter F na płycie dołączonej do książki. Plik ten zawiera obraz prawdziwego liścia klonowego, załadowany jako tło do okna widokowego Front. 2. Wybierz polecenie Create/Patch Grids/Tri Patch i, przeciągając myszą w oknie widokowym Front, narysuj kwadratową łatę, od miejsca, z którego wychodzi łodyga liścia, do lewej górnej krawędzi. Prawa krawędź łaty powinna być wyrównana do osi symetrii liścia. 3. Prawym przyciskiem myszy kliknij nazwę Tri Patch na panelu Modify, a następnie z menu podręcznego wybierz polecenie Convert to Editable Patch. 4. Włącz tryb Element, klikając odpowiednią pozycję hierarchii w stosie modyfikatorów (albo wciśnij klawisz 4), a następnie zaznacz element łaty. Włącz opcję Propagate i kliknij przycisk Subdivide. 5. Włącz tryb podobiektu Edge (lub użyj klawisza 2). Zaznacz jedną z brzegowych krawędzi, która w całości mieści się w obrębie obrazu liścia widocznego w tle. Następnie kliknij przycisk Add Tri, by rozbudować łatę. Powtarzając te czynności, utwórz kolejne łaty dla każdego punktu na obwodzie liścia. 6. Zmień tryb podobiektu na Vertex (albo wciśnij klawisz 1). Kliknij przycisk Select and Move na głównym pasku narzędziowym, po czym kolejno zaznacz wierzchołki brzegowe i wyrównaj je do załamań obrzeża liścia. Wszystkie wewnętrzne wierzchołki przesuń tak, by znalazły się w obszarze obrazu. Zaznacz kolejno każdy wierzchołek wzdłuż krawędzi liścia, po czym dopasuj do niej krawędź łaty, przesuwając uchwyty wierzchołka. Jeśli uchwyty będą poruszały się współbieżnie, wciśnij klawisz Shift, co pozwoli Ci przesuwać je niezależnie. 7. Wyłącz tryb podobiektu Vertex. Włącz wszystkie opcje w rolecie Surface Properties i ustaw wartość Relax Value na 1.0, a Iterations na 50. W ten sposób wygładzisz fałdy łaty. Na rysunku F.12 przedstawiono gotowy model liścia (a właściwie jego połowę). Aby dokończyć dzieła, użyj narzędzia Mirror, a na koniec utwórz splajn imitujący łodygę.

1382

Dodatki

Rysunek F.12. Zmieniając położenie uchwytów wierzchołków, można precyzyjnie dopasować kształt łaty do krawędzi liścia

Nakładanie modyfikatorów na powierzchnie sklejane Kilka modyfikatorów przeznaczono specjalnie do nakładania na obiekty łat. Większość zawarta jest w podmenu Modifiers/Patch/Spline Editing. Na obiekty łat można nakładać wiele innych modyfikatorów. Aby dowiedzieć się, które modyfikatory należą do tej grupy, wystarczy zaznaczyć łatę i sprawdzić w menu Modifiers, które pozycje są dostępne.

Modyfikator Patch Select Modyfikator Patch Select pozwala zaznaczać podobiekty powierzchni sklejanych, w tym wierzchołki, krawędzie, łaty i elementy. Możliwe jest przy tym kopiowanie i wklejanie zestawów selekcji. Zaznaczenie może być przekazane w górę stosu do kolejnego modyfikatora. Modyfikator Patch Select umożliwia nakładanie innych modyfikatorów na zaznaczenia poszczególnych podobiektów.

Dodatek F  Modelowanie przy użyciu łat

1383

Modyfikator Edit Patch Modyfikator ten dostarcza narzędzi do edycji powierzchni sklejanych. Są to te same narzędzia, co w przypadku obiektów Editable Patch. Gdy chcesz animować modyfikacje obiektu Editable Patch, musisz użyć modyfikatora Edit Patch. Podstawową jego zaletą jest to, że umożliwia edytowanie podobiektów powierzchni sklejanych, zachowując parametryczną naturę obiektu.

Modyfikator Delete Patch Za pomocą modyfikatora Delete Patch można usuwać zaznaczone podobiekty powierzchni sklejanej. Do zaznaczenia podobiektów, które mają zostać usunięte, korzystamy z modyfikatora Patch Select. W dalszej kolejności zaś nakłada się modyfikator Delete Patch.

Korzystanie z narzędzi Surface Narzędzia do edycji powierzchni, wśród których znajdują się modyfikatory CrossSection (przekrój) oraz Surface (powierzchnia), pozwalają na modelowanie obiektów w sposób podobny do wytłaczania metodą Loft. Modyfikator CrossSection pobiera kształty przekrojów, a następnie łączy ich wierzchołki dodatkowymi splajnami, tworząc szkielet ze splajnów. Za pomocą modyfikatora Surface można następnie ów szkielet pokryć powierzchnią z łat. Wytłaczania Loft dokonuje się przy użyciu obiektów złożonych Loft. Więcej informacji na ten temat znajdziesz w rozdziale 27., „Obiekty złożone”.

Modyfikator CrossSection To za sprawą modyfikatorów CrossSection i Surface modyfikatory splajnów i łat umieszczono w jednym, wspólnym podmenu. Modyfikator CrossSection stosuje się wyłącznie do splajnów. Łączy on wierzchołki kilku kolejnych splajnów, wskazanych jako przekroje, nowymi splajnami biegnącymi przez ich krawędzie niczym kręgosłup. Poszczególne przekroje mogą mieć różną liczbę wierzchołków. Opcje modyfikatora pozwalają generować w splajnach różne typy segmentów — Linear, Smooth, Bezier oraz Bezier Corner. Aby modyfikator, o którym tu mowa, mógł być zastosowany, wszystkie przekrojowe splajny muszą być elementami tego samego obiektu Editable Spline. Połączyć je w taki obiekt można za pomocą przycisku Attach. Splajny łączone są w kolejności tworzenia, co może przysporzyć nieco trudności, jeśli były kreowane w niewłaściwym porządku. Po lewej stronie rysunku F.13 przedstawiono siatkę splajnów utworzoną właśnie przy użyciu modyfikatora CrossSection. Dla obiektów Editable Spline dostępna jest funkcja CrossSection, która działa tak samo jak modyfikator CrossSection.

1384

Dodatki

Rysunek F.13. Modyfikator CrossSection połączył kilka splajnów przekrojowych, tworząc siatkę gotową do nałożenia powierzchni

Modyfikator Surface Modyfikator Surface to kolejny element zbioru narzędzi do edycji powierzchni. Tworzy on powierzchnię z kilku połączonych splajnów. Można go używać do pokrywania dowolnych siatek splajnów, ale najlepsze rezultaty daje w powiązaniu z modyfikatorem CrossSection. Powierzchnia tworzona przez modyfikator Surface jest powierzchnią sklejaną. Parametry tego modyfikatora obejmują ustawienie progu spawania wierzchołków (Threshold) oraz opcje odwracania wektorów normalnych (Flip Normals), usuwania wewnętrznych łat (Remove Interior Patches) oraz użycia wyłącznie zaznaczonych segmentów (Use Only Selected Segments). Możliwe jest także określenie liczby kroków (Steps), którą program stosuje podczas tworzenia topologii powierzchni. Po utworzeniu powierzchni można zastosować modyfikator Edit Patch i dokonać dodatkowej, precyzyjnej edycji. Aby tworzenie powierzchni przebiegło w sposób prawidłowy, wierzchołki siatki splajnów, które mają być zespawane, powinny znajdować się tak blisko siebie, jak to tylko możliwe. Parametr Threshold określa maksymalną odległość między wierzchołkami, które zostaną uznane za nakładające się i zostaną zespawane. Ponadto żaden z zamkniętych splajnów występujących w siatce nie powinien mieć więcej niż cztery wierzchołki. W przeciwnym przypadku łata nie zostanie utworzona. Jeśli struktura obiektu jest gotowa, wówczas powierzchnię można utworzyć ze splajnów, po prostu nakładając modyfikator Edit Patch.

Dodatek F  Modelowanie przy użyciu łat

1385

Po prawej stronie rysunku F.13 zaprezentowano zbudowaną ze splajnów strukturę, ale tym razem po zastosowaniu modyfikatora Surface.

Ćwiczenie: Modelowanie łabędzia z brązu W rozdziale 2. opisane zostało ćwiczenie, w którym obraz w tle okna widokowego przedstawiał wykonaną z brązu figurkę łabędzia. W bieżącym ćwiczeniu utworzysz model takiego łabędzia, korzystając z tych samych obrazów oraz modyfikatorów CrossSection i Surface. Aby utworzyć model łabędzia z brązu, wykonaj, co następuje. 1. Otwórz plik Brass swan.max, który znajdziesz w folderze Bonus Chapter F na płycie dołączonej do książki. W pliku tym zapisane są obrazy tła, których będziesz potrzebował podczas modelowania łabędzia. 2. Wybierz polecenie Create/Shapes/Ellipse, a następnie, przeciągając myszą w oknie widokowym Top, narysuj elipsę, z grubsza dopasowaną do dzioba łabędzia. Za pomocą narzędzi transformacyjnych przesuń, obróć i przeskaluj elipsę, dopasowując ją do przekroju figurki na obrazie. 3. Wciśnij klawisz Shift i przeciągnij elipsę do podstawy dzioba, tworząc jej kopię. Korzystając z narzędzi transformacyjnych oraz okien widokowych Front i Left, wyrównaj kopię elipsy do obrazu w tle. Choć obrazy tła załadowane zostały do okien widokowych Top, Front i Left, to do wyrównania wszystkich przekrojów wystarczą tylko dwa okna. W tym przykładzie widok w oknie Top jest niewyrównany z widokami w dwóch pozostałych oknach.

4. Utwórz następne kopie elipsy, dopasowując je do kolejnych zmian w przekroju figurki przedstawionej na obrazach w tle. 5. Aby utworzyć przekroje podstawy, kliknij elipsę prawym przyciskiem myszy i z menu kontekstowego wybierz polecenie Convert To/Editable Spline. Następnie włącz tryb Vertex, kliknij przycisk Refine w rolecie Geometry, po czym kliknij w lewej dolnej i prawej dolnej części elipsy, tworząc dwa nowe wierzchołki. Zaznacz je, a następnie kliknij prawym przyciskiem myszy i zmień ich typ na Bezier Corner. Umożliwi Ci to spłaszczenie dolnej części przekrojów. 6. Zaznacz pierwszy kształt przekroju na dziobie łabędzia i przekonwertuj go w Editable Spline. Kliknij przycisk Attach i zaznacz kolejno pozostałe, skopiowane przekroje, od dzioba do ogona. W ten sposób połączysz je w jeden obiekt Editable Spline. 7. Wybierz polecenie Modifiers/Patch/Spline Editing/CrossSection, by zastosować modyfikator CrossSection. Następnie zastosuj modyfikator Surface, wybierając polecenie Modifiers/Patch/Spline Editing/Surface. Włącz opcję Flip Normals i obejrzyj gotowy model łabędzia. Polecenie Surface utworzy powierzchnię pokrywającą siatkę splajnów. Powierzchnia ta jest powierzchnią sklejaną. W zależności od tego, w jaki sposób tworzyłeś pierwsze splajny, użycie opcji Flip Normals może nie być konieczne.

1386

Dodatki

Na rysunku F.14 przedstawiono gotowy model łabędzia. Zastosowanie narzędzi powierzchniowych pozwoliło utworzyć łatwą w późniejszej edycji powierzchnię sklejaną. Każdy z jej podobiektów możesz zmodyfikować, nakładając modyfikator Edit Patch i wykorzystując narzędzia dostępne na panelu Modify.

Rysunek F.14. Model łabędzia z brązu powstał przy użyciu modyfikatorów CrossSection oraz Surface

Inna metoda, jaką mógłbyś się posłużyć podczas kreowania modelu łabędzia, polega na użyciu funkcji CrossSection dla obiektów Editable Spline i zastosowaniu modyfikatora Edit Patch w celu wytworzenia gotowej powierzchni. Metoda ta jest bardziej elegancka i wymaga zastosowania mniejszej liczby modyfikatorów. Innym modyfikatorem często stosowanym na obiektach typu łata jest PatchDeform. Więcej na jego temat dowiesz się w rozdziale 35., „Korzystanie z warstw animacji, modyfikatorów i złożonych kontrolerów”.

Podsumowanie Łaty nie zastąpią obiektów NURBS, ale są zoptymalizowane lepiej niż obiekty siatkowe. Obiekty Editable Patch wyposażone zostały w ogromny zbiór narzędzi, za pomocą których można je edytować i modyfikować. W dodatku tym poruszone zostały następujące tematy: 

tworzenie łat Quad i Tri Patch,



omówienie cech obiektów Editable Patch,



stosowanie podobiektów Editable Patch,



korzystanie z modyfikatorów specyficznych dla powierzchni sklejanych.

Dodatek G

Praca z obiektami NURBS W tym dodatku: 

Wytłaczanie powierzchni NURBS



Tworzenie powierzchni UV Loft



Tworzenie brył obrotowych NURBS



Tworzenie powierzchni typu 1-Rail Sweep i 2-Rail Sweep



Rzeźbienie prostokątnej powierzchni NURBS

Wiedzę na temat obiektów NURBS najłatwiej zdobyć podczas ich tworzenia. W tym dodatku przedstawiono kilka ćwiczeń, które pomogą Ci zrozumieć skuteczność i elastyczność modelowania przy użyciu obiektów NURBS.

Wytłaczanie powierzchni NURBS U Loft jest jednym z najbardziej wszechstronnych narzędzi do edycji powierzchni NURBS; za jego pomocą można tworzyć powierzchnie zarówno bardzo proste, jak i bardzo złożone. W kolejnym ćwiczeniu dokonamy edycji modelu łyżeczki, wytłaczając powierzchnię NURBS z serią przekrojów tworzonych przez krzywe Point. Narzędzie U Loft wymaga ustawienia przekrojów w kierunku osi U.

Ćwiczenie: Tworzenie modelu łyżeczki przy użyciu narzędzia U Loft Wytłaczając powierzchnię wzdłuż serii krzywych przekrojowych, można budować powierzchnie NURBS. W tym ćwiczeniu utworzymy krzywe Point, niezbędne do opracowania modelu łyżeczki. Następnie zastosujemy narzędzie U Loft, które pomoże pokryć model powierzchnią. Aby wykreować model łyżeczki, wykorzystując narzędzie U Loft, wykonaj następujące czynności.

1388

Dodatki

1. Otwórz plik U-Loft spoon.max, który znajdziesz na płycie dołączonej do książki, w folderze Bonus Chapter G. Plik zawiera serię przekrojów w postaci krzywych NURBS typu Point, formujących szkielet łyżeczki. 2. Zaznacz jedną z krzywych i otwórz panel Modify. Kliknij przycisk Attach Multiple, znajdujący się w rolecie General, aby otworzyć okno dialogowe Attach Multiple. Kliknij najpierw przycisk All, by zaznaczyć wszystkie krzywe, a następnie przycisk Attach, łączący krzywe z tą, która została zaznaczona jako pierwsza. 3. Na tym etapie możesz przystąpić do tworzenia powierzchni łyżeczki, korzystając z narzędzia U Loft. Kliknij zatem ikonę NURBS Creation Toolbox w rolecie General, aby otworzyć okno przybornika NURBS. W sekcji Surfaces wybierz przycisk Create U Loft Surface. Wskaźnik myszy zamieni się w strzałkę, z towarzyszącą jej ikoną U Loft Surface. (Zauważ, że gdy ustawisz wskaźnik nad przekrojem, zmieni się w krzyżyk, a krzywa zmieni kolor na niebieski). Powierzchnię tego samego rodzaju można też utworzyć, klikając przycisk U Loft w rolecie Create Surface.

4. Kliknij najmniejszy przekrój na samym czubku łyżeczki, przeciągnij go do następnej krzywej i kliknij ponownie. Utworzony zostanie wówczas pierwszy fragment wytłoczonej powierzchni NURBS, co sygnalizuje zielona izoparma widoczna w oknie widokowym. 5. Klikając w ten sam sposób kolejne przekroje, pokryj powierzchnią NURBS cały model. Po utworzeniu ostatniego fragmentu powierzchni kliknij prawym przyciskiem myszy, aby wyłączyć tryb tworzenia. 6. Zamknij oba końce modelu, czyli wybierz przycisk Create Cap Surface w oknie przybornika NURBS, a następnie kliknij krzywe końcówek. Ukończony model łyżeczki NURBS przedstawiono na rysunku G.1.

Tworzenie powierzchni UV Loft Powierzchnie UV Loft mogą mieć bardziej rozbudowane kontury niż U Loft. Są tworzone z wielu krzywych, rozpiętych w dwóch wymiarach. Aby użyć tego narzędzia, należy zaznaczyć krzywe przekroju w kolejności, w jakiej mają być pokryte wzdłuż wymiaru U, następnie kliknąć prawym przyciskiem myszy w oknie widokowym, po czym — klikając — zaznaczyć krzywe przekroju w wymiarze V. Powierzchnia powstaje w oparciu o krzywe przekrojowe rozmieszczone w obu wymiarach i tworzy złożoną powierzchnię NURBS. Tak jak w przypadku powierzchni U Loft, wszystkie krzywe muszą być przyłączone do tego samego obiektu NURBS.

Dodatek G  Praca z obiektami NURBS

1389

Rysunek G.1. Łyżeczka NURBS wymodelowana przy użyciu narzędzia U Loft

Jako przykład może służyć model kanapy, przedstawiony na rysunku G.2, a wykonany przy użyciu trzech krzywych w kierunku U oraz pięciu w kierunku V. Pozwala to na dostosowanie kształtu powierzchni do kształtów postaci ludzkiej bez konieczności wykonywania późniejszych modyfikacji za pomocą wierzchołków kontrolnych. Technika ta jest bardzo użyteczna podczas tworzenia modeli mechanicznych, samochodów, statków kosmicznych oraz projektów rozmaitych produktów.

Tworzenie brył obrotowych NURBS Technika obracania krzywych NURBS działa tak samo jak w przypadku splajnów. Wystarczy zaznaczyć krzywą, kliknąć przycisk Lathe w rolecie Create Surface (albo przycisk Create Lathe Surface w oknie przybornika NURBS), a następnie kliknąć krzywą. W razie potrzeby możesz w rolecie Lathe Surface zmienić kąt (Degree) oraz wybrać oś obrotu. Roleta ta znajduje się poniżej rolety Create Surface, na panelu Modify.

Ćwiczenie: Modelowanie wazonu przy użyciu krzywej NURBS CV W tym ćwiczeniu utworzymy krzywą NURBS typu CV, formując z niej profil wazonu. Następnie wymodelujemy gotowy wazon, stosując modyfikator Lathe.

1390

Dodatki

Rysunek G.2. Powierzchnia UV Loft zbudowana z dwóch zestawów krzywych

Aby utworzyć powierzchnię NURBS przy użyciu modyfikatora Lathe, wykonaj kolejno opisane niżej czynności. 1. Otwórz plik Lathed NURBS vase.max, zapisany w folderze Bonus Chapter G na płycie dołączonej do książki. Plik zawiera dwie krzywe CV, które po obróceniu utworzą model wazonu. 2. Zaznacz jedną z krzywych CV, otwórz panel Modify i kliknij przycisk Lathe w rolecie Create Surfaces (albo przycisk Create Lathe Surface w oknie przybornika NURBS). W polu Degrees rolety Lathe Surface, która wyświetlana jest u dołu panelu Modify, wpisz wartość 360, po czym kliknij przycisk Y-axis. Następnie kliknij obie krzywe CV, by dokończyć modelowanie bryły obrotowej. Ponownym kliknięciem przycisku Lathe wyłącz tryb obracania. Na rysunku G.3 zaprezentowano gotowy model wazonu, utworzony za pomocą narzędzia Lathe.

Tworzenie powierzchni typu 1-Rail Sweep i 2-Rail Sweep Narzędzie 1-Rail Sweep Surface pozwala tworzyć powierzchnie NURBS przy wykorzystaniu jednej krzywej NURBS jako bocznej prowadnicy i następnej bądź kilku następnych, rozłożonych wzdłuż pierwszej, na których zostanie rozpięta powierzchnia. Narzędzie

Dodatek G  Praca z obiektami NURBS

1391

Rysunek G.3. Wazon utworzony z krzywych CV

2-Rail Sweep działa podobnie, z tą różnicą, że jako prowadnice boczne wykorzystywane są dwie krzywe NURBS.

Ćwiczenie: Tworzenie łodygi kwiatu Skoro wymodelowałeś już wazon, przydałyby się jakieś kwiaty, które można w nim umieścić. Zacznij więc od utworzenia łodygi kwiatu. Aby utworzyć powierzchnię NURBS Point przy użyciu narzędzia 1-Rail Sweep, wykonaj następujące czynności. 1. Otwórz plik Flower stem.max zapisany w folderze Bonus Chapter G na płycie dołączonej do książki. Zawarte są w nim trzy przekroje oraz odpowiednio ułożona krzywa. Elementy te pozwolą Ci wymodelować łodygę kwiatu. 2. Zaznacz długą krzywą łodygi. Otwórz panel Modify, kliknij przycisk Attach, po czym klikaj kolejno trzy kształty przekrojów. Ponownie kliknij przycisk Attach, aby wyjść z trybu dołączania. 3. Otwórz roletę Create Surfaces i kliknij przycisk 1-Rail (albo przycisk Create 1-Rail Sweep w przyborniku NURBS). Kliknij krzywą łodygi, a następnie kształty przekroju, kolejno od dołu do góry. Zakończ, klikając prawym przyciskiem myszy w oknie widokowym. Łodyga zostanie pokryta powierzchnią NURBS, co widać na rysunku G.4.

1392

Dodatki

Rysunek G.4. Łodyga utworzona za pomocą narzędzia 1-Rail Sweep

Rzeźbienie prostokątnej powierzchni NURBS Łaty NURBS pozwalają tworzyć powierzchnie, które można rzeźbić za pomocą podobiektów, takich jak siatka punktów kontrolnych. Dla każdego typu podobiektu dostępne są inne narzędzia.

Ćwiczenie: Tworzenie liścia NURBS W tym ćwiczeniu utworzymy płaską powierzchnię NURBS typu CV, z której następnie uformujemy liść kwiatu. W tym przypadku będziemy pracować na poziomie podobiektu Surface CV i użyjemy narzędzia Select and Move, przesuwając za jego pomocą wierzchołki kontrolne, co nada powierzchni NURBS właściwy kształt. Aby utworzyć prostokątną powierzchnię NURBS typu CV, wykonaj następujące czynności. 1. Wybierz polecenie Create/NURBS/CV Surface i w rolecie Create Parameters zwiększ wartości Length CV oraz Width CV do 6. Kliknij w polu opcji Generate Mapping Coords. 2. Kliknij w oknie widokowym Top i narysuj powierzchnię NURBS. W rolecie Create Parameters ustaw wartości Length i Width na 180. Nie opuszczając okna Top, obróć powierzchnię pod kątem 45 stopni w osi Z za pomocą narzędzia Select and Rotate, co nada jej wygląd rombu.

Dodatek G  Praca z obiektami NURBS

1393

3. Gdy powierzchnia NURBS jest zaznaczona, otwórz panel Modify i kliknij symbol plus widoczny po lewej stronie nazwy NURBS Surface, by uzyskać dostęp do listy podobiektów. Wybierz Surface CV. W oknie widokowym Top wyświetlona zostanie siatka punktów kontrolnych. 4. Włącz narzędzie Non-Uniform Scale (R), ogranicz jego działanie do osi X (F5), a następnie przeciągnięciem zaznacz środkowy rząd punktów kontrolnych. Zwęź go do 85%. 5. Zaznacz trzy środkowe rzędy punktów kontrolnych (w tym jeden już przeskalowany) i przeskaluj je do 90%. W dalszej kolejności zaznacz pięć poziomych rzędów i również przeskaluj je do 90%. W ten sposób lekko zaokrąglisz zewnętrzne kontury powierzchni NURBS. 6. W oknie widokowym Front powinieneś widzieć krawędź powierzchni NURBS. Zmaksymalizuj to okno widokowe, włącz narzędzie Rotate, ogranicz jego działanie do osi Z i zaznacz wierzchołki kontrolne na prawej połowie. Nie zaznaczaj jednak wierzchołków pośrodku. Obróć wierzchołki ku górze o –60 stopni. 7. Powtórz te same czynności na punktach kontrolnych w lewej połowie. Liść powinien mieć teraz profil w kształcie litery U. 8. Włącz narzędzie Move (W), ogranicz jego działanie do osi Y (F6), a następnie zaznacz środkowy wiersz punktów kontrolnych, po czym przesuń je w dół o –40 jednostek, nadając liściowi formę litery V. Na rysunku G.5 przedstawiono liść NURBS z widoczną siatką punktów kontrolnych.

Ćwiczenie: Formowanie płatka kwiatowego Kontynuując konstruowanie modelu kwiatka, zbudujemy teraz kolejną powierzchnię NURBS, której nadamy kształt płatka. W tym przypadku środkowe wierzchołki CV zostaną nieco uniesione, tworząc gładki, zaokrąglony kształt. Z prostokąta NURBS uformujemy płatek kwiatu, po czym sklonujemy go, tworząc trzy następne płatki. Aby wymodelować płatek kwiatowy, wykonaj następujące czynności. 1. Wybierz polecenie Create/NURBS/CV Surface i, korzystając z rolety Keyboard Entry, utwórz prostokątną powierzchnię NURBS o długości i szerokości 80 jednostek. Parametry Length CV oraz Width CV ustaw na 6. 2. Włącz narzędzie Rotate (możesz użyć klawisza E) i w oknie widokowym Top obróć powierzchnię o 45 stopni. Otwórz panel Modify, kliknij symbol plus obok nazwy NURBS Surface, po czym wybierz podobiekt Surface CV. 3. Włącz narzędzie Non-Uniform Scale (R), ogranicz jego działanie do osi X (F5), po czym zaznacz środkowy rząd punktów kontrolnych. Przeskaluj go do 86% pierwotnej wielkości. Tym sposobem zaokrąglisz zewnętrzne narożniki płatka.

1394

Dodatki

Rysunek G.5. Wykorzystanie punktów kontrolnych powierzchni do formowania liścia NURBS

4. Przeciągnięciem myszy zaznacz sześć punktów kontrolnych, które tworzą górny czubek płatka. Przeskaluj tworzony przez nie trójkąt w osi Y do 35%, stępiając go nieco. 5. Obrysuj ramką selekcji wszystkie punkty w środkowej części płatka (nie zaznaczaj żadnego punktu na krawędzi). W celu dodania kolejnych punktów do zaznaczenia możesz podczas klikania ich kursorem użyć klawisza Ctrl, a gdy chcesz wykluczyć niepotrzebne punkty, wykorzystaj klawisz Alt. Przejdź do okna widokowego Front, włącz narzędzie Move i przesuń zaznaczone punkty o 6 jednostek w górę, w osi Y, zaokrąglając górną część płatka. 6. Przejdź do okna widokowego Top, wyselekcjonuj punkty kontrolne w dolnej połowie środkowej kolumny, kliknij ikonę Lock Selection (albo wciśnij klawisz spacji), po czym w oknie widokowym Front, korzystając z narzędzia Move, przesuń wyselekcjonowane wierzchołki w osi Y o 7 jednostek w dół. Kiedy pośrodku płatka pojawi się rowek, odblokuj zestaw selekcji. 7. Aby sklonować płatek, wyłącz tryb podobiektu i przejdź do okna widokowego Top. Z listy rozwijanej układów odniesienia (Reference Coordinate System) wybierz opcję World. Kliknij ikonę Mirror, otworzy się okno dialogowe Mirror: Screen Coordinates, po czym skopiuj płatek, wybierając opcje Y-axis oraz Copy. Przesuń nowy płatek ku dołowi w osi Y, tak by końcówki płatków stykały się. 8. Skopiuj oba płatki i pomniejsz je. Kliknij przycisk Uniform Scale (albo użyj klawisza R), zaznacz oba płatki w oknie widokowym Top, wciśnij klawisz Shift i zmniejsz skopiowane płatki do 40% pierwotnej wielkości, tworząc pomniejszone

Dodatek G  Praca z obiektami NURBS

1395

wersje pierwowzorów. Zablokuj zestaw selekcji (wciskając klawisz spacji), włącz narzędzie Rotate (E) i obróć oba mniejsze płatki o 90 stopni, kończąc w ten sposób modelowanie kwiatka. Gotowy kwiatek pokazany jest na rysunku G.6.

Rysunek G.6. Płatki tego kwiatka zostały wymodelowane przy użyciu powierzchni NURBS

Aby zakończyć modelowanie wazonu i kwiatka, musisz połączyć wszystkie części w jedną scenę. Skopiuj i ustaw liście obok łodygi. Umieść łodygę w szyjce wazonu, pod niewielkim kątem. Rozmieść oba liście po obu stronach łodygi, zaś kwiat na jej końcu. Na koniec nałóż mapy tekstur na wszystkie obiekty, przypisując wazonowi materiał szklany, liściom i łodydze ciemnozielony, a na płatki nałóż żółty gradient kołowy. Gotowy kwiatek przedstawiony jest na rysunku G.7.

Modyfikatory NURBS W menu Modifiers/NURBS Editing znaleźć można zestaw modyfikatorów przeznaczonych dla obiektów NURBS. Obejmuje on modyfikatory: Surface Select, Surf Deform oraz Disp Approx. Modyfikator NURBS Surface Select (figurujący na liście Modifier List jako NSurf Sel) pozwala selekcjonować podobiekty zaznaczonego obiektu NURBS. Zaznaczenie to przekazywane jest kolejnemu modyfikatorowi, w górę stosu. Podobiekty dostępne dla tego modyfikatora to Surface CV oraz Surface.

1396

Dodatki

Rysunek G.7. Model kwiatka w wazonie utworzony w całości z obiektów NURBS

Modyfikator Surf Deform operuje na powierzchniach NURBS w podobny sposób jak modyfikatory PatchDeform i PathDeform. Po nałożeniu tego modyfikatora możesz za pomocą przycisku Pick Object wskazać inny obiekt NURBS i deformować zaznaczony. Modyfikator ten występuje też w wersji World-Space. Modyfikator Displacement Approximation (czyli Disp Approx) umożliwia mapowanie odkształceń (które nakładane jest przy użyciu materiałów) z poziomu stosu modyfikatorów. Zmienia on powierzchnię obiektu w oparciu o mapę przemieszczeń. Modyfikator można nałożyć na dowolny obiekt, który może zostać przekonwertowany do postaci Editable Mesh, w tym obiekty podstawowe, NURBS i powierzchnie sklejane. Wśród parametrów tego modyfikatora znajdują się predefiniowane ustawienia zagęszczania (Subdivision Preset) z trzema opcjami do wyboru: Low (małe), Medium (średnie) lub High (duże). Modyfikator Displace NURBS World-Space działa podobnie jak Disp Approx. Pozwala przekształcać obiekty NURBS w obiekty siatkowe i oferuje funkcję mapowania przemieszczeń. W rolecie Displace NURBS możesz wybrać metodę segmentowania siatki: Regular (regularne), Parametric (parametryczne), Curvature (zależne od krzywizny), Spatial (przestrzenne) lub Spatial and Curvature. Krzywe U i V nie wymagają modyfikatorów mapowania, ponieważ one wprost definiują powierzchnię obiektu NURBS.

Dodatek G  Praca z obiektami NURBS

1397

Podsumowanie Obiekty typu NURBS są obiektami przydatnymi w sytuacjach, gdy tworzenie modeli wymaga dowolności formy. W dodatku tym poruszone zostały następujące tematy: 

tworzenie krzywych CV oraz Point,



konwertowanie obiektów parametrycznych do postaci NURBS,



tworzenie powierzchni NURBS z krzywych,



edytowanie krzywych i powierzchni NURBS,



korzystanie z narzędzi do edycji podobiektów NURBS,



wytłaczanie powierzchni przy użyciu krzywych Point i CV,



tworzenie powierzchni NURBS metodami Lathe oraz Sweep.

1398

Dodatki

Dodatek H

Kompaktowy edytor materiałów W tym dodatku: 

Posługiwanie się kompaktowym edytorem materiałów

Materiały służą do pokrywania, kolorowania i malowania powierzchni obiektów. Tak jak powierzchnie spotykane w życiu codziennym, także i materiały w Maksie można określać jako łuszczące się, miękkie, gładkie, przezroczyste albo np. niebieskie. Materiały nałożone na obiekty trójwymiarowe potrafią naśladować ich kolory, tekstury, przezroczystość, blask i inne właściwości. W rozdziale tym poznasz podstawy pracy z materiałami oraz wszystkie funkcje edytora materiałów. Edytor materiałów można otworzyć w jednej z dwóch wersji: rozszerzonej lub kompaktowej. Wersja rozszerzona opisana jest w rozdziale 15., „Rozszerzony edytor materiałów”, a niniejszy dodatek poświęcony jest wyłącznie wersji kompaktowej.

Praca z edytorem materiałów Material Editor jest interfejsem pozwalającym definiować, tworzyć oraz nakładać materiały. Dostęp do niego uzyskasz, wybierając polecenie Rendering/Material Editor/ Compact Material Editor, klikając przycisk Material Editor na głównym pasku narzędziowym lub korzystając ze skrótu klawiszowego M. Przycisk na pasku narzędziowym i skrót klawiszowy otwierają taką wersję edytora materiałów, jaka była ostatnio używana — albo rozszerzoną, albo kompaktową.

Korzystanie z narzędzi edytora materiałów U góry okna edytora materiałów znajduje się pasek udostępniający menu Modes, Material, Navigation, Options oraz Utilities. Polecenia dostępne z poziomu tych menu wywołują te same funkcje, co przyciski na paskach narzędziowych. Jednak znalezienie poleceń często bywa łatwiejsze niż odszukanie przycisków, z którymi użytkownik jeszcze nie jest obeznany.

1400

Dodatki

Poniżej paska menu znajduje się sześć pól próbek, wyświetlających podgląd materiałów. Otaczają je przyciski, które pozwalają na zmianę wyglądu próbek i umożliwiają interakcję z materiałami. Okno Material Editor pokazane jest na rysunku H.1. Rysunek H.1. Okno Material Editor służy do tworzenia, przechowywania i modyfikowania materiałów

Przyciski widoczne z prawej strony i poniżej pól z próbkami materiałów sterują wyglądem materiałów w edytorze. Ich działanie opisane jest w tabelach H.1 oraz H.2. Poniżej listy Material oraz przycisku Type znajduje się sekcja, w której otwierane są rolety dla bieżącego materiału. Zawartość tej sekcji zmienia się, w zależności od typu edytowanego materiału. Identyfikatory Material Effects Channel są stosowane w połączeniu z oknem dialogowym Rendering Effects, co pozwala definiować specyficzne efekty, takie jak poświata czy rozmycie. Więcej na temat tych efektów dowiesz się w rozdziale 46., „Stosowanie efektów renderowanych i atmosferycznych”.

Posługiwanie się polami próbek W oknie Material Editor znajdują się 24 pola, w których wyświetlane są próbki materiałów. Każde z nich może wyświetlać jeden materiał bądź mapę. W jednym czasie wyselekcjonowane może być tylko jedno pole. Jest ono wyróżnione białą obwódką. Aby zaznaczyć pole próbki, wystarczy w nim kliknąć. Pola próbek nie mogą być puste. W każdym z nich zawsze wyświetlana jest jakaś próbka materiału.

Dodatek H  Kompaktowy edytor materiałów

1401

Tabela H.1. Przyciski w edytorze materiałów — pasek pionowy Przycisk

Nazwa

Opis

Sample Type (Sphere, Cylinder, Box, Custom)

Pozwala wybrać typ obiektu wyświetlanego w polu próbki. Domyślnym obiektem jest kula. Opcje dostępne w menu rozwijanym to walec i sześcian. Możliwe jest także wybranie obiektu niestandardowego.

Backlight (L)

Włącza i wyłącza tylne oświetlenie próbki w wybranym polu.

Background (B)

Wyświetla w tle szachownicę (lub obraz wybrany przez użytkownika), co jest użyteczne w przypadku materiałów przezroczystych.

Sample UV Tiling (1×1, 2×2, 3×3, 4×4)

Ustawia kafelkowanie UV mapy w wybranym polu próbki. Domyślnym ustawieniem jest 1×1. Opcje dodatkowe to 2×2, 3×3 oraz 4×4. Ustawienie to oddziałuje wyłącznie na mapy.

Video Color Check

Sprawdza bieżący materiał pod kątem obecności kolorów nieobsługiwanych przez telewizyjne formaty NTSC i PAL.

Make Preview (P), Play Preview, Save Preview

Pozwala generować, oglądać oraz zapisywać wyrenderowany podgląd materiału. Dzięki temu można ocenić wygląd materiału w animacji przed właściwym renderingiem.

Options (O)

Otwiera okno dialogowe Material Editor Options. Okno to zawiera ustawienia animacji materiałów, ładowania niestandardowego tła, a także opcje definiujące intensywność oświetlenia oraz liczbę pól próbek.

Select by Material

Zaznacza wszystkie obiekty, którym przypisany został bieżący materiał. Przycisk ów otwiera okno dialogowe Select Objects z listą tychże obiektów.

Material/Map Navigator

Otwiera okno dialogowe Material/Map Navigator, które wyświetla drzewiastą strukturę wszystkich poziomów bieżącego materiału.

Pola próbek są miejscami tymczasowego przechowywania materiałów i map. W scenie można zastosować setki materiałów. Ładując materiał do edytora, możesz zmieniać jego parametry, kopiować je na inne materiały, a także zapisać materiał do biblioteki, co umożliwi Ci użycie go w innej scenie. Podczas zapisywania pliku ze sceną Maksa zapisywane są też wszystkie materiały wyświetlone w edytorze. Choć dostępne są aż 24 pola, domyślnie widać ich tylko sześć. Do pozostałych 18 dostęp uzyskuje się za pomocą pasków przewijania. Program umożliwia zmianę liczby wyświetlanych pól. Aby jej dokonać, wybierz polecenie Options/Cycle 3×2, 5×3, 6×4 Sample Slots (lub wciśnij klawisz X) albo też kliknij prawym przyciskiem myszy w dowolnym polu i wybierz opcję 3×2, 5×3 lub 6×4 z menu podręcznego. Opcje te są dostępne także w oknie dialogowym Options (otwiera je skrót klawiszowy O). Na rysunku H.2 przedstawione jest okno Material Editor z 24 polami próbek.

1402

Dodatki

Tabela H.2. Przyciski w edytorze materiałów — pasek poziomy Przycisk

Nazwa

Opis

Get Material (G)

Otwiera okno Material/Map Browser w celu wybrania materiału.

Put Material to Scene

Uaktualnia w oknie widokowym te materiały, które zostały zmodyfikowane.

Assign Material to Selection

Przypisuje bieżący materiał zaznaczonemu obiektowi.

Reset Map/Mtl to Default Settings

Usuwa wszelkie modyfikacje mapy lub materiału i przywraca mu ustawienia domyślne.

Make Material Copy

Tworzy kopię bieżącego materiału w wybranym polu próbki.

Make Unique

Przekształca sklonowaną próbkę w odrębny materiał.

Put to Library

Otwiera okno dialogowe, które pozwala przemianować materiał i zapisać go w otwartej bibliotece.

Material ID Channel

Ustawia unikalny identyfikator kanału dla efektów postprodukcyjnych. Rozwijane menu oferuje dostęp do kanałów 1 – 15. Materiał, któremu przypisany został kanał 0, to taki, na który nie został nałożony żaden efekt.

Show Map in Viewport

Włącza standardowe lub sprzętowe (Hardware) wyświetlanie dwuwymiarowych map na obiektach w oknach widokowych.

Show Hardware Map in Viewport Show End Result

Wyświetla próbkę materiału z uwzględnieniem wszystkich poziomów jego struktury. Gdy przycisk jest wyłączony, wówczas w polu z próbką widać tylko aktualnie wybrany poziom.

Go to Parent

Przejście o jeden poziom w górę. Przycisk działa tylko w przypadku złożonych materiałów o kilku poziomach.

Go Forward to Sibling

Zaznacza następną mapę bądź materiał na tym samym poziomie.

Pick Material From Object

Pozwala pobrać materiał z obiektu w scenie i załadować go do wybranego pola próbki.

Lista rozwijana Material

Wymienia wszystkie elementy bieżącego materiału. Można tu wybrać inny materiał bądź mapę, wpisując jej nazwę w polu listy.

Przycisk Type

Wyświetla informację o typie bieżącego materiału lub zastosowanej mapy. Kliknięcie przycisku otwiera okno dialogowe Material/Map Browser, w którym można wybrać inny typ materiału bądź mapy.

Dodatek H  Kompaktowy edytor materiałów

1403

Rysunek H.2. W oknie edytora materiałów możesz zobaczyć 6 pól próbek, 15 lub 24

24 domyślne próbki dostępne po otwarciu edytora materiałów wczytywane są z pliku medit.mat, który znajduje się w podkatalogu \matlibs. Jeśli chciałbyś, by domyślnie do edytora ładowane były materiały, które tworzysz, zapisz je w tym właśnie pliku.

Powiększanie widoku pola próbki Polecenie Material/Launch Magnify Window (dostępne także z poziomu menu podręcznego, otwieranego kliknięciem prawym przyciskiem myszy1) otwiera okno powiększenia wybranej próbki. Okno to możesz też otworzyć dwukrotnym kliknięciem w wybranym polu. Można je dowolnie skalować, co wpływa na wielkość prezentowanej próbki. Ponadto możliwe jest włączenie funkcji automatycznego uaktualniania po każdej modyfikacji materiału. Jeśli opcja Auto jest wyłączona, wówczas uaktualnienie następuje dopiero po kliknięciu przycisku Update. Na rysunku H.3 przedstawiono okno powiększenia. Pozwala ono przyjrzeć się mało widocznym szczegółom materiału. Rysunek H.3. Próbkę materiału można wyświetlić w oknie powiększenia; otwieramy je, dwukrotnie klikając pole próbki

1

W menu podręcznym polecenie to nosi nazwę Magnify — przyp. tłum.

1404

Dodatki

Wybór różnych obiektów próbnych Klikając przycisk Sample Type, znajdujący się w prawym górnym narożniku okna Material Editor, możesz wybrać typ obiektu, który będzie wyświetlany w polu próbki. Może nim być kula, walec lub sześcian. Z kolei przycisk Options (siódmy od góry w kolumnie po prawej stronie okna) otwiera okno dialogowe Material Editor Options (można je wywołać również za pomocą skrótu klawiszowego O), w którym można wskazać dowolny inny obiekt próbny (sekcja Custom Sample Object). Obiekt taki musi być zawarty w pliku .max. Aby zdefiniować taki obiekt, utwórz i zachowaj scenę z pojedynczym obiektem mieszczącym się w sześcianie o boku 100 jednostek. Scena z obiektem próbnym może też zawierać niestandardowe źródła światła i kamery. Obiekt musi mieć włączoną opcję współrzędnych mapowania (Mapping Coordinates). W przypadku obiektów parametrycznych włącza się ją, zaznaczając pole opcji Generate Mapping Coordinates lub nakładając modyfikator UVM Map. Aby obiekt stał się dostępny, kliknij przycisk File Name i zaznacz opcję ładowania kamery i (lub) świateł. Po załadowaniu obiektu jego nazwa pojawi się na wspomnianym przycisku i będzie go można wybrać z menu, które rozwija się spod przycisku Object Type. Na rysunku H.4 widać okno edytora materiałów z kilkoma różnymi obiektami próbek, także niestandardowymi. Rysunek H.4. Do pól próbek można ładować własne, niestandardowe obiekty

Dodatek H  Kompaktowy edytor materiałów

1405

Przeciąganie materiałów Kiedy klikniesz prawym przyciskiem myszy w aktywnym polu próbki, pojawi się menu podręczne. Z tegoż menu możesz wybierać różne polecenia. Polecenie Drag/Copy (przeciągnij/kopiuj) działa jak przełącznik. Pozwala przeciągać próbki materiałów pomiędzy polami. Kiedy opcja Drag/Copy jest włączona, wówczas przeciągnięcie próbki powoduje utworzenie jej kopii. Za pomocą tej opcji możliwe jest też przeciąganie próbek wprost na obiekty w oknach widokowych. Zwolnienie przycisku myszy po przeciągnięciu próbki na obiekt powoduje automatyczne przypisanie mu danego materiału. Polecenie Drag/Rotate (przeciągnij/obróć), które znaleźć można także w menu Options, umożliwia obracanie obiektu w polu próbki poprzez przeciąganie myszą. Przeciągnięcie obiektu po najechaniu nań wskaźnikiem powoduje obrót w osiach X i Y, natomiast przeciągnięcie od narożnika pola obraca obiekt w osi Z. Funkcja jest przydatna podczas oceny wyglądu map. Wciśnięcie klawisza Shift ogranicza możliwość obracania obiektu tylko do jednej osi. Polecenie Material/Reset Sample Slot Rotation przywraca obiektowi jego pierwotną orientację. Materiały można też przeciągać pomiędzy oknami Material/Map Browser, Asset Manager Utility oraz wszelkimi roletami, w których wybiera się mapy, a także przyciskami, takimi jak Environment Map (znajdujący się w oknie dialogowym Environment, otwieranym poleceniem Rendering/Environment) czy Projector oraz Shadow Map (przyciski te znaleźć można w roletach związanych z wyborem oświetlenia).

Nadawanie materiałom nazw Każdy materiał ma odrębną nazwę, która wyświetlana jest na rozwijanej liście znajdującej się poniżej sekcji z polami próbek. Nazwa aktualnie wybranego materiału widnieje też na pasku tytułowym okna edytora materiałów. Materiałowi można nadać inną nazwę, wpisując ją w polu listy. Nazwa ta będzie widoczna również w oknach dialogowych Material/Map Navigator i Track View. Gdy tworzysz nowy materiał, nadaj mu unikatową nazwę, dzięki której będzie łatwo go zidentyfikować. Podczas zapisywania materiału w bibliotece za pomocą przycisku Put to Library otwiera się okno dialogowe umożliwiające nadanie materiałowi nazwy. Nazwę dowolnego materiału w polu próbki można sprawdzić, ustawiając wskaźnik myszy nad danym polem; nazwa pojawi się w etykietce ekranowej. Jeśli przeciągniesz materiał z jednego pola próbki do innego, tworzona jest kopia materiału o tej samej nazwie, jaką nosi oryginał. Jeśli jedna z tych próbek zostanie zmodyfikowana i zastosowana w scenie, wtedy wyświetlone zostanie okno ostrzegające, że materiał o takiej nazwie już w scenie się znalazł. Okno udostępnia też opcje zastąpienia (Replace) bądź przemianowania (Rename) materiału.

Wczytywanie nowych materiałów Nowe materiały wczytuje się do pól próbek, klikając przycisk Get Material (pierwszy od lewej, w poziomym pasku przycisków), wybierając polecenie Material/Get Material bądź też naciskając klawisz G. Każda z tych metod otwiera okno Material/Map Browser,

1406

Dodatki

w którym nowy materiał wybierasz dwukrotnym kliknięciem odpowiedniej pozycji na liście. Powoduje to załadowanie materiału do aktywnego pola z próbką. Okno Material/ Map Browser zostanie omówione w dalszej części rozdziału. Okno Material/Map Browser przechowuje próbki materiałów i map. Jeśli wybierzesz mapę, w polu próbki pojawi się dwuwymiarowa mapa. Takich map nie można nakładać bezpośrednio na obiekty w oknach widokowych. Materiały od map możesz odróżnić na podstawie wyglądu, ponieważ mapy to dwuwymiarowe obrazy, natomiast materiały prezentowane są na obiektach trójwymiarowych, np. na kuli.

Przypisywanie materiałów do obiektów Po uaktywnieniu próbki danego materiału możesz go nałożyć na zaznaczony obiekt w oknach widokowych, klikając przycisk Assign Material to Selection (trzeci od lewej w poziomym pasku przycisków, poniżej sekcji próbek) albo też wybierając polecenie Material/Assign to Selection. Metoda alternatywna polega na przeciągnięciu materiału wprost z pola próbki na obiekt. Materiał po przypisaniu obiektowi w scenie staje się „gorący”. Materiał gorący jest automatycznie uaktualniany w scenie, kiedy tylko jego próbka zostanie zmodyfikowana. Materiały gorące oznaczone są białymi ścięciami narożników pól próbek. Materiał taki można „schłodzić”, klikając przycisk Make Material Copy (piąty od lewej) albo korzystając z polecenia Material/Make Material Copy. W ten sposób pole próbki jest odłączane od materiału w scenie, co oznacza, że dalsza edycja materiału w edytorze nie będzie wpływała na wygląd obiektu, któremu dany materiał został wcześniej przypisany. Materiał przyporządkowany obiektowi w scenie dodawany jest do specjalnej biblioteki materiałów, która zapisywana jest wraz ze sceną. Aby jednak materiał znalazł się w tej bibliotece, wcale nie trzeba go ładować do pola próbki. Możliwe jest nawet dodawanie do niej materiałów, które nie zostały nałożone na żaden obiekt. Rezultat taki możesz uzyskać, klikając przycisk Put Material to Scene (drugi od lewej) lub wybierając polecenie Material/Put to Scene. Materiały wykorzystane w scenie można obejrzeć w oknie Material/Map Browser po wybraniu opcji Scene. Oprócz biblioteki zapisywanej wraz ze sceną, materiały mogą być umieszczane także w oddzielnych plikach bibliotek. Przycisk Put to Library (siódmy od lewej), a także polecenie Material/Put to Library, umieszcza wyselekcjonowany materiał w bibliotece domyślnej. Taką bibliotekę można zapisać (przycisk Save w oknie Material/Map Browser) i ponownie wykorzystać w innych scenach. Kliknięcie przycisku Get Material otwiera okno Material/Map Browser, w którym możesz przejrzeć zawartość bieżącej biblioteki, wybierając przełącznik Material Library.

Pobieranie materiałów ze sceny Kolejną użyteczną funkcją jest pobieranie materiałów z obiektów w scenie. Kliknięcie ikony kroplomierza, widocznej obok listy materiałów, podobnie jak wybranie polecenia Material/Pick from Object, powoduje przekształcenie wskaźnika myszy w kroplomierz. Kiedy klikniesz nim wybrany obiekt w oknie widokowym, przypisany mu materiał zostanie załadowany do bieżącego pola próbki.

Dodatek H  Kompaktowy edytor materiałów

1407

Zaznaczanie obiektów według materiału Jeśli w scenie chcesz zaznaczyć wszystkie obiekty, którym przypisany został specyficzny materiał (np. lśniące złoto), zaznacz go w polu próbki, a następnie kliknij przycisk Select by Material znajdujący się w pionowym pasku przycisków albo wybierz polecenie Utilities/ Select Objects by Material. Polecenie to otworzy okno dialogowe Select Objects z listą wszystkich obiektów, którym przypisano dany materiał. Kliknięcie przycisku Select zaznacza owe obiekty w scenie.

Podgląd materiałów i renderowanie map Polecenie Material/Make Preview, a także przycisk Make Preview oraz skrót klawiszowy P otwierają okno dialogowe Create Material Preview, przedstawione na rysunku H.5. Za pomocą tego okna możesz przygotować podgląd animowanego materiału. Pozwala ono określić zakres podglądu (Preview Range), szybkość wyświetlania klatek (Frame Rate), a także wielkość obrazu (Image Size), wyrażoną procentowo w stosunku do rozdzielczości domyślnej. Rysunek H.5. Okna dialogowe Create Material Preview oraz Render Map udostępniają dwie metody renderowania materiałów

Materiały animowane są omówione w rozdziale 21., „Animacja i klatki kluczowe”.

Przygotowany podgląd można obejrzeć, wybierając polecenie Material/View Preview. Otwiera ono domyślny odtwarzacz multimedialny, w którym odtworzony zostaje animowany podgląd. Aby zachować tę animację, użyj polecenia Material/Save Preview. Pliki podglądu zapisywane są w formacie .avi. Polecenie Utilities/Render Map (można je też wybierać z menu podręcznego, wywoływanego kliknięciem prawym przyciskiem myszy) otwiera okno dialogowe Render Map, które przedstawione jest na rysunku H.5. Opcja dostępna jest tylko wtedy, gdy materiałowi przypisana została mapa. Okno Render Map umożliwia wskazanie zakresu (Range) klatek renderingu, a także określenie wymiarów (Dimensions) renderowanego obrazu. Po kliknięciu przycisku Files (pliki) otwiera się kolejne okno, w którym możesz nadać nazwę renderowanej mapie oraz wybrać typ pliku. Przycisk Render uruchamia rendering bieżącej mapy w formacie bitmapy lub jako animacji w oknie Rendered Frame oraz zapis do pliku (o ile opcja Save to File jest włączona).

1408

Dodatki Zrenderowane mapy można zapisywać jako pliki .avi, .bmp, .cin, .eps, .flc, .hdr, .jpeg, .png, .mov, .sgi, .rgb, .rla, .rpf, .tga, .tif lub .dds.

Opcje edytora materiałów Okno dialogowe Material Editor Options otwiera się kliknięciem przycisku Options w kolumnie przycisków po prawej stronie pól próbek, wybraniem polecenia Options z menu Options lub z menu podręcznego albo po prostu wciśnięciem klawisza O. Okno, o którym mowa, przedstawione jest na rysunku H.6. Rysunek H.6. Okno dialogowe Material Editor Options udostępnia wiele opcji sterujących pracą edytora materiałów

Okno Material Editor Options zawiera opcje decydujące o sposobie wyświetlania materiałów w polach próbek. Oto one. 

Manual Update — zmiany materiału nie są uwzględniane w polu próbki do czasu kliknięcia owej próbki.



Don’t Animate — materiały nie są animowane w polach z próbkami podczas odtwarzania animacji lub przeciągania suwaka klatek; jednak wygląd materiałów jest uaktualniany dla bieżącej klatki po zatrzymaniu animacji lub zwolnieniu suwaka.



Animate Active Only — animuje tylko próbkę w aktywnym polu, jeśli jest to próbka materiału animowanego; opcja nie jest dostępna, gdy włączono Don’t Animate.



Update Active Only — po zmodyfikowaniu materiału program uaktualnia tylko aktywne pole próbki.

Dodatek H  Kompaktowy edytor materiałów

1409



Antialias — włącza wygładzanie krawędzi we wszystkich polach próbek; aliasing to efekt schodkowania, który pojawia się w obrazach rastrowych wzdłuż krawędzi łączących różne kolory; antyaliasing to proces eliminacji tego efektu i wygładzania krawędzi.



Progressive refinement — powoduje progresywne renderowanie materiałów; polega to na tym, że materiał pojawia się szybko, z początku jako bloki pikseli, a dopiero później jego szczegółowość stopniowo rośnie; dzięki temu można uzyskać wstępny obraz materiału przed ukończeniem renderingu.



Simple Multi Display Below Top Level — po zastosowaniu materiału Multi/ Sub-Object wyświetlanych jest kilka obszarów wyłącznie najwyższego poziomu.



Display Maps as 2D — wyświetla samodzielne mapy w oknie próbki jako dwuwymiarowe obrazki, nie nakładając ich na obiekt. Funkcja ułatwia stwierdzenie, czy oglądana próbka to mapa, czy materiał.



Custom Background — pozwala wybrać niestandardowe tło, które będzie widoczne za próbkami; tło takie możesz załadować, korzystając z przycisku widniejącego z prawej strony etykiety opcji; zmiana tła obejmuje wszystkie pola próbek, w których wyświetlanie tła jest włączone.



Display Multi/Sub-Object Material Propagation Warning — pozwala zablokować pojawianie się komunikatu ostrzegawczego, które wyświetlane jest przy próbie nałożenia materiału Multi/Sub-Object na obiekt sklonowany.



Auto-Select Texture Map Size — powoduje automatyczne skalowanie tekstur, dla których została włączona opcja Use Real-World Scale, aby na kulistej próbce wyglądały poprawnie.



Use Real-World Map Size for Geometry Samples — powoduje, że wszystkie tekstury wyświetlane w polach próbki wykorzystują współrzędne mapowania Real-World; opcja ta staje się dostępna po wyłączeniu Auto-Select Texture Map Size.

Omawiane okno daje też możliwość regulacji koloru i intensywności światła padającego na próbki z góry (Top Light) i od tyłu (Back Light). Intensywność tych świateł jest określana wartościami Multiplier. Pole Ambient Light pozwala wybrać kolor światła otaczającego w polu próbki; kliknięcie ikony kłódki powoduje, że kolor jest ujednolicany z kolorem Diffuse. Wartość parametru Background Intensity określa jasność tła — 0 sprawia, że tło staje się całkowicie czarne, zaś 1 nadaje mu kolor biały. Parametr Render Sample Size umożliwia skalowanie map nakładanych na obiekty we wszystkich polach próbek. Skalując mapę, można ją dopasować do wielkości obiektu w scenie. Parametr ten daje możliwość określenia wielkości obiektu próbki, wyrażonej w jednostkach domyślnych. Jednakże nie wpływa to na widzialną wielkość obiektu w polu próbki, a jedynie służy jako wartość odniesienia dla wymiarów tekstury. Wartość Default Texture Size ustawia początkowy rozmiar tekstury Real-World. Odnosi się ona tylko do tekstur Real-World i jest ignorowana przez tekstury wykorzystujące inne metody mapowania. Każdą z tych opcji można przywrócić do stanu domyślnego, korzystając z przycisku Default. Przycisk dostępny w sekcji Custom Sample Object służy do ładowania niestandardowych obiektów próbek (o czym była mowa wcześniej). Opcje w sekcji Slots służą do określenia liczby pól z próbkami.

1410

Dodatki

Resetowanie materiałów Przycisk Reset Map/Mtl to Default Settings (czwarty od lewej) powoduje przywrócenie domyślnych ustawień zaznaczonego materiału. Jeśli materiał ów został użyty w scenie, po kliknięciu przycisku pojawia się okno dialogowe, które umożliwia zresetowanie wyłącznie próbki materiału lub też próbki i materiału nałożonego na obiekty w scenie. Polecenie Utilities/Reset Material Editor Slots służy do przywracania materiału domyślnego we wszystkich polach próbek w edytorze. Możesz też zamienić wszystkie materiały nieużywane na materiał domyślny, a temu celowi służy polecenie Utilities/Condense Material Editor Slots. W ten sposób zastąpione zostają próbki wszystkich materiałów, których nie wykorzystano w scenie. Oprócz tego, wszystkie materiały będące w użyciu przesuwane są do pierwszych pól z próbkami. Działanie obu poleceń, czyli Reset i Condense, można cofnąć za pomocą polecenia Utilities/Restore Material Editor Slots, przywracając dotychczasowy zestaw materiałów.

Usuwanie materiałów i map Jeśli zdarzy Ci się przypadkowo nałożyć niewłaściwy materiał, możesz zastąpić go innym, przeciągając kolejną próbkę wprost na obiekt. Jeżeli zechcesz obejrzeć w oknie widokowym obiekt w jego własnym kolorze, otwórz boczny panel Display i w rolecie Display Color włącz opcje Wireframe/Object Color i Shaded/Object Color. Opcje Material Color sprawią, że w oknach widokowych wyświetlany będzie kolor materiału. Jeśli po nałożeniu materiału bądź mapy okaże się, że obiekt nie wygląda należycie, a dostosowywanie parametrów niczego nie zmienia, zawsze możesz przywrócić poprzedni stan obiektu, usuwając z niego materiał lub mapowanie. Narzędziem do usuwania materiałów i mapowań jest UVW Remove. Dostęp do niego uzyskasz, klikając przycisk More w bocznym panelu Utilities i wybierając z listy narzędzi UVW Remove. Narzędzie to składa się z pojedynczej rolety, w której wyświetlana jest liczba zaznaczonych obiektów. Znajdują się też w niej dwa przyciski. Przycisk UVW usuwa wszelkie współrzędne mapowania z zaznaczonych obiektów, zaś przycisk Materials czyni to samo, lecz w odniesieniu do materiałów. Kliknięcie tego przycisku powoduje przywrócenie obiektom ich pierwotnych kolorów. Możesz też użyć opcji alternatywnej, a mianowicie Set Gray, która sprawia, że obiekty, z jakich usunięto materiał, wyświetlane są w kolorze szarym.

Posługiwanie się narzędziem Fix Ambient Kolory Ambient i Diffuse dla standardowych typów materiałów są zawsze ze sobą sprzężone. Jeśli posiadasz starszy plik, w którym kolory te zostały zdefiniowane oddzielnie, za pomocą narzędzia Fix Ambient możesz odszukać i ujednolicić takie materiały w scenie. Aby uzyskać dostęp do omawianego narzędzia, otwórz panel Utilities, kliknij przycisk More i wybierz nazwę Fix Ambient z listy narzędzi. Kliknięcie przycisku Find All (znajdź wszystkie) otwiera okno dialogowe, w którym wymienione są wszystkie materiały użyte w scenie, z rozsynchronizowanymi kolorami Diffuse i Ambient.

Dodatek H  Kompaktowy edytor materiałów

1411

Ćwiczenie: Kolorowanie jajek wielkanocnych Każdy kocha wiosnę, z jej żywymi kolorami i odradzaniem się życia. Jedną z głównych atrakcji tej pory roku jest tradycyjne malowanie jajek wielkanocnych. W ćwiczeniu tym użyjesz jajek wirtualnych — żadnych barwników ani kanapek z sałatką jajeczną przez najbliższe dwa tygodnie. Aby pomalować wirtualne jajka wielkanocne, nakładając na nie różne kolory, wykonaj następujące czynności. 1. Otwórz plik Easter eggs.max zapisany w folderze Bonus Chapter H na płycie DVD. Plik ten zawiera kilka obiektów w kształcie jajka. 2. Otwórz edytor materiałów, wybierając polecenie Rendering/Material Editor/ Compact Material Editor albo wciskając klawisz M. 3. Zwiększ liczbę pól próbek, klikając prawym przyciskiem myszy aktywne pole próbki i wybierając polecenie 5×3 Sample Windows z menu podręcznego (możesz też użyć klawisza X). 4. Zaznacz pierwsze pole i kliknij próbkę koloru Diffuse w rolecie poniżej. Gdy otworzy się okno selektora kolorów, wybierz z jego palety kolor, którego chciałbyś użyć, a następnie kliknij przycisk Close. 5. W dowolnym oknie widokowym zaznacz obiekt jajka i kliknij przycisk Assign Material to Selection w edytorze materiałów albo przeciągnij próbkę materiału z edytora na obiekt w oknie widokowym. 6. Powtórz etapy 4. i 5., klikając i modyfikując kolejne materiały, po czym nałóż je na pozostałe jajka. Na rysunku H.7 zaprezentowano tuzin pokolorowanych jajek.

Podsumowanie Materiały w dużym stopniu decydują o realistycznym wyglądzie modeli. Umiejętność posługiwania się edytorem materiałów pozwala na swobodną pracę z materiałami. W rozdziale tym omówione zostały następujące tematy: 

posługiwanie się przyciskami i polami próbek w oknie Material Editor,



przypisywanie materiałów do obiektów,



ustawianie opcji edytora materiałów,



usuwanie materiałów z obiektów.

1412

Dodatki

Rysunek H.7. Tym jajkom przypisane zostały materiały o różnych kolorach Diffuse

Dodatek I

Tworzenie i animowanie dwunogów W tym dodatku: 

Informacje o Character Studio



Tworzenie i edycja szkieletu dwunoga



Animowanie dwunoga przy użyciu trybów Footstep i Freeform



Zastosowania dwunogów

Max zawsze udostępniał doskonałe narzędzia do tworzenia i animowania postaci, ale we wcześniejszych wersjach programu było to możliwe przy użyciu zewnętrznego modułu pod nazwą Character Studio. Dzięki postępującej integracji obu środowisk dzisiaj trudno stwierdzić, gdzie kończy się Character Studio, a zaczyna Max. Niektóre opcje Maksa zastąpiły pierwotne możliwości Character Studio, ale wiele oryginalnych i pomysłowych rozwiązań wprowadzonych przez wspomniany moduł ciągle jest przydatnych, włącznie z dwunogiem. Korzystając z systemu Biped, możesz tworzyć w pełni zhierarchizowane i gotowe do animacji humanoidalne szkielety przez zwykłe przeciągnięcie kursorem w oknie widokowym. Obiekty takie można zmieniać na wiele sposobów, nie tracąc nic z ich funkcjonalności. Wielką zaletą dwunogów jest możliwość realistycznego animowania ich za pomocą ustawiania śladów stóp (footsteps) lub tworzenia kluczy swobodnych (freeform keys). Chociaż Max udostępnia inne opcje riggowania postaci, jeśli masz zamiar animować humanoidalną, dwunożną postać z dwiema rękami, szkielet typu Biped jest niezastąpiony, bo pozwala zaoszczędzić mnóstwo czasu.

Proces tworzenia postaci Zasadniczo tworzenie postaci w Maksie rozpoczyna się od utworzenia obiektu siatkowego (skóry), który jest widoczny na renderingach (czyli tego, co potocznie nazywamy modelem postaci). Następnie tworzony jest szkielet dwunoga (obiektu typu Biped), który będzie

1414

Dodatki

odpowiedzialny za ruchy siatki. Biped składa się z predefiniowanego systemu kości, stanowiącego strukturę postaci. Animowanie kości pozwala w prosty sposób tchnąć w postać życie. Po utworzeniu szkieletu dwunoga umieść go w obrębie siatki i dopasuj poszczególne jego części do rozmiarów siatki. Kości nie muszą się znajdować całkowicie w obrębie siatki, ponieważ można wyłączyć ich renderowanie, ale im bliżej skóry się znajdą, tym dokładniejsze będą ruchy modelu. Po przeskalowaniu i dopasowaniu kości do skóry użyj modyfikatora Skin, aby doczepić skórę do szkieletu. W ten sposób automatycznie określone zostaną wzajemne połączenia pomiędzy skórą i szkieletem. Możesz także użyć ustawień modyfikatora Skin do zdeformowania skóry przy odpowiednich kątach nachylenia kości. W ten sposób można uzyskać np. efekt naprężania mięśni podczas podnoszenia ręki. Pierwotnie pakiet Character Studio wykorzystywał modyfikator Physique do nakładania skóry na szkielet dwunoga. Modyfikator ten ciągle jest dostępny, ale jego następca, Skin, zawiera o wiele więcej opcji i możliwości, przez co jest częściej stosowany do tworzenia dwunogów obleczonych w skórę.

Następnym krokiem jest wykonanie animacji szkieletu przy użyciu odpowiednich narzędzi, które umożliwiają tworzenie cykli marszu, biegu i skoków przez rozmieszczanie śladów postaci lub też zastosowanie kluczy animacji. W międzyczasie możliwe jest zapisywanie, wczytywanie i ponowne używanie sekwencji animacji, łącznie z plikami systemów przechwytywania ruchu (motion capture). Sekwencje animacji mogą być łączone i montowane w mikserze ruchu tak, aby powstała płynna animacja.

Tworzenie dwunoga Utworzenie hierarchicznie skonstruowanego szkieletu, który służy do sterowania animacją modelu postaci, jest bardzo proste, jeśli użyjemy systemu Biped. Szkielet, który służy zasadniczo do ułatwienia procesu animacji, można pominąć w ostatecznym renderingu, czyniąc go niewidzialnym. Chociaż Max oferuje olbrzymi zestaw narzędzi do tworzenia szkieletu z pojedynczych kości, opcja Biped pozwala zautomatyzować cały proces, oferując predefiniowane systemy szkieletów. W przypadku niektórych postaci może się okazać, iż korzystanie z systemu Biped jest trudniejsze niż tworzenie szkieletu od podstaw. Wtedy lepiej własnoręcznie zbudować szkielet. Zostało to omówione w rozdziale 38., „Systemy szkieletowe, riggowanie i kinematyka”.

Aby zbudować szkielet dwunoga, wybierz polecenie Create/Systems/Biped i przeciągnij w oknie widokowym. Polecenie Biped jest sprzężone z przyciskiem Biped, który znajduje się w kategorii Systems panelu Create. Na rysunku I.1 przedstawiono domyślnego dwunoga utworzonego przez przeciągnięcie w oknie widokowym. Roleta Create Biped udostępnia dwie metody tworzenia takich postaci — Drag Height i Drag Position. Metoda Drag Height pozwala ustawić wysokość dwunoga podczas przeciągania, natomiast metoda Drag Position tworzy dwunoga o domyślnych rozmiarach, umożliwiając ustawienie jego położenia podczas przeciągania.

Dodatek I  Tworzenie i animowanie dwunogów

1415

Rysunek I.1. Domyślny dwunóg zawiera wszystkie najważniejsze części układu kostnego człowieka Aby precyzyjnie umieścić dwunoga na powierzchni istniejącego obiektu, włącz opcję AutoGrid znajdującą się u góry rolety Object Type.

W polu Root Name możesz wprowadzić nazwę dwunoga. Każda kość ma swoją własną nazwę, do której z przodu dołączana jest nazwa wpisana w tym polu. Jeśli np. nazwiesz dwunoga „Gloop”, kość jego prawego podudzia będzie nosiła nazwę „Gloop R Calf”. Poniżej znajduje się rozwijana lista Body Type. Możesz z niej wybrać odpowiedni typ postaci: szkielet (Skeleton), kobieta (Female), mężczyzna (Male) i klasyczny (Classic). Poszczególne typy różnią się od siebie rozmiarami i kształtami kości. Typ Classic był wykorzystywany w poprzednich wersjach Character Studio i został zachowany dla wstecznej kompatybilności. Na rysunku I.2. widoczne są wszystkie dostępne typy postaci. Rysunek I.2. Cztery dostępne typy ciała dwunoga: Skeleton, Female, Male i Classic

1416

Dodatki

Domyślnie wszystkie kości dwunoga są oznaczone odpowiednimi kolorami, przy czym wszystkie kości po prawej stronie są zielone, a po lewej — niebieskie. Miednica, która jest kością nadrzędną w stosunku do pozostałych, jest żółta, a głowa — jasnoniebieska. Kolory pomagają rozróżniać odpowiednie kości, są też używane przy wykorzystaniu śladów określających ruch dwunoga. Podczas tworzenia dwunoga wszystkie opcje określające jego strukturę są dostępne w panelu Create, ale gdy po edycji innego obiektu zechcesz wrócić do tych opcji, nie znajdziesz ich w panelu Modify. Aby się do nich dostać, musisz otworzyć panel Motion, w rolecie Biped kliknąć ikonę Figure Mode, a następnie rozwinąć roletę Structure. W niej właśnie znajdziesz wszystkie parametry struktury dwunoga.

Edycja dwunoga Chociaż standardowy dwunóg przypomina człowieka, możesz użyć ustawień w panelu Create, aby całkowicie zmienić jego wygląd tak, by upodobnił się do dowolnego, wykreowanego przez Ciebie stworzenia. Szkielety, do których wprowadziłeś własne zmiany, mogą zostać zapisane przy użyciu przycisku Save File znajdującego się w panelu Motion przy włączonym trybie Figure. Pliki dwunogów są zapisywane z rozszerzeniem .fig. Zapisane pliki mogą być wczytane przy tworzeniu nowego dwunoga za pomocą przycisku Open Fig File w rolecie Create Biped. Możesz także budować nowe dwunogi, stosując ustawienia interfejsu użytkownika (UI) lub ostatnio używanego pliku (Most Recent .fig File). Przycisk Save File zapisuje szkielet jako plik .fig przy włączonym trybie Figure oraz animację jako plik .bip, gdy tryb Figure jest wyłączony.

Roleta Create Biped zawiera ustawienia umożliwiające włączanie i wyłączanie rąk. Dostępne są także ustawienia pozwalające kontrolować liczbę złączy wykorzystanych w ramach różnych części ciała. Ustawienia te zostały przedstawione w tabeli I.1. Te same ustawienia dostępne są w rolecie Structure panelu Motion, dostępnej przy włączonym trybie Figure. Złącza Ponytail znajdują się z tyłu głowy i przy obrotach kości kręgosłupa będą naturalnie zwisały, tak jak ręce. Złącza Tail wychodzą, jak można się było spodziewać, z tyłu kości miednicowej. Włączone części Props pojawiają się jako wysokie prostokąty doczepione do dłoni. Część Prop1 doczepiona jest do prawej dłoni, Prop2 — do lewej, a Prop3 pływa swobodnie po lewej stronie ciała. Na rysunku I.3 przedstawiono dwunoga z dwoma kucykami, ogonem i pojedynczą podpórką. Opcja Triangle Pelvis nie jest widoczna przy tworzeniu dwunoga, ale jeśli zostanie włączona, powoduje podział miednicy na dwa złącza, które wychodzą od kręgosłupa do złączy nóg. Dzięki temu stawy nóg nie krzyżują się bezpośrednio pod kręgosłupem. Można także utworzyć trójkątną kość szyi (Triangle Neck) łączącą się z kośćmi obojczykowymi, co ułatwia właściwe ułożenie skóry. Z kolei włączenie opcji ForeFeet sprawia, że ręce przyjmują funkcje przednich kończyn u istot czworonożnych.

Dodatek I  Tworzenie i animowanie dwunogów

1417

Tabela I.1. Części dwunoga Część ciała

Dopuszczalna liczba złącz

Arms — ramiona

włączone lub wyłączone

Neck Links — złącza karku

1 do 25

Spine Links — złącza kręgosłupa

1 do 10

Leg Links — złącza nogi

3 do 4

Tail Links — złącza ogona

0 do 25

Ponytail1 Links — złącza końskiego ogona (1)

0 do 25

Ponytail2 Links — złącza końskiego ogona (2)

0 do 25

Fingers — palce

0 do 5

Fingers Links — złącza palców

1 do 3

Toes — palce u nóg

1 do 5

Toes Links — złącza palców u nóg

1 do 3

Props — rekwizyty

do 3 włączonych

Ankle Attach — doczepienie kostki

0.0 (tył stopy) do 1.0 (przód stopy)

Height — wysokość

bez ograniczeń

Triangle Pelvis — trójkątna miednica

włączone lub wyłączone

Triangle Neck — trójkątna szyja

włączone lub wyłączone

ForeFeet — przednia stopa

włączone lub wyłączone

Knuckles — kości palców

włączone lub wyłączone

Short Thumb — krótki kciuk

włączone lub wyłączone

Twist Links — złącza skrętne

On lub Off — włączone / wyłączone

Upper Arm Twist Links — złącza skrętne ramienia

0 do 10

Forearm Twist Links — złącza skrętne przedramienia

0 do 10

Thigh Twist Links — złącza skrętne uda

0 do 10

Calf Twist Links — złącza skrętne podudzia

0 do 10

Horse Link Twist Links — złącza skrętne stawu skokowego

0 do 10 (złącza nóg muszą być ustawione na 4, aby ta opcja była dostępna)

Obiekty Ponytail mogą być użyte jako uszy, rogi lub wyjątkowa fryzura, która porusza się niezależnie od głowy.

Włączenie opcji Knuckles powoduje rozciągnięcie kości palców aż do nadgarstka (patrz rysunek I.4), dzięki czemu animacje ruchów dłoni mogą być precyzyjniejsze. Po włączeniu tej opcji dostępna staje się także opcja Short Thumb, za pomocą której można zmniejszyć liczbę kości kciuka.

1418

Dodatki

Rysunek I.3. Ten dwunóg ma dwa kucyki, ogon i rekwizyt doczepiony do prawej dłoni Rysunek I.4. Opcja Knuckles wydłuża kości śródręcza, co ilustruje dłoń górna. Dłoń dolna prezentuje efekt wyłączenia tej opcji

Złącza skrętne pozwalają na obracanie części ciała podczas animacji. Zanim będą mogły być użyte, należy włączyć opcję Twists. Domyślnie złącza skrętu są zamrożone. Jeśli np. wyprostujesz rękę w bok z dłonią skierowaną spodem do przodu, kości łokciowa i promieniowa, które tworzą przedramię, zostaną obrócone o 90 stopni. Opcja złączy skrętnych, znajdująca się na dole rolet Structure, nie może być animowana samodzielnie. Możesz jej użyć jedynie do deformacji skóry przy animowaniu części ciała.

Dodatek I  Tworzenie i animowanie dwunogów

1419

Dodatki (Xtras) Jeśli postać ma części ciała, których nie można utworzyć za pomocą typowych elementów struktury dwunoga, można skorzystać z sekcji Xtras, która umożliwia dołączanie takich dodatków do każdego z istniejących już elementów, nawet do tych, które wcześniej zostały dodane. Jeśli np. tworzysz latającą małpę, możesz do jej ramion dołączyć skrzydła. Każdy taki dodatkowy element może mieć do 25 złączy i można wskazać część dwunoga, do której dodatek ma być dołączony. Narzędzia dostępne w sekcji Xtras, pokazane na rysunku I.5, pozwalają również na zaznaczanie i (lub) tworzenie dodatków symetrycznych. Nowy dodatek otrzymuje kolor żółty, ale po utworzeniu dodatku symetrycznego oba zmieniają swoje barwy na niebieską lub zieloną w zależności od tego, po której stronie dwunoga się znajdują. Nazwy dodatków można zmieniać w polu tekstowym znajdującym się bezpośrednio pod przyciskami narzędzi. Rysunek I.5. Sekcja Xtras pozwala dodawać nowe elementy do struktury dwunoga

Modyfikowanie dwunoga Po utworzeniu dwunoga możesz rzucić okiem na panel Modify, ale okaże się, że panel ten jest pusty. Nie dziw się. Wszystkie opcje zmiany dwunoga znajdują się na panelu Motion. Jest tak, ponieważ system Biped jest związany z animacją, a nie z modyfikowaniem struktury obiektów. W rolecie Biped panelu Motion widzimy kilka ikon. Zostały one opisane w tabeli I.2. Pierwszy przycisk, przedstawiający małą postać, to przycisk trybu Figure. Po kliknięciu zmienia barwę na jasnoniebieską, sygnalizując wejście w tryb Figure. Dodatkowo pojawia się roleta Structure. Zawiera ona wszystkie te opcje, które były dostępne w panelu Create podczas tworzenia dwunoga. W trybie Figure wszystkie kości mogą być przemieszczane, obracane i skalowane wedle uznania tak, aby dopasować się do kształtu skóry. Jeśli przyjrzysz się rolecie Biped,

1420

Dodatki

Tabela I.2. Przyciski rolety Biped Przycisk

Nazwa

Opis

Figure Mode

Włącza tryb Figure, w którym możesz edytować strukturę szkieletu.

Footstep Mode

Włącza tryb Footstep, w którym możesz animować dwunoga poprzez tworzenie śladów, którymi będzie podążał.

Motion Flow Mode Włącza tryb Motion Flow, w którym możesz tworzyć skrypty ruchu dla dwunoga. Mixer Mode

Włącza tryb Mixer, w którym możesz wczytywać pliki miksera i używać ich.

Biped Playback

Odtwarza w czasie rzeczywistym animację dwunoga w oknie widokowym, pokazując jedynie kości.

Load File

Otwiera pliki .fig, .bip i .stp.

Save File

Zapisuje pliki .fig, .bip i .stp.

Convert

Konwertuje sekwencje animacji opartej na śladach w klatki kluczowe animacji swobodnej.

Move All Mode

Włącza tryb, w którym możesz przemieszczać dwunoga razem z jego wszystkimi śladami.

zauważysz napis Modes and Display ze znakiem plus po lewej stronie. Jeśli klikniesz ten napis, pojawią się dodatkowe przyciski. Możesz użyć przycisków sekcji Modes do manipulowania szkieletem, a przyciski sekcji Display pomagają ustawić wyświetlanie konkretnych obiektów dwunogów. Przyciski sekcji Modes są opisane w tabeli I.3. Tabela I.3. Przyciski sekcji Modes rolety Biped Przycisk

Nazwa

Opis

Buffer Mode

Wyświetla ostatni ślad skopiowany do bufora kopiowania.

Rubber Band Mode

Pozwala na przemieszczenie obiektu nadrzędnego bez zmiany w podrzędnej dłoni lub stopie. Zazwyczaj prowadzi do naciągnięcia.

Scale Stride Mode

Powoduje przeskalowanie długości kroku dwunoga proporcjonalnie do jego wysokości.

In Place Mode, In Place X Mode, In Place Y Mode

Powoduje przejście postaci przez ustawioną animację bez przekształcania jej środka ciężkości.

Drugi przycisk w sekcji Modes służy do włączania trybu Rubber Band (gumowa taśma). Możesz w nim przemieścić nadrzędną kość bez przemieszczania razem z nią kości jej podrzędnych. Jeśli np. umieściłeś lewą stopę dokładnie tam, gdzie chciałeś, możesz przemieścić górną część nogi bez odrywania stopy od danego miejsca. Jest to możliwe dzięki naciągnięciu górnych i dolnych kości nogi jak gumki.

Dodatek I  Tworzenie i animowanie dwunogów

1421

Tryby Buffer, Scale Stride i In Place, które używane są przy tworzeniu sekwencji animacyjnych, zostały omówione w dalszej części rozdziału.

Chociaż większość części ciała jest połączona z częściami sąsiednimi, to jednak głowę można przemieszczać niezależnie w trybie Figure. Dzięki temu stworzenie istoty pozbawionej głowy jest bardzo proste.

Ustawianie opcji wyświetlania dwunoga Przyciski sekcji Display w rolecie Biped pozwalają na wyświetlanie i ukrywanie niektórych elementów w celu przyspieszenia wyświetlania sceny w oknach widokowych. Jeśli pracujesz nad tłumem dwunogów, opcje te są niezbędne do wygodnej pracy. Ich opis znajdziesz w tabeli I.4. Tabela I.4. Przyciski sekcji Display rolety Biped Przycisk

Nazwa

Opis

Objects, Bones, Bones/Objects

Wyświetla tylko obiekty, tylko kości (jako proste linie) lub obiekty i kości jednocześnie.

Show Footsteps, Show Footsteps and Numbers, Hide Footsteps

Wyświetla ślady, ślady z numerami lub nie wyświetla niczego.

Twist Links

Wyświetla przedramię jako skręconą kość.

Leg States

Wyświetla rodzaj ruchu dla każdego śladu jako Move, Slide lub Plant.

Trajectories

Pokazuje trajektorię wybranej kości.

Preferences

Otwiera okno dialogowe Display Preferences.

Obiekty ciał dwunogów są renderowane, ale ich kości nie. Aby upewnić się, że obiekty ciał dwunogów nie są renderowane razem z kształtem ich skóry, włącz opcję wyświetlania Bones.

Opcja Preferences otwiera okno dialogowe Display Preferences, widoczne na rysunku I.6. W oknie tym możesz ustawić opcje wyświetlania trajektorii i śladów, a także opcje odtwarzania animacji. Okno dialogowe Display Preferences różni się od okna Preference Settings.

1422

Dodatki

Rysunek I.6. Okno dialogowe Display Preferences pozwala na ustawienie opcji wyświetlania elementów dwunogów

Zaznaczanie ścieżek Roleta Track Selection jest pomocna w przemieszczaniu dwunogów i pojedynczych kości. Jej przyciski pozwalają ustawić środek ciężkości dwunoga — Center of Mass (COM), umiejscowiony w miednicy. Przy ich użyciu możesz utworzyć klatki kluczowe dla ścieżek COM przy ruchach i obrotach dwunoga. Przyciski te są opisane w tabeli I.5. Tabela I.5. Przyciski rolety Track Selection Przycisk

Nazwa

Opis

Body Horizontal

Zaznacza całego dwunoga i ogranicza jego ruch do płaszczyzny poziomej.

Body Vertical

Zaznacza całego dwunoga i ogranicza jego ruch do płaszczyzny pionowej.

Body Rotation

Zaznacza całego dwunoga i umożliwia obracanie go.

Lock COM Keying

Pozwala na jednoczesne używanie przycisków Body Horizontal, Body Vertical i Body Rotation.

Symmetrical

Zaznacza symetryczne części ciała i pozwala na ich jednoczesne przekształcanie.

Opposite

Zaznacza przeciwną część ciała i anuluje aktualne zaznaczenie.

Przesuwanie i obracanie całego dwunoga Przyciski Body Horizontal, Body Vertical i Body Rotation pozwalają na szybkie zaznaczanie i przemieszczanie całego dwunoga w kierunku poziomym lub pionowym, a także na obracanie go przy użyciu standardowych gizm transformacji. Klatki kluczowe Body Horizontal są zaznaczone na czerwono, Body Vertical — na żółto, a Body Rotation — na zielono. Jeśli włączony jest przycisk Lock COM Keying, możesz zaznaczyć wiele ścieżek kluczowych COM jednocześnie.

Dodatek I  Tworzenie i animowanie dwunogów

1423

Jeśli włączysz przycisk Body Rotation, na głównym pasku narzędziowym będziesz mógł wybrać dla środka transformacji opcję Use Transform Coordinate Center, a z listy układów odniesienia — opcję Pick. Następnie możesz wskazać środek obrotu, który wcale nie musi pokrywać się z środkiem ciężkości dwunoga — może nim być stopa, głowa, a nawet odrębny obiekt, np. skała, nad którą dwunóg ma przeskakiwać. Można wybrać także roboczy środek obrotu (Working Pivot). Przycisk Symmetrical zaznacza część ciała symetryczną względem aktualnie zaznaczonej, aby obie mogły być przekształcane jednocześnie. Przycisk Opposite zaznacza symetryczną część ciała względem zaznaczonej kości i anuluje zaznaczenie tej kości. Jeśli np. zaznaczona jest kość prawej nogi, kliknięcie przycisku Opposite zaznacza kość lewej nogi, a jeśli zaznaczona jest kość prawej ręki, kliknięcie przycisku Symmetrical zaznacza dodatkowo kość lewej ręki bez usuwania zaznaczenia prawej.

Ćwiczenie: Skok z trampoliny W tym przykładzie zobaczysz, jak łatwo wprawić dwunoga w ruch przez obrócenie go wokół zewnętrznego punktu. Aby zmusić dwunoga do skoku z trampoliny, wykonaj następujące czynności. 1. Otwórz plik Biped on high dive.max znajdujący się w folderze Bonus Chapter I na płycie dołączonej do książki. Plik zawiera prosty model dwunoga stojącego na trampolinie. Środek obrotu deski trampoliny został przesunięty na sam koniec. 2. Zaznacz ramię skoczka i obróć je w górę. Następnie kliknij przycisk Opposite w rolecie Track Selection i obróć drugą rękę. 3. W rolecie Track Selection włącz przycisk Body Rotation, na głównym pasku narzędziowym wybierz opcje Use Transform Coordinate Center i Pick (tę drugą wybierz z listy Reference Coordinate System) i kliknij deskę trampoliny. 4. Za pomocą narzędzia Select and Rotate obróć dwunoga. Obrót nastąpi wokół końca deski, co widać na rysunku I.7.

Wyginanie złączy Roleta Bend Links zawiera przyciski pozwalające na kontrolowanie obrotów i skrętów zestawów złączy. Przyciski te są opisane w tabeli I.6. Przy przemieszczeniu jednej z kości w danym łańcuchu przycisk Bend Links Mode przestawia w realistyczny sposób wszystkie sąsiednie kości. Na rysunku I.8 przedstawiono dwa identyczne dwunogi, których ogony zostały obrócone. Trzecie złącze na ogonie dwunoga po prawej zostało obrócone z wyłączoną opcją Bend Links Mode, natomiast to samo złącze u dwunoga po lewej — z włączoną. Zaobserwuj wpływ tej opcji na wszystkie złącza ogona. Przycisk Twist Links Mode działa podobnie do przycisku Bend Links Mode, ale ma wpływ jedynie na złącza skrętne. Użycie go powoduje płynne skręcenie całego łańcucha złączy, niezależnie od tego, które z nich zostało skręcone. Opcja Twist Individual Mode pozwala

1424

Dodatki

Rysunek I.7. Obiekt Biped może być obracany wokół środka transformacji innego obiektu Tabela I.6. Przyciski rolety Bend Links Przycisk

Nazwa

Opis

Bend Links Mode

Przekazuje dane o obrocie do złączy podrzędnych, dając w rezultacie płynny obrót.

Twist Links Mode

Pozwala na ograniczone obroty względem lokalnej osi X złącza.

Twist Individual Mode

Pozwala na obrót pojedynczego złącza bez wpływania na sąsiednie.

Smooth Twist Mode

Przenosi obrót pierwszego i ostatniego złącza na inne złącza, dając w rezultacie płynne skręcenie.

Zero Twist

Zeruje obrót względem lokalnej osi X.

Zero All

Zeruje obroty względem wszystkich lokalnych osi.

na obrót jedynie wybranej kości, a Smooth Twist Mode opiera obrót całego łańcucha złączy na obrocie pierwszego lub ostatniego złącza wchodzącego w jego skład. Wartość Smoothing Bias (odchylenie wygładzania) przemieszcza większą część skrętu w stronę pierwszego złącza przy wartości 0.0 lub też w stronę ostatniego przy wartości 1.0. Na rysunku I.9 przedstawiono działanie trybu Twist Links. Dwunóg po lewej ma obrócone piąte złącze kręgosłupa, a pozostałe złącza zostały stopniowo przekręcone, dając w rezultacie

Dodatek I  Tworzenie i animowanie dwunogów

1425

Rysunek I.8. Przy obrocie złączy z włączoną opcją Bend Links Mode przemieszczony zostaje cały łańcuch złączy

płynny obrót całego kręgosłupa. Dwunóg po prawej ma obrócone to samo złącze przy wyłączonym trybie Twist Links. Zauważ, że wszystkie złącza powyżej również się obróciły, natomiast te poniżej — nie.

Ustawianie postaw i póz Roleta Copy/Paste zawiera opcje zapisywania i ponownego korzystania z różnych postaw, póz i ścieżek. Zestawy każdej z tych kategorii mogą być zapisywane w kolekcjach. Pozwala to na rozłożenie póz danej postaci w logicznie uszeregowaną kolekcję, podzieloną na pozy stania, siedzenia, działania itp. Możesz przełączać się pomiędzy tymi trybami, używając przycisków znajdujących się u góry rolety Copy/Paste. Tryb Posture zapisuje pozycję i położenie pojedynczego obiektu kości. Tryb Pose zapisuje pozycję i położenie całego obiektu dwunoga, a tryb Track zapisuje animację pojedynczego obiektu kości. Przycisk Track w rolecie Copy/Paste jest dostępny jedynie przy wyłączonym trybie Figure.

Nowe kolekcje tworzone są za pomocą przycisku Create Collection. Możesz nadać kolekcji nową nazwę, wpisując ją w rozwijanej liście Copy Collections znajdującej się u góry rolety Copy/Paste. Kolekcje postaw, póz i ścieżek mogą być zapisane jako pliki przy użyciu przycisku Save Collection i ponownie wczytane za pomocą przycisku Load Collections. Wszystkie zapisane postawy, pozy i ścieżki mają rozszerzenie .cpy. Dostępne są także przyciski do usuwania aktualnej kolekcji lub wszystkich kolekcji. Przycisk Max

1426

Dodatki

Rysunek I.9. Kiedy obrócone zostanie pojedyncze złącze kręgosłupa w trybie Twist Links, w ruchu bierze udział cały łańcuch złączy

Load Preferences otwiera proste okno dialogowe z opcjami zachowania istniejących kolekcji (Keep Existing Collections) i wczytania kolekcji (Load Collections) wraz z plikiem Maksa. Postawy, pozy i ścieżki mogą być kopiowane do aktualnej sceny przy użyciu przycisku Copy. Po skopiowaniu pojawiają się w polu podglądu, jak przedstawiono to na rysunku I.10. Wszystkie skopiowane postawy, pozy i ścieżki są zapisywane w pliku Maksa. Migawki widoczne w polu podglądu mogą być pobrane z okna widokowego, pobrane automatycznie, w ogóle niepobierane lub ukrywane przy użyciu przycisków umieszczonych bezpośrednio pod polem podglądu  Wybrane postawy, pozy lub ścieżki mogą być następnie przeklejone do innej kości lub dwunoga za pomocą przycisku Paste lub Paste Opposite, który wkleja je do przeciwnej, symetrycznej kości. Jeśli użyjesz przycisku Paste Opposite w trybie Pose, dwunóg, który przybierze skopiowaną pozę, będzie zwrócony w kierunku przeciwnym do pozy pierwotnej. Dla każdego trybu dostępne są również przyciski usuwania aktualnego zaznaczenia lub usunięcia wszystkich kopii. Przyciski Paste Horizontal, Paste Vertical i Paste Rotate znajdujące się na dole rolety Copy/Paste pozwalają na wklejenie kluczy ścieżek COM razem z postawą, pozą lub ścieżką. Opcja By Velocity wkleja położenie dwunoga w oparciu o trajektorię jego ruchu. Możesz także wybrać automatyczne tworzenie kluczy dowolnych wartości TCB i IK przy użyciu metod Default, Copied lub Interpolated.

Dodatek I  Tworzenie i animowanie dwunogów

1427

Rysunek I.10. Okno Preview w rolecie Copy/Paste pozwala wybrać pozę, która zostanie użyta

Ćwiczenie: Tworzenie dwunoga na czworakach Dwunóg to postać o dwóch stopach, ale tworzenie dwunoga na czworakach wcale nie oznacza, iż jego dłonie zamieniają się w stopy. To ćwiczenie powinno więc nosić nazwę: „Tworzenie dwunoga, który jest pochylony tak bardzo, iż jego ręce dotykają podłoża”, ale byłaby ciut za długa. Aby utworzyć dwunoga na czworakach, wykonaj następujące czynności. 1. Wybierz polecenie Create/Systems/Biped i przeciągnij w oknie widokowym, aby utworzyć dwunoga. 2. W rolecie Create Biped ustaw parametr Neck Links na 2, Tail Links na 5, a Ponytail1 Links i Ponytail2 Links na 1. Włącz opcję ForeFeet. 3. Otwórz panel Motion i kliknij przycisk Figure Mode znajdujący się w rolecie Biped, aby włączyć tryb Figure. 4. W rolecie Bend Links kliknij przycisk Bend Links Mode. 5. Wybierz i obróć najniższą kość kręgosłupa tak, aby górna część korpusu pochyliła się do przodu.

1428

Dodatki

6. Wybierz jedną z kości udowych i kliknij przycisk Symmetrical w rolecie Track Selection, aby zaznaczyć obie kości udowe. Następnie obróć je tak, aby przesunęły się w stronę głowy. Niższa partia nóg przemieści się sama. 7. Wybierz jedną z kości niższej partii nóg i kliknij przycisk Symmetrical w rolecie Track Selection. Następnie obracaj je do tyłu do momentu, w którym stopy znajdą się w tym samym pionowym położeniu, co dłonie. 8. Wybierz jedno ze złączy kucyka, przesuń i obróć je do ucha. Powtórz to samo dla drugiego kucyka. Upewnij się, że zielone złącze jest po lewej stronie, a niebieskie po prawej. 9. Włącz przycisk Bend Links Mode w rolecie Biped, a następnie wybierz i obróć górne złącze ogona na zewnątrz od ciała. 10. Otwórz roletę Copy/Paste, kliknij przycisk Create Collection i wybierz przycisk Pose. Następnie kliknij przycisk Copy Pose, aby dodać pozę do listy. Kliknij przycisk Save Collection i zapisz plik jako Cat pose.cpy (kocia poza). Na rysunku I.11 przedstawiono dwunoga w pozycji kociej.

Rysunek I.11. Ta kocia poza została uzyskana poprzez manipulację szkieletem dwunoga

Dodatek I  Tworzenie i animowanie dwunogów

1429

Animowanie dwunoga Kiedy nadejdzie czas animowania dwunoga, do wyboru są dwa tryby — Footstep (ślady stóp) i Freeform (swobodny). Każdy nadaje się lepiej do określonego rodzaju animacji. Tryb Footstep jest przydatny przy animowaniu marszu, biegu lub skoku postaci. Dzięki niemu stopy pozostają równoległe do podłoża przez cały czas, co umożliwia wykorzystanie go do wykonania animacji marszu przez trudny teren. Tryb ten można włączyć, klikając przycisk Footstep Mode w rolecie Biped. Tryb Freeform nie ogranicza dwunoga i jest wykorzystywany przy wszystkich innych działaniach postaci. Większość sekwencji animacji stanowi połączenie tych dwóch trybów.

Używanie trybu śladów (Footstep) W trybie Footstep animacja postaci dwunoga polega na ustawianiu śladów, po których będzie się poruszał. Mogą one zostać umieszczone w dowolnym miejscu sceny, a system Biped automatycznie wygeneruje ruch potrzebny do przejścia śladami, włączając w to realistyczne ruchy wtórne, takie jak np. bezwiedny ruch ramion. Możesz także określić sposób poruszania się dwunoga, wybierając między marszem, biegiem lub skokiem w rolecie Footstep Creation. Gdy tworzysz animację w trybie Footstep, o tempie i sposobie stawiania kroków przez animowaną postać decydują ustawienia w rolecie Footstep Creation. Jeśli chcesz zmodyfikować animację, musisz przekonwertować zdefiniowane kroki na odpowiednie klucze.

Przy użyciu wartości Walk Footstep i Double Support, dostępnych po wybraniu opcji Walk, możesz ustawić szybkość animacji śladów. Wartość Walk Footstep to liczba klatek, w ciągu których stopa pozostaje w miejscu śladu, a wartość Double Support określa liczbę klatek, w ciągu których obydwie stopy dotykają podłoża. Dla opcji Run (bieg) i Jump (skok) wartości Run Footstep i 2 Feet Down określają liczbę klatek, w ciągu których stopa (lub stopy) znajduje się na śladzie, a wartość Airborne określa liczbę klatek, w ciągu których obydwie stopy znajdują się w powietrzu. Tryb Footstep jest włączany za pomocą przycisku Footstep Mode w rolecie Biped panelu Motion. Przycisk ten po włączeniu przybiera jasnożółty kolor i otwiera kilka dodatkowych rolet. Najprostszą metodą tworzenia śladów jest kliknięcie przycisku Create Footsteps (at current frame) w rolecie Footstep Creation, a następnie kliknięcie okna widokowego w miejscu, w którym ma pojawić się ślad. Domyślnie lewa stopa jest umieszczana jako pierwsza, a kolejne ślady — na przemian. Ślady lewej stopy są niebieskie, a prawej zielone. Do chwili utworzenia klatek kluczowych możesz ślady dowolnie zaznaczać, przemieszczać i obracać. Jeśli przyjrzysz się dokładnie kursorowi, zauważysz, że wskazuje, jaki ślad zostanie utworzony jako następny. Jeśli naciśniesz klawisz Q, a później ponownie wybierzesz przycisk Create Footsteps, pierwsze kliknięcie spowoduje umieszczenie śladu przeciwnej stopy.

1430

Dodatki

Po dodaniu kilku kroków do sceny kliknięcie przycisku Create Keys for Inactive Footsteps w rolecie Footstep Operations tworzy klatki kluczowe dla dwunoga, który ma podążać po śladach. Po utworzeniu klatek kluczowych dwunóg jest przemieszczany do miejsca pierwszego śladu, a przesuwanie suwaka czasu (lub kliknięcie przycisku Play Animation) przemieszcza dwunoga dokładnie po wyznaczonych śladach. Po opracowaniu sekwencji śladów możesz dodać ich więcej przy użyciu przycisku Create Footsteps (Append) w rolecie Footstep Creation. Pozwala on na dodanie większej ilości śladów do uprzednio ułożonej sekwencji. Aby automatycznie utworzyć wiele śladów rozłożonych równomiernie, kliknij przycisk Create Multiple Footsteps w rolecie Footstep Creation. Spowoduje to otwarcie okna dialogowego, widocznego na rysunku I.12, w którym możesz ustawić kolejność stóp (Start Left lub Start Right), całkowitą liczbę śladów (Number of Footsteps), długość kroku (Stride Width) i wiele innych opcji związanych z pierwszym i ostatnim krokiem. Rysunek I.12. Okno dialogowe Create Multiple Footsteps pozwala określić takie szczegóły jak długość kroku

Gdy zaznaczony jest jeden ze śladów, przyciski znajdujące się w rolecie Footstep Operations pozwalają na wyłączenie, usunięcie lub skopiowanie wybranego śladu. Jeśli skopiujesz ślad i zapomnisz o tym, co przechowywane jest w buforze schowka, możesz użyć przycisku Buffer Mode w rolecie Biped do sprawdzenia ruchu, związanego ze śladem znajdującym się w buforze. Roleta Dynamics & Adaptation zawiera wartość GravAccel (przyspieszenie grawitacyjne). Jest wykorzystywana do określenia szybkości, z jaką ciało wraca na podłoże podczas cyklu biegu lub skoku. Jeśli chcesz zasymulować skakanie na Księżycu, zmniejsz tę wartość. Znajdziesz tam również kilka blokad ruchu (Footstep Adapt Locks), które możesz włączyć.

Ćwiczenie: Zmuszanie dwunoga do wskakiwania na pudło Chociaż bez większych problemów moglibyśmy naszego dwunoga nauczyć tańczyć two-stepa, w tym ćwiczeniu każemy mu przemaszerować kilka kroków, przejść do biegu, po czym wskoczyć na górę stojącego przed nim pudła.

Dodatek I  Tworzenie i animowanie dwunogów

1431

Aby dwunóg wskoczył na pudło, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Box i przeciągnij w oknie widokowym Top, aby utworzyć prostopadłościan, czyli pudło, na które dwunóg będzie musiał wskoczyć. 2. Wybierz polecenie Create/Systems/Biped i przeciągnij w oknie widokowym Top, aby wykreować dwunoga. Upewnij się, że pozostawiłeś odpowiednią ilość miejsca między dwunogiem a pudłem, tak by ten pierwszy mógł się rozpędzić. 3. Otwórz panel Motion i kliknij przycisk Footstep Mode w rolecie Biped, aby uruchomić tryb Footstep. 4. W rolecie Footstep Creation wybierz przycisk Walk i kliknij przycisk Create Footsteps. Następnie kliknij w oknie widokowym Top, aby utworzyć cztery ślady przed obiektem dwunoga, rozpoczynając od prawej stopy. 5. Wybierz opcję Run w rolecie Footstep Creation. Następnie wybierz przycisk Create Footsteps (Append) i dodaj cztery dodatkowe ślady, oddalone od siebie odrobinę bardziej niż pierwsze cztery. 6. Wybierz opcję Jump w rolecie Footstep Creation, a następnie kliknij przycisk Create Multiple Footsteps. W oknie dialogowym Create Multiple Footsteps, które się otworzy, ustaw wartość Number of Footsteps na 2 i kliknij przycisk OK. Dwa ślady, na których wyląduje dwunóg, powinny się znajdować na środku prostopadłościanu. 7. Zaznacz i przesuń ostatnie dwa ślady w górę w oknie widokowym Left tak, aby znalazły się na górze pudła. 8. Kliknij przycisk Create Keys for Inactive Footsteps w rolecie Footstep Operations, aby utworzyć klatki kluczowe dla dostępnych śladów. 9. Kliknij przycisk Play Animation, by zobaczyć, jak dwunóg idzie, biegnie i wskakuje na pudło. Na rysunku I.13 przedstawiono dwunoga wskakującego na pudło.

Konwertowanie animacji dwunoga Przycisk Convert w rolecie Biped pozwala na konwersję wszystkich animacji opartych na śladach w klatki kluczowe trybu swobodnego (Freeform). Jeśli nie masz zamiaru dodawać kolejnych śladów dla dwunoga, konwertowanie kluczy znacznie ułatwia pracę w trybie Freeform. Przycisk Convert otwiera proste okno dialogowe z opcją tworzenia klatki kluczowej dla każdej klatki.

1432

Dodatki

Rysunek I.13. Przez ustawianie śladów możesz dokładnie kontrolować poruszanie się dwunoga

Używanie trybu swobodnego (Freeform) Tryb Freeform jest domyślnie włączony, jeśli w rolecie Biped nie jest włączony żaden inny przycisk. Przy użyciu trybu Freeform możesz wybierać i ustawiać klucze dla dowolnych kości dwunoga, mieszać kilka różnych animacji w jedną przy użyciu warstw (Layers), importować dane przechwytywania ruchu (Motion Capture) i określać właściwości dynamiczne.

Ustawianie kluczy trybu swobodnego Najprostszy sposób na ustawienie kluczy dwunoga to przeciągnięcie suwaka czasu do wybranej klatki, zaznaczenie i przekształcenie kości, a następnie kliknięcie przycisku Set Key (utwórz klucz) w rolecie Key Info, widocznej na rysunku I.14. Roleta Key Info zawiera również przyciski służące do usuwania kluczy, ustanawiania kluczy dla kroków typu planted (stabilnych — stopa nie porusza się względem śladu), sliding (przesuwnych) i free (swobodnych), a także włączania podglądu trajektorii. Funkcje Auto Key i Set Key nie najlepiej współpracują z obiektami Biped, ponieważ te ostatnie korzystają z kontrolerów TCB. Dlatego do tworzenia kluczy animacji należy stosować narzędzia dostępne w panelu Motion.

Roleta Key Info zawiera również kilka rozwijanych zestawów opcji: TCB, IK, Head, Body i Prop. Opcje TCB pozwalają na konfigurację krzywych sterujących spowolnieniem ruchu przy wejściu i wyjściu (Ease To i Ease From) z wybranej klatki kluczowej przy użyciu parametrów Tension (naprężenie), Continuity (ciągłość) i Bias (odchylenie).

Dodatek I  Tworzenie i animowanie dwunogów

1433

Rysunek I.14. Roleta Key Info zawiera specjalne przyciski służące do ustawiania kluczy animacyjnych dla dwunogów

Opcje IK ustawiają wartości IK Blend (mieszanie kinematyki odwrotnej z prostą) i Ankle Tension (priorytet stawu kolanowego nad skokowym lub odwrotnie), a także umożliwiają wybranie środka obrotu (Select Pivot), względem którego zostanie zastosowana metoda kinematyki odwrotnej. Sekcja Head pozwala ustawić opcję obserwacji celu (Look At Target). Ustawienia w sekcji Body określają wartość współczynnika Balance Factor, który jest wykorzystywany do ustalania stopnia wahania się dwunoga w ruchu. Sekcja Prop pozwala wskazać kość, do której ma być przyłączony rekwizyt.

Rolety Keyframing Tools, Layers i Motion Capture Roleta Keyframing Tools, widoczna na rysunku I.15, zawiera kilka bardzo przydatnych przycisków pozwalających na włączanie i manipulowanie podanimacjami (subanimations). Możesz także usunąć wybrany zakres kluczy lub wszystkie klucze, tworzyć lustrzane kopie kluczy, ustawiać jednocześnie wiele kluczy, a także zakotwiczyć prawą dłoń, lewą dłoń, prawą stopę lub lewą stopę. Domyślnie klucz animacji dla każdej kości jest podporządkowany obiektowi nadrzędnemu, ale możesz także wyświetlać klucze dla każdej kości jako osobne ścieżki, zaznaczając odpowiednie pola w rolecie Keyframing Tools. Roleta Layers pozwala na warstwowe układanie zestawów animacji bez wprowadzania zmian w animacjach istniejących. Jeśli np. postać jest zaanimowana jako chodząca po scenie, dodanie warstwy z postacią trzymającą ręce w górze da w rezultacie postać chodzącą po scenie z rękami w górze. Po dodaniu kilku warstw do dwunoga możesz użyć przycisku Activate Only Me do obejrzenia animacji w pojedynczej warstwie lub też kliknąć przycisk Activate All, aby obejrzeć wszystkie warstwy animacji jednocześnie. Roleta Motion Capture pozwala na ładowanie, przypisywanie ich i manipulowanie danymi pochodzącymi z urządzeń przechwytywania ruchu. Dane te są zapisywane w plikach z rozszerzeniem .bip.

Wczytywanie i zapisywanie klipów z animacjami dwunoga Poza tworzeniem animacji, możesz po prostu wczytać istniejącą animację przy użyciu przycisku Load File znajdującego się w rolecie Biped. Otwiera on okno dialogowe, gdzie możesz wybrać plik .bip, który zostanie wczytany. W tym samym oknie wyświetlany

1434

Dodatki

Rysunek I.15. Roleta Keyframing Tools zawiera wiele różnych opcji

jest podgląd wybranej animacji. Możesz także zdecydować się na przekształcenie dwunoga tak, aby odpowiadał wybranemu plikowi (opcja Restructure biped to match file). Sekwencje animacji mogą być zapisywane przy użyciu przycisku Save File. Wszystkie takie animacje zapamiętywane są z rozszerzeniem .bip. Możesz zdecydować się na zapisanie dowolnych obiektów Maksa i kontrolerów List w tym samym pliku.

Używanie trybu Motion Flow Przycisk Motion Flow Mode w rolecie Biped otwiera roletę z opcjami pozwalającymi na graficzne tworzenie ciągu animacji, które wspólnie stanowią większą sekwencję animacyjną. Przy włączonym przycisku Motion Flow Mode kliknij przycisk Show Graph w rolecie Motion Flow. Otworzy to okno dialogowe Motion Flow Graph widoczne na rysunku I.16. Rysunek I.16. Okno Motion Flow Graph wyświetla każdy klip animacji jako osobny węzeł

Przy użyciu przycisku Create Clip możesz dodać węzeł do wykresu. Kliknięcie prawym przyciskiem myszy węzła pozwala otworzyć plik .bip. Nazwa pliku pojawi się w węźle.

Dodatek I  Tworzenie i animowanie dwunogów

1435

Przyciski Create Transition służą do określenia przejść pomiędzy węzłami. Przejścia te są symbolizowane liniami ze strzałkami. Kliknięcie przycisku Create All Transitions powoduje utworzenie przejść między wszystkimi zaznaczonymi węzłami, zapewniając płynne zmiany pomiędzy różnymi klipami. Po ustanowieniu węzłów ruchu możesz ich użyć do utworzenia skryptu, który wygeneruje klucze wymagane do wyświetlenia animacji w oknach widokowych. Aby wykreować taki skrypt, kliknij przycisk Define Script w rolecie Motion Flow, a następnie kliknij węzły w kolejności, w jakiej chcesz, żeby się pojawiały. Każdy wskazany węzeł jest dodawany do listy w rolecie, a przeciąganie suwaka czasu wyświetla ruch dwunoga w oknach widokowych. Skrypty można zapisywać i wczytywać przy użyciu przycisków Save i Load w rolecie Motion Flow. Okno Motion Flow Graph zawiera również przyciski umożliwiające generowanie ruchów losowych, optymalizowanie i sprawdzanie wszystkich klipów i przejść pomiędzy nimi.

Podgląd animacji dwunoga Po wykonaniu animacji dwunoga za pomocą śladów lub kluczy swobodnych możesz obejrzeć ją w oknie widokowym przy użyciu przycisku Biped Playback znajdującego się w rolecie Biped. Powoduje on wyświetlanie animacji dwunoga jako postaci poruszającej się zgodnie z ustanowionymi kluczami i jest bardzo przydatnym narzędziem przy uzgadnianiu zależności czasowych w animacji.

Przenoszenie dwunoga wraz ze śladami Dwunogi wraz z zestawami swoich śladów mogą być przemieszczane w scenie niezależnie od siebie. Przycisk Move All Mode pozwala zaznaczyć i przemieścić dwunoga razem z jego śladami w wybrane miejsce.

Podsumowanie W tym rozdziale zostały omówione wszystkie aspekty pracy z dwunogami. Omówione zostały następujące zagadnienia: 

przebieg pracy przy tworzeniu postaci,



tworzenie i edytowanie szkieletów dwunogów,



animowanie dwunogów przy użyciu śladów i kluczy swobodnych.

1436

Dodatki

Dodatek J

Tworzenie tłumu W tym rozdziale: 

Korzystanie z obiektów Crowd i Delegate

Nikt nie lubi tłoku (z wyjątkiem niektórych rodzajów robactwa), jednak przy użyciu narzędzi pochodzących z modułu Character Studio kontrola nad tłumem może być świetną zabawą. Bawimy się po uświadomieniu sobie, że ręczne animowanie zadań, które możliwe są przy użyciu narzędzi Crowd, zajęłoby tygodnie pracy. Postaci biorące udział w symulacji tłumu zwane są delegatami (Delegates) i właśnie tym delegatom możemy przypisywać zachowania (Behaviors) nakazujące, aby podążały za obiektem lub po wyznaczonej ścieżce i unikały określonych obiektów. Jak już rozsmakujemy się w symulacji tłumu, zachwyci nas obserwacja, jak bardzo podobne jest to do wyjścia z rodziną do centrum handlowego, z tą różnicą, że delegaty naprawdę robią to, co im każemy.

Tworzenie tłumu Systemy tłumu (crowd systems) budujemy w oparciu o dwa typy obiektów pomocniczych — Crowd i Delegate, jednakże system może także użyć innych obiektów sceny jako przedmiotów, za którymi należy podążać lub które trzeba omijać.

Korzystanie z obiektów Crowd i Delegate Obiekty pomocnicze Crowd i Delegate tworzymy, korzystając z polecenia Create/Helper/ Crowd lub Delegate. Obiekt Crowd wygląda jak obiekt pozorny typu Dummy, a obiekt Delegate jest prostą piramidą. Obiekty połączone z obiektami pomocniczymi przejmują od nich określone zachowania. Niektóre narzędzia niezbędne przy konstruowaniu systemu tłumu są dostępne w rolecie Setup pokazanej na rysunku J.1.

1438

Dodatki

Rysunek J.1. W definiowaniu systemu tłumu pomaga roleta Setup

Rozpraszanie delegatów Jeśli utworzymy tylko jednego delegata, z pewnością nie możemy go nazwać tłumem. Większa ich liczba może zostać wykreowana przy wykorzystaniu różnych metod klonowania lub za pomocą przycisku Scatter (znajdującego się w rolecie Setup panelu Modify) w czasie, kiedy obiekt Crowd jest wyselekcjonowany. Różne metody klonowania zostały opisane w rozdziale 8., „Klonowanie i ustawianie obiektów w szyku”.

Kliknięcie przycisku Scatter otworzy okno dialogowe Scatter Objects przedstawione na rysunku J.2. Zawiera ono kilka paneli z opcjami do urozmaicenia położeń, orientacji i rozmiarów klonowanych delegatów. W panelu Clone możemy wskazać obiekty, które będą klonowane (Object to Clone), oraz określić, ile klonów ma powstać (How Many). Po dokonaniu tych ustawień kliknięciem przycisku Generate Clones utworzymy klony. Rysunek J.2. Okno dialogowe Scatter Objects pozwala szybko utworzyć tłumy obiektów

Dodatek J  Tworzenie tłumu

1439

Ustalanie parametrów delegatów Każdy wybrany delegat posiada parametry, które możemy ustalić w panelu Modify. Te parametry określają m.in. wymiary delegata, jego średnią prędkość (Average Speed), maksymalne przyspieszenie (Max Accel) i zachowanie się przy zmianach kierunku ruchu. Po zaznaczeniu obiektu Crowd możemy kliknąć przycisk Multiple Delegate Editing, aby otworzyć okno dialogowe pokazane na rysunku J.3, które pozwala zmienić parametry wielu delegatów naraz. Rysunek J.3. Okno dialogowe Edit Multiple Delegates pozwala szybko ustawić parametry dla wielu delegatów

W lewym górnym rogu okna możemy, korzystając z przycisku Add, wybrać delegaty, których parametry mają być zmienione. Następnie możemy ustalić po dwie wartości dla parametrów. Jeśli wybierzemy opcję Random (losowo), wartość parametru znajdzie się gdzieś pomiędzy dwiema wprowadzonymi wartościami. Przy użyciu rozwijanej listy w dolnym lewym rogu możemy także zapisywać zestawy ustawień.

Przypisywanie zachowań W rolecie Setup obiektu Crowd znajdziemy przycisk New, pozwalający dodać nowe zachowania, które mogą być wykorzystane przez system tłumu. Wszystkie zachowania dodane do systemu pojawiają się na rozwijanej liście. Wprowadzając do listy nową nazwę, nazywamy zachowanie. Dostępne zachowania to: 

Avoid — zapobiega kolizjom pomiędzy obiektami sceny i innymi delegatami,



Orientation — kontroluje kierunek, w którym zwrócony jest delegat,



Path Follow — zmusza delegata do ruchu tylko po wybranej ścieżce,

1440

Dodatki 

Repel — zmusza delegata do odsuwania się od wybranego obiektu,



Scripted — sprawia, że delegat przyjmuje zachowanie opisane za pomocą języka MAXScript,



Seek — kieruje delegaty w stronę wybranego obiektu,



Space Warp — kontroluje zachowania z wykorzystaniem pól sił,



Speed Vary — zmienia prędkość delegatów w czasie ich ruchu,



Surface Arrive — sprawia, że delegat kieruje się w stronę powierzchni,



Surface Follow — sprawia, że delegat podąża po określonej powierzchni,



Wall Repel — wykorzystuje obiekt kratownicy do odpychania delegatów,



Wall Seek — wykorzystuje obiekt kratownicy do przyciągania delegatów,



Wander — sprawia, że delegaty poruszają się zupełnie losowo.

Gdy w rolecie Setup wybierzemy konkretne zachowanie, pojawia się roleta z jego parametrami. Przy ich użyciu możemy ustalać, jak ma wyglądać zachowanie i na jakich obiektach powinno się skupiać. Po ustawieniu parametrów wybranego zachowania możemy do niego przypisać delegata lub grupę delegatów, wykorzystując okno dialogowe Behavior Assignments and Teams, pokazane na rysunku J.4. Okno to otwieramy za pomocą przycisku Behavior Assignment, znajdującego się w rolecie Setup. Rysunek J.4. Okno dialogowe Behavior Assignments and Teams pozwala organizować grupy delegatów i przypisywać im zachowania

Wszystkie przypisane zachowania znajdują się na liście w środkowej części okna i każdemu z nich możemy nadać wagę (Weight). Jeśli delegatowi przypiszemy dwa kolidujące ze sobą zachowania, zastosuje to z wyższą wartością parametru wagi.

Przeliczanie symulacji Ostatnim krokiem procesu jest przeliczenie symulacji. To wtedy tworzone są klucze dla całego ruchu w scenie. Aby przeliczyć symulację, klikamy przycisk Solve w rolecie Solve lub przycisk Step Solve, jeśli chcemy przeliczyć tylko pojedynczą klatkę. Domyślnie

Dodatek J  Tworzenie tłumu

1441

przeliczanie tworzy klatkę kluczową w każdej klatce, ale możemy zwiększyć wartości Positions i Rotations w celu przyspieszenia obliczeń.

Ćwiczenie: Zające w lesie W tym ćwiczeniu wykorzystamy obiekty delegatów połączone z modelami zajęcy, aby całe stadko przeprowadzić przez las. Przesuwanie wielu obiektów ręcznie może być czasochłonne, ale system Crowd ułatwia ten proces. Aby poprowadzić zające między drzewami, wykonaj następujące czynności. 1. Otwórz plik Bunny in the forest.max znajdujący się w folderze Bonus Chapter J na płycie dołączonej do książki. Plik zawiera kilka modeli sosen i jeden model zająca. 2. Wybierz polecenie Create/Helpers/Crowd i przeciągnij myszą w oknie widokowym, aby utworzyć obiekt Crowd. Utwórz obiekt wystarczająco duży, aby można go było łatwo selekcjonować. 3. Wybierz polecenie Create/Helpers/Delegate i przeciągnij myszą w oknie widokowym Left, aby powstał obiekt Delegate umieszczony poza drzewami. Ustaw zająca w odpowiednim kierunku, a następnie przyłącz go do delegata. Zaznacz i przeciągnij delegata wraz zającem przy wciśniętym klawiszu Shift, aby utworzyć 6 delegatów umieszczonych poza drzewami. 4. Zaznacz obiekt Crowd, kliknij przycisk New w rolecie Setup panelu Modify, wybierz typ zachowania Avoid i nazwij je Avoid trees (omijaj drzewa). W rolecie Avoid Behavior kliknij przycisk Multiple Selection. W oknie widokowym Select, które się pojawi, wybierz wszystkie obiekty drzew (Foliage) i kliknij przycisk Select. Włącz opcję Display Hard Radius i zmniejsz wartość parametru Hard Radius do 0.2. To określi odległość, na jaką zając może zbliżyć się do drzewa. 5. Kliknij ponownie przycisk New. Tym razem wybierz typ zachowania Seek i nazwij je Seek hole (szukaj nory). W rolecie Seek Behavior kliknij przycisk None i wskaż czerwony prostopadłościan reprezentujący norę. 6. W rolecie Setup kliknij przycisk Behavior Assignment, aby otworzyć okno dialogowe Behavior Assignment and Teams. Kliknij przycisk New Team. W oknie Select Delegates zaznacz wszystkie obiekty delegatów i kliknij przycisk OK. Następnie wybierz grupę Team0 oraz zachowanie Avoid trees i kliknij środkowy przycisk New Assignment (długi pionowy przycisk ze strzałkami). Wybierz ponownie grupę Team0 z zachowaniem Seek hole i znowu kliknij przycisk New Assignment. Oba przypisane zachowania widoczne są na liście w środkowej części okna; kliknij przycisk OK. 7. W rolecie Solve ustaw czas obliczeń (End Solve) na 300 klatek, czyli tyle ile trwa cała animacja. Następnie kliknij przycisk Solve. System przeliczy ruchy wszystkich delegatów zmierzających do celu. 8. Kliknij przycisk Play Animation, aby zobaczyć gotową symulację.

1442

Dodatki

Na rysunku J.5 pokazano pozycje delegatów po zakończeniu symulacji. Zauważ, że są to pozycje zupełnie przypadkowe.

Rysunek J.5. Symulacja tłumu automatycznie wylicza, jak mają poruszać się zające, aby dojść do celu przy jednoczesnym omijaniu drzew

Podsumowanie Funkcja Crowd dawnego modułu Character Studio jest przydatna do animacji ruchu delegatów o określonych zachowaniach. W tym dodatku omówiono następujące zagadnienia: 

tworzenie tłumu za pomocą obiektów pomocniczych,



przypisywanie zachowań.

Dodatek K

Wykorzystanie reactora do symulacji ruchów zgodnych z zasadami dynamiki W tym rozdziale: 

Poznawanie modułu reactor



Używanie kolekcji reactora



Stosowanie modyfikatorów reactora



Określanie właściwości obiektów



Stosowanie obiektów reactora



Wykonywanie podglądu animacji

Kiedy mówimy o module reactor w Maksie, mówimy o fizyce. Fizyka to jedna z najfajniejszych dziedzin nauki, ponieważ dotyczy substancji i energii oraz opisuje prawa, jakie rządzą ruchami i wzajemnym oddziaływaniem obiektów. Dla nas, animatorów, to idealna wiadomość, ponieważ animacja ruchu i oddziaływań stanowi istotę tego, co próbujemy osiągnąć. Czy zatem wszyscy animatorzy powinni uczyć się fizyki? Jak najbardziej! Zrozumienie praw fizyki poprzez badanie i własne doświadczenia zdecydowanie poprawi i wyostrzy nasze umiejętności animacji. Jednak możemy też wykorzystać pracę wykonaną przez innych animatorów, którzy wszystkie te prawa i właściwości fizyczne zawarli w jednym produkcie, dostarczanym razem z Maksem. Ci animatorzy to członkowie grupy Havok, a ich produkt nosi nazwę reactor. Moduł dynamiki opracowany przez grupę Havok i dołączony do Maksa jest tym samym, jaki używany jest powszechnie do symulowania rzeczywistego świata w grach komputerowych, takich jak Half Life 2 firmy Valve.

1444

Dodatki

Wykorzystując reactor, możemy symulować wiele właściwości fizycznych i podczas interakcji obiektów automatycznie zapisywać klatki kluczowe. To tak jakbyśmy zupełnie za darmo otrzymali stopień naukowy z fizyki. Menu reactora zawiera wszelkie opcje, których będziemy potrzebować, aby mieć dostęp do algorytmów sterujących symulacją praw fizyki. Możemy definiować obiekty jako ciała sztywne, np. krzesło czy kula do kręgli, lub miękkie, takie jak wypchane zwierzaki. Można także tworzyć obiekty specjalne, takie jak płótna czy liny. Po nadaniu obiektom właściwości fizycznych możemy wykreować siły, jakie oddziaływać będą na te obiekty i zasymulować wynikową animację. Używanie reactora — poza tym, że nadaje skomplikowanym przemieszczeniom realistyczny wygląd — jest także doskonałą zabawą.

Zrozumienie dynamiki Dynamika to gałąź fizyki zajmująca się siłami oraz wywołanymi przez nie ruchami. Niezależnie od naszych doświadczeń ze szkoły, musimy pamiętać, że nauka ta jest naszym przyjacielem — zwłaszcza w świecie 3D. Dynamika w Maksie pomoże zautomatyzować proces tworzenia kluczy animacyjnych przez przeliczanie położeń, obrotów i kolizji między obiektami za pomocą równań fizycznych. Rozważmy prosty ruch obiektu typu yo-yo. Animowanie takiego ruchu przy użyciu kluczy jest dość proste. W połowie animacji ustalamy wartości kluczy rotacji i obrotu, następnie czynimy to samo na końcu animacji i gotowe. Teraz zastanówmy się, jakie siły kontrolują efekt yo-yo. Siła grawitacji powoduje, że yo-yo, przyspieszając, opada w kierunku ziemi, w wyniku czego sznurek się rozwija, co sprawia, że yo-yo wykonuje obroty wokół własnej osi. Kiedy sznurek całkiem się rozwinie, yo-yo zaczyna obracać się w przeciwnym kierunku i unosi się do góry1. Taki ruch możemy zasymulować przy użyciu pól sił Gravity i Motor, lecz dla tak niewielu obiektów ręczne kluczowanie animacji jest prawdopodobnie lepszym rozwiązaniem. Zanim jednak spiszemy na straty dynamikę, zastanówmy się nad prażącym się i rozpryskującym wokół popcornem. Przy tak wielkiej ilości obiektów ustawienie wartości wszystkich kluczy pozycji i rotacji zajęłoby mnóstwo czasu. Dla takich właśnie zdarzeń korzystanie z systemów dynamiki ma sens. Narzędzie Dynamics pozwala wybrać obiekty, które będą brały udział w symulacji, siły, z jakimi będą na siebie oddziaływać, oraz obiekty, które będą brały udział w kolizjach. Po takich ustaleniach moduł Dynamics automatycznie przelicza przemieszczenia i zderzenia obiektów, zgodnie z siłami na nie działającymi, a następnie ustala odpowiednie wartości dla kluczy animacji.

1

Dokładnie rzecz biorąc, yo-yo obraca się nadal w tym samym kierunku (zgodnie z zasadą zachowania momentu pędu) i sznurek zaczyna się nawijać (w kierunku przeciwnym, niż był nawinięty poprzednio), co powoduje unoszenie się zabawki w górę — przyp. tłum.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1445

Max zawiera wiele rozmaitych narzędzi dynamiki, takich jak obiekty dynamiki, np. Spring (sprężyna) lub Damper (amortyzator), dynamiczne właściwości materiałów w edytorze materiałów, specjalne pola sił i narzędzie Dynamics w bocznym panelu Utilities. Jednak zanim dokładnie poznamy to narzędzie, musimy uświadomić sobie, że dla symulacji dynamiki najbardziej efektywne i najprostsze w konfiguracji są opcje oferowane przez reactor. Narzędzie Dynamics jest używane już tylko ze względu na jego kompatybilność z poprzednimi wersjami programu.

Korzystanie z modułu reactor Moduł reactor został stworzony przez firmę Havok. Jest złożoną aplikacją z ogromną liczbą opcji, która umożliwia definiowanie fizycznych właściwości i sił oraz zgodnie z prawami fizyki automatycznie generuje klucze animacji w czasie oddziaływań na siebie obiektów. W 3ds Max 2012 system dynamiki reactora został zastąpiony systemem MassFX. Niniejszy dodatek jest przeznaczony dla użytkowników poprzednich wersji programu. Należy zauważyć, że moduł reactor nie jest tym samym, czym kontroler Reaction, o którym mówiliśmy w rozdziale 22., „Animowanie przy użyciu ograniczników i prostych kontrolerów”.

Interfejs reactora znajduje się w panelu Utilities, gdzie jest już pozycją domyślnie wbudowaną w program, ale możemy także dostać się do niego poprzez menu Animation/reactor i pasek narzędziowy reactor pokazany na rysunku K.1. Zarówno menu, jak i pasek narzędziowy umożliwiają szybki i łatwy dostęp do różnych elementów modułu. Przykładowo kliknięcie przycisku Create Rope Collection (utwórz kolekcję lin) otwiera kategorię obiektów pomocniczych (Helpers) w panelu bocznym, wybiera podkategorię reactor, a następnie włącza przycisk RP Collection. Rysunek K.1. Pasek narzędziowy reactor używany do definiowania fizycznych właściwości obiektów

Funkcjonowanie reactora Zanim wgłębimy się w szczegóły związane z samym reactorem, pobieżnie wyjaśnijmy proces jego pracy. Moduł reactor działa z geometrią, której nadaliśmy konkretne fizyczne właściwości. Po nadaniu tych właściwości pałeczkę przejmuje silnik modułu, który ustala, w jaki sposób będą na siebie oddziaływać różne obiekty naszej sceny. W rolecie About narzędzia reactor możesz wybrać wersję silnika reactora nr 1 (Havok 1) lub nr 3 (Havok 3). Ta druga jest znacznie dokładniejsza i szybsza, ale jeśli chcesz symulować tkaniny, liny i miękkie obiekty, musisz pozostać przy wersji nr 1. W panelu Utilities znajdziesz kilka rolet z ustawieniami służącymi do sterowania symulacją. W rolecie Preview & Animation możesz ustalić zakres animacji oraz liczbę klatek

1446

Dodatki

i kroków pośrednich (substeps) przypadających na każdy klucz. W rolecie Havok 1 World ustalisz globalną grawitację i skalę, a także tolerancję dla zderzeń (Col. Tolerance). Opcja Add Deactivator pozwala pomijać w symulacji obiekty pozostające w spoczynku i nie oddziałujące z innymi obiektami. Stan spoczynku obiektów reactor określa na podstawie wartości parametrów Short Frequency i Long Frequency. Po wybraniu opcji Havok 3 możesz zdecydować, czy ruchy obiektów mają być obliczane w sposób ciągły (Continuous), czy dyskretny (Discrete), czyli ograniczony do dwóch faz: na początku i na końcu ustalonego przedziału czasowego z interpolacją stanów pośrednich. Dodatkowo możesz wtedy również określić maksymalną prędkość liniową obiektów oraz ich sztywność (Stiffness). Roleta Collisions zawiera opcje związane z rejestrowaniem zderzeń (storing collisions). Rejestrowanie zderzeń między obiektami można wykorzystać do uruchamiania określonych akcji, ale dzieje się to kosztem spowolnienia symulacji. W oknie dialogowym Define Collisions można ustalić, między którymi obiektami zderzenia mają być rejestrowane, a między którymi nie. W rolecie Display znajdziesz kontrolki służące do określenia kamery, płaszczyzn odcinania (clipping planes), świateł i tekstur, jakie mają być użyte w oknie podglądu symulacji. Roleta Utils zawiera przycisk Analyze World, którego możesz użyć przed rozpoczęciem symulacji, aby sprawdzić poprawność przygotowanej symulacji. Są tam również opcje zmniejszające całkowitą liczbę kluczy oraz przycisk do sprawdzania obiektów, czy są wypukłe, czy wklęsłe (Test Convexity). Nadanie obiektom geometrycznym fizycznych właściwości może nastąpić na kilka różnych sposobów. Obiekty mogą być dodane do kolekcji (collection) reactora. Kolekcja to grupa obiektów reactora, która posiada pewien wspólny zestaw fizycznych właściwości, np. kolekcja ciał sztywnych (Rigid Body Collection). Obiekty mogą także zostać połączone z obiektami reactora, takimi jak Spring (sprężyna) czy Motor (silnik). Na te obiekty będą wpływać siły generowane przez obiekty reactora. Fizyczne właściwości obiektu możemy określić także za pomocą rolety Object Property, która pozwala ustalić parametry, takie jak masa (Mass), tarcie (Friction) i elastyczność (Elasticity). Kiedy wszystkie obiekty zostaną zdefiniowane i dołączone do odpowiedniej kolekcji lub obiektu reactora, możemy otworzyć okno Preview, które pozwoli zobaczyć, jak zachowują się obiekty pod wpływem zadanych sił. Możemy także interaktywnie, w czasie trwania tego podglądu, bawić się, zmieniając położenie obiektów bezpośrednio w oknie Preview. Jeśli wszystko przebiega zgodnie z założeniami, poleceniem z menu Animation/reactor/ Create Animation można wygenerować wszystkie klucze animacji.

Ćwiczenie: Wypełnianie naczynia kulkami Wyobraźmy sobie próbę animowania grupy kulek wpadających do szklanego naczynia. Dokonanie tego przy użyciu klatek kluczowych, w taki sposób, aby obiekty nie przenikały przez siebie, byłoby bardzo trudne. Właśnie na takim przykładzie zobaczymy całą potęgę reactora.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1447

Aby animować kulki wpadające do szklanego naczynia, wykonaj następujące czynności. 1. Otwórz plik Glass bowl of marbles.max znajdujący się w folderze Bonus Chapter K na płycie dołączonej do książki. Plik ten zawiera szklane naczynie i grupę kulek umieszczonych nad nim. 2. Wybierz polecenie Animation/reactor/Create Object/Rigid Body Collection i kliknij w oknie widokowym Front, aby utworzyć ikonę. W rolecie RB Collection Properties kliknij przycisk Add, żeby otworzyć okno dialogowe Select rigid bodies. 3. W oknie dialogowym Select rigid bodies kliknij przyciski Select All i Select, by wybrać wszystkie obiekty w scenie i sprawić, żeby stały się ciałami sztywnymi. Następnie kliknij prawym przyciskiem myszy, aby wyjść z trybu tworzenia kolecji ciał sztywnych. 4. Zaznacz podłogę i naczynie, wybierz polecenie Animation/reactor/Open Property Editor i uaktywnij opcję Unyielding (nieruchomy). To uniemożliwi ruch obu tych obiektów. Następnie zaznacz samo naczynie i uaktywnij opcję Concave Mesh (siatka wklęsła). 5. Zaznacz wszystkie kulki w scenie i ustal ich masę (Mass) na 5.0. 6. Z menu wybierz polecenie Animation/reactor/Preview Animation, aby otworzyć okno podglądu symulacji (Preview), gdzie klawisz P powoduje start symulacji. 7. Jeśli animacja wygląda dobrze, wybierz Animation/reactor/Create Animation, by reactor przeliczył i utworzył wszystkie klucze animacji. Na rysunku K.2 pokazano naczynie pełne kulek umieszczonych tam przy użyciu procedury reactor.

Kolekcje reactora Jednym z pierwszych kroków przy tworzeniu symulacji jest zdefiniowanie właściwości obiektów. Przykładowo prosty obiekt sfery w Maksie może być kulą do kręgli, pomarańczą lub piłeczką tenisową. W czasie animacji każdy z tych obiektów zachowa się inaczej przy zetknięciu się z podłożem. Moduł reactor w symulacji identyfikuje obiekty na podstawie tego, do jakiej kolekcji należą. Rozróżnia pięć typów obiektów (kolekcji): Rigid Body (ciała sztywne), Cloth (tkaniny), Soft Body (ciała miękkie), Rope (lina) i Deforming Mesh (odkształcalna siatka). Zostały one zebrane w tabeli K.1. Ciała sztywne zachowują swój kształt pod naciskiem, ciała miękkie deformują się. Tkaniny i liny zachowują się w sposób dość intuicyjny, a deformowalne siatki to dowolne obiekty z kluczowaną animacją, włącznie z systemami Bones i Skin. Pamiętajmy, że giętkość tkanin, lin i ciał miękkich jest różna, w zależności od ilości segmentów, z których się składają. Przykładowo lina utworzona ze splajnu o trzech wierzchołkach będzie się zginać tylko w środku.

1448

Dodatki

Rysunek K.2. Moduł reactor potrafi przeliczyć kolizje zachodzące między wszystkimi kulkami Tabela K.1. Kolekcje reactora Przycisk na pasku narzędziowym

Nazwa

Opis

Rigid Body Collection

Ciała sztywne nie odkształcają się pod wpływem sił.

Cloth Collection

Tkaniny powiewają i zginają się pod wpływem wszystkich sił.

Soft Body Collection

Ciała miękkie zachowują się elastycznie pod wpływem sił.

Rope Collection

Obiekty lin są odporne na rozciąganie, ale nie na ściskanie.

Deforming Mesh Collection

Siatki, które mogą być deformowane przez siły.

Wszystkie obiekty zawarte w jednej z tych kolekcji mają podobne właściwości, więc zachowują się podobnie. Aby utworzyć w scenie pożądaną kolekcję, należy wybrać odpowiednie polecenie w podmenu Animation/reactor/Create Object lub kliknąć któryś z przycisków z kolekcjami w pasku narzędziowym reactora, a następnie kliknąć w aktywnym oknie widokowym, żeby utworzyć ikonę kolekcji. Na rysunku K.3 przedstawiono ikony (gizma) poszczególnych kolekcji.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1449

Rysunek K.3. Ikony z symbolami poszczególnych kolekcji

Gizma kolekcji nie są renderowane i po utworzeniu w oknach widokowych przybierają barwę czerwoną. Po wyselekcjonowaniu ikona gizma staje się biała, a po dodaniu do kolekcji jakiegoś obiektu — niebieska. W ten sposób łatwo możemy ocenić, która kolekcja jest pusta. Po utworzeniu kolekcji możemy dodać do niej pojedynczy obiekt, używając przycisku Pick z rolety Properties. Gdy kursor znajdzie się nad obiektem, który może zostać dodany do zbioru, przybiera kształt krzyżyka. Możemy też kliknąć przycisk Add, by otworzyć okno dialogowe Select rigid bodies2, gdzie możemy wybrać obiekty z listy. Obiekty należące do kolekcji są wyświetlane w rolecie Properties. Po kliknięciu przycisku highlight w rolecie Properties wszystkie obiekty należące do kolekcji stają się na krótką chwilę białe. Jeden obiekt może być dodany do wielu kolekcji, lecz przy próbie podglądu animacji powoduje to ukazanie się komunikatu z ostrzeżeniem.

Jeśli obiekt jest zaznaczony przed utworzeniem ikony kolekcji, wtedy zostaje do tej kolekcji automatycznie dodany, a ikona kolekcji zostaje umieszczona w środku transformacji danego obiektu lub obiektów.

Modyfikatory kolekcji Jeśli kilka razy bezskutecznie próbowałeś dodać obiekt do kolekcji Cloth, ten podrozdział jest przeznaczony właśnie dla Ciebie. Zanim będziesz mógł dodać obiekty do kolekcji Cloth, Rope lub Soft Body, musisz przypisać tym obiektom któryś z modyfikatorów Cloth, Rope lub Soft Body. Aby przypisać modyfikator do obiektu, należy wyselekcjonować obiekt w oknie widokowym, wybrać polecenie Animation/reactor/Apply Modifier i wskazać odpowiedni modyfikator. W tabeli K.2 przedstawiono trzy dostępne modyfikatory reactora. Tabela K.2. Modyfikatory reactora Przycisk na pasku narzędziowym

2

Nazwa

Opis

Modyfikator Cloth

Nadaje obiektom cechy tkanin.

Modyfikator Soft Body

Nadaje obiektom cechy ciał miękkich.

Modyfikator Rope

Nadaje obiektom cechy liny.

Nazwa tego okna zmienia się w zależności od tego, do jakiej kolekcji dodajemy obiekty — przyp. tłum.

1450

Dodatki Modyfikator Rope może zostać przypisany tylko i wyłącznie do splajnów i kształtów.

Każdy z tych modyfikatorów posiada tryb zaznaczania wierzchołków (Vertex) dostępny z poziomu stosu modyfikatorów. Wyselekcjonowanie wierzchołków pozwala nadać im właściwości fizyczne inne, niż mają pozostałe wierzchołki. Przykładowo możemy ustalić, że wierzchołki na jednym z końców liny, tam gdzie łączy się ona ze stalowym hakiem, będą miały większą masę. Gdy lina będzie spadać z haka, cięższy koniec opadnie szybciej pod wpływem siły grawitacji.

Ustalanie właściwości obiektów Po utworzeniu w scenie kolekcji i dodaniu do nich obiektów możemy zdefiniować fizyczne właściwości tych ostatnich za pomocą narzędzia Property Editor, którego okno pokazano na rysunku K.4. Otwieramy je przez wybranie polecenia Animation/reactor/Open Property Editor. Aby ustalić właściwości danego obiektu, musimy zaznaczyć właśnie ten obiekt, a nie ikonę jego kolekcji. Property Editor pozwala ustalić właściwości wielu zaznaczonych obiektów za jednym razem. Na pasku tytułowym tego narzędzia zobaczysz nazwę kolekcji, do której należy zaznaczony obiekt. Rysunek K.4. Narzędzie Property Editor pozwala ustalić fizyczne cechy obiektów geometrycznych w scenie

Masa, tarcie i elastyczność Parametr Mass określa masę obiektu. Przykładowo kula do kręgli ma większą wartość tego parametru niż piłeczka do ping-ponga. Parametr Elasticity określa, jak sprężysty jest obiekt; piłka do tenisa jest bardziej elastyczna niż marmurowa kula. W parametrze Friction ustalamy, jaki opór stawia obiekt przy toczeniu lub posuwaniu się po podłożu. Cegła będzie miała większą wartość parametru tarcia niż kostka lodu.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1451

Ciało sztywne o wartości parametru Mass równej 0 jest przez moduł reactor pomijane w obliczeniach i w symulacji zawsze pozostaje w tym samym miejscu.

Okno Property Editor zawiera także kilka innych opcji. Opcja Inactive wyłącza obiekt z przeliczeń symulacji. Opcja Disable All Collisions powoduje, że obiekt nie będzie wchodził w kolizje z innymi obiektami. Opcja Unyielding sprawia, że obiekt zawsze pozostanie nieruchomy — jest przydatna przy obiektach będących podłogą lub ścianą. Opcja Phantom powoduje, że obiekt nie wywiera żadnego wpływu na inne obiekty. Parametr Shell ustala promień abstrakcyjnej kuli otaczającej wypukły obiekt, która jest wykorzystywana w procesie wykrywania zderzeń. Jeśli określisz wartość tego parametru, symulacja będzie przebiegała szybciej i ryzyko wzajemnej penetracji zderzających się obiektów będzie mniejsze. Wartość parametru Penet. (Penetration) określa dopuszczalną głębokość penetracji obiektów. Przez wpisanie tutaj liczby różnej od zera można przyspieszyć proces symulacji. Ustawienie Quality służy do określania jakości, z jaką ruch danego obiektu powinien być animowany. Dostępne opcje to: Debris — dla obiektów o małym znaczeniu, Moving — dla obiektów o średnim znaczeniu, Critical — dla obiektów, które nie powinny penetrować innych obiektów, Bullet — dla obiektów poruszających się bardzo szybko. Parametry Shell, Penetration i Quality są uwzględniane tylko w 3. wersji silnika reactora.

Definiowanie modelu kolizji Inna, często używana cecha obiektu wiąże się ze sposobem wykrywania zderzeń. Na potrzeby symulacji możemy otoczyć obiekt obszarem, w którym pojawienie się innego obiektu będzie interpretowane jako zderzenie. Brzmi to śmiesznie, ponieważ możemy w ten sposób zdefiniować kolizję w przestrzeni poza rzeczywistą siatką obiektu (zderzenie może nastąpić nie przy zetknięciu z innym obiektem, lecz w pewnej od niego odległości). Należy jednak zdać sobie sprawę, że przeliczenie złożonej symulacji, z wieloma kolizjami i skomplikowanymi siatkami obiektów, mogłoby trwać bardzo długo. Gdy jednak reactor przelicza kolizje, opierając się na przybliżonym kształcie obiektu, a nie na jego rzeczywistej siatce, symulacja przebiega o wiele szybciej, a niedokładności są praktycznie niezauważalne. Zanim zdecydujemy się na to, jakiego modelu kolizji użyć, musimy określić, czy kształt obiektu jest wypukły (convex), czy wklęsły (concave). Obiekt wypukły to taki, którego powierzchnia może być przebita przez dowolną prostą jedynie w dwóch punktach. W przypadku obiektu wklęsłego takich punktów przebicia może być więcej. Możemy sprawdzić, czy obiekt jest wypukły, wybierając polecenie Animation/reactor/Utilities/ Convexity Test lub wciskając przycisk Test Convexity w rolecie Utils panelu Utilities. Dla obiektu wypukłego możemy jako modelu kolizyjnego użyć dowolnej opcji z rolety Simulation Geometry, czyli Bounding Box (prostopadłościan otaczający), Bounding Sphere (kula otaczająca), Mesh Convex Hull (wypukła powłoka siatkowa), Proxy Convex Hull (wypukła powłoka zastępcza), Concave Mesh (wklęsła siatka), Proxy Concave Mesh (wklęsła siatka zastępcza) lub Not Shared (zróżnicowany). Jeśli zaznaczymy opcję Proxy, możemy za pomocą przycisku Proxy znajdującego się w rolecie Simulation Geometry wybrać obiekt zastępczy.

1452

Dodatki Edytor materiałów zawiera roletę Dynamic Properties z takimi wartościami jak Bounce Coefficient (współczynnik odbicia), Static i Sliding Friction (tarcie statyczne i poślizgowe). Wartości te są używane w module Dynamics, ale silnik reactora nie bierze ich pod uwagę.

Właściwości modyfikatorów Obiekty z przypisanym jednym z modyfikatorów reactora mają, poza właściwościami określonymi za pomocą narzędzia Property Editor, właściwości dodatkowe, charakterystyczne dla danego typu kolekcji. Właściwości te dostępne są w panelu Modify, w czasie gdy obiekt pozostaje zaznaczony. Wszystkie modyfikatory zawierają opcję Avoid Self-Intersections. Obiekty z tymi modyfikatorami, z racji swej elastyczności, mogą podczas zderzeń ulegać znacznym odkształceniom. Opcja ta zapobiega wywracaniu obiektu na drugą stronę i przenikaniu przez samego siebie.

Dodatkowe opcje dla modyfikatora Cloth to Mass (masa), Friction (tarcie), Relative Density (względna gęstość) i Air Resistance (opór powietrza). Możemy także użyć dwóch opcji modelowania reakcji na działające siły: Simple Force Model (model prosty) lub Complex Force Model (model złożony), która uaktywnia dodatkowe parametry związane z zachowaniem się tkaniny, czyli Stretch (wytrzymałość na rozciąganie), Bend (wytrzymałość na zginanie), Shear (wytrzymałość na ścinanie) i Damping (tłumienie). Ponadto możemy ustalić parametry Fold Stiffness, które określają, jak sztywne są fałdy w tkaninie. Jeśli w narzędziu Property Editor i w panelu Modify występują te same parametry, priorytetowo traktowana jest wartość parametru w panelu Modify. Tak naprawdę właściwości określone w oknie Property Editor mają zastosowanie jedynie w odniesieniu do ciał sztywnych.

Modyfikator Soft Body, poza parametrami Mass i Friction, zawiera także parametry Stiffness (sztywność) oraz Damping (tłumienie). Możemy też deformować obiekty przy użyciu algorytmu Mesh-based lub FFD-based. Algorytm FFD-based korzysta z punktów kontrolnych i jest metodą prostszą, niewymagającą dużej mocy obliczeniowej. Modyfikator Rope zawiera parametry Mass, Thickness, Friction i Air Resistance. Możemy także ustalić, czy lina będzie typu Spring (rozciągliwa), czy Constraint (nierozciągliwa). Lina typu Spring zachowuje się jak lina do skoków bungee lub gumowa taśma.

Ćwiczenie: Zarzucanie koszulki na krzesło W poprzednim ćwiczeniu widzieliśmy, że przy użyciu reactora pewne rzeczy stają się o wiele łatwiejsze. Teraz zobaczymy, że niektóre animacje są wprost niemożliwe do wykonania bez zastosowania reactora. Deformacja tkanin jest niezwykle trudna do animowania, ale przy opisywaniu tego typu ruchu mogą bardzo pomóc prawa fizyki. W tym prostym przykładzie zarzucimy koszulkę na krzesło, aby zobaczyć, jak zachowa się tkanina. Aby animować tkaninę opadającą na twardy obiekt, wykonaj następujące czynności.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1453

1. Otwórz plik Shirt over chair.max znajdujący się w folderze Bonus Chapter K na płycie dołączonej do książki. Ten plik zawiera krzesło i koszulkę, która jest wytłoczonym kształtem z wystarczającą ilością podziałów siatki. 2. Wybierz polecenie Animation/reactor/Create Object/Rigid Body Collection, a następnie kliknij w oknie widokowym Front, aby utworzyć ikonę kolekcji ciał sztywnych. Kliknij przycisk Add i wybierz obiekty krzesła i podłogi, by dodać je do kolekcji Rigid Body. 3. Zaznacz krzesło i podłogę, a następnie wybierz polecenie Animation/reactor/ Open Property Editor. Zaznacz opcję Unyielding. Następnie kliknij prawym przyciskiem myszy, aby wyjść z trybu tworzenia kolekcji Rigid Body. 4. Zaznacz koszulkę i wybierz polecenie Animation/reactor/Apply Modifier/Cloth Modifier. 5. Przy wciąż zaznaczonej koszulce wybierz polecenie Animation/reactor/Create Object/Cloth Collection, by utworzyć kolekcję typu Cloth zawierającą naszą koszulkę. 6. Przed przeliczeniem całej animacji zobacz jej podgląd. Wybierz polecenie Animation/reactor/Preview Animation, żeby otworzyć okno Preview, a następnie wciśnij klawisz P. Po zakończeniu animacji (kiedy koszulka opadnie na krzesło) zamknij okno Preview. 7. Wybierz polecenie Animation/reactor/Create Animation, aby klucze dla tej animacji zostały przeliczone i utworzone. Następnie kliknij przycisk Play, by obejrzeć końcową animację. Na rysunku K.5 pokazano jeden z kadrów ukończonej animacji. Rysunek K.5. Moduł reactor może być użyty np. do symulowania tkanin realistycznie opadających na krzesło

1454

Dodatki

Tworzenie obiektów reactora Poza kolekcjami reactor zawiera też kilka domyślnych obiektów, które oddziałują z innymi obiektami w scenie w pewien szczególny, właściwy sobie sposób. Tworzymy te obiekty, wybierając odpowiednie polecenie z menu Animation/reactor/Create Object lub klikając jedną z ikon na pasku narzędziowym reactora i przeciągając myszą w jednym z okien widokowych. Domyślne obiekty reactora to Spring (sprężyna), Plane (płaszczyzna), Linear Dashpot (amortyzator liniowy), Angular Dashpot (amortyzator skrętny), Motor (silnik), Wind (wiatr), Toy Car (samochód zabawka), Fracture (zlepek) i Water (woda), wszystkie zostały opisane w tabeli K.3. Tabela K.3. Obiekty reactora Ikona na pasku narzędziowym

Nazwa

Opis

Spring

Przyciąga obiekt dziecko do połączonego z nim obiektu rodzica.

Plane

Dodaje do sceny stały, lity obiekt typu plane.

Linear Dashpot

Ogranicza liniowy ruch między obiektem dzieckiem a połączonym z nim obiektem rodzicem.

Angular Dashpot Ogranicza kątowy ruch między obiektem dzieckiem a połączonym z nim obiektem rodzicem. Motor

Używany do dodania do sceny siły powodującej ruch obrotowy.

Wind

Używany do dodania do sceny siły powodującej ruch liniowy.

Toy Car

Symuluje prosty samochodzik z obracającymi się kołami, poruszający się ruchem liniowym.

Fracture

Oznacza obiekt, który może rozpaść się na kawałki.

Water

Dodaje realistyczną powierzchnię wody.

Większość ikon tych obiektów, podobnie jak w przypadku ikon kolekcji, zaraz po utworzeniu przybiera kolor czerwony, w momencie wyselekcjonowania ikony stają się białe, a kiedy połączymy je z jakimś obiektem sceny — niebieskie. Na rysunku K.6 pokazano ikony dla każdego z obiektów reactora. Większość tych obiektów musi być skojarzona z jakimś obiektem geometrycznym sceny, aby była uwzględniana przy przeliczeniach reactora. Przykładowo obiekt Toy Car musi być połączony z obiektem geometrycznym służącym za podwozie i maksymalnie czterema obiektami pełniącymi rolę kół. Połączenie uzyskujemy, korzystając z odpowiednich przyci-

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1455

Rysunek K.6. Ikony obiektów reactora

sków w rolecie Properties i wybierając obiekty w oknach widokowych. Obiekt Spring np. możemy połączyć i z obiektem dzieckiem i obiektem rodzicem. Niektóre obiekty, takie jak Plane lub Wind, aby działały, nie muszą być połączone z żadnymi obiektami.

Obiekty Spring i Dashpot Obiekty Spring i Dashpot mogą być użyte do połączenia obiektu dziecka z obiektem rodzicem. Należy po prostu wybrać przycisk Child w rolecie Spring Properties, a następnie kliknąć obiekt w scenie, aby stał się obiektem dzieckiem obiektu Spring. Jeśli nie zostanie wybrany żaden obiekt rodzic, Spring będzie łączył obiekt dziecko z miejscem, gdzie znajduje się ikona obiektu Spring. Opcje wyrównywania (Align) pozwalają przemieścić obiekt Spring w okolice obiektu dziecka lub obiektu rodzica. Wybierając opcję Each Body, umieszczamy obiekt Spring dokładnie w połowie odległości między obiektem dzieckiem a obiektem rodzicem. Dla obiektu Spring (pełniącego najczęściej rolę sprężyny) możemy ustalić wartości parametrów Stiffness (sztywność), Rest Lenght (długość spoczynkowa) i Damping (tłumienie), a także określić, czy działa na zasadzie ściskania (Compression), czy też rozszerzania (Extenstion). Im dalej obiekt dziecko i obiekt rodzic są od ikony obiektu Spring w porównaniu z długością spoczynkową sprężyny, tym mocniejsza siła ciągnie je w kierunku tej ikony, a więc ustawienie parametru Rest Length na małą wartość spowoduje, że oba obiekty zostaną szybciej przyciągnięte do siebie. Aby obiekt dziecko i obiekt rodzic były uwzględniane w symulacji, muszą zostać dodane do kolekcji, takiej jak np. Rigid Body.

Obiekty Dashpot działają na zasadzie podobnej do zasady działania obiektów Spring. Mogą być połączone z obiektem dzieckiem oraz obiektem rodzicem i można dla nich ustalić wartości parametrów Strength i Damping. Linear Dashpot zmusza połączone z nim obiekty do zachowywania położeń względem siebie, jakby były połączone sprężystym prętem. Angular Dashpot zmusza te obiekty do zachowania takiej samej orientacji — obrót jednego z nich powoduje taki sam obrót drugiego.

Obiekt Plane Obiekt Plane to lita ściana, która nie może być penetrowana przez obiekty należące do kolekcji Rigid Body. Ściana jest nieprzenikliwa, ale tylko od tej strony, z której wystaje jej wektor normalny. Obiekt ten może być skalowany, a jego jedyną właściwością jest opcja

1456

Dodatki

Show Normal (pokaż normalną). Obiekty te nie są renderowane i nie są widoczne w oknie podglądu animacji.

Obiekty Motor i Wind Obiektu Motor używamy, by obracać obiekty należące do zbioru Rigid Body Collection. Dla niego możemy ustalić oś obrotu (Rotation Axis), docelową prędkość kątową (Angular Speed) oraz momentu obrotowego (Gain). Obiekt Wind używany jest, gdy chcemy dodać do sceny siłę liniową. Siła ta działa w kierunku określonym przez ikonę obiektu Wind, tak więc musimy utworzyć ją w odpowiednim oknie widokowym, aby wiatr wiał w żądanym kierunku. Siłę wiatru określa parametr Wind Speed. Zdolność wiatru do przesuwania obiektów sceny zależy od jego siły i masy (Mass) obiektów. Obiekty cięższe są trudniejsze do przesunięcia przez wiatr. Za pomocą opcji zakłócania prędkości (Perturb Speed) możemy sprawić, że wiatr stanie się porywisty. Parametr Variance określa, jak silne są porywy, a parametr Time Scale, jak często te porywy występują. Możemy także skorzystać z opcji Ripple, żeby nadać rozbieżność sile wiatru w kierunkach lewy/prawy, góra/dół lub tył/przód, dodatkowo określaną parametrami definiującymi rozmiar efektu (Magnitude) i częstotliwość (Frequency). Możemy także wprowadzać zakłócenia czasu. Opcja Use Range pozwala określić zasięg działania wiatru. Wiatr ma wpływ tylko na obiekty znajdujące się w jego zasięgu. Opcja Enable Sheltering (włącz osłanianie) powoduje, że obiekty umieszczone za innymi obiektami są chronione przed wiatrem. Możemy ustalić, na które z obiektów wiatr będzie miał wpływ, wliczając w to ciała sztywne, tkaniny, ciała miękkie i liny.

Obiekt Toy Car Obiekt Toy Car to specyficzny rodzaj obiektu, symulujący samochód, któremu kręcące się koła nadają ruch liniowy. Dla tego obiektu możemy wybrać obiekt Chassis, który posłuży za karoserię samochodu, a także listę obiektów będących kołami. Możemy też określić wartości sił utrzymujących koła w odpowiednim położeniu względem nadwozia (Angular i Linear Strength) oraz ustawienie zawieszenia (Suspension). Kierunek ruchu samochodu podajemy za pomocą opcji Icon Orientation (strzałka ikony wskazuje kierunek, w którym poruszać się będzie samochód) lub Common Local Orientation. Dla kół możemy ustalić opcję Allow Wheel Penetration, która pozwala wygładzić ruch w przypadku wyboistej powierzchni, a także określić, czy koła się obracają. Aby nadać samochodowi więcej mocy, podkręcamy wartości parametrów kół Angular Speed oraz Gain. W 3. wersji silnika reactora dostępny jest cały zestaw dodatkowych parametrów. Jeśli wybierzesz silnik reactora w wersji 3., uzyskasz dostęp do szeregu nowych właściwości obiektu Toy Car określających parametry ograniczeń wpływających na ruchy kół i całego pojazdu.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1457

Obiekt Fracture Obiekt pomocniczy Fracture umożliwia symulowanie rozpadu obiektu będącego zlepkiem innych obiektów. Roleta Properties zawiera listę obiektów cząstek (Pieces), które wezmą udział w rozpadzie. Jeśli wybierzemy którąś cząstkę z listy, będziemy mogli ustalić, jakiego typu będzie. Dostępne opcje to Broken (oderwana), Normal (zwykła), Unbreakable (niezmienna), Keystone (kluczowa dla całości) oraz Break at Time (oderwana w określonym czasie). Przycisk Now (teraz) ustala moment rozpadu w bieżącej klatce. Opcja Use Connectivity pozwala zachować połączone obiekty razem, np. dwie części połączone sprężyną. Możemy także określić warunki rozpadu (Break On) przez ustalenie wartości progowych pędu (Impulse) i prędkości (Velocity) obiektu wywołującego rozpad. Opcja Energy Loss określa ilość energii utraconą przy każdej kolizji.

Ćwiczenie: Niszczenie chatki z piernika Niezależnie od tego, ile razy mama powtarza, aby nie grać w piłkę w domu, zawsze zapominamy. A jak mówi prawo Murphy’ego, zapominamy zawsze w najgorszym momencie, czyli wtedy, kiedy chatka z piernika została ukończona. Aby zniszczyć chatkę z piernika, wykonaj następujące czynności. 1. Otwórz plik Smashed gingerbread house.max znajdujący się w folderze Bonus Chapter K na płycie dołączonej do książki. Plik ten zawiera model domku z piernika wykonany przez firmę Viewpoint Datalabs. 2. Wybierz polecenie Animation/reactor/Create Object/Rigid Body Collection, a następnie kliknij w oknie widokowym Top, by utworzyć ikonę kolekcji ciał sztywnych. W panelu bocznym kliknij przycisk Add, żeby otworzyć okno dialogowe Select rigid bodies. W oknie tym kliknij przycisk All (wszystkie), a następnie Select (wybierz). Okno zostanie zamknięte. 3. Wybierz polecenie Animation/reactor/Create Object/Fracture i kliknij w oknie widokowym Top, aby utworzyć ikonę obiektu Fracture. Kliknij przycisk Add w rolecie Properties, zaznacz wszystkie obiekty, poza Sphere01 i ground, a następnie kliknij przycisk Select. W rolecie Properties na liście Pieces zaznacz wszystkie obiekty, uaktywnij opcję Break at Time i ustaw parametr Time na 30. 4. Zaznacz obiekt ground, wybierz z menu polecenie Animation/reactor/Open Property Editor i uaktywnij opcję Unyielding. Wybierz obiekt Sphere01 i ustaw wartość parametru Mass na 60. W końcu wybierz wszystkie obiekty składające się na domek z piernika i ustaw dla nich wartość parametru Mass na 20, a Friction na 1.0. Aby osiągnąć jeszcze bardziej realistyczny efekt, powinniśmy ustalić mniejszą wartość parametru Mass dla mniejszych cząstek domku, ale w tym przykładzie może ona być taka sama dla wszystkich. 5. Wybierz z menu Animation/reactor/Preview Animation, by otworzyć okno Preview. Pojawi się okno dialogowe informujące o tym, że wiele mniejszych cząstek domku ma prawdopodobnie zbyt wysoką wartość parametru Density. Ponieważ już to wiemy, klikamy przycisk Continue, żeby zamknąć to okno. Wciśnij klawisz P, by obejrzeć animację.

1458

Dodatki

Piłka spada na domek, który rozlatuje się na kawałki. 6. Wybierz z menu Animation/reactor/Create Animation. Pojawi się okno dialogowe ostrzegające, że jest to proces nieodwracalny. Kliknij OK. Następnie, po zakończeniu animacji, kliknij przycisk Play, aby zobaczyć ostateczny rezultat. Na rysunku K.7 pokazano rozpad domku z piernika na kawałki. Rysunek K.7. Obiekt Fracture może być użyty do symulowania realistycznych eksplozji

Obiekt Water Obiekt Water tworzy realistyczną powierzchnię, która zachowuje się jak płyn. Dla obiektu Water możemy za pomocą parametrów Size X i Size Y ustalić rozmiar, a także ilość podziałów (Subdivisions). Musimy mieć świadomość, że woda z niewystarczającą liczbą podziałów siatki nie będzie realistyczna. Opcja Landscape (krajobraz) pozwala wybrać obiekt otoczenia, z którym woda będzie realistycznie współdziałać. Możemy także ustalić parametry, takie jak Wave Speed (szybkość fal), Minimum i Maximum Ripple Size (wielkość fal), Density (gęstość), Viscosity (lepkość) i Depth (głębia). Jeśli opcja Depth będzie nieaktywna, wtedy woda będzie tworzyć tylko efekty powierzchniowe. Obiekt Water działa na zasadzie pola sił. Pola sił nie są renderowane i aby zobaczyć powierzchnię wody, musimy utworzyć obiekt Plane i powiązać go z polem sił przy użyciu ikony Bind to Space Warp z głównego paska narzędziowego.

Ćwiczenie: Zabawa z wodą Zdolność do tworzenia i symulowania efektu wody jest jedną z najfajniejszych możliwości reactora. Zanim będziemy mogli skorzystać z efektu wody, musimy mieć model, w którym będzie zgromadzona.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1459

Aby przy użyciu reactora utworzyć pojemnik z wodą, wykonaj następujące czynności. 1. Otwórz plik Pool of water.max znajdujący się w folderze Bonus Chapter K na płycie dołączonej do książki. Plik ten zawiera pojemnik na wodę zbudowany z obiektów parametrycznych, a także trzy kule o różnych masach. 2. Wybierz polecenie Animation/reactor/Create Object/Rigid Body Collection, a następnie kliknij w oknie widokowym Front. W zakładce RB Collection Properties kliknij przycisk Add i zaznacz wszystkie obiekty Box i Sphere. Następnie kliknij prawym przyciskiem myszy, aby wyjść z trybu Rigid Body Collector. 3. Wybierz polecenie Animation/reactor/Create Objects/Water i kliknij oraz przeciągnij myszą w oknie widokowym Top, aby utworzyć wodę, która wypełni nasz pojemnik. Następnie w oknie widokowym Left podciągnij obiekt wody do góry, zbliżając poziom wody ku górze pojemnika. 4. Wyselekcjonuj kulę po lewej w oknie Front i otwórz Property Editor przez wybranie z menu polecenia Animation/reactor/Open Property Editor. Ustal wartość parametru Mass na 3 kg. Następnie wyselekcjonuj środkową kulę i ustaw Mass na 100 kg i w końcu dla kuli po prawej ustaw Mass na 5000 kg. 5. Obejrzyj animację w oknie Preview, wybierając z menu Animation/reactor/ Preview Animation i wciskając klawisz P. 6. Zapisz wszystkie klucze animacji przez wybranie z menu polecenia Animation/ reactor/Create Animation. 7. Wybierz polecenie Create/Standard Primitives/Plane i przeciągnij myszą w oknie widokowym Top, aby utworzyć obiekt Plane o takim samym rozmiarze i ilości podziałów siatki jak obiekt Water. Następnie kliknij przycisk Bind to Space Warp na głównym pasku narzędziowym i przeciągnij myszą od obiektu Plane do obiektu pola sił Water. Otwórz edytor materiałów (M) i przygotuj materiał o barwie delikatnie błękitnej i wartości parametru Opacity 20, a parametru Specular 75. Przeciągnij ten materiał na obiekt Plane. Na rysunku K.8 pokazano podgląd animacji w oknie Preview. Zwróć uwagę na wpływ parametru Mass, a więc na to, czy kule unoszą się na powierzchni wody, czy też toną.

Przeliczanie i podgląd symulacji Okno Preview oferuje więcej opcji, a nie tylko odtwarzanie animacji. Aby obejrzeć podgląd symulacji, wybieramy z menu polecenie Animation/reactor/Preview Animation lub klikamy przycisk Preview Animation na pasku narzędziowym reactora. Otwiera się okno Havok, takie jak na rysunku K.9. Oferuje ono kilka ciekawych opcji związanych z symulacją. Polecenie menu Simulation/Play/Pause (skrót na klawiaturze P) odtwarza (zatrzymuje) symulację. Przeciąganie myszą z wciśniętym lewym przyciskiem obraca scenę, a przybliżać i oddalać widok możemy za pomocą rolki myszy.

1460

Dodatki

Rysunek K.8. Zależnie od swojej masy obiekty toną lub pływają

Rysunek K.9. Okno Preview pozwala na zabawę z symulacją

Okno Preview działać będzie tylko wtedy, gdy używamy sterowników ekranu OpenGL lub Direct3D. Domyślnie okno korzysta z OpenGL, możemy zmienić to na DirectX za pomocą opcji DirectX w rolecie Display. Aktualnie używany sterownik ekranu jest widoczny na pasku tytułowym okna Preview.

Korzystanie z okna Preview Ciekawą opcją okna podglądu jest to, że umożliwia interakcję z obiektami. Klikając prawym przyciskiem myszy obiekt (w czasie odtwarzania symulacji) i przeciągając kursorem, możemy obiekt przemieszczać. Kiedy znajdziemy odpowiednią pozycję i chcemy ją zachować, wybieramy z menu okna polecenie Max/Update Max, aby ustalić ją jako pozycję początkową obiektu.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1461

Jeśli wybierzesz silnik reactora w wersji 3., będziesz mógł interaktywnie sterować obiektami w oknie podglądu symulacji przez przeciąganie ich przy wciśniętym klawiszu spacji.

Jeśli chcemy zresetować animację do początkowego stanu, korzystamy z polecenia Simulation/Reset. Menu Display zawiera kilka opcji, które pozwalają na zmianę sposobu wyświetlania sceny. Obiekty mogą być wyświetlane jako zbudowane ze ścianek Faces lub tylko w postaci siatki Wireframe. Jeśli mamy do wykonania animację szczególnie złożonej sceny, wyświetlanie podglądu animacji w trybie Wireframe może ułatwić pracę. Możemy także włączyć wyświetlanie granic kolizji obiektów (Simulation Edges), siatek płaszczyzn układu współrzędnych (Grids), początku globalnego układu współrzędnych (Origin) i światła pochodzącego ze źródła umieszczonego obok kamery (Flashlight). Menu Display zawiera także opcję Camera Settings, której używamy, aby określić bliższe i dalsze płaszczyzny tnące (Clipping Planes), a także kąt widzenia (Field of View) okna podglądu. Silnik reaktora w wersji nr 3 nie oferuje tylu opcji wyświetlania.

W menu Performance znajdziemy opcje do ustalania liczby klatek animacji na sekundę (fps), a także liczbę kroków pośrednich (substeps) wykorzystywanych przy przeliczaniu symulacji. Dla większości animacji domyślna liczba substeps wynosząca 10 jest wystarczająca, jeśli jednak zechcemy, by Max poświęcił więcej czasu na przeliczenie dokładniejszego rozwiązania danej sytuacji, możemy spróbować wyższej wartości tego parametru. Przy korzystaniu z obiektu Water nie należy używać wysokiej wartości kroków pośrednich.

Tworzenie kluczy animacji Aby w oparciu o symulację fizyczną przeliczyć i wygenerować zwyczajne klucze animacji, wybieramy z menu Animation/reactor/Create Animation lub wciskamy przycisk Create Animation na pasku narzędziowym reactora. Aktualny postęp jest wyświetlany na dole interfejsu Maksa. Używając klawisza Esc, możemy w dowolnym momencie przerwać symulację. Po wybraniu polecenia Create Animation pojawi się wiadomość ostrzegająca, że jest to proces nieodwracalny.

Analiza sceny Jeśli w scenie występują jakieś błędy lub nieprawidłowości mogące spowodować problemy w symulacji, to po otwarciu okna Preview pojawi się dialogowe okno ostrzegawcze. Zostaniemy także ostrzeżeni, jeśli pewne dane nie pasują do realistycznego przebiegu symulacji, np. wartości pewnych parametrów są zbyt wysokie lub zbyt niskie. Jeśli chcemy sprawdzić scenę bez otwierania okna Preview, możemy użyć polecenia Animation/reactor/Utilities/Analyze World. Polecenie to sprawdzi scenę pod kątem błędów i w oknie dialogowym wyświetli znalezione nieprawidłowości. Jeśli nie będzie błędów, poinformuje nas o tym osobne okno dialogowe.

1462

Dodatki Jedynym przypadkiem dotyczącym nierzeczywistych parametrów, w którym nie będziemy ostrzegani, jest sytuacja, w jakiej obiekty nie mają ustalonej wartości parametru Mass (czyli nie posiadają masy). Jeśli w symulacji pewne obiekty nie poruszają się w ogóle, wbrew naszym założeniom, należy upewnić się, że mają ustaloną niezerową wartość parametru Mass.

Ćwiczenie: Upuszczanie talerza z pączkami Dobra książka powinna zawierać elementy tragedii, rozważmy więc sytuację, kiedy policjant niosący na talerzu tuzin pączków potyka się i upuszcza talerz. Pączki porozrzucane wokół, ależ dramat! Taka sekwencja animacji byłaby trudna, a już na pewno czasochłonna, ale nie wtedy, kiedy mamy do dyspozycji reactor. Aby za pomocą reactora dokonać animacji upadającego talerza z pączkami, wykonaj następujące czynności. 1. Otwórz plik Falling plate of donuts.max znajdujący się w folderze Bonus Chapter K na płycie dołączonej do książki. Plik ten zawiera prosty model talerza z pączkami utworzonymi za pomocą obiektów parametrycznych. 2. Wybierz polecenie Animation/reactor/Create Object/Rigid Body Collection i kliknij w oknie widokowym Front. W rolecie RB Collection Properties kliknij przycisk Pick i wybierz talerz. Ponownie kliknij przycisk Pick i wybierz obiekt Box, który będzie podłogą. 3. Zaznacz obiekty Torus, a następnie wybierz polecenie Animation/reactor/Apply Modifier/Soft Body Modifier (lub kliknij przycisk Soft Body Modifier na pasku narzędziowym reactora). 4. Wybierz polecenie Animation/reactor/Create Object/Soft Body Collection i ponownie kliknij w oknie widokowym Front. W rolecie SB Collection Properties kliknij przycisk Add i wybierz ponownie wszystkie obiekty typu Torus. 5. Wybierz polecenie Animation/reactor/Open Property Editor, a następnie zaznacz obiekt Box. W zakładce Properties uaktywnij opcję Unyielding. Wybierz talerz i ustal dla niego wartość parametru Mass na 5.0. Następnie wskaż wszystkie pączki (torusy) i ustal dla nich parametr Mass na 0.25. Uaktywnij opcję Mesh Convex Hull. 6. Ostatnim krokiem jest wykonanie symulacji. Wybierz polecenie Animation/reactor/ Create Animation. Przeliczenie symulacji w tym przykładzie zajmie trochę czasu. Kiedy już zostanie przeliczona, wciśnij przycisk Play Animation (lub wciśnij klawisz /), aby obejrzeć rezultat. Na rysunku K.10 pokazano przewrócony talerz z pączkami.

Ograniczanie ruchu obiektów Użycie obiektów typu Constraint umożliwia ograniczanie ruchów wykonywanych przez obiekt. Zastosowanie ich daje większą kontrolę nad obiektami w scenie podczas interakcji z innymi obiektami. Prawdopodobnie najprostszym ogranicznikiem ruchu jest uaktywnienie

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1463

Rysunek K.10. Animacja tych pączków jako ciał miękkich jest przy użyciu reactora bardzo prosta

opcji Unyielding w oknie Property Editor. Opcja ta sprawia, że ciało sztywne pozostanie bez ruchu i używamy jej zazwyczaj dla obiektu służącego za podłoże. Istnieje także możliwość włączania oddziaływań między obiektami animowanymi ręcznie a ciałami sztywnymi zamiast polegania na obliczeniach reactora. Pozostałe obiekty ograniczające ruch znajdziemy w menu Animation/reactor/Create Objects. Są to: Constraint Solver, Rag Doll Constraint, Hinge Constraint, Point-Point Constraint, Prismatic Constraint, Car-Wheel Constraint oraz Point-Path Constraint. Wszystkie opisane zostały w tabeli K.4. Po dodaniu do sceny obiektów ograniczających ruch możemy, za pomocą przycisków w rolecie Properties, wybrać te, które posłużą jako obiekt dziecko i obiekt rodzic. Roleta Properties zawiera także przyciski do dopasowania pozycji ogranicznika do obiektu dziecka (Child Body), obiektu rodzica (Parent Body), układu współrzędnych obiektu dziecka (Child Space) lub układu współrzędnych obiektu rodzica (Parent Space). Dla każdego obiektu typu Constraint możemy ustalić wartość parametrów Strength i Tau. Parametry te determinują siłę połączenia i to, jak łatwe do zerwania jest dane połączenie. Poza parametrami Strength i Tau możemy ustalić parametry z grupy Limits, a także określić, przy jakiej liniowej (Linear) lub kątowej (Angular) sile ograniczenie może zostać zerwane (parametry opcji Breakable). Parametr Threshold określający próg zerwania ograniczenia działa tylko w 3. wersji reactora. Gdy jako pierwszy wybierzemy obiekt dziecko obiektu ograniczającego, ikona Constraint zostanie umieszczona w środku transformacji obiektu dziecka. Jeśli popatrzymy na stos

1464

Dodatki

Tabela K.4. Ograniczniki ruchów w reactorze Przycisk na pasku narzędziowym

Nazwa

Opis

Constraint Solver

Zawiera wszystkie aktywne ograniczniki sceny.

Rag Doll Constraint

Powoduje, że model zachowuje się jak postać ludzka.

Hinge Constraint

Dopuszcza tylko pewien zakres obrotu, jak w przypadku zawiasu.

Point-Point Constraint

Łączy ze sobą dwa punkty; użyteczne dla końcówek liny.

Prismatic Constraint

Używany, aby ograniczyć ruch dwóch ciał sztywnych do tylko jednej osi, bez rotacji.

Car-Wheel Constraint Nadaje samochodowi ruch liniowy, w czasie kiedy koło obraca się. Point-Path Constraint Ogranicza ruch punktu do ruchu po ścieżce.

modyfikacji obiektu Constraint, zobaczymy dostępne tryby podobiektów — Child Space i Parent Space. Po wejściu w któryś z tych trybów możemy zmieniać pozycję obiektu dziecka i obiektu rodzica.

Stosowanie obiektu Constraint Solver W większości przypadków, aby użyć obiektów ograniczających ruch, musimy dodać do sceny obiekt Constraint Solver. Wtedy, korzystając z panelu Modify, dodajemy do listy ograniczniki, które mają zostać uwzględnione przy ruchu obiektu. Musimy poinformować obiekt Constraint Solver o wszystkich zbiorach Rigid Body Collections, które zostały połączone z jakimkolwiek obiektem typu Constraint. Aby wyróżnić wszystkie ograniczniki dodane już do obiektu Constraint Solver, klikamy przycisk Highlight. Jeśli w scenie znajduje się jakiś ogranicznik, którego nie dodaliśmy do listy Constraint Solver, ikona obiektu Constraint Solver w oknach widokowych przybierze czerwoną barwę.

Ogranicznik Rag Doll Obiekt Rag Doll Constraint definiuje wszystkie ograniczenia stawów typowych dla ludzkiego ciała. Może zostać użyty do animacji manekina wchodzącego w kolizje z różnymi ciałami sztywnymi. Korzystając z ogranicznika Rag Doll, możemy ręcznie zdefiniować, jak stawy mogą się skręcać, obracać i poruszać. Stawy te są typowe dla ludzkiego ciała. Firma discreet opracowała skrypt określający ogólną mapę ludzkiego ciała, który tworzy manekin z odpowiednio zdefiniowanymi ogranicznikami. Skrypt ten nosi nazwę rtcRagdollScript.ms i znajduje się w folderze Scripts w miejscu, gdzie zainstalowaliśmy program 3ds Max.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1465

Uruchamiamy skrypt, otwierając panel Utilities i klikając przycisk MAXScript, a następnie przycisk Run Script. Otworzy się okno dialogowe wyboru plików. Wskaż plik skryptu i kliknij Open. Po uruchomieniu skryptu otwiera się okno dialogowe Ragdoll pokazane na rysunku K.11. W nim możemy wprowadzić nazwę manekina oraz ustalić jego wzrost (Height) i liczbę kręgów (Vertebra). Przycisk Create Humanoid powoduje pojawienie się manekina w oknach widokowych. Rysunek K.11. Humanoid ze wszystkimi ograniczeniami ruchu może zostać utworzony przy użyciu skryptu rctRagdollScript.ms

Po umieszczeniu go w żądanym miejscu wciskamy przycisk Constrain Humanoid w rolecie Constrain Humanoid. Wprowadziliśmy właśnie wszystkie niezbędne ograniczenia w stawach manekina. Skrypt rtcRagdollScript można wykorzystać do nałożenia ograniczników reactora na obiekt typu Biped.

Ogranicznik Point-Point pozwala przyłączyć dwa obiekty do jednego, wspólnego punktu. Punkt ten staje się środkiem transformacji obiektu dziecka i obiektu rodzica.

Ćwiczenie: Wpadanie na ścianę Zabawa z obiektem Rag Doll to czysta forma rozrywki. Pamiętajmy, że w oknie Preview możemy, korzystając z prawego przycisku myszy, dosłownie rzucać manekinem wokół. Aby w tym przykładzie stworzyć prostą scenę, w której huśtający się na linie manekin wpada wprost na mur, użyjemy kilku ograniczników Point-Point wraz z ogranicznikiem Rag Doll. By dokonać animacji manekina huśtającego się na linie, wykonaj następujące czynności. 1. Otwórz plik Swinging into a wall.max znajdujący się w folderze Bonus Chapter K na płycie dołączonej do książki. Plik ten zawiera prostą scenę zbudowaną z kilku obiektów Box i obiektu Cylinder służącego za linę. W scenie znajduje się także mur. 2. Otwórz panel Utilities i kliknij przycisk MAXScript. Następnie kliknij przycisk Run Script w rolecie MAXScript. W oknie dialogowym pliku wskaż folder Scripts w katalogu głównym Maksa. Wybierz plik rctRagdollScript.ms i kliknij przycisk Open. Otworzy się okno MAXScript. W oknie tym wybierz polecenie menu File/Evaluate All, aby otworzyć panel Reg Doll. 3. W panelu Rag Doll rozwiń roletę Create Humanoid i kliknij przycisk Create Humanoid. Odsuń na bok panel Rag Doll, ale nie zamykaj go. Wyselekcjonuj utworzony właśnie obiekt manekina i przesuń go tak, aby jedna z jego rąk znajdowała się w pobliżu obiektu Cylinder.

1466

Dodatki

4. W panelu Rag Doll rozwiń roletę Constrain Humanoid i kliknij przycisk Constrain Humanoid. Manekinowi zostaną automatycznie nadane wszystkie niezbędne ograniczenia ruchu. Zamknij panel Rag Doll. 5. Wyselekcjonuj długi obiekt Cylinder, wybierz polecenie Animation/reactor/ Create Object/Point-Point Constraint i kliknij w oknie widokowym Left blisko manekina. W rolecie Properties kliknij przycisk Child i wybierz obiekt ręki znajdujący się blisko obiektu Cylinder. Następnie uaktywnij opcję Parent, kliknij przycisk Parent i wybierz obiekt Cylinder. Otwórz panel Modify, wybierz tryb podobiektu Parent Space i przesuń gizmo w oknie widokowym Front tak, aby znajdowało się na obiekcie Cylinder. Wykonaj tę samą czynność dla trybu podobiektu Child Space. W ten sposób określisz miejsce złączenia obu obiektów. 6. Powtórz etap 5., aby utworzyć ogranicznik Point-Point Constraint w miejscu, gdzie obiekt Cylinder dotyka obiektu tworzącego dach, przy czym Cylinder to obiekt dziecko, a dach to obiekt rodzic. Przy wybranym drugim ograniczniku Point-Point kliknij przycisk Align Spaces to Parent Body w panelu Modify. 7. Wciśnij klawisz H, aby otworzyć okno dialogowe Select Objects, a następnie wybierz obiekt RagdollRBCollection. Kliknij przycisk Add w rolecie RB Collection Properties. Kliknij przycisk All w oknie dialogowym Select rigid bodies, a następnie Select. Powtórz tę czynność dla ikony RagdollCSolver, żeby dodać dwa nowe ograniczniki Point-Point. 8. Wyselekcjonuj w scenie wszystkie trzy obiekty Box i wybierz z menu Animation/ reactor/Open Property Editor. W rolecie Physical Properties uaktywnij opcję Unyielding. Następnie wybierz obiekt Cylinder i ustal wartość jego parametru Mass na 0.5. 9. Wybierz z menu Animation/reactor/Preview Animation, aby zobaczyć pogląd animacji. Następnie wybierz reactor/Create Animation, by utworzyć klucze animacji. Na rysunku K.12 pokazano huśtającego się manekina.

Rozwiązywanie problemów w pracy z reactorem Reactor rozpoznaje problemy, zanim spróbujemy wykonać podgląd lub przeliczenie symulacji i wyświetla je w oknie z błędami. Poniżej opisano klika najczęstszych błędów, których można uniknąć. Aby wyszukać nieprawidłowości tego typu, należy skorzystać z przycisku Analyze World. 

Nie należy używać standardowego obiektu Plane Maksa — reactor napotyka trudności związane z zerową grubością obiektu Plane. Problem polega na tym, że reactor nie może dokładnie przeliczyć kolizji, kiedy obiekt nie ma żadnej określonej grubości. Powinniśmy używać raczej obiektu Box lub obiektu Plane reactora (znajdującego się na pasku narzędziowym reactor), a jeśli już musimy użyć obiektu Plane, powinniśmy mu przypisać właściwość Concave Mesh.

Dodatek K  Wykorzystanie reactora do symulacji ruchów

1467

Rysunek K.12. Użycie ograniczników umożliwia kontrolę nad animowanym ruchem



Ostrożnie ze zbyt niskimi wartościami masy — reactor napotyka trudności, gdy wartość Mass któregoś z obiektów jest zbyt niska. Aby naprawić ten problem, należy zwiększyć wartość parametru Mass dla danego obiektu.



Nie należy stosować obiektów zachodzących na siebie — przecinające się obiekty powodują błędy w pracy reactora. Należy upewnić się, że żadne obiekty nie przecinają się nawzajem.



Nie należy tworzyć obiektów o zbyt zróżnicowanych rozmiarach — reactor najlepiej radzi sobie z obiektami o rozmiarach porównywalnych. Obiekty zbyt małe lub zbyt duże mogą sprawiać problemy przy wyznaczaniu kolizji.

Podsumowanie W rozdziale tym poznaliśmy podstawy symulacji dynamicznych z wykorzystaniem modułu reactor. Omówiliśmy następujące tematy: 

eksperymenty z modułem reactor,



pracę z kolekcjami,



przypisywanie modyfikatorów reactora,



użycie obiektów reactora,



podgląd animacji reactora,



użycie ograniczników ruchu.

1468

Dodatki

Dodatek L

Używanie miksera ruchu W tym dodatku: 

Okno miksera ruchu



Praca z dwunogami

Mikser ruchu pozwala na połączenie kilku animacji zawierających dwunogi i inne obiekty. Można je zmieszać i łączyć za pomocą przejść, a także wprowadzać w nich zmiany. Zanim nauczysz się animować postaci za pomocą różnych technik, poczynając od trybów Footstep i Freeform dla obiektu Biped, a skończywszy na systemach kości korzystających z algorytmów kinematyki odwrotnej, warto, abyś poznał funkcje pozwalające na wielokrotne użycie tych samych sekwencji animacji z różnymi postaciami. Technika ta zwana jest przenoszeniem (Retargeting) i wiąże się ze skalowaniem kluczy tak, aby dana animacja mogła być użyta dla postaci o innych rozmiarach.

Używanie miksera ruchu Mikser ruchu to niezależne okno, które możesz zobaczyć na rysunku L.1. Otwierasz je przy użyciu polecenia Motion Mixer z menu Graph Editors. Możesz je także otworzyć za pomocą przycisku Mixer znajdującego się w rolecie Biped Apps w panelu Motion, przy zaznaczonym dwunogu. Jeśli użyjesz tego przycisku, mikser ruchu otworzy się z istotą dwunożną figurującą jako ścieżka.

Okno miksera ruchu Wzdłuż górnej krawędzi okna miksera ruchu znajduje się pasek menu i rząd przycisków paska narzędziowego. Wiele tych przycisków działa tak samo jak polecenia wybierane z menu. Dostęp do tych poleceń możesz także uzyskać, klikając prawym przyciskiem myszy. Przyciski paska narzędziowego są opisane w tabeli L.1. Po lewej stronie okna znajduje się lista ścieżek wyświetlonych pod nazwą kontrolującego je obiektu lub dwunoga. Przycisk m (mute) służy do wyciszania ścieżki, co oznacza usunięcie jej wpływu na inne animacje, a s to przycisk „solo”, który na tej ścieżce wyświetla

1470

Dodatki

Rysunek L.1. Okno miksera ruchu wyświetla każdą wczytaną animację na osobnej ścieżce

Tabela L.1. Przyciski paska narzędziowego miksera ruchu Przycisk

Nazwa

Opis

Add Max Objects

Otwiera okno dialogowe wyświetlające wszystkie obiekty Maksa w aktualnej scenie. Zaznaczone obiekty są dodawane w mikserze ruchu jako ścieżki.

Add Bipeds

Otwiera okno dialogowe wyboru wyświetlające wszystkie dwunogi w aktualnej scenie. Zaznaczone obiekty są dodawane w mikserze ruchu jako ścieżki.

Delete

Usuwa wybraną ścieżkę z okna.

Select

Włącza tryb zaznaczania ścieżek. Możliwe jest wybranie wielu ścieżek jednocześnie.

Move Clips

Umożliwia przemieszczanie ścieżek i klipów w obrębie ścieżek. Przytrzymanie klawisza Shift kopiuje zaznaczone elementy.

Slide Clips

Umożliwia poziome przesunięcie klipu w obrębie jego ścieżki.

pola Offset i Frame

Wyświetlają odpowiednio wielkość przesunięcia klipu od pierwotnej klatki i numer aktualnej klatki.

Trim Clips

Wyświetla pierwotny klip jako szary pasek pod przycinaną ścieżką. Klipy można przycinać przez przeciąganie ich końców.

Editable Time Warps

Wyświetla znaczniki przekształcenia czasu dodane do animacji.

Draggable Tracks

Umożliwia przeciąganie klipów między ścieżkami.

Lock Transitions

Blokuje ścieżkę przejścia, przez co nie ulega ona zmianom w przypadku edycji klipu.

Dodatek L  Używanie miksera ruchu

1471

Tabela L.1. Przyciski paska narzędziowego miksera ruchu — ciąg dalszy Przycisk

Nazwa

Opis

Set Range

Ustawia zakres wybranej ścieżki tak, aby równał się całemu zakresowi czasowemu.

Pan

Pozwala przesuwać zawartość okna.

Zoom Extents

Wyświetla pełny zakres wszystkich ścieżek.

Zoom

Powiększenie widoku ścieżek.

Zoom Region

Wyświetla w powiększeniu obszar zaznaczony przeciągnięciem kursora.

Snap Frames

Powoduje przyciągnięcie wszystkich klipów do najbliższych klatek.

Snap Clips

Powoduje wzajemne przyciąganie się klipów w obrębie jednej ścieżki podczas ich przesuwania.

Preferences

Otwiera okno dialogowe ustawień miksera ruchu.

Reservoir

Otwiera okno dialogowe Reservoir, w którym wyświetlone są dostępne klipy.

Horizontal, Vertical, Horizontal & Vertical

Umożliwia pionową i poziomą edycję wag.

Edit Weight Curve

Umożliwia edycję krzywych Weight.

jedynie klip animacji. Prawa strona okna pokazuje wartość wagi każdej ścieżki. Przycisk w pozwala na edycję wartości wag dla wybranej ścieżki, a b (balance) umożliwia edycję wagi dla ścieżki równowagi.

Dodawanie ścieżek warstw i ścieżek przejścia Jeśli do otwarcia miksera ruchu użyjesz przycisku Mixer z rolety Biped Apps, wybrany dwunóg jest automatycznie dodawany jako ścieżka w oknie miksera. Po otwarciu miksera możesz dodawać kolejne ścieżki dwunogów przy użyciu przycisku Add Biped, który powoduje otwarcie okna dialogowego z listą dostępnych w scenie animacji istot dwunożnych. Ścieżki dwunogów dodawane do miksera ruchu zawierają dodatkową ścieżkę równowagi, która nie jest dostępna dla innych ścieżek. Aby zobaczyć, jak zmiksowany ruch wpływa na wybranego dwunoga, kliknij przycisk Mixer Mode w rolecie Biped, w panelu Motion.

Ścieżki pozostałych obiektów dodawane są za pomocą przycisku Add Max Objects. Otwiera on podobne okno dialogowe z listą obiektów dostępnych w scenie.

1472

Dodatki Ścieżki dwunogów są zaznaczone kolorem ciemnożółtym, a ścieżki pozostałych obiektów — jasnoniebieskim. Możesz zmienić kolory tych ścieżek przy użyciu okna dialogowego otwieranego za pomocą polecenia Track Color z menu Mix.

W oknie możesz dodać następne ścieżki przy użyciu polecenia Tracks/Add Layer Track Above lub Tracks/Add Layer Track Below. Za pomocą poleceń menu Tracks możesz dodać również ścieżki przejścia (Transition). Są one wyższe niż ścieżki warstw i pozwalają określić sposób przejścia pomiędzy nachodzącymi na siebie klipami. Wszystkie animacje dodane do miksera ruchu w czasie sesji są automatycznie kopiowane do okna dialogowego Reservoir, stanowiącego swoistego rodzaju bibliotekę, pozwalającą na szybki dostęp do różnych animacji. Dodatkowo w oknie tym możesz obejrzeć podgląd wczytywanych plików .bip.

Edycja klipów Klipy można bardzo łatwo przycinać przez przeciąganie początku lub końca ścieżki. Kursor po ustawieniu go w jednej z tych pozycji zmienia kształt. Aby uzyskać podgląd pierwotnej długości klipu, kliknij przycisk Trim Clips. Pierwotny rozmiar animacji jest wyświetlany w kolorze szarym. Edycja klipów animacyjnych w mikserze ruchu odbywa się podobnie jak w programach do nieliniowego montażu filmów, np. w Adobe Premiere lub Final Cut Pro.

Edycja wag ścieżek Każda ścieżka ma przypisaną wagę. Określa ona wpływ ścieżki przy nakładaniu się na siebie dwóch lub więcej animacji. Może ona przybrać wartość od 1,0 (pełny wpływ) do 0,0 (brak wpływu). Jeśli dwie nakładające się animacje mają wagi o wartości 1,0, używana jest animacja znajdująca się wyżej. Aby zmienić wagę ścieżki, kliknij przycisk w po prawej stronie ścieżki. Wyświetli się wartość wagi jako czerwona linia na ścieżce. Jeśli ustawisz kursor nad tą linią, zmieni on kształt i pozwoli na dodanie punktu edycji. Taki punkt możesz potem przemieścić w pionie, w poziomie lub w obu kierunkach, zależnie od opcji wybranej na pasku narzędziowym. Wartość wagi dla zaznaczonego punktu jest wyświetlana w polu po prawej stronie ścieżki. Możesz wybrać i edytować jednocześnie kilka punktów wagi.

Dodawanie przekształceń czasu (Time Warps) Przekształcenie czasu jest dokładnie tym, czym się wydaje, czyli sposobem na zmianę czasu — przyspieszanie lub zwalnianie animacji. Aby dodać przekształcenie czasu, zaznacz klip i wybierz polecenie Add Time Warp z menu Clips. Kursor zmieni kształt i umożliwi dodanie przekształcenia czasu na ścieżce. Ma ono postać cienkiej, pionowej, białej linii. Po dodaniu przekształcenia do animacji możesz włączyć tryb edycji przekształceń czasu, klikając przycisk Editable Time Warps. Na klipie pojawi się przerywana linia, która pozwala zorientować się w zmianach wprowadzanych w animacji. Następnie kliknij i przeciągnij

Dodatek L  Używanie miksera ruchu

1473

górę znacznika przekształcenia czasu, aby zmienić czas w jedną stronę. Możesz też kliknąć i przeciągnąć dolną połowę znacznika przekształcenia czasu, aby zmienić czas w drugą stronę. Przerywane linie pokazują względny efekt Twoich działań. Na rysunku L.2 przedstawiono dwie ścieżki warstw oddzielone ścieżką przejścia. Górna ścieżka ma domyślne odstępy dla przekształcenia czasu, a dolna pokazuje czas skompresowany w prawą stronę. Rysunek L.2. Do klipów możesz dodawać przekształcenia typu Time Warp, aby skompresować czas

Praca z dwunogami Mikser ruchu umożliwia również pracę z obiektami typu biped. Efekt zmiksowania animacji można skopiować i przenieść na dwunoga, zmuszając go w ten sposób do wykonania określonych ruchów.

Kopiowanie zmiksowanej animacji do dwunoga Po zmiksowaniu animacji możesz za pomocą polecenia Compute Mixdown z menu Mix utworzyć nową ścieżkę, pod nazwą Mixdown, zawierającą wszystkie zmontowane animacje. Tę nową ścieżkę możesz skopiować do dwunoga za pomocą polecenia Copy Mixdown to Biped z menu Mix.

Zapisywanie i wczytywanie plików montażowych Wszystkie animacje wczytane i edytowane w mikserze ruchu mogą zostać zapisane w zewnętrznym pliku w formacie .mix przy użyciu polecenia Save Mix File z menu Mix, a potem ponownie wczytane do miksera ruchu za pomocą opcji Load Mix File z menu Mix.

Ćwiczenie: Miksowanie animacji dwunogów Miksowanie animacji dwunogów daje bardzo interesujące efekty. Spróbuj np. zmontować przewrót w tył z przewrotem w przód, a uzyskasz naprawdę zakręconego dwunoga, ale w przypadku prostszych ruchów — np. postaci przechodzącej z marszu w postawę bojową — mikser ruchu może okazać się bardzo pomocnym urządzeniem, które zaoszczędzi Ci mnóstwo czasu. Aby zmontować dwie animacje w jeden płynny ruch, wykonaj następujące czynności.

1474

Dodatki

1. Kliknij ikonę Systems w panelu Create i wybierz przycisk Biped. Następnie przeciągnij w oknie podglądu Left, aby utworzyć dwunoga. 2. Zaznacz dwunoga, otwórz panel Motion i kliknij przycisk Mixer w rolecie Biped Apps, aby otworzyć mikser ruchu. Zauważ, że przycisk Mixer Mode w rolecie Biped jest automatycznie włączany. 3. Kliknij pierwszą ścieżkę dwunoga w mikserze ruchu, aby ją zaznaczyć, i wybierz z menu Tracks opcję New Clips/From Files. W oknie dialogowym Open znajdź i załaduj plik Walking.bip z płyty dołączonej do książki. Klip animacji o długości 78 klatek zostanie wczytany do miksera ruchu. 4. Zaznacz nową animację i wybierz z menu Tracks opcję Add Layer Track Below, aby utworzyć ścieżkę warstwy. 5. Zaznacz nową ścieżkę warstwy i ponownie z menu Tracks wybierz polecenie New Clips/From Files. W oknie dialogowym Open znajdź i wybierz plik Fighting stance.bip z płyty dołączonej do książki. Ta animacja ma jedynie 10 klatek. 6. Zaznacz ścieżkę Walking i wybierz z menu Tracks polecenie Convert to Transition Track. Następnie zaznacz i przeciągnij animację Fighting stance na dolny poziom ścieżki przejścia w miejsce klatki 79. Przejście pomiędzy dwoma klipami zostanie automatycznie dodane, co przedstawiono na rysunku L.3. Rysunek L.3. Dwie animacje dwunoga zostały połączone w jeden nowy klip

7. Przeciągnij suwak czasu, aby obejrzeć nową, zmontowaną animację. Następnie zaznacz ścieżkę podstawową Biped i z menu Mix wybierz opcję Compute Mixdown, a potem Mix/Copy Mixdown to Biped.

Podsumowanie Okno miksera ruchu służy do łączenia wielu oddzielnych klipów animacji w jedną, płynną sekwencję. Przy jego użyciu możesz montować animacje dwunogów i innych obiektów. W rozdziale tym omówiono zagadnienia, takie jak: 

używanie miksera ruchu do edycji ścieżek,



dodawanie przejść,



ustawianie wartości wag,



miksowanie animacji dwunogów.

Dodatek M

Automatyzacja pracy za pomocą MAXScriptu W tym dodatku: 

Początki pracy z MAXScriptem



Poznawanie narzędzi MAXScript, takich jak edytor MAXScriptu i okno Listener



Nagrywanie skryptów z użyciem narzędzia Macro Recorder



Ustawianie preferencji MAXScriptu



Poznawanie różnych typów skryptów



Pisanie własnych skryptów



Opanowanie interfejsu Visual MAXScript Editor



Tworzenie własnej rolety przy użyciu Visual MAXScript Editor

Twórcy Maksa dołożyli wiele starań, aby sprawić, że jedynym ograniczeniem podczas pracy z tym programem będzie nasza wyobraźnia. Zawarli w programie tyle różnych funkcji i tyle możliwości korzystania z nich, że nawet po latach pracy z Maksem wciąż możemy odkrywać nowe sposoby na wykonywanie różnych zadań. Mimo że Max ma ogromne możliwości, może kiedyś nadejść taki moment, że będziemy potrzebowali nowej opcji. Z MAXScriptem możemy rozbudować Maksa tak, aby spełniał nasze wymagania, ustawić go, by działał w sposób, jakiego sobie życzymy, a nawet sprawić, żeby za nas wykonywał niektóre powtarzające się czynności.

Czym jest MAXScript? W tym rozdziale przyjrzymy się MAXScriptowi, dowiemy się, czym jest i dlaczego mielibyśmy go używać. Zanim jednak zagłębimy się w szczegóły, garść ogólnych informacji. Najprościej mówiąc, MAXScript to narzędzie, którego używamy, aby rozszerzyć funkcjonalność Maksa. Korzystać z niego możemy, aby dodać nowe funkcje i dopasować

1476

Dodatki

program do naszych indywidualnych preferencji. Możemy także użyć go jako swego rodzaju magnetowidu i nagrać wykonywane przez nas czynności, aby odtworzyć je później, eliminując konieczność powtarzania niektórych operacji. MAXScriptu możemy używać do „rozmowy” z Maksem o scenie i informowania o tym, co chcemy osiągnąć. Max rejestruje, jakie czynności wykonujemy, i jest w stanie je powtórzyć, możemy też napisać mu wprost, jakie operacje ma zrealizować. Piękno MAXScriptu polega na jego elastyczności i prostocie. Został zaprojektowany tak, że jest integralną częścią Maksa. Nie dajmy się jednak tej prostocie oszukać, MAXScript jest wystarczająco bogaty, aby kontrolować dosłownie wszystko, na co pozwala Max. Tak naprawdę, korzystaliśmy już z MAXScriptu, nawet o tym nie wiedząc. Niektóre przyciski i rolety używają po trosze tego języka, aby wykonywać nasze polecenia. Po utworzeniu za pomocą MAXScriptu nowej funkcji możemy idealnie zintegrować ją z Maksem i używać tak, jakby to była funkcja programu. MAXScript to w pełni funkcjonalny i bardzo potężny język komputerowy, ale nie musimy być zawodowymi programistami, a nawet nie musimy mieć w tej dziedzinie żadnego doświadczenia, aby z niego korzystać. W kilku następnych podrozdziałach poznamy niektóre proste sposoby korzystania z MAXScriptu. Na razie dobrze jest myśleć o skrypcie Maksa tak, jak o scenariuszu filmu lub sztuki — zapisano w nim, co się stanie, kto co zrobi i kiedy to nastąpi. Jeśli porównamy scenę Maksa do sceny teatralnej, skrypt jest reżyserem pracy Maksa, tak jak wcześniej reżyserem był użytkownik. Zanim przejdziemy do szczegółów, jeszcze jedna uwaga: MAXScript jest narzędziem tak potężnym, że można by o nim napisać całą książkę, jednak nie to jest naszym celem. Rozdział ten ułożony jest tak, aby wprowadzić czytelnika w świat MAXScriptu i nauczyć podstawowych umiejętności potrzebnych do posługiwania się nim. Wyłożone tu zostały podstawy, które potem mogą przerodzić się w zaawansowaną wiedzę, zależnie od potrzeb.

Narzędzia MAXScriptu MAXScript jest praktycznie wszechobecny i dostępny w wielu różnych miejscach programu. W podrozdziale tym objaśniamy narzędzia MAXScriptu i tworzenie oraz wykorzystywanie skryptów. Spójrzmy na niektóre z narzędzi używanych w pracy z MAXScriptem. Max został wyposażony w wiele narzędzi ułatwiających tworzenie i korzystanie ze skryptów.

Menu MAXScript Menu MAXScript zawiera polecenia, których używamy do tworzenia nowych skryptów, otwierania i uruchamiania zapisanych skryptów, otwierania okna MAXScript Listener (skrót na klawiaturze F11), włączania rejestratora makr (Macro Recorder), otwierania edytora Visual MAXScript Editor oraz uzyskiwania dostępu do okna dialogowego Debugger.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1477

Polecenie New Script otwiera okno edytora MAXScriptu; jest to prosty edytor tekstowy, w którym piszemy skrypty. Więcej informacji o tym oknie znajdziesz w punkcie „Okna edytora MAXScriptu”, dalej w tym rozdziale. Polecenie Open Script otwiera okno dialogowe, którego używamy do załadowania pliku ze skryptem. Plik skryptu otwierany jest w oknie edytora, co pokazano na rysunku M.1. Pliki MAXScriptu mają rozszerzenie .ms lub .mcr. Polecenie Run Script także otwiera okno dialogowe wyboru pliku, gdzie możemy wskazać plik ze skryptem, który ma zostać uruchomiony. Rysunek M.1. Skrypty w języku MAXScript piszemy z użyciem standardowej składni w oknie prostego edytora tekstu

Kiedy korzystamy z polecenia Run Script, niektóre skrypty robią coś natychmiast, a inne instalują się w postaci nowych narzędzi.

Polecenie MAXScript Listener otwiera okno MAXScript Listener. Możemy także otworzyć to okno, wciskając na klawiaturze F11. Polecenie Macro Recorder rozpoczyna nagrywanie makra MAXScriptu. Okno MAXScript Listener i nagrywanie makr zostało opisane w dalszej części rozdziału.

Roleta MAXScript w panelu Utilities Do rolety MAXScript, pokazanej na rysunku M.2, uzyskujemy dostęp, otwierając boczny panel Utilities i klikając przycisk MAXScript. Otwiera się roleta, gdzie możemy wybierać wiele tych samych poleceń, które dostępne są w menu MAXScript. Roleta MAXScript zawiera także rozwijaną listę Utilities, która przechowuje wszystkie narzędzia zaimplementowane za pomocą skryptów. Każde takie narzędzie to nowa funkcja programu, której możemy używać. Parametry tych narzędzi wyświetlane są w nowej rolecie, która pojawia się poniżej rolety MAXScript.

1478

Dodatki

Rysunek M.2. Roleta MAXScript w panelu Utilities to doskonałe miejsce na rozpoczęcie pracy z MAXScriptem

Ćwiczenie: Korzystanie ze skryptu SphereArray Teraz mamy szansę trochę się pobawić i zyskać nieco doświadczenia w pracy z MAXScriptem. W folderze Bonus Chapter M na płycie dołączonej do książki znajduje się skrypt nazwany SphereArray.ms. Działa on podobnie do polecenia Arrray z menu Tools, ale tworzy kopie obiektu i losowo rozmieszcza je na kulistym wzorcu. Aby załadować i uruchomić skrypt SphereArray, wykonaj następujące czynności. 1. Wybierz polecenie Create/Standard Primitives/Box i przeciągnij w oknie widokowym Top, aby utworzyć obiekt Box o wartościach parametrów Length równej 10, a Width i Height równych 1.0. 2. Zaznacz obiekt Box, otwórz boczny panel Utilities (ikona młotka) i kliknij przycisk MAXScript. Pojawi się roleta MAXScript. 3. Kliknij przycisk Run Script w rolecie MAXScript, aby otworzyć okno dialogowe Choose Editor File, wskaż plik SphereArray.ms w folderze Bonus Chapter M na płycie i kliknij Open (Otwórz). Narzędzie SphereArray zainstaluje się i pojawi na rozwijanej liście Utilities. (Ponieważ SphereArray to narzędzie skryptowe, uruchomienie go spowoduje tylko instalację). 4. Wybierz SphereArray z rozwijanej listy Utilities. Upewnij się, że obiekt Box jest wyselekcjonowany. 5. W rolecie SphereArray wprowadź wartość 50 w polu Object Count, a 2.0 w polu Radius. Teraz kliknij przycisk Go!, aby uruchomić skrypt. Skrypt doda do sceny 50 kopii obiektu Box i losowo rozmieści je w odległości dwóch jednostek od oryginału. Na rysunku M.3 pokazano rezultat działania skryptu SphereArray. Zauważ, że skrypt ten przypomina inne funkcje lub narzędzia Maksa.

Okno MAXScript Listener Na rysunku M.4 widzimy okno MAXScript Listener (skrót klawiszowy F11), pozwalające na interaktywną pracę z interpreterem języka MAXScript. Górne pole okna Listener (obszar różowy) pozwala wprowadzać polecenia MAXScriptu; ich efekty wyprowadzane

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1479

Rysunek M.3. Efekt pracy skryptowego narzędzia SphereArray Rysunek M.4. Okno MAXScript Listener interpretuje nasze polecenia

są w dolnym polu (obszar biały). Możemy także wprowadzić polecenia do dolnego pola, ale robiąc to w górnym, oddzielamy polecenia od rezultatów. Przez przeciąganie listwy oddzielającej te pola możemy zmieniać ich rozmiar w zależności od potrzeb. Gdy po raz pierwszy otworzysz okno MAXScript Listener, jego górny panel będzie niewidoczny. Aby oba panele uczynić widocznymi, musisz przeciągnąć oddzielającą je belkę w dół.

Po wpisaniu poleceń do któregoś z pól i wciśnięciu Enter interpreter języka MAXScript przetwarza polecenia i wyświetla wyniki. Jeśli np. wpiszemy proste matematyczne wyrażenie, takie jak 2+2 i wciśniemy Enter, rezultat o wartości 4 zostanie wyświetlony w następnej linii na niebiesko. Większość rezultatów wyświetlana jest na niebiesko, a na czerwono

1480

Dodatki

zabarwione są informacje o błędach, kiedy te wystąpią. Jeśli np. wpiszemy polecenie hello there, pojawi się napis w kolorze czerwonym o błędzie Type, ponieważ interpreter MAXScript nie rozumie tego polecenia. Interpreter MAXScript jest bardzo kapryśny. Brak jednej litery w pisowni polecenia powoduje błąd; MAXScript ma własność zwaną case-insensitive, co znaczy, że małe i wielkie litery nie są rozróżniane. A więc możemy wpisać sphere, Sphere lub SPHERE, a Max nie dostrzeże różnicy.

Okno Listener zawiera następujące menu. 

File — korzystamy z tego menu, aby zamknąć okno (Close, Ctrl+W), zapisać naszą pracę (Save, Ctrl+S), uruchomić skrypt (Run Script, Ctrl+R), otworzyć skrypt do edycji (Open Script, Ctrl+O) lub od zera utworzyć nowy skrypt (New Script, Ctrl+N).



Edit — tu uzyskujemy dostęp do często używanych funkcji edycyjnych, takich jak wycinanie, wklejanie i cofanie operacji.



Search — z tego menu korzystamy podczas przeszukiwania zawartości okna w celu znalezienia konkretnego tekstu (Find, Ctrl+F), znalezienia następnego elementu (Find Next, Ctrl+G) lub zastąpienia tekstu (Replace, Ctrl+H).



MacroRecorder — to pozwala ustawić różne opcje rejestratora makr.



Debugger — w tym menu otwieramy okno dialogowe MAXScript Debugger.



Help — to daje dostęp do pomocy na temat MAXScriptu (F1).

Ćwiczenie: „Rozmowa” z interpreterem MAXScriptu W tym ćwiczenie zdobędziemy trochę doświadczenia w pracy z oknem MAXScript Listener i wypróbujemy kilka prostych poleceń. Aby rozpocząć korzystanie z MAXScriptu, wykonaj następujące czynności. 1. Wybierz z menu File/Reset, aby przywrócić pierwotne ustawienia Maksa. 2. Wybierz MAXScript/MAXScript Listener (lub wciśnij F11), aby otworzyć okno MAXScript Listener. 3. Kliknij gdziekolwiek w dolnym okienku okna Listener, wprowadź następujący fragment tekstu i wciśnij Enter: sphere()

Utworzony zostanie obiekt kuli o domyślnych parametrach. 4. Następnie do dolnego okienka wprowadź następujący tekst, po czym wciśnij Enter: torus radius1:50 radius2:5

Max utworzy obiekt Torus i doda go do sceny. Tak jak określiłeś to w treści skryptu, zewnętrzny promień (radius1) wynosi 50, a promień samego torusa (radius2) wynosi 5. Max teraz poinformuje, że utworzył nowy obiekt Torus w zerowym punkcie układu współrzędnych i nadał mu nazwę Torus01.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1481

5. Teraz użyj MAXScriptu, aby przesunąć obiekt Torus. W oknie Listener wpisz: $Torus01.position.x = 20

Po wciśnięciu Enter zobaczysz, jak obiekt Torus przesuwa się wzdłuż osi X. Każdy obiekt w Maksie posiada właściwości i atrybuty opisujące go, a Ty właśnie wprowadziłeś jeden parametr drogą programową, zamiast używać rolety parametrów lub myszy. W tym przypadku powiedziałeś Maksowi: „Obiekt Torus01 ma właściwość position. Ustaw składową X tej właściwości na 20”. Symbol $ identyfikuje nazwany obiekt. Możemy go użyć, aby odnieść się do każdego obiektu, kiedy znamy jego nazwę.

6. Aby zobaczyć listę właściwości obiektu Torus, wprowadź: Showproperties $Torus01

W oknie pojawi się lista właściwości obiektu Torus01. Na rysunku M.5 ukazano okno MAXScript Listener z wszystkimi wpisanymi do tej pory poleceniami i ich rezultatami. Rysunek M.5. Korzystając z okna MAXScript Listener, możemy zapytać Maksa o właściwości obiektu

Z tego ćwiczenia warto zapamiętać, że korzystając z MAXScriptu, możemy zrobić praktycznie wszystko. Każda właściwość każdego obiektu, na którą możemy wpłynąć poprzez roletę interfejsu programu, jest także dostępna w MAXScripcie. Można nawet posunąć się dalej, tworząc przy użyciu wyłącznie MAXScriptu całe sceny, jednak prawdziwą mocą tego języka jest automatyczne wykonywanie za nas różnych czynności. Max „pamięta” rezultat ostatniego wykonanego polecenia MAXScriptu. Dostęp do niego możemy uzyskać, używając specjalnej zmiennej ? (znak zapytania). Jeśli np. wpiszemy 5+5 do okna Listener, Max wyświetli rezultat 10. Możemy użyć tego rezultatu w następnym poleceniu, korzystając ze zmiennej ?. A zatem możemy wpisać $Torus01.radius2 = ?, a Max zastąpi znak zapytania rezultatem ostatniego polecenia, czyli liczbą 10.

1482

Dodatki

Na lewym końcu paska stanu w głównym oknie programu mamy dostęp do pola MAXScript Mini Listener, które można rozszerzyć przez przeciągnięcie lewej krawędzi paska stanu w prawo. Kliknięcie tego pola prawym przyciskiem myszy otwiera menu podręczne; z jego poziomu możemy otworzyć okno Listener, a także zobaczyć wszystkie ostatnio używane polecenia. Na rysunku M.6 pokazano to pole z kolejnym poleceniem, a w oknie widokowym znajdują się obiekty utworzone w ostatnim ćwiczeniu.

Rysunek M.6. Obiekty utworzone przy użyciu okna MAXScript Listener

Okna edytora MAXScriptu Okno edytora MAXScriptu różni się od okna MAXScript Listener. Pierwsze pozwala otwierać i edytować każdy typ pliku tekstowego, jednak jego najczęstszym zastosowaniem jest edycja plików MAXScript. Okno Listener może być otwarte tylko jedno, ale okien edycyjnych otwieramy tyle, ile zechcemy. Każdy otwarty skrypt umieszczany jest w oddzielnej zakładce okna edytora. Aby otworzyć nowe okno edycyjne MAXScriptu, należy użyć polecenia MAXScript/New Script z górnej listwy menu, wybrać File/New z okna MAXScript Listener lub kliknąć przycisk New Script w rolecie MAXScript panelu Utilities. Okien edycyjnych możemy też używać do edycji istniejących skryptów. Przy tworzeniu nowego skryptu otworzenie i okna edytora, i okna Listener jest zazwyczaj najlepszym rozwiązaniem. Wtedy możemy testować polecenia w oknie Listener, a kiedy upewnimy się, że fragmenty kodu MAXScript działają, wycinamy i wklejamy je do głów-

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1483

nego okna edytora. Następnie możemy powrócić do okna Listener i pracować nad kolejną partią kodu i znów tworzyć, wycinać i wklejać, dopóki nie ukończymy skryptu. Możemy także wysyłać tekst do okna Listener w celu sprawdzenia. Po prostu zaznaczamy fragment tekstu i wciskamy Shift+Enter (lub sam Enter na klawiaturze numerycznej). Max kopiuje zaznaczony tekst do okna Listener i testuje go.

Menu File zawiera kilka poleceń do operowania plikami skryptów, takie jak New, Open, Save, Save As i Revert1. Polecenie Export pozwala wyeksportować otwarty skrypt do formatu HTML, RTF, PDF, LaTeX lub XML. Za pośrednictwem poleceń z podmenu Source Control edytor komunikuje się z aplikacjami zarządzającymi zasobami. Menu File zawiera także polecenia umożliwiające drukowanie skryptów. Menu Edit zawiera polecenia cofania i przywracania ostatnich operacji edycyjnych, wycinania, kopiowania i wklejania fragmentów kodu z możliwością przenoszenia tych fragmentów między różnymi skryptami, a także między oknem edytora i oknem Listener. Polecenia Match Brace i Select to Brace związane z nawiasami wspomagają tworzenie i edytowanie skryptów, polecenie Block Comment służy do szybkiego oznaczania bloków kodu jako komentarzy, a polecenie Make Selection Uppercase zapisuje zaznaczony tekst wielkimi literami, co można wykorzystać do szybkiego wyróżniania nazw zmiennych. W menu Search znajdziemy funkcje wyszukiwania (Find) i zastępowania (Replace) tekstu. Polecenie Find in Files umożliwia wyszukiwanie tekstu w plikach. Jest też grupa poleceń obsługujących zakładki (Bookmarks), które ułatwiają poruszanie się w długich skryptach. Za pomocą poleceń z menu View można zwijać i rozwijać ujęte w nawiasy fragmenty kodu, a także włączać i wyłączać wyświetlanie rozmaitych elementów interfejsu edytora: paska narzędziowego (Tool Bar), paska stanu (Status Bar), numeracji linii kodu (Line Numbers), linii wyznaczających wcięcia tekstu (Indentation Guides) itp. Pierwszym poleceniem w menu Tools jest Evaluate All. Użycie tego polecenia to prosty sposób na zmuszenie Maksa, by przetestował cały skrypt. Efekt jest taki sam jak po skopiowaniu całego skryptu, wklejeniu go w oknie Listener i wciśnięciu klawisza Enter. Do testowania mniejszych (zaznaczonych) fragmentów kodu służy polecenie Evaluate Selection. Z kolei polecenia New Rollout i Edit Rollout umożliwiają dostęp do okna Visual MAXScript. Ostatnia grupa poleceń w menu Tools daje dostęp do rozmaitych plików z ustawieniami globalnymi (Global Options), zdefiniowanymi przez użytkownika (User Options), skrótami (Abbreviations) i preferencjami edytora MAXScriptu (MAXScript Properties). Jeden z tych plików został zaprezentowany na rysunku M.7.

Macro Recorder Macro Recorder (rejestrator makr) to narzędzie nagrywające nasze poczynania i tworzące skrypt, który po przywołaniu powiela te akcje. Użycie narzędzia Macro Recorder to nie tylko szybki i łatwy sposób na pisanie całych skryptów, ale też wspaniała metoda tworzenia działającej wersji skryptu, którą potem możemy ulepszać. Po tym, jak Macro Recorder nagra skrypt w oparciu o wykonywane przez nas czynności, możemy edytować kod skryptu, korzystając z okna edytora w celu wprowadzenia pożądanych zmian. 1

Polecenie Revert przywraca ostatnią zapisana wersję pliku — przyp. tłum.

1484

Dodatki

Rysunek M.7. W oknie edytora MAXScriptu można otworzyć kilka skryptów jednocześnie

Macro Recorder możemy włączać i wyłączać, wybierając polecenie MAXScript/Macro Recorder z górnej listwy menu lub Macro Recorder/Enable w oknie MAXScript Listener. Znaczek wyboru obok polecenia Macro Recorder w menu MAXScript wskazuje, że narzędzie jest włączone. Kiedy Macro Recorder jest włączony, każda akcja konwertowana jest na kod MAXScriptu i wysyłana do górnego okienka w oknie MAXScript Listener. Możemy wtedy zapisać wyjściowy kod do pliku lub skopiować go do okna edytora i poddać dalszej edycji. Macro Recorder kontynuuje monitoring naszych akcji aż do jego wyłączenia, co czynimy w ten sam sposób, w jaki go włączamy. Menu MacroRecorder w oknie MAXScript Listener zawiera kilka opcji służących do konfiguracji rejestratora. 

Enable — ta opcja włącza lub wyłącza Macro Recorder.



Explicit scene object names — przy włączonej tej opcji Macro Recorder zapisuje skrypt, używając nazw modyfikowanych przez nas obiektów, tak więc skrypt zawsze będzie modyfikował te same obiekty, niezależnie od tego, jakie obiekty wybrane są przy ponownym uruchomieniu skryptu. Jeśli np. Macro Recorder zaobserwuje, jak przesuwamy w scenie obiekt piramidy o nazwie $Pyramid01, wynikowy skrypt będzie zawsze operował tylko i wyłącznie na obiekcie o nazwie $Pyramid01.



Selection-relative scene object names —opcja ta powoduje, że Macro Recorder tworzy skrypt, który operuje na aktualnie wybranym obiekcie. Tak więc jeśli (w czasie nagrywania skryptu) przesuniemy piramidę o nazwie $Pyramid01, możemy później wybrać inny obiekt i uruchomić skrypt, co spowoduje przesunięcie tego nowego obiektu zamiast piramidy.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1485

Przy podejmowaniu decyzji, której z tych opcji użyć, musimy zadać sobie pytanie: „Czy chcę, aby skrypt wpływał zawsze na ten konkretny obiekt, czy też na obiekt, który jest zaznaczony?”. 

Absolute transform assignments — opcja ta mówi rejestratorowi, że wszelkie transformacje, które stosujemy, nie są zależne od aktualnego położenia i orientacji obiektu. Jeśli np. przesuniemy obiekt Sphere z miejsca (0,0,0) do (10,0,0), Macro Recorder zapisze w skrypcie polecenie: „Przesuń obiekt do pozycji (10,0,0)”.



Relative transforms operations — używamy tej opcji, aby Macro Recorder przypisywał transformacje zależnie od obecnego stanu obiektu. Jeśli np. przesuniemy obiekt Sphere z miejsca (0,0,0) do (10,0,0), Macro Recorder zapisze: „Przesuń obiekt o +10 jednostek wzdłuż osi X od obecnego położenia”.



Explicit subobject sets — jeśli wybierzemy tę opcję i nagramy skrypt, który operuje na poziomie podobiektów, ponowne uruchomienie skryptu zawsze będzie operowało na tym samym poziomie podobiektów, nawet jeśli inny poziom podobiektów jest wybrany przy uruchamianiu skryptu.



Selection-relative subobject sets — opcja ta mówi rejestratorowi, że chcemy, aby skrypt operował na tym poziomie podobiektów, który jest wybrany w momencie uruchomienia skryptu.



Show command panel switchings — opcja mówi rejestratorowi, czy ma zapisywać, czy też nie zapisywać akcji, które wykonujemy w bocznych panelach poleceń.



Show tool selections — jeśli ta opcja jest wybrana, Macro Recorder rejestruje włączanie różnych narzędzi w interfejsie.



Show menu item selections — opcja ta mówi Macro Recorderowi, że chcemy lub też nie chcemy uwzględniać w skrypcie wybierania pozycji z menu w trakcie nagrywania.

Ćwiczenie: Nagrywanie prostego skryptu W tym ćwiczeniu utworzymy prosty skrypt, który ściska wybrany obiekt i zmienia jego kolor na fioletowy. Aby utworzyć skrypt, korzystając z Macro Recordera, wykonaj następujące czynności. 1. Otwórz plik Purple pyramid.max, znajdujący się w folderze Bonus Chapter M na płycie dołączonej do książki. Plik zawiera prosty obiekt piramidy. 2. Zaznacz obiekt piramidy, a następnie wybierz polecenie MAXScript/MAXScript Listener (lub wciśnij F11), aby otworzyć okno MAXScript Listener. 3. W oknie MAXScript Listener rozwiń menu MacroRecorder i upewnij się, że wszystkie opcje ustawione są na wartości Relative, a nie Absolute, co informuje skrypt, że ma działać na obiekcie aktualnie wybranym, a nie za każdym razem modyfikować ten sam obiekt.

1486

Dodatki

4. W menu MacroRecorder wybierz pozycję Enable. Macro Recorder jest teraz aktywny i gotowy do rozpoczęcia rejestracji skryptu. Zminimalizuj okno nagrywarki (albo przesuń je na bok, aby uzyskać dostęp do okien widokowych). 5. Zadokuj okno MAXScript Listener do okna widokowego Left, klikając prawym przyciskiem myszy nazwę okna widokowego i wybierając Views/Extended/ MAXScript Listener. Teraz w czasie pracy możesz mieć pełny obraz sytuacji. 6. Z zaznaczoną piramidą wybierz polecenie Modifiers/Parametric Deformers/Xform, aby dodać do obiektu modyfikator XForm. 7. Wybierz narzędzie Non-Uniform Scale i ogranicz jego działanie do osi Y. Kliknij prawym przyciskiem myszy gdziekolwiek w oknie widokowym Front, aby je uaktywnić (jeśli nie jest aktywne), i przeciągnij gizmo osi Y w dół, aby ścisnąć obiekt piramidy. 8. W panelu Modify kliknij próbkę koloru obok pola z nazwą obiektu, aby otworzyć okno dialogowe Object Color. Wybierz jeden z odcieni purpury i kliknij OK. 9. Skrypt jest gotowy, więc w oknie MAXScript Listener wybierz MacroRecorder/ Enable, aby wyłączyć rejestrator. 10. Teraz nadszedł czas na sprawdzenie efektów naszej pierwszej pracy z MAXScriptem. Dodaj do sceny obiekt Sphere. Przed przejściem do następnego etapu upewnij się, że nowy obiekt jest zaznaczony. 11. W górnej części okna MAXScript Listener zaznacz cały tekst (łatwym sposobem na to jest wciśnięcie Ctrl+A), a następnie, trzymając wciśnięty Shift, wciśnij Enter, aby Max uruchomił skrypt. Na rysunku M.8 widzimy skrypt i obiekt Sphere, który ściśnięto i któremu zmieniono kolor.

MAXScript Debugger MAXScript Debugger, pokazany na rysunku M.9, to oddzielne okno, pozwalające na przerywanie działania skryptu i obserwowanie wartości zmiennych w czasie pracy skryptu. Dostarcza ono cennych danych, pomagających zidentyfikować błędy w skrypcie. Okno MAXScript Debugger otwierane jest poleceniem Debugger w oknach różnych narzędzi MAXScriptu lub przy użyciu polecenia MAXScript/Debugger Dialog z głównego interfejsu Maksa. Pole Command u góry okna pozwala wprowadzać polecenia bezpośrednio do debuggera. Obszar Output wyświetla rezultaty. Przyciski u dołu okna pozwalają na sterowanie działaniem programu uruchomieniowego. 

Break — powoduje przerwanie pracy aktualnie działającego skryptu.



Run — uruchamia aktualny skrypt.



Evaluate — wykonuje polecenie wpisane do pola Command.



Watch — otwiera okno Watch Manager, gdzie możemy określić zmienne do obserwacji.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1487

Rysunek M.8. Działanie skryptu ściśnij-i-zarumień Rysunek M.9. MAXScript Debugger pozwala sprawdzić wartości zmiennych w czasie pracy skryptu



Config — otwiera okno dialogowe MAXScript Debugger Parameters, gdzie możemy skonfigurować debugger.



Stop — kończy działanie skryptu.



Clear — usuwa całą zawartość pola Output.

Obserwacja zmiennych Przycisk Watch otwiera okno Watch Manager, pokazane na rysunku M.10. Kliknięcie w kolumnie Variable pozwala wprowadzić nową pozycję do listy zmiennych, których wartości chcemy obserwować. Kolumna Value wyświetla wartości tych zmiennych w czasie działania skryptu.

1488

Dodatki

Rysunek M.10. Okno Watch Manager pozwala obserwować wartość wybranych zmiennych

Korzystanie z poleceń debuggera Po zatrzymaniu pracy skryptu kliknięciem przycisku Break możemy wprowadzić określone polecenia do pola Command i kliknąć przycisk Evaluate, aby je wykonać. Dostępne polecenia zostały zebrane w tabeli M.1. Tabela M.1. Polecenia debuggera MAXScript Polecenie

Działanie

threads

Wyświetla listę wszystkich aktualnych procesów.

setThread (nr_procesu)

Sprawia, że wybrany proces staje się aktywny.

stack

Opróżnia stos aktywnego procesu.

setFrame (nr_klatki)

Sprawia, że wybrana klatka staje się aktywna.

locals (zmienna)

Usuwa wartość określonej zmiennej aktywnego procesu i klatki. Jeśli na liście nie ma żadnych zmiennych, usuwane są wartości wszystkich zmiennych.

getVar (zmienna)

Pobiera wartość określonej zmiennej.

setVar (zmienna)

Ustala wartość określonej zmiennej.

eval (wyrażenie)

Testuje określone wyrażenie.

?

Wyświetla listę poleceń debuggera.

Konfiguracja debuggera Przycisk Config otwiera okno dialogowe MAXScript Debugger Parameters, pokazane na rysunku M.11. Okno to zawiera kilka opcji, które pozwalają zdecydować, kiedy przerywać pracę skryptu. Pozwala także określić czas każdego zatrzymania. Rysunek M.11. Okno MAXScript Debugger Parameters pozwala ustalić m.in. cykl czasów zatrzymania pracy skryptu

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1489

Ustalanie preferencji MAXScriptu Okno dialogowe Preference Settings, otwierane poleceniem Customize/Preference Settings, zawiera panel ustawień MAXScriptu, pokazany na rysunku M.12. Korzystając z tych ustawień, możemy ustalić ładowane domyślnie przez program skrypty, domyślne ustawiania Macro Recordera, a nawet to, jaka czcionka wyświetlana jest w oknie edytora. Opcja Use Fast Node Name Lookup powoduje zapisanie do bufora pamięci wszystkich nazw użytych w skrypcie, co przyspiesza jego pracę. Rysunek M.12. Panel MAXScript w oknie dialogowym Preference Settings zawiera opcje pozwalające kontrolować ustawienia MAXScriptu

Max w swojej domyślnej instalacji zawiera dwa foldery, z których możemy korzystać, aby automatycznie uruchamiać skrypty wraz z uruchomieniem programu. Te foldery to scripts i scripts\startup, ale możemy je zmienić, korzystając z okna dialogowego Configure Paths. Opcja Load Startup Scripts powoduje ładowanie wszystkich skryptów w tych folderach wraz z uruchomieniem Maksa.

Typy skryptów Nie wszystkie skrypty należą do tej samej grupy i Max przydziela je do różnych kategorii na podstawie tego, jak działają. Pomoc online dostarcza wyczerpujących informacji o różnych opcjach. Głównym elementem, który powinniśmy rozważyć przy decyzji dotyczącej typu tworzonego skryptu, jest interfejs użytkownika. Należy zadać sobie pytanie, jaki powinien być najbardziej odpowiedni interfejs dla danego typu narzędzia, które tworzymy. Odpowiedź określi, który typ skryptu najbardziej pasuje do danego zadania.

1490

Dodatki

Skrypty Macro Skrypty Macro to skrypty tworzone przez Macro Recordera. Każdy skrypt powiązany z przyciskiem paska narzędziowego jest skryptem typu makro. Max organizuje takie skrypty na podstawie kategorii, ale tę można zmienić, edytując plik skryptu. Aby wywołać skrypt Macro z innego skryptu, możemy użyć polecenia macros, np.: macros.run "objects" "sphere"

uruchamia skrypt sphere z kategorii objects. Skrypty makro z reguły nie wymagają wprowadzania innych danych przez użytkownika; po prostu klikamy przycisk i obserwujemy magiczne działanie skryptu.

Narzędzia skryptowe Narzędzie skryptowe (scripted utility) to skrypt zapisany w języku MAXScript, posiadający w panelu Utilities swoją własną roletę, tak jak SphereArray. Ten typ jest szczególnie przydatny, gdy nasz skrypt ma parametry, których wartości użytkownik musi wprowadzić, tak jak wartość promienia w skrypcie SphereArray. Narzędzia skryptowe są łatwe do tworzenia za pomocą edytora Visual MAXScript.

Skryptowe menu podręczne Kiedy prawym przyciskiem myszy klikniemy obiekt w scenie, Max otwiera podręczne menu z różnymi funkcjami do wyboru. Skryptowe menu podręczne pozwala powołać w nim własne pozycje. Jeśli utworzymy skrypt modyfikujący jakąś właściwość obiektu, umożliwienie dostępu do skryptu przez kliknięcie prawym przyciskiem myszy ułatwia korzystanie z niego.

Skryptowe narzędzia myszy Skryptowych narzędzi myszy używamy do tworzenia procedur obsługujących mysz w oknach widokowych. Skrypty te reagują na akcje myszy, takie jak klikanie przycisków i przeciąganie kursora. Tego typu skryptu użylibyśmy np. podczas definiowania nowego typu obiektu parametrycznego, który użytkownicy wstawialiby do sceny tak, jak robi się to w przypadku obiektów Sphere czy Box.

Skryptowe moduły dodatkowe (plug-ins) Skryptowe moduły dodatkowe lub, inaczej mówiąc, wtyczki są chyba najbardziej złożonym typem skryptów MAXScript. Są one podobne do nieskryptowych wtyczek (które pisane są w innych językach programowania, takich jak C++). Możemy tworzyć skryptowe moduły dodatkowe kreujące geometrię, nowe kształty, kontrolujące światła, zachowujące się jak modyfikatory, kontrolujące mapy tekstur i materiałów, a nawet tworzące specjalne efekty renderingu.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1491

Pisanie własnych skryptów w języku MAXScript W tym podrozdziale poznasz podstawy języka MAXScript i nauczysz się, jak używać różnych elementów MAXScriptu we własnych skryptach. Wszelkie polecenia MAXScriptu możesz testować w oknie MAXScript Listener. Wiele rzeczy, o których będzie mowa, może brzmieć znajomo, jeśli wcześniej przeczytałeś już fragment o wyrażeniach w rozdziale 36., „Animowanie przy użyciu kontrolera Expression i wiązania parametrów”. Wyrażenia korzystają z wielu konstrukcji składniowych zaczerpniętych z języka MAXScript.

Zmienne i typy danych Zmienna w języku MAXScript jest czymś w rodzaju zmiennej w matematyce. Reprezentuje ona jakąś wartość i kiedy mówimy o zmiennej w równaniu, tak naprawdę myślimy o wartości, jaką ta zmienna przechowuje. Można myśleć o zmiennych jak o pojemnikach, do których możemy włożyć różne rzeczy, a potem je wyjąć. W przeciwieństwie do zmiennych algebraicznych zmienne MAXScriptu mogą przechowywać nie tylko liczby, o czym przekonamy się wkrótce. Aby zmiennej przypisać jakąś wartość, korzystamy ze znaku równości. Jeśli np. w oknie MAXScript Listener wpiszemy: X = 5 * 3

Max wyliczy to, co znajduje się na prawo od znaku równości i przypisze rezultat do zmiennej o nazwie X. W tym przypadku Max pomnoży 5 razy 3 i umieści rezultat (15) w zmiennej X. Możemy potem sprawdzić, co zawiera X, wpisując po prostu X w oknie Listener i wciskając Enter. Max wyświetli wartość przechowywaną w zmiennej, czyli w tym przypadku 15. Zmiennym możemy nadawać dowolne nazwy, ale dobrym pomysłem jest nadawanie takich, które coś mówią. Jeśli np. zmienna ma przechowywać liczbę obiektów, na których będziemy operować, nazwa „liczbaObj” będzie lepsza niż coś takiego jak „Z”. Nazwy zmiennych mogą być dowolne, ale muszą zaczynać się od litery. Nazwa zmiennej nie może także zawierać żadnych znaków specjalnych, takich jak spacje, przecinki lub pytajniki. Możemy jednak użyć znaku podkreślenia i wszystkich znaków alfabetu.

Zmienne mogą przechowywać łańcuchy (strings), czyli ciągi znaków. Przykładowo: badDay = "Monday"

przechowuje słowo „Monday” w zmiennej badDay. Możemy łączyć ze sobą dwa łańcuchy, używając znaku plus: grouchy = "My least favorite day is" + badDay

Teraz zmienna grouchy przechowuje wartość „My least favorite day is Monday”.

1492

Dodatki

Spróbujmy teraz: wontWork = 5 + "cheese"

Max wyświetli błąd, ponieważ się pogubi, gdy każemy mu dodać liczbę do łańcucha znaków. Problem w tym, że 5 i „cheese” to dane różnych typów. Typy danych to różne klasy wartości, jakie można przechowywać w zmiennych. Prawie zawsze możemy mieszać wartości tego samego typu danych, ale wartości różnych typów zazwyczaj nie pasują do siebie. Aby sprawdzić typ danych zmiennej, korzystamy z polecenia classof. Używają poprzedniego przykładu, możemy wpisać classof grouchy, a Max zwróci wartość String.

Innym popularnym typem danych jest Point3, który reprezentuje punkt w przestrzeni trójwymiarowej. Niżej znajduje się kilka przykładów zastosowania punktów, z komentarzem wyjaśniającym: Pos = [5,3,2] Pos.x = 7 Pos = Pos + (1,2,5)

-- Oznacza punkt o współrzędnych (5,3,2) -- Przypisuje współrzędnej x wartość 7 -- i teraz punkt ma współrzędne (7,3,2) -- Pobiera starą wartość Pos, -- przesuwa ją o (1,2,5) do (8,5,7) -- i przechowuje nową wartość w Pos

Dodatkowo, poza tymi prostymi typami danych, każdy obiekt w scenie posiada swój własny typ. Jeśli np. użyjemy polecenia classof w odniesieniu do kuli, Max wyświetli Sphere. Typy obiektów sceny są w istocie złożonymi typami danych lub strukturami, które grupują inne typy danych w jednym obiekcie. Elementy tych struktur nazywane są składnikami (members) lub właściwościami (properties). Większość obiektów sceny posiada składnik zwany Name, który jest typu String. Element Name określa dokładną nazwę obiektu. Innym powszechnym składnikiem jest Position — zmienna typu Point3, która podaje położenie obiektu. Max posiada specjalną, wbudowaną zmienną, reprezentującą obiekt, który jest wyselekcjonowany. Ta zmienna to $ (znak dolara), użyjemy jej w następnym ćwiczeniu.

Ćwiczenie: Stosowanie zmiennych W tym ćwiczeniu dowiemy się więcej o zmiennych MAXScriptu i skorzystamy z nich podczas manipulowania obiektami w scenie. Aby użyć zmiennych do manipulowania obiektami sceny, wykonaj następujące czynności. 1. Otwórz plik Teapot.max znajdujący się w folderze Bonus Chapter M na płycie dołączonej do książki. Plik zawiera prosty model czajnika. 2. Kliknij prawym przyciskiem myszy nazwę okna widokowego Left i wybierz Views/ Extended/MAXScript Listener, aby otworzyć okno MAXScript Listener w oknie widokowym Left.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1493

3. Wyselekcjonuj obiekt Teapot, wpisz $ i wciśnij Enter. Max wyświetli informacje o obiekcie Teapot. (Liczby na Twoim ekranie mogą się trochę różnić, zależnie od tego, gdzie umiejscowiłeś obiekt). 4. Wpisz do górnego okienka kolejno następujące wiersze, aby zobaczyć wartości parametrów, przechowywanych jako właściwości obiektu Teapot: $.position $.wirecolor $.radius $.name $.lid

5. Teraz nadaj właściwościom obiektu Teapot nowe wartości, wpisując następujące wiersze: $.lid = false $.position.x = -20 $.segs = 20

Na rysunku M.13 przedstawiono polecenia i ich wyniki w oknie MAXScript Listener oraz zmodyfikowany obiekt Teapot.

Rysunek M.13. Polecenia skryptu, wpisane w oknie MAXScript Listener, wpływają na obiekty w oknach widokowych

1494

Dodatki

Przebieg programu i komentarze Z reguły, kiedy Max rozpoczyna wykonywanie skryptu, zaczyna od pierwszego wiersza kodu, przetwarza go, po czym przechodzi do następnego. Wykonywanie skryptu trwa dopóty, dopóki w pliku skryptu nie zostanie już żaden wiersz. (Później przyjrzymy się niektórym słowom kluczowym MAXScriptu, pozwalającym zmienić przebieg wykonywania skryptu). Max pozwala dołączać do skryptu komentarze lub notki, pomagające wyjaśnić, co się dzieje. Aby wstawić komentarz, poprzedzamy go dwoma myślnikami (--). Kiedy Max napotka podwójny myślnik, pomija komentarz oraz wszystko inne w tym wierszu i przechodzi do następnej linii skryptu. Przykładowo w tym wierszu: $Torus01.pos = [0,0,0]

-- Przesuwa na środek sceny

Max przetwarza pierwszy fragment wiersza (czyli przesuwa obiekt do początku układu współrzędnych), a potem, kiedy dojdzie do komentarza, przeskakuje do następnego wiersza. Używanie komentarzy w skryptach jest bardzo ważne, bo z czasem, kiedy skrypt staje się coraz bardziej złożony, domyślenie się, co się dzieje w danym momencie, może być trudne. Poza tym, kiedy po kilku miesiącach wrócimy do skryptu, aby go poprawić, komentarze odświeżą naszą pamięć i pomogą uniknąć tych samych pomyłek, które popełniliśmy za pierwszym razem. Ponieważ Max ignoruje wszystko po podwójnym myślniku, możemy używać komentarzy do chwilowego wyłączenia wiersza z treści skryptu. Jeśli coś nie działa tak jak trzeba, możemy opatrzyć znakiem komentarza wiersze, które Max ma pominąć. Później, kiedy chcemy dodać je z powrotem, nie musimy ponownie ich wpisywać. Wystarczy usunąć oznaczenie komentarza i skrypt będzie znów taki, jaki był wcześniej.

Wyrażenia Wyrażenie (expression) jest tym, czego Max używa do podjęcia decyzji. Wyrażenie porównuje dwie rzeczy i w oparciu o to porównanie wysnuwa prosty wniosek. Te same wyrażenia mogą być użyte w kontrolerze Expression. Szczegóły na temat tego kontrolera znajdziesz w rozdziale 36., „Animowanie przy użyciu kontrolera Expression i wiązania parametrów”.

Proste wyrażenia Wyrażenie: 1 < 2

zadaje proste pytanie: „Czy 1 jest mniejsze od 2?”. Wyrażenia zawsze zadają pytania, na które można udzielić odpowiedzi „tak” lub „nie”. Kiedy wpiszemy wyrażenie do okna MAXScript Listener (lub umieścimy w skrypcie), Max szacuje wyrażenie i zwraca true, jeśli wyrażenie jest prawdziwe (jak w poprzednim przykładzie), lub false, jeśli nie jest. Przetestujmy następujące wyrażenia w oknie Listener, a Max zwróci rezultaty, tak jak pokazano to na rysunku M.14 (nie musisz wpisywać komentarzy):

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1495

Rysunek M.14. Wykorzystanie okna MAXScript Listener do szacowania wyrażeń

1 < 2 1 > 2 2 + 2 == 4 2 + 2 == 5 3 * 3 == 5 + 4

-- 1 JEST mniejsze niż 2, więc wyrażenie jest prawdziwe -- 1 NIE JEST większe niż 2, więc wyrażenie jest fałszywe -- '==' oznacza „jest równe” 2+ 2 jest równe 4, więc to -- prawda -- 4 NIE JEST równe 5, więc to fałsz -- 9 JEST równe 9, więc prawda

3 * 3 != 5 + 4

-- '!=' oznacza „nie jest równe”, „9 nie jest równe 9” -- jest stwierdzeniem nieprawdziwym, więc wyrażenie jest -- fałszywe

a = 23 b = 14 + 9 a == b

-- przechowaj 23 w zmiennej a -- przechowaj 23 w zmiennej b -- 23 JEST równe 23, więc to prawda

Pobaw się różnymi prostymi wyrażeniami, aby nabyć intuicyjną wiedzę o tym, czy dane wyrażenie ma wartość prawda lub fałsz.

Wyrażenia złożone Czasami chcemy, aby wyrażenie rozpatrzyło coś więcej niż tylko dwa fragmenty danych. MAXScript posiada operatory and, or i not, które są tu pomocne. Operator and łączy dwa wyrażenia i zadaje pytanie: „Czy oba wyrażenia są prawdziwe?”. Jeśli oba są prawdziwe, to całe wyrażenie jest prawdziwe. Jednak jeśli któreś z nich jest fałszywe lub oba są fałszywe, to całe wyrażenie jest fałszywe. Możemy użyć nawiasów do grupowania wyrażeń, tak że wyrażenie z operatorem and wyglądałoby mniej więcej tak: (1 < 2) and (1 < 3)

-- prawda, ponieważ (1 < 2) jest prawdą i (1 < 3) jest prawdą

Operator or jest podobny do and, z tą różnicą, że wyrażenie z or jest prawdą, jeśli któreś z wyrażeń jest prawdą lub jeśli oba wyrażenia są prawdziwe. Oto kilka przykładów:

1496

Dodatki (2 > 3) or (2 > 1) (2 > 3) and (2 > 1)

-- nawet mimo że (2 > 3) jest fałszem, -- całe wyrażenie jest prawdziwe, -- ponieważ (2 > 1) jest prawdą -- fałsz, ponieważ jedno z wyrażeń jest fałszem

Wypróbuj kilka takich złożonych wyrażeń, aby upewnić się, że rozumiesz, jak działają: a = 3 b = 2 (a == b) or (a > b) (a == b) and (b == 2) (a > b) or (a < b) (a != b) and (b == 3)

-- prawda, ponieważ a JEST większe niż b -- fałsz, ponieważ oba wyrażenia nie są prawdziwe -- prawda, ponieważ przynajmniej jedno z wyrażeń JEST prawdziwe -- fałsz, ponieważ b NIE JEST równe 3

Operator not neguje albo odwraca wartość wyrażenia z prawdy na fałsz lub odwrotnie, np.: (1 == 2) not (1 == 2)

-- fałsz, ponieważ 1 NIE JEST równe 2 -- prawda. not’ zamienia fałsz na prawdę

Instrukcje warunkowe Warunki są jednym ze sposobów, w jaki możemy kontrolować przebieg pracy skryptu. Normalnie Max przetwarza każdy wiersz, niezależnie od wszystkiego, a potem kończy pracę; jeśli jednak ustawimy warunki, Max wykona pewne wiersze tylko wtedy, kiedy wyrażenie jest prawdziwe. Przypuśćmy np., że mamy skrypt z następującymi wierszami: a = 4 If (a == 5) then ( b = 2 )

Max nie wykonałby wiersza b = 2, ponieważ wyrażenie (a == 5) jest fałszywe. Zdania warunkowe, czyli zdania z „if”, mówią po prostu: „Jeśli wyrażenie jest prawdziwe, wykonaj wszystko, co znajduje się w bloku objętym nawiasami. Jeśli wyrażenie nie jest prawdziwe, pomiń te wiersze skryptu”. Warunkowe zdania budowane są w taki sposób: If then

gdzie to wyrażenie do oszacowania, a to kod MAXScriptu do wykonania, jeśli wyrażenie okaże się prawdziwe. Możemy także użyć słowa kluczowego else, by określić, co się dzieje, jeśli wyrażenie okaże się fałszem, tak jak pokazano to w następującym przykładzie: a = 4 if (a == 5) then ( b = 2 ) else ( b = 3 )

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1497

Po tym fragmencie skryptu zmienna b przyjmie wartość 3, ponieważ wyrażenie (a == 5) jest fałszem. W rezultacie Max wykona część skryptu w części else wyrażenia.

Kolekcje i tablice MAXScript posiada kilka bardzo przydatnych funkcji, które pomagają manipulować grupami obiektów. Grupa obiektów zwana jest kolekcją (collection) lub zbiorem. O kolekcjach możemy myśleć jak o torbach przechowujących grupę obiektów lub zmiennych. Rzeczy w torbie nie są ułożone w żadnej kolejności; są po prostu zgrupowane. Kolekcji możemy używać do pracy z obiektami należącymi do pewnego typu. Przykładowo skrypt: a = $pokey* a.wirecolor = red

tworzy kolekcję zawierającą każdy obiekt sceny, którego nazwa zaczyna się od „Pokey”, i zmienia kolor każdego obiektu w kolekcji na czerwony. MAXScript posiada kilka wbudowanych kolekcji, które mogą być przydatne, takich jak cameras lub lights, zawierających wszystkie kamery i światła w scenie. Tak więc: delete lights

usuwa wszystkie obiekty świateł ze sceny (co jest lub nie jest dobrym pomysłem). Tablica (array) to typ kolekcji, w którym wszystkie obiekty ułożone są w określonej kolejności i za pomocą indeksu możemy uzyskać dostęp do każdego elementu. Przykładowo a = #() a[1] = 5 a[2] = 10 a[5] = 12 a

-- tworzy pustą tablicę

Po ostatnim wierszu Max zwróci obecną wartość tablicy: #(5, 10, undefined, undefined, 12)

Zwróć uwagę, że Max tworzy tablice wystarczająco duże, aby mogły pomieścić wszystkie elementy, które chcemy tam umieścić, i jeśli zostawimy któreś miejsce puste, Max automatycznie wstawi w to miejsce undefined, co znaczy, że dana pozycja tablicy nie ma żadnej wartości. Jeszcze jedną przydatną sztuczką jest to, że Max pozwala użyć słowa kluczowego as, aby skonwertować kolekcję na tablicę: LightArray = (lights as array)

Wykonując to polecenie, Max pobierze standardową kolekcję świateł, przekonwertuje ją na tablicę i nada jej nazwę LightArray.

1498

Dodatki

Elementy tablicy lub kolekcji nie muszą zawierać danych tego samego typu, a więc zupełnie poprawna jest tablica z liczbami, łańcuchami i obiektami: A = #(5, "Mr. Nutty", box radius:5)

Za pomocą słowa kluczowego as można konwertować dane jednego typu na inny, np. (5 as string) konwertuje liczbę 5 na łańcuch „5”, a (5 as float) konwertuje liczbę całkowitą 5 na liczbę zmiennoprzecinkową 5.0.

Pętle Pętla (loop) to konstrukcja MAXScriptu pozwalająca zmienić standardowy przebieg pracy skryptu. Zamiast przetwarzać każdy wiersz po kolei, a potem kończyć pracę, Max używa pętli, aby wykonać coś kilka razy. Przykładowo: j = 0 for i = 1 to 5 do ( j = j + i )

Ten skrypt korzysta z dwóch zmiennych — i oraz j — ale możemy użyć w pętlach zmiennych, jakich tylko chcemy. Skrypt ustawia zmienną j na 0, a następnie używa zmiennej i do odliczenia od 1 do 5. Max powtarza kod umieszczony pomiędzy nawiasami pięć razy, za każdym razem zwiększając zmienną i o 1. Wewnątrz pętli Max dodaje aktualną wartość zmiennej i do j. Czy jesteś w stanie wywnioskować, jaką wartość przybierze zmienna j na końcu skryptu? Jeśli odgadłeś, że 15, to masz rację. Aby zobaczyć, dlaczego tak jest, przeanalizuj wartość każdej zmiennej w czasie pracy skryptu: Kiedy j i -------------------------------Pierwszy wiersz 0 0 Początek pętli 0 1 Po pierwszej pętli 1 1 Początek drugiej pętli 1 2 Po drugiej pętli 3 2 Początek trzeciej pętli 3 3 Po trzeciej pętli 6 3 Początek czwartej pętli 6 4 Po czwartej pętli 10 4 Początek piątej pętli 10 5 Po piątej pętli 15 5

Pętla może być także użyteczna przy przetwarzaniu każdego elementu tablicy lub kolekcji. Następujący skrypt pokazuje jeden ze sposobów na zmianę koloru siatki każdego obiektu Teapot w scenie na niebieski: teapots = $teapot* -- pobiera kolekcję obiektów Teapot for singleTeapot in teapots do ( singleTeapot.wirecolor = blue )

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1499

Możemy użyć pętli for do utworzenia grupy obiektów. Wypróbuj taki skrypt: for I = 1 to 10 collect ( sphere radius:15 )

Słowo kluczowe collect to polecenie, by Max utworzył kolekcję zawierającą rezultat kodu znajdującego się między nawiasami. Wiersz: sphere radius:15

mówi Maksowi, aby utworzył obiekt Sphere o promieniu 15, a więc cały skrypt tworzy 10 obiektów Sphere i dodaje je do sceny. Niestety, Max umieszcza je wszystkie w tym samym miejscu, a więc porozsuwajmy je trochę, tak aby były widoczne: i = -50 For s in spheres do ( s.position = [i,i,i] i = i + 10 )

Przeanalizujmy skrypt, aby upewnić się, że rozumiemy, co się dzieje. Używamy pętli for, aby przetworzyć każdy obiekt Sphere w naszej kolekcji obiektów. Położenie każdego z nich ustalamy na [i,i,i], a następnie zmieniamy wartość i, tak aby następny obiekt Sphere znalazł się w innym miejscu.

Funkcje Ostatnim elementem MAXScriptu, któremu się przyjrzymy, jest funkcja (function). Funkcje to małe fragmenty skryptu, które zachowują się jak bloki budujące program. Przypuśćmy, że w czasie pracy skryptu, który piszemy, musimy wiele razy wyliczyć średnią wartość zbioru liczb. Czyniący to skrypt mógłby wyglądać tak: Total = 0 Count = 0 For n in numbers do ( total = total + n count = count + 1 ) average = total / (count as float)

MAXScript oblicza tutaj średnią zbioru liczb o nazwie numbers. Niestety, za każdym razem kiedy chcemy obliczyć średnią, musimy wpisywać ten skrypt ponownie. Możemy też okazać się bystrzy i po prostu wyciąć i wkleić skrypt wtedy, kiedy go potrzebujemy. Jednak nasz skrypt szybko stanie się duży, nieładny i zawsze będziemy musieli zmienić nazwę zbioru, dla którego liczymy średnią. Funkcja rozwiąże taki problem. Na początku skryptu możemy zdefiniować funkcję średniej w ten sposób:

1500

Dodatki Function average numbers = ( -- Funkcja liczy wartość średnią zbioru liczb local Total = 0 local Count = 0 For n in numbers do ( total = total + n count = count + 1 ) total / (count as float) )

Teraz, gdy będziemy potrzebowali wyliczyć średnią jakiegoś zbioru liczb, możemy po prostu użyć tej funkcji, która pobierze wszystkie liczby zbioru o nazwie num i przechowa ich średnią w zmiennej o nazwie Ave: Ave = average num

-- przyjmując, że num jest zbiorem

Nasz skrypt stanie się o wiele krótszy, jeśli będziemy często wyliczać średnią liczb, ale także będzie o wiele bardziej czytelny. Dla przypadkowego czytelnika jest bardzo przejrzyste, że będziemy wyliczać średnią kilku liczb. Co więcej, jeśli później zauważymy, że napisaliśmy funkcję średniej nieprawidłowo, poprawki wprowadzamy tylko u góry skryptu. Gdybyśmy nie używali funkcji, musielibyśmy przejść przez cały skrypt, odnaleźć każdy przypadek, gdzie uśrednialiśmy liczby i poprawić skrypt. A jest to bardzo irytujące! Spójrzmy na definicję funkcji. Pierwszy wiersz: Function average numbers =

informuje Maksa, że tworzymy nową funkcję o nazwie average. Mówi też, że aby użyć tej funkcji, musimy podać argument, i że wewnątrz funkcji odnosimy się do tego argumentu za pomocą zmiennej o nazwie numbers. Nie ma znaczenia, jaka była rzeczywista nazwa zmiennej przy wywołaniu funkcji, wewnątrz funkcji po prostu odnosimy się do niej jak do numbers. Tworzenie funkcji, które używają wielu argumentów, jest także proste. Przykładowo: Function multEm a b c = (a * b * c)

tworzy funkcję mnożącą trzy liczby przez siebie. Aby skorzystać z tej funkcji w celu pomnożenia trzech liczb i przechowania rezultatu w zmiennej o nazwie B, powinniśmy wpisać: B = multEm 2 3 4

Następne dwa wiersze: local Total = 0 local Count = 0

tworzą dwie zmienne i ustalają wartość obu na 0. Słowo kluczowe local to dla Maksa informacja, że zmienna należy do danej funkcji. Żadna część skryptu na zewnątrz funkcji nie widzi tej zmiennej, a jeśli poza funkcją występuje zmienna o takiej samej nazwie, zmiana jej wartości wewnątrz funkcji nie wpłynie na jej wartość poza funkcją. Tym

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1501

sposobem nie musimy martwić się o to, jakie zmienne są już używane, gdy ktoś wywołuje funkcję uśredniającą; nawet jeśli zmienne o nazwach Total lub Count są już gdzieś wykorzystywane, zmiany w obrębie funkcji nie wpływają na nie. Ostatni wiersz: total / (count as float)

korzysta z wartości zmiennych Total i Count, aby wyliczyć średnią. A jak wartość zwracana jest do kogoś, kto wywołał funkcję? Max analizuje cały skrypt wewnątrz funkcji i zwraca rezultat. Ponieważ końcowy wiersz jest ostatnią rzeczą do oszacowania, Max używa wyniku tego obliczenia jako rezultatu całej funkcji.

Ćwiczenie: Tworzenie ławicy ryb A teraz przykład, w którym wykorzystamy wiedzę nabytą w tym rozdziale. W tym kilkuczęściowym ćwiczeniu użyjemy MAXScriptu w celu utworzenia małej ławicy ryb, podążającej po ścieżce za obiektem pozornym.

Część 1.: Sprawiamy, aby ryba podążała po ścieżce W tej części ćwiczenia użyjemy MAXScriptu, aby przesunąć jedną z ryb po ścieżce. Żeby to zrobić, wykonaj następujące czynności. 1. Otwórz plik Fish scene.max znajdujący się w folderze Bonus Chapter M na płycie dołączonej do książki. Scena składa się z dwóch ryb i obiektu pozornego (Dummy), który podąża po ścieżce. Twoim zadaniem będzie utworzenie małej ławicy ryb i przemieszczanie jej za obiektem pozornym wzdłuż ścieżki. 2. Wciśnij F11, aby otworzyć okno MAXScript Listener. W tym oknie wybierz File/New Script, by otworzyć okno edytora, i wprowadź następujący skrypt: pathObj = $Dummy01 fishObj = $Fish1/FishBody relPos = [0,-150,-50]

-- Jak blisko ryba jest od ścieżki

animate on ( for t = 1 to 100 do at time t ( fishObj.position = pathObj.position + relPos ) )

3. Uaktywnij okno widokowe Camera01. Wybierz z menu edytora polecenie File/ Evaluate All (lub wciśnij Ctrl+E), aby wykonać cały skrypt, po czym kliknij prawym przyciskiem myszy w oknie widokowym Camera01, aby je uaktywnić, i wciśnij przycisk Play Animation. Ryba dynamicznie podąża po ścieżce obiektu pozornego. Na rysunku M.15 przedstawiono jedną z klatek tej animacji.

1502

Dodatki

Rysunek M.15. Pierwsze podejście, by zmusić rybę do podążania po ścieżce

Teraz objaśnimy skrypt wpisany w poprzednim ćwiczeniu. W pierwszych wierszach tworzone są zmienne, z których korzysta reszta skryptu. pathObj określa nazwę obiektu, za którym podąża ryba, a fishobj to nazwa modelu ryby. (Zauważ, że możemy odwoływać się do części hierarchii, korzystając z nazwy obiektu, ukośnika oraz nazwy części obiektu dziecka). Dlaczego mamy sobie zawracać głowę, tworząc zmienną dla obiektu ryby? Po tym, jak pierwsza ryba będzie już poprawnie się poruszała, zechcemy przypisać ten sam skrypt innej rybie. Wszystko, co wtedy musimy zrobić, to zmienić nazwę Fish1 na Fish2, ponownie uruchomić skrypt i gotowe! Skrypt tworzy także zmienną o nazwie relPos, której używamy, aby ustalić położenie ryby względem obiektu pozornego. Jeśli mamy w scenie wiele ryb, nie chcemy, aby znajdowały się dokładnie w tym samym miejscu, więc jest to dobry sposób na uformowanie ławicy. Następny blok skryptu to nowość — używamy konstrukcji animate on. Mówi ona Maksowi, aby utworzył klatki kluczowe naszej animacji. To tak, jakbyśmy wcisnęli przycisk Auto Key, uruchomili skrypt, po czym wyłączyli tryb Auto Key. Krótko mówiąc, jakikolwiek skrypt wewnątrz nawiasów animate on tworzy klatki kluczowe animacji. Nawiasy te określają część skryptu, którą nazywamy blokiem (block). Wewnątrz bloku animacji mamy pętlę, zliczającą od 1 do 100 (co odpowiada każdej klatce animacji). Na końcu wiersza pętli mamy at time t, co dla Maksa jest informacją, że przy każdym wykonaniu pętli chcemy, aby wszystkie zmienne miały wartości odpowiadające danej klatce animacji. Jeśli np. chcemy, aby ryba podążała za obiektem pozornym, musimy znać jego położenie w każdym momencie, a nie tylko na początku — zatem za każdym razem, przechodząc przez pętlę, Max ustala, gdzie będzie obiekt pozorny.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1503

Wewnątrz pętli określamy pozycję obiektu ryby względem obiektu pozornego (w tym określonym momencie).

Część 2.: Dodawanie rotacji ciała i animacja płetwy Nadajmy tej rybie bardziej żywy wygląd poprzez wykonanie animacji jej tylnej płetwy i nadanie ciału obrotu tak, aby rzeczywiście podążało po ścieżce. Dodamy także trochę nieprzewidywalności do jej ruchu — kiedy dokonamy animacji następnej ryby, nie będzie ona dokładną kopią poprzedniej. Aby ulepszyć animację ryby, wykonaj następujące czynności. 1. Wprowadź skorygowaną wersję skryptu (nowe wiersze są pogrubione): pathObj = $Dummy01 fishObj = $Fish1/FishBody fishTail = $Fish1/FishBody/FishTail relPos = [0,-150,-50] -- odległość ryby od ścieżki fishTail.bend.axis = 0 -- 0 to oś X zadd = 4 -- przesunięcie w pionie przy każdym kroku pętli tailFlapOffset = (random 0 100) tailFlapRate = 25 + (random 0 25) animate on ( for t = 0 to 100 do at time t ( fishObj.position = pathObj.position + relPos fishObj.position.z = relPos.z relPos.z += zadd -- powiedzmy, że jest 10% szans na to, że ryba zmieni kierunek w pionie if ((random 1 100) > 90) then ( zadd = -zadd ) fishTail.bend.angle = 50 * sin (t * tailFlapRate + tailFlapOffset) oldRt = fishObj.rotation.z_rotation newRt = (in coordsys pathObj pathObj.rotation.z_rotation) if ((random 1 100) > 85) then ( fishObj.rotation.z_rotation += (newRt - oldRt) * (random 0.5 1.5) ) ) )

1. Zapisz skrypt (File/Save) i wciśnij Ctrl+E, aby ponownie go przetestować. Ten skrypt zapisany jest w folderze Bonus Chapter M jako FishPath2.ms. Spraw, by okno widokowe Camera01 stało się aktywne i kliknij przycisk Play Animation. Na rysunku M.16 pokazano inną klatkę tej animacji. Jak widzisz, ryba zmierza tym razem w odpowiednim kierunku, a jej tylna płetwa faluje.

1504

Dodatki

Rysunek M.16. Machająca płetwą ryba, zwrócona we właściwym kierunku w czasie ruchu po ścieżce

Teraz spójrzmy na to, co zmieniliśmy. Najpierw dodaliśmy zmienną odnoszącą się do tylnej płetwy ryby, tak aby była łatwa do zmiany, kiedy dodamy kolejną rybę. Uzyskaliśmy także dostęp do modyfikatora Bend płetwy i ustaliliśmy jego oś na 0, co odpowiada osi X. (Możesz przetestować inne wartości, aby przekonać się, że to naprawdę zmienia parametr osi w rolecie). Następnie utworzyliśmy jeszcze kilka zmiennych. Użyliśmy zadd, aby powiedzieć Maksowi, o ile ma przesunąć rybę w kierunku Z, w każdym kroku (nie chcemy, aby ryba zawsze płynęła na tej samej wysokości). tailFlapOffset i tailFlapRate to dwie zmienne, używane do kontrolowania falowania płetwy (wyjaśnimy je, kiedy dojdziemy do części skryptu, która z nich korzysta). Wewnątrz pętli for anulowaliśmy pozycję Z ryby i zastąpiliśmy ją względną pozycją Z, tak że każda ryba pływa na swojej własnej głębokości, a nie na głębokości obiektu pozornego. Następnie w każdym kroku dodaliśmy zadd do pozycji Z, tak aby ryba powoli zmieniała swą głębokość. Musimy być ostrożni, bo ryba może wypłynąć powyżej sceny lub poniżej, a więc przy każdym kroku wybraliśmy także losową liczbę z przedziału od 1 do 100 za pomocą funkcji (random 1 100). Jeśli liczba, którą Max wybierze, jest większa od 90, zmieniamy znak przy zadd, tak że ryba zaczyna poruszać się w innym kierunku. To fachowy sposób na powiedzenie: „Jest 90% szans na to, że ryba będzie poruszała się w tym samym kierunku i 10% szans na to, że zmieni kierunek”. W kolejnej części ponownie skorzystaliśmy z modyfikatora bend, tym razem w celu zmiany kąta wyginania. Aby uzyskać ładny ruch wahadłowy dla tylnej płetwy, użyliśmy funkcji sin. Jeśli przypadkiem zapomniałeś o tym, czego uczyli w szkole, to podpowiem, że fala

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1505

sinusoidy oscyluje od 1 do –1, do 1 i tak w kółko. Mnożąc funkcję przez 50, otrzymujemy wartości oscylujące pomiędzy 50 a –50 (całkiem dobra wartość do użycia jako kąt wyginania). Zmiennej tailFlapOffset używamy do przesunięcia sinusoidy, tak aby machanie płetwą innej ryby różniło się trochę od poprzedniej (pamiętajmy, próbujemy osiągnąć choćby minimum realizmu), a tailFlapRate, aby każda ryba machała z odrobinę inną szybkością. Pozostało tylko sprawienie, aby ryba podążała po ścieżce, czyli obracała swe ciało w kierunku, w którym się porusza. Najprostszym na to sposobem jest użycie następującego skryptu (podzielonego na dwa wiersze, aby był bardziej przejrzysty): newRt = (in coordsys pathObj pathObj.rotation.z_rotation) fishObj.rotation.Z_rotation = newRt

Konstrukcja in coordsys informuje Maksa, aby podał wartość z punktu widzenia konkretnego układu współrzędnych. Zamiast układu odniesienia pathObj moglibyśmy wybrać układ World, Local, Screen lub Parent. W tym przypadku jednak chcemy, aby ryba obracała się w tym samym układzie współrzędnych, co obiekt pozorny. Aby trochę zróżnicować ustawienia ryb, uczyniliśmy rotację nieco bardziej złożoną: oldRt = fishObj.rotation.z_rotation newRt = (in coordsys pathObj pathObj.rotation.z_rotation) if ((random 1 100) > 85) then ( fishObj.rotation.z_rotation += (newRt - oldRt) * (random 0.5 1.5) )

Najpierw zapisaliśmy starą rotację względem osi Z w zmiennej oldRt, następnie umieściliśmy nową rotację w newRt. Ponownie wybraliśmy losową liczbę w celu decyzji, czy coś nastąpi — w tym przypadku mówimy: „Istnieje 85% szans na to, że w ogóle nie nastąpi zmiana kierunku”. Jeśli jednak losowa liczba będzie liczbą z tych pozostałych 15%, odrobinę zmienimy rotację ryby. Bierzemy różnicę pomiędzy nową rotacją a starą rotacją i mnożymy ją przez losową liczbę z przedziału 0,5 do 1,5, co oznacza, że zmieniamy rotację o wartość pomiędzy 50 a 150% różnicy między tymi dwiema rotacjami. A więc każda ryba podążać będzie po tej samej ścieżce, ale z małymi odchyleniami tu i ówdzie. Max pozwala użyć skrótu przy zmianie wartości zmiennych. Zamiast napisać a = a + b, możemy wpisać a += b. Obie konstrukcje dają ten sam efekt.

Część 3.: Animacja kolejnej ryby Właściwie scena zawiera dwie ryby (druga cierpliwie czekała z boku), a więc w ostatniej części ćwiczenia w animacji znajdą się obie ryby. Aby opracować animację drugiej ryby obok pierwszej, wykonaj następujące czynności. 1. U góry skryptu zmień wiersze (zmiany są pogrubione): pathObj = $Dummy01 fishObj = $Fish2/FishBody fishTail = $Fish2/FishBody/FishTail relPos = [50,75,0] -– Odległość ryby od ścieżki

1506

Dodatki

2. Wybierz File/Evaluate All (lub wciśnij Ctrl+E), aby uruchomić ponownie skrypt i zaanimować go. Na rysunku M.17 pokazano beztrosko płynące obie ryby.

Rysunek M.17. Teraz obie ryby płyną razem

Ten skrypt generuje klatki kluczowe dla drugiej ryby, ponieważ zmieniliśmy zmienne fishObj i fishTail, aby odnosiły się do niej. Zmieniliśmy także względną pozycję drugiej ryby tak, aby nie zderzyła się z pierwszą.

Obsługa edytora Visual MAXScript Budowanie skryptów może być skomplikowane, a ręczne składanie rolety dla narzędzia skryptowego może być szczególnie czasochłonne i frustrujące. Aby pomóc w tworzeniu nowych rolet, Max oferuje specjalny edytor o nazwie Visual MAXScript. Korzystając z niego, możemy graficznie układać elementy rolety i automatycznie tworzyć szkielet kodu dla pewnych zdarzeń. Praca z komendami tekstowymi może być czasochłonna. Aby skrypt zadziałał, musimy wprowadzać polecenia bardzo dokładnie. Może to być szczególnie zdradliwe przy próbie ułożenia kontrolek nowej rolety. W takich sytuacjach niezwykle pomocny okazuje się Visual MAXScript. Aby skorzystać z okna Visual MAXScript, pokazanego na rysunku M.18, wybieramy odpowiadające mu polecenie z menu MAXScript. Innym sposobem jest wybranie Edit/New Rollout lub Edit Rollout (F2) w oknie edytora skryptów.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1507

Rysunek M.18. Okno Visual MAXScript sprawia, że budowa rolet jest prosta

Szablony rolet utworzonych w oknie Visual MAXScript mogą być zapisywane jako pliki z rozszerzeniem .vms, za pomocą menu File. Jeśli otwieramy okno poprzez okno edytora skryptów, polecenie Save automatycznie aktualizuje okno edytora.

Interfejs edytora Visual MAXScript Okno Visual MAXScript dzieli się na dwa główne obszary. Po lewej składane są różne elementy rolety, a po prawej znajdują się panele Value i Event Handlers. Panel Value wyświetla wszystkie właściwości i odpowiadające im wartości dla danego elementu. Możemy zmienić wartość właściwości, klikając ją i wprowadzając nową wartość. Jeśli np. wybierzemy element Button (przycisk) w panelu po lewej, w panelu Value przedstawione zostaną właściwości tego elementu. Jeśli klikniemy Caption Property (napis na przycisku), wartość staje się podświetlona i możemy wprowadzić nowy napis, który pojawi się na przycisku. W panelu Event Handlers wyświetlone są wszystkie dostępne zdarzenia, które mogą być przypisane do wybranego elementu. Klikając pole wyboru na lewo od zdarzenia, uaktywniamy je. Przykładowo dla przycisku możemy uaktywnić zdarzenie Pressed (wciśnięty). Po uaktywnieniu tego zdarzenia do kodu dołączona zostanie funkcja, w której możemy określić, co się dzieje w momencie wywołania zdarzenia.

Menu i główny pasek narzędziowy U góry interfejsu znajdują się opcje menu i pasek narzędziowy. Menu File pozwala utworzyć nowy projekt (Ctrl+N), zapisać projekt do pliku (Ctrl+S) oraz otworzyć zapisany projekt (Ctrl+O). Menu Edit umożliwia wycinanie (Ctrl+X), kopiowanie (Ctrl+C) i wklejanie (Ctrl+V) elementów formularza. Te same opcje znajdują się na pasku narzędziowym w formie przycisków.

1508

Dodatki

Menu Layout zawiera opcje wyrównywania elementów do lewej (Ctrl+strzałka w lewo), do prawej (Ctrl+strzałka w prawo), do góry (Ctrl+strzałka w górę), do dołu (Ctrl+ strzałka w dół); wyśrodkowania w pionie (F9) i w poziomie (Shift+F9); rozmieszczenia elementów w równych odległościach w poziomie (Alt+strzałka w prawo) lub w pionie (Alt+strzałka w górę); ujednolicenia rozmiarów elementów pod względem szerokości, wysokości lub obu; wyśrodkowania w pionie (Ctrl+F9) lub poziomie (Ctrl+Shift+F9) oraz opcja odwrócenia (Flip). Możemy skorzystać z polecenia Layout/Guide Settings, aby określić prowadnice i kratownicę. Kratownica uaktywniana jest przez przycisk Toggle Grid/Snap, na prawym końcu głównego paska narzędziowego. Dostęp do tych poleceń mamy także w menu otwieranym po kliknięciu w lewym oknie prawym przyciskiem myszy.

Pasek z kontrolkami Pasek narzędziowy u dołu okna zawiera kontrolki, które możemy przeciągać do formularza. Dostępne przyciski i elementy opisane są w tabeli M.2. W prawej dolnej części okna znajdują się dwa pola tekstowe wyświetlające współrzędne bieżącego położenia kursora oraz rozmiar rolety. Domyślny rozmiar rolet to 162×300 i roleta takiego rozmiaru idealnie pasuje do panelu Command Panel.

Projektowanie rolety Rozmiar formularza rolety, szarego prostokąta w lewym oknie, możemy zmieniać, klikając i przeciągając czarne kwadratowe uchwyty na krawędziach. W czasie skalowania wymiary formularza wyświetlane są na bieżąco w prawym dolnym narożniku interfejsu. Po odpowiednim wyskalowaniu rolety możemy zacząć dodawać do niej kontrolki. Aby dodać kontrolkę do formularza, klikamy odpowiedni przycisk na dolnym pasku i przeciągamy na formularz. Element zaznaczony jest wyróżniany przez otaczające go czarne uchwyty. Przeciąganie tych uchwytów zmienia rozmiar kontrolki, a kliknięcie i przeciągnięcie w środku zmienia jej położenie w formularzu. Panele Value i Events aktualizowane są automatycznie, pokazując wartości i zdarzenia dla wybranego elementu. Wartości, takie jak szerokość lub współrzędna X, są automatycznie aktualizowane przy przeciąganiu elementu lub przeciąganiu uchwytów skalujących.

Wyrównywanie i rozmieszczanie elementów Pomimo że tylko jeden element naraz może posiadać otaczające go czarne uchwyty, możemy przeciągnąć myszą, rysując ramkę, która pozwala na zaznaczenie wielu elementów jednocześnie. Zaznaczone elementy możemy wyrównać do lewej (Ctrl+strzałka w lewo), wyśrodkować w poziomie (Shift+F9), wyrównać do prawej (Ctrl+strzałka w prawo), do góry (Ctrl+ strzałka w górę), wyśrodkować w pionie (F9) lub wyrównać do dołu (Ctrl+strzałka w dół).

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1509

Tabela M.2. Elementy formularza Visual MAXScript Przycisk

Element

Do czego służy

Bitmap

Pozwala dodać obraz do rolety.

Button

Dodaje prosty przycisk.

Map Button

Dodaje przycisk wyboru mapy otwierający okno Material/Map Browser.

Material Button

Dodaje przycisk wyboru materiału, który także otwiera okno Material/Map Browser.

Pick Button

Dodaje przycisk pozwalający wskazywać obiekt w oknie widokowym.

Check Button

Dodaje przycisk umożliwiający włączenie i wyłączenie określonego trybu.

Color Picker

Dodaje próbkę koloru, która po kliknięciu otwiera okno dialogowe Color Picker.

Combo Box

Dodaje listę z wieloma pozycjami.

Drop Down List

Dodaje listę z wyświetloną jedną pozycją.

List Box

Dodaje listę z wyświetlonymi wieloma elementami.

Edit Box

Dodaje pole tekstowe, które może być modyfikowane.

Label

Dodaje etykietę tekstową.

Group Box

Dodaje ramkę grupy, otaczającą kilka kontrolek.

Check Box

Dodaje pole wyboru umożliwiające włączanie i wyłączanie opcji.

Radio Buttons

Dodaje zestaw opcji, wśród których tylko jedna może być wybrana.

Spinner

Dodaje zestaw strzałek w górę i w dół, pozwalający modyfikować pole wartości.

Progress Bar

Dodaje pasek postępu, rozciągający się od lewej do prawej, w miarę postępu funkcji.

Slider

Dodaje suwak, który można przemieszczać w zakresie od minimum do maksimum.

Timer

Dodaje licznik odliczający określone odstępy czasu.

ActiveX Control

Dodaje kontrolkę ActiveX utworzoną przez innego dostawcę.

Custom

Dodaje kontrolkę skonfigurowaną według potrzeb użytkownika.

1510

Dodatki

Zaznaczone elementy można także równomiernie rozmieścić w poziomie (Alt+strzałka w prawo) lub w pionie (Alt+strzałka w górę). Aby ujednolicić elementy pod względem szerokości, wysokości lub obu tych cech, wybieramy polecenie Layout/Make Same Size. Polecenie Center in Dialog wyrównuje elementy do środka okna dialogowego w pionie (Ctrl+F9) lub poziomie (Ctrl+Shift+F9). Polecenie Flip odwraca położenie zaznaczonych elementów. Na rysunku M.19 przedstawiono formularz z kilkoma dodanymi i wyrównanymi elementami. Rysunek M.19. W oknie Visual MAXScript możemy tworzyć roletę, korzystając z gotowych kontrolek

Ćwiczenie: Konstruowanie własnej rolety za pomocą edytora Visual MAXScript Teraz musimy przećwiczyć korzystanie z tego użytecznego narzędzia. W tym przykładzie użyjemy okna Visual MAXScript, żeby zaprojektować roletę i zakodować skrypt. Aby utworzyć własną roletę za pomocą edytora Visual MAXScript, wykonaj następujące czynności. 1. Otwórz plik BuildCube.max znajdujący się w folderze Bonus Chapter M na płycie dołączonej do książki. Plik zawiera prosty obiekt kuli. 2. Wybierz z menu MAXScript/New Script, aby otworzyć okno edytora skryptów. W oknie edytora wpisz: utility buildCube "Build Cube" ( )

Ten wiersz utworzy narzędzie o nazwie buildCube. Nazwa rolety to Build Cube. Upewnij się, że między nawiasami znajduje się odstęp. 3. Z menu edytora wybierz Edit/New Rollout (lub wciśnij klawisz F2). Otworzy się okno Visual MAXScript. Właściwości nowej rolety wyświetlone są w panelu Properties. Przeciągnij dolny prawy uchwyt z czarnym kwadratem, aby przeskalować formularz rolety.

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

1511

4. Kliknij przycisk Spinner na dolnym pasku narzędziowym i przeciągnij myszą w formularzu, aby utworzyć element Spinner. W panelu Properties ustal jego nazwę na SideNum (liczba boków), ustal parametr Caption na No. of Side Objects (liczba obiektów bocznych), jako typ wybierz #integer i ustaw zakres (Range) na [1,100,5]. Wartości Range określają dolne, górne i domyślne wartości spinera. Teraz przeciągnij uchwyty tego elementu, aby przeskalować go tak, by pasował do formularza. 5. Kliknij ponownie przycisk Spinner i przeciągnij myszą w formularzu, aby utworzyć kolejny spiner. W panelu Properties ustal nazwę na length (długość), etykietę (Caption) na Side Length (długość boku), jako typ wybierz #integer i ustal zakres na [1,1000,50]. Następnie przeciągnij uchwyt elementu, by dopasować go do formularza. 6. Kliknij przycisk Button na dolnym pasku narzędziowym i przeciągnij myszą w formularzu, aby utworzyć przycisk pod spinerami. W panelu Properties ustal nazwę na createCube i etykietę na Create Cube. Przeciągnij uchwyt elementu, aby przeskalować go tak, żeby tekst etykiety mieścił się w obrębie przycisku. Otwórz panel Event Handlers i kliknij pole wyboru Pressed. 7. Przeciągnij myszą nad dwoma obiektami Spinner, aby je wybrać, po czym kliknij polecenie Layout/Align/Right (lub wciśnij Ctrl+strzałka w prawo), aby wyrównać zaznaczone elementy. Na rysunku M.20 pokazano wygląd projektu rolety. Rysunek M.20. Projektowanie rolety w oknie Visual MAXScript

8. Po zakończeniu rozmieszczania elementów rolety wybierz File/Save (lub wciśnij Ctrl+S), aby zapisać projekt, po czym zamknij okno Visual MAXScript. Kod skryptu dla elementów projektu zostaje automatycznie umieszczony w oknie edytora. 9. Wypełnij skrypt, wprowadzając polecenia tuż po otwierającym nawiasie w wierszu następującym po zdarzeniu on createCube pressed do, tak jak pokazano na rysunku M.21. Po prostu skopiuj i wklej kod z pliku BuildCube.ms znajdującego się w folderze Bonus Chapter M na płycie dołączonej do książki.

1512

Dodatki

Rysunek M.21. Okno edytora MAXScript zostaje zaktualizowane o kod wygenerowany przez Visual MAXScript

10. Otwórz panel Utilities i kliknij przycisk MAXScript. Następnie kliknij przycisk Run Script i wybierz plik BuildCube.ms z folderu Bonus Chapter M na płycie dołączonej do książki. Narzędzie zostanie zainstalowane i w rolecie MAXScript pojawi się rozwijana lista Utility. 11. Wybierz narzędzie BuildCube z rozwijanej listy w rolecie MAXScript i przewiń w dół zawartość panelu bocznego, aby odnaleźć roletę Build Cube. Wybierz obiekt kuli i kliknij przycisk Create Cube. Skrypt uruchomi się i utworzony zostanie sześcian z kul. Na rysunku M.22 przedstawiono efekt działania skryptu BuildCube.ms. Skrypt możemy wykorzystać dla jakiegokolwiek wybranego obiektu.

Podsumowanie Rozdział poświęcony został wprowadzeniu do MAXScriptu, potężnego języka skryptowego, wbudowanego w program 3ds Max. Omówiliśmy tu następujące zagadnienia: 

podstawy MAXScriptu,



korzystanie z narzędzi MAXScriptu, takich jak edytor skryptów i okno Listener,



zastosowanie narzędzia Macro Recorder do tworzenia skryptów,



wykorzystanie okna MAXScript Debugger,



różne typy skryptów,

Dodatek M  Automatyzacja pracy za pomocą MAXScriptu

Rysunek M.22. Efekt działania skryptu BuildCube.ms 

podstawy pisania własnych skryptów,



interfejs edytora Visual MAXScript,



elementy rolety,



tworzenie narzędzi skryptowych z własnymi roletami.

1513

1514

Dodatki

Dodatek N

Dostosowywanie interfejsu Maksa do własnych potrzeb i upodobań W tym dodatku: 

Okno dialogowe Customize User Interface



Tworzenie własnych skrótów klawiszowych, pasków narzędziowych i menu oraz zmienianie kolorów



Modyfikowanie wstążki



Dostosowywanie przycisków panelu poleceń



Zapisywanie i wczytywanie własnych interfejsów



Ustalanie jednostek



Ustawianie preferencji

Gdy po raz pierwszy siadasz za kierownicą nowego samochodu, najpierw dopasowujesz ustawienie fotela i lusterek, a dopiero potem ruszasz w drogę. Robisz wszystko po to, aby podczas jazdy czuć się wygodnie. Tę samą zasadę możesz zastosować w odniesieniu do programów komputerowych — dostosowanie interfejsu programu do własnych potrzeb i upodobań sprawia, że praca z takim programem staje się łatwiejsza i przyjemniejsza. Pierwsze wersje Maksa dopuszczały tylko nieznaczne modyfikacje interfejsu, ale obecnie możemy to robić w dużym zakresie. Możemy np. sprawić, że wyświetlane będą tylko te ikony i narzędzia, których potrzebujemy.

1516

Dodatki

Okno dialogowe Customize User Interface Menu Customize (dostosuj) zawiera polecenia służące do modyfikowania interfejsu Maksa. Pierwszym z nich jest polecenie Customize User Interface (dostosuj interfejs użytkownika). Otwiera ono okno dialogowe, o takiej samej nazwie, z pięcioma panelami: Keyboard (klawiatura), Toolbars (paski narzędziowe), Quads (czteroczęściowe menu kontekstowe), Menus (menu) i Colors (kolory). Okno to możesz również otworzyć, klikając prawym przyciskiem myszy dowolny pasek narzędziowy w miejscu niezajętym przez żaden przycisk i wybierając z menu podręcznego polecenie Customize.

Tworzenie własnych skrótów klawiszowych Stosując w sposób właściwy skróty klawiszowe, możesz znacznie przyspieszyć pracę. Na rysunku N.1 można zobaczyć panel Keyboard okna dialogowego Customize User Interface, gdzie dowolnemu poleceniu możesz przypisać skrót klawiszowy i utworzyć różne zestawy takich skrótów. Z listy rozwijanej Group możesz wybrać interfejs, którego poleceniom chcesz przypisać skróty klawiszowe. Po wybraniu interfejsu wszystkie jego polecenia zostaną wyświetlone poniżej wraz z aktualnie przypisanymi do nich skrótami. Aby wyłączyć wszystkie skróty dla danego interfejsu, usuń zaznaczenie opcji Active położonej obok listy interfejsów. Rysunek N.1. W panelu Keyboard możesz utworzyć skrót klawiszowy dla dowolnego polecenia

Aby można było korzystać ze skrótów klawiszowych zdefiniowanych dla różnych interfejsów, należy włączyć przycisk Keyboard Shortcut Override Toggle, znajdujący się w głównym pasku narzędzi. Kiedy przycisk będzie wyłączony, aktywne będą tylko te skróty, które odnoszą się do interfejsu głównego (Main UI).

Jeśli interfejs zawiera dużą liczbę poleceń, są one dzielone na różne kategorie, np. Controllers (kontrolery), Modifiers (modyfikatory) czy Objects Space Warps (obiekty — pola

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1517

sił). Lista rozwijana Category pozwala w takiej sytuacji wybrać kategorię wyświetlanych poleceń, co znacznie ułatwia i przyspiesza odszukanie konkretnego. Jeśli wpisany w polu Hotkey skrót klawiszowy jest aktualnie przypisany do innego polecenia, w polu Assigned to (przypisany do) zostanie wyświetlona stosowna informacja. Przycisk Assign służy do przypisywania skrótu do danego polecenia, a przycisk Remove — do usuwania takiego przypisania. Włączenie opcji Overrides Active umożliwia tymczasowe uaktywnianie poleceń, które w interfejsie Editable Poly są wyróżnione tłustym drukiem, przez wciskanie odpowiednich skrótów klawiszowych. Po zwolnieniu klawiszy przywracany jest wcześniejszy tryb pracy. Jeśli przykładowo pracujesz w trybie Extrude, możesz przytrzymać wciśnięte klawisze Shift+Ctrl+B, aby przejść do trybu Bevel. Gdy zwolnisz te klawisze, wówczas przywrócony zostanie tryb Extrude. W polu Delay To Override można ustalić czas, jaki ma upłynąć od wciśnięcia klawiszy do uaktywnienia danego polecenia. Za pomocą przycisku Write Keyboard Chart możesz zapisać wszystkie skróty klawiszowe w pliku tekstowym. Następnie możesz je wydrukować i powiesić obok monitora, aby zawsze były pod ręką. Przyciski Load, Save i Reset umożliwiają odpowiednio: wczytywanie, zapisywanie i przywracanie domyślnych zestawów skrótów klawiszowych. Zestawy skrótów zapisywane są w plikach z rozszerzeniem .kbd w podfolderze UI głównego folderu instalacyjnego Maksa. Wykaz wszystkich domyślnych skrótów klawiszowych znajdziesz w dodatku D, „Skróty klawiszowe w 3ds Max 2012”, zamieszczonym na końcu książki.

Dostosowywanie pasków narzędzi Po wybraniu zakładki panelu Toolbars w oknie dialogowym Customize User Interface możesz nie tylko modyfikować istniejące paski narzędzi, ale nawet tworzyć nowe. Panel ten jest pokazany na rysunku N.2. Panel Toolbars zawiera, znane już z panelu Keyboard, listy rozwijane Group i Category oraz listę poleceń. Kliknięcie przycisku New otwiera okno dialogowe, w którym możesz wpisać nazwę nowego paska narzędzi. Przycisk Delete służy do usuwania pasków narzędzi (możesz usunąć tylko te paski, które wcześniej utworzyłeś), a przycisk Rename umożliwia zmianę nazwy wybranego paska. Włączenie opcji Hide powoduje ukrycie wybranego paska. Za pomocą przycisków Load i Save możesz wczytywać i zapisywać zmodyfikowany interfejs użytkownika wraz nowymi paskami narzędzi. Pliki z zapisanymi interfejsami mają rozszerzenie .cui. Po utworzeniu nowego paska możesz umieszczać na nim narzędzia przez przeciąganie odpowiednich poleceń z listy Action (w ten sam sposób możesz dodawać narzędzia do pasków już istniejących). Możesz również przeciągać narzędzia z jednego paska na drugi, ale musisz to robić z wciśniętym klawiszem Alt. Jeśli podczas takiego przeciągania przytrzymasz wciśnięty klawisz Ctrl zamiast klawisza Alt, przeniesiona zostanie kopia narzędzia — to samo narzędzie będzie dostępne na obu paskach.

1518

Dodatki

Rysunek N.2. Panel Toolbars okna dialogowego Customize User Interface umożliwia tworzenie nowych pasków narzędzi

Jeśli przeciągasz polecenie, któremu została przypisana ikona, wówczas ikona pojawi się na pasku narzędzi. Jeśli polecenie nie ma ikony, na pasku pojawi się nazwa polecenia. W prawej części panelu Toolbars znajduje się pole Quick Access Toolbar, gdzie możesz skonfigurować zawartość paska szybkiego dostępu.

Ćwiczenie: Tworzenie paska narzędzi Jeśli używałeś już wcześniej Maksa, zapewne masz swoje ulubione polecenia, które często stosujesz. Dla takich poleceń możesz utworzyć oddzielny pasek narzędzi. W tym ćwiczeniu utworzymy pasek dla poleceń używanych do tworzenia i modyfikowania obiektów złożonych (compound objects). Aby utworzyć taki pasek, wykonaj następujące czynności. 1. Wybierz polecenie Customize/Customize User Interface, aby otworzyć okno dialogowe Customize User Interface. 2. Otwórz panel Toolbars i kliknij przycisk New. W oknie dialogowym New Toolbar wpisz nazwę nowego paska, np. Compound Objects (obiekty złożone). Po kliknięciu przycisku OK utworzony zostanie nowy, pusty pasek narzędzi. 3. Z rozwijanych list Group i Category wybierz grupę Main UI i kategorię Objects Compounds. Następnie przeciągnij wszystkie polecenia z listy Action na nowy pasek narzędzi. 4. Kliknij przycisk Save, aby zapisać wprowadzone zmiany w pliku z ustawieniami interfejsu. Gotowy pasek możesz wczytać z płyty dołączonej do książki. W folderze Bonus Chapter N znajdziesz plik o nazwie Compound Objects toolbar.cui.

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1519

Ikony widoczne na pasku narzędzi mogą być wyświetlane w odcieniach szarości, co oznacza, że są niedostępne. Gdy tylko narzędzie stanie się dostępne, jego ikona będzie wyświetlana w kolorze.

Nowy pasek narzędzi został pokazany na rysunku N.3. Po utworzeniu paska możesz zdecydować, czy ma być pływający lub zadokować go, tak jak każdy inny pasek. Zauważ, że niektóre narzędzia zostały oznaczone ikonami, a inne nazwami.

Rysunek N.3. Nowy pasek narzędzi do manipulowania obiektami złożonymi, utworzony przy użyciu okna dialogowego Customize User Interface

Jeśli klikniesz prawym przyciskiem myszy dowolny z przycisków na nowym pasku narzędzi (nie dotyczy to głównego paska narzędzi), rozwinie się menu podręczne, umożliwiające zmianę wyglądu przycisku, usunięcie go z paska, zmodyfikowanie przypisanego do niego skryptu makro lub otwarcie okna dialogowego Customize User Interface. Aby dowiedzieć się więcej na temat skryptów makro, zajrzyj do dodatku M, „Automatyzacja pracy za pomocą MAXScriptu”.

Zmienianie wyglądu przycisku Wybranie z podręcznego menu polecenia Edit Button Appearance spowoduje otwarcie okna dialogowego Edit Macro Button, pokazanego na rysunku N.4. Korzystając z niego, możesz z łatwością zmienić ikonę przycisku, tekst podpowiedzi (tooltip) lub tekst etykiety wyświetlanej zamiast ikony. Każda grupa ikon zawiera wersje kolorowe dla przycisków dostępnych i szare dla przycisków niedostępnych. Przyciski domyślne również możesz zmieniać. Jeśli zaznaczysz pole wyboru Odd Only, wyświetlone zostaną tylko standardowe ikony. Rysunek N.4. Okno dialogowe Edit Macro Button umożliwia zmianę wyglądu przycisku przez zmianę ikony, tekstu podpowiedzi lub tekstu etykiety

Jeżeli rozmiary przycisku są zbyt małe, aby pomieścić tekst etykiety, możesz je powiększyć za pomocą opcji Fixed Width Text Buttons w panelu General okna dialogowego Preference Settings.

1520

Dodatki

Ćwiczenie: Tworzenie własnych ikon Interfejs Maksa obsługuje ikony w dwóch różnych rozmiarach — duże o wymiarach 24×24 piksele i 24-bitowej głębi kolorów oraz małe o wymiarach 16×15 pikseli i maksymalnie 16-bitowej głębi kolorów. Najłatwiejszy sposób wykonania własnych ikon polega na skopiowaniu do programu graficznego tych, które już istnieją, i zapisaniu ich pod nową nazwą po wprowadzeniu odpowiednich modyfikacji. Wszystkie ikony wykorzystywane przez Max znajdziesz w folderze 3ds Max 2012\ui\Icons jako pliki BMP. Aby utworzyć nową grupę ikon, wykonaj następujące czynności. 1. W folderze UI\Icons zaznacz grupę ikon przeznaczonych do edycji i otwórz je w Photoshopie. Wybrałem grupę ikon, których nazwy rozpoczynają się od wyrazu Patches. Grupa ta składa się z dwóch ikon, ale by utworzyć komplet ikon dużych i małych oraz ikon dla stanów aktywności i nieaktywności, musisz otworzyć następujące cztery pliki: Patches_16a.bmp, Patches_16i.bmp, Patches_24a.bmp i Patches_24i.bmp. 2. W każdym pliku ikony są umieszczone obok siebie, tak więc dwa pierwsze pliki mają wymiary 32×15, a kolejne dwa — 48×24. Uważaj, aby podczas edycji nie zmienić rozmiarów ikon. 3. Po zakończeniu edycji zapisz każdy plik z nową nazwą grupy. Nazwą grupy jest ta część nazwy pliku, która znajduje się przed znakiem podkreślenia. Zapisałem te pliki jako Kels_16a.bmp, Kels_16i.bmp, Kels_24a.bmp i Kels_24i.bmp. W oknie dialogowym Edit Macro Button będą one wyświetlane jako grupa Kels. Pliki z tymi ikonami zostały zapisane w folderze Bonus Chapter N na płycie dołączonej do książki. Po skopiowaniu do katalogu 3ds Max 2012\ui\Icons będziesz mógł je wykorzystać. 4. Po zapisaniu plików i ponownym uruchomieniu Maksa nowa grupa ikon będzie dostępna w oknie dialogowym Customize User Interface i będziesz mógł je przypisać wybranym poleceniom. Na rysunku N.5 przedstawiono okno dialogowe Edit Macro Button wyświetlające ikony z opracowanej przeze mnie grupy o nazwie Kels. Rysunek N.5. Okno dialogowe Edit Macro Button po wybraniu nowej grupy ikon

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1521

Dostosowywanie czteroczęściowego menu kontekstowego Trzeci panel okna dialogowego Customize User Interface umożliwia dostosowanie do własnych potrzeb czteroczęściowego menu kontekstowego — Quadmenus. Tego typu menu jest otwierane po kliknięciu prawym przyciskiem myszy w aktywnym oknie widokowym i w niektórych innych oknach interfejsu. Panel można zobaczyć na rysunku N.6. Rysunek N.6. Panel Quads okna dialogowego Customize User Interface umożliwia modyfikowanie czteroczęściowego menu kontekstowego

W lewej części panelu znajdują się te same, co w panelach Keyboard i Toolbars, listy rozwijane Group, Category i lista poleceń — Action. Dodatkowo jest tu także separator i lista poleceń menu — Menus. Separator służy do oddzielania poszczególnych sekcji menu. Lista rozwijana w prawej górnej części panelu zawiera odmienne zestawy menu kontekstowych, które są otwierane w różnych miejscach, np. w oknie ActiveShade. Możesz nie tylko modyfikować istniejące menu, ale także tworzyć nowe. Właśnie do tego celu służy przycisk New. Natomiast przycisk Rename umożliwia zmianę nazwy już istniejącego menu. W polu Quad Shortcut możesz wpisać skrót klawiszowy, który zostanie przypisany do wybranego menu. Niektórym menu zostały przypisane skróty klawiszowe. Klikając prawym przyciskiem myszy przy wciśniętych odpowiednich klawiszach, możesz otwierać różne menu kontekstowe. Wciśnięcie klawisza Shift otwiera menu z opcjami przyciągania — Snap, przy wciśniętym klawiszu Alt otworzy się menu animacji (Animation), przy wciśniętym klawiszu Ctrl — menu modelowania (Modeling), przy wciśniętych klawiszach Shift+Alt — menu reaktora (reactor), a przy wciśniętych klawiszach Ctrl+Alt — menu oświetlenia i renderingu (Lighting/Rendering).

Jeżeli wyłączysz opcję Show All Quads, tylko jeden blok menu będzie wyświetlany w całości, natomiast pozostałe zostaną zredukowane do małych kwadracików. Aby wyświetlić inny blok, wystarczy przesunąć kursor nad odpowiedni kwadracik. Może to być przydatne, gdy chcemy, aby menu nie zajmowało zbyt dużo miejsca na ekranie.

1522

Dodatki

Cztery prostokąty symbolizują odpowiednie bloki aktualnie wskazanego menu. Wybranie konkretnego bloku powoduje zmianę koloru prostokąta na żółty i wyświetlenie w sąsiednich polach nazwy bloku oraz zawartych w nim poleceń. Aby wybrać konkretny blok menu, kliknij odpowiadający mu szary prostokąt. Aby dodać nowy element do aktualnie wybranego menu, przeciągnij odpowiednią pozycję z listy Action, Separator lub Menus do pola z poleceniami bieżącego menu (po prawej stronie okna). Kolejność poleceń możesz zmienić, przeciągając je w obrębie tego pola. Jeśli chcesz usunąć jakieś polecenie, zaznacz je, a następnie wciśnij klawisz Delete lub kliknij prawym przyciskiem myszy i z podręcznego menu wybierz polecenie Delete Menu Item. Wspomniane wyżej menu podręczne umożliwia także zmianę nazwy polecenia i „spłaszczenie” edytowanego menu, czyli spowodowanie, że polecenia tworzące podmenu będą wyświetlane na jednym poziomie wraz z głównymi poleceniami (opcja Flatten Sub-Menu). Nowe lub zmodyfikowane menu czteroczęściowe możesz zapisywać i wczytywać, używając przycisków Save i Load (pliki z zapisanymi menu mają rozszerzenie .mnu). Panel Quads zawiera również przycisk Advanced Options, którego kliknięcie otwiera okno dialogowe Advanced Quad Menu Options (pokazane na rysunku N.7), pozwalające na ustawienie wielu opcji związanych z wyglądem menu kontekstowego. Rysunek N.7. W oknie dialogowym Advanced Quad Menu Options możesz zmienić czcionkę i kolory menu kontekstowego

Zmiany wprowadzone w oknie Advanced Quad Menu Options dotyczą wszystkich czteroczęściowych menu kontekstowych. Ustawienia dokonane w tym oknie mogą być zapisywane i wczytywane — pliki z tymi ustawieniami mają rozszerzenie .qop. Za pomocą przycisków Starting Quadrant można ustalić, który blok ma pojawić się jako pierwszy po otwarciu menu. Dla każdego bloku można ustawić inne kolory lub spowodować, za pomocą przycisków z literą L, aby były jednakowe we wszystkich blokach. Pozostałą część okna Advanced Quad Menu Options zajmują opcje dotyczące sposobu wyświetlania bloków menu i używanych czcionek.

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1523

W sekcji Animation możesz ustawić styl animacji stosowanej podczas rozwijania menu. Dostępnymi opcjami są: None, Stretch i Fade. Po wybraniu stylu Stretch menu będzie stopniowo (w określonej liczbie kroków) rozciągane aż do osiągnięcia pełnych rozmiarów, a po wybraniu stylu Fade menu będzie się powoli wyłaniać. Nie lubię czekać, aż menu się pojawi, dlatego wybieram wyświetlanie menu bez animacji, czyli opcję None.

Dostosowywanie głównego menu Panel Menus okna dialogowego Customize User Interface umożliwia dostosowanie głównego menu Maksa do własnych potrzeb i upodobań. Panel ten został pokazany na rysunku N.8. Rysunek N.8. Panel Menus okna dialogowego Customize User Interface umożliwia modyfikowanie głównego menu

Panel Menus zawiera te same listy rozwijane Group i Category oraz listy Action, Separator i Menus, które znamy już z panelu Quads. Podobnie jak tam, możesz przeciągać polecenia z list po lewej stronie do pola po prawej stronie okna. Zmodyfikowane menu możesz zapisać w pliku z rozszerzeniem .mnu. Możesz także usuwać wybrane pozycje menu z pola po prawej stronie, używając klawisza Delete lub wybierając polecenie Delete Menu Item z menu podręcznego, rozwijanego po kliknięciu prawym przyciskiem myszy w tym polu. Jeśli w nazwie menu umieścisz znak &, litera następująca po tym znaku będzie wyświetlana jako podkreślona i dana pozycja menu będzie dostępna przez wciśnięcie klawisza Alt i klawisza z wyróżnioną w ten sposób literą, np. wciśnięcie klawiszy Alt+F otwiera menu File.

1524

Dodatki

Ćwiczenie: Tworzenie nowego menu Utworzenie nowej pozycji w menu głównym można łatwo zrealizować za pomocą okna dialogowego Customize User Interface. W tym ćwiczeniu do menu Tools (narzędzia) dodamy opcję zmiany wyglądu kursora. Po jej włączeniu kursor w aktywnym oknie widokowym przyjmie postać dwóch cienkich, prostopadłych linii. Aby do menu Tools dodać jeszcze jedną pozycję, wykonaj następujące czynności. 1. Wybierz polecenie Customize/Customize User Interface, aby otworzyć okno dialogowe Customize User Interface. 2. Kliknij zakładkę panelu Menus. 3. Z rozwijanych list Group i Category wybierz pozycje, odpowiednio Main UI oraz Tools. W polu po prawej stronie kliknij znak plus obok nazwy menu Tools, aby wyświetlić listę wszystkich jego pozycji. 4. Na liście Action odszukaj pozycję o nazwie Cross Hair Cursor Toggle i przeciągnij ją do pola po prawej stronie, umieszczając bezpośrednio za poleceniem Channel Info Editor. Miejsce, w którym przeciągane polecenie zostanie umieszczone, oznaczane jest niebieską linią. 5. Kliknij przycisk Save, aby zapisać zmodyfikowane menu. Gotowy plik z taką modyfikacją znajdziesz w folderze Bonus Chapter N na płycie dołączonej do książki. Po zapisaniu zmian wprowadzonych do interfejsu zazwyczaj musisz ponownie uruchomić program, aby były one widoczne. Jeśli zechcesz przywrócić domyślne ustawienia interfejsu, wybierz polecenie Customize/Revert to Startup Layout.

Dostosowywanie kolorów interfejsu W Maksie kolory często sygnalizują tryb, w jakim aktualnie pracujesz, np. kolor czerwony oznacza tryb animacji. Korzystając z panelu Colors okna dialogowego Customize User Interface, możesz ustalić własne kolory dla wszystkich elementów interfejsu Maksa. Panel ten — pokazany na rysunku N.9 — składa się z dwóch list. Górna zawiera poszczególne składniki tego elementu interfejsu, który został wybrany z listy rozwijanej Elements. Zaznaczenie konkretnego składnika powoduje wyświetlenie jego koloru w polu Color umieszczonym na prawo od górnej listy. Możesz ustalić także intensywność koloru (parametr Intensity), odwrócić go (opcja Invert) i wybrać ramkę okna programu (Application Frame) jasną lub ciemną (Light lub Dark). Dolna lista zawiera kolory, które można modyfikować, zmieniając w ten sposób wygląd interfejsu. Jeśli na tej liście wskażesz np. pozycję o nazwie Highlight Text, nie będzie to oznaczało wyboru konkretnego elementu interfejsu, lecz wybór koloru używanego do wyświetlania zaznaczonego tekstu. Z listy rozwijanej Scheme możesz wybrać schemat kolorów modyfikowalnych (opcja Custom Colors) lub schemat kolorów systemu Windows (opcja Use Standard Windows Colors). Dla kolorów modyfikowalnych oprócz barwy

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1525

Rysunek N.9. Panel Colors okna dialogowego Customize User Interface umożliwia modyfikowanie kolorów interfejsu

możesz określić nasycenie (Saturation), wartość (Value), przezroczystość (Transparency), kontrast (Contrast) i mapę gradientową (Gradient Map). Jednak te dodatkowe parametry są dostępne jedynie dla ikon. Zmiany dokonane w ustawieniach kolorów możesz zapisywać w plikach z rozszerzeniem .clr. Jeśli chcesz natychmiast zaktualizować kolory interfejsu, kliknij przycisk Apply Colors Now.

Modyfikowanie wstążki Dostępne jest również okno dialogowe, w którym można manipulować panelami wstążki. Aby otworzyć to okno, należy kliknąć prawym przyciskiem myszy pasek tytułowy wstążki i wybrać polecenie Ribbon Configuration/Customize Ribbon. Okno Customize Ribbon pokazane jest na rysunku N.10. Korzystanie z tego okna jest bardzo łatwe. W lewej części u góry dostępne są wszystkie funkcje Maksa pogrupowane w kategorie, podobnie jak w oknie Customize User Interface. U dołu po lewej znajdują się kontrolki typowe dla interfejsu wstążki, takie jak zakładki, panele czy panele podrzędne. Część środkowa zawiera hierarchiczną listę składników bieżącego interfejsu wstążki, a po prawej dostępny jest podgląd zaznaczonego elementu i jego właściwości. Aby do istniejącego już panelu wstążki dodać nową funkcję, należy ją zlokalizować w części zatytułowanej Action Items, a następnie przeciągnąć do części Existing UI i umieścić w miejscu, w którym powinna być dostępna. Jeśli funkcja ma przypisany jakiś przycisk, będzie on widoczny w tym miejscu. Wygląd całego panelu można obejrzeć w części zatytułowanej Preview Window.

1526

Dodatki

Rysunek N.10. Okno Customize Ribbon umożliwia zmianę zawartości istniejących paneli, a nawet tworzenie nowych

Jeśli dodawana funkcja nie ma własnego przycisku, można jej przypisać dowolną ikonę — należy skorzystać z właściwości Standard Icon. Ustawiając pozostałe właściwości, można dodać własny tekst, określić wymiary ikony i zdecydować, czy tekst oraz ikona mają być widoczne. W polu Description (opis) można wpisać tekst, który będzie wyświetlany w formie etykietki ekranowej.

Definiowanie kontekstowych narzędzi i paneli Niektóre właściwości, na przykład Visible (widoczne) dla funkcji czy Available (dostępne) dla paneli, mogą przyjmować wartości True (tak), False (nie) lub Conditional (warunkowo). Ostatnia opcja otwiera okno dialogowe pokazane na rysunku N.11, gdzie można określić warunki, jakie muszą być spełnione, aby dany element interfejsu był widoczny lub dostępny. W ten sposób można sprawić, że na przykład dany przycisk będzie widoczny tylko przy zaznaczonym obiekcie typu Editable Poly lub przy włączonym trybie cięcia (Slice Mode). Można więc zdefiniować własną wstążkę, której zawartość będzie zależna od kontekstu. W oknie Conditions znajduje się także pole o nazwie Maxscript, w którym można wpisać warunek sformułowany w języku MAXSript. Dzięki temu można uzależnić dostępność jakiejś funkcji nawet od tego, czy zaznaczonych jest kilka obiektów, a nie tylko jeden. Za pomocą przycisku Open Editor można otworzyć okno edytora skryptów i przetestować sformułowane warunki.

Zapisywanie zmian w ustawieniach wstążki Jeśli po wprowadzeniu zmian w konfiguracji wstążki klikniesz przycisk Save (zapisz), zmiany zostaną natychmiast wprowadzone w życie i wstążka zmieni swój wygląd. Przycisk Save As (zapisz jako) otwiera okno dialogowe pozwalające na zapisanie nowej wstążki w odrębnym pliku z rozszerzeniem .ribbon. Plik taki można później wczytać za pomocą przycisku Load.

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1527

Rysunek N.11. W oknie dialogowym Conditions można określić warunki, jakie muszą być spełnione, aby dany element interfejsu był widoczny lub dostępny

Ćwiczenie: Definiowanie panelu z obiektami podstawowymi Korzystanie ze wstążki jest bardzo wygodne i często podczas modelowania chowam zupełnie boczny panel poleceń. Brakuje mi wtedy tylko możliwości szybkiego tworzenia obiektów podstawowych — menu Create jest zbyt nieporęczne. Postanowiłem więc umieścić stosowne polecenia na wstążce. Aby utworzyć panel wstążki z obiektami podstawowymi, wykonaj następujące czynności: 1. Na głównym pasku narzędziowym kliknij przycisk Graphite Modeling Tools, aby otworzyć interfejs wstążki. 2. Kliknij prawym przyciskiem myszy pasek tytułowy wstążki i wybierz polecenie Ribbon Configuration/Customize Ribbon. 3. W oknie Customize Ribbon z części zatytułowanej Ribbon Controls przeciągnij kontrolkę zakładki (Tab) do części Existing UI i umieść ją poniżej pozycji Object Paint. W części Properties wpisz w polach Name i Title tekst Primitives (obiekty proste). Aby cokolwiek umieścić na nowej zakładce, trzeba jej wcześniej nadać unikatową nazwę, wpisując odpowiedni tekst w polu Name.

4. Z części Ribbon Controls przeciągnij kontrolkę panelu (Panel) do części Existing UI i umieść ją poniżej pozycji Primitives. W polu Title wpisz Standard Primitives. 5. W części Action Items ustaw Group na Main UI, a Category na Objects Primitives. Następnie poprzeciągaj poszczególne obiekty podstawowe na nowy panel Standard Primitives w części Existing UI. 6. Pod obiektem Teapot umieść kontrolkę Row Break, aby rząd ikon podzielić na dwie części. 7. Zatwierdź wprowadzone zmiany, klikając przycisk Save.

1528

Dodatki

Na rysunku N.12 pokazano zmodyfikowaną wstążkę z panelem zawierającym wszystkie obiekty podstawowe. Rysunek N.12. Wstążka z nowym panelem Primitives

Konfigurowanie przycisków paneli Modify i Utilities Boczne panele Modify i Utilities zawierają przyciski o nazwie Configure Button Sets (konfiguruj zestaw przycisków) umożliwiające dowolne grupowanie przycisków modyfikatorów i narzędzi. W panelu Modify przycisk Configure Modifier Sets (konfiguruj zestawy modyfikatorów) jest pierwszym od prawej przyciskiem pod stosem modyfikatorów. Kliknięcie go otwiera menu z listą wszystkich kategorii modyfikatorów. Najwyższą pozycję w tym menu zajmuje polecenie Configure Modifier Sets. Jego wybranie otwiera okno dialogowe, pokazane na rysunku N.13, które umożliwia tworzenie zestawów modyfikatorów. Rysunek N.13. Okno dialogowe Configure Modifier Sets umożliwia dowolne grupowanie modyfikatorów

Aby do określonego zestawu dodać modyfikator, wybierz ten zestaw z listy rozwijanej Sets, a następnie przeciągnij modyfikator z listy Modifiers znajdującej się po lewej stronie okna do odpowiedniego przycisku w prawej części okna. Jeśli zechcesz utworzyć nowy zestaw, po prostu wpisz jego nazwę w polu Sets. Aby wprowadzone zmiany zostały zapamiętane, musisz je zapisać, korzystając z przycisku Save. Podobne okno dialogowe zostanie otwarte po kliknięciu przycisku Configure Button Sets (konfiguruj zestawy przycisków) w panelu Utilities. Tutaj możesz przeciągać narzędzia z listy Utilities znajdującej się w lewej części okna do zestawu przycisków położonego

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1529

po prawej stronie okna. Przyciski te będą później wyświetlane w panelu Utilities. W ten sposób możesz spowodować, aby często używane modyfikatory i narzędzia były dostępne zaraz po otwarciu panelu.

Korzystanie z różnych interfejsów Jeśli dostosowałeś interfejs do własnych potrzeb i upodobań, zapewne chciałbyś go zapisać, aby później odtworzyć. Jest to szczególnie istotne w sytuacji, gdy z tej samej kopii Maksa korzystają jeszcze inni użytkownicy. Jeśli uruchamiasz Maksa z wiersza poleceń, możesz wybrać dowolny plik z interfejsem (plik z rozszerzeniem .ui), dodając po nazwie 3dsmax.exe parametr -c i nazwę pliku .ui (np. 3dsmax.exe -c my_interface.ui).

Zapisywanie i wczytywanie interfejsu Zmodyfikowane schematy interfejsu są zapisywane w plikach z rozszerzeniem .ui. Do zapisania takiego schematu służy polecenie Customize/Save Custom UI Scheme. Po jego wybraniu zostaje otwarte okno dialogowe, w którym możesz określić nazwę pliku, po czym otwiera się kolejne okno, o nazwie Custom scheme (patrz rysunek N.14), pozwalające określić, które modyfikacje powinny zostać uwzględnione w zapisywanym schemacie. Możesz tu także wybrać typ ikon, jakie zostaną zastosowane — klasyczne (Classic) lub płaskie i czarno-białe (2D Black and White). Rysunek N.14. Okno dialogowe Custom Scheme jest otwierane podczas zapisywania zmodyfikowanego interfejsu i umożliwia określenie, które modyfikacje mają być zachowane

Do wczytywania zapisanych schematów interfejsu służy polecenie Customize/Load Custom UI Scheme. Podczas standardowej instalacji Maksa w folderze Program Files/Autodesk/ 3ds Max 2012/ui zapisywane są pewne predefiniowane ustawienia interfejsu. Są to następujące schematy: 

DefaultUI — domyślny interfejs otwierany przy pierwszym uruchomieniu Maksa,



ame-dark — interfejs z czarnymi oknami dialogowymi, tłami i oknami widokowymi; wszystkie ikony i menu są jasnoszare, a wiele ikon różni się od standardowych (patrz rysunek N.15),



ame-light — od ame-dark różni się tym, że ikony i menu są czarne, a wszystkie tła — jasnoszare; niektóre ikony również różnią się od standardowych,



ModularToolbarsUI — interfejs z głównym paskiem narzędziowym podzielonym na kilka mniejszych pasków, którymi można łatwiej operować.

1530

Dodatki

Rysunek N.15. Jeśli wolisz czarny interfejs, wczytaj schemat ame-dark W 3ds Max 2012 domyślnie włączany jest schemat ciemnych kolorów interfejsu.

Za pomocą poleceń Save Custom UI Scheme i Load Custom UI Scheme możesz zapisywać i wczytywać dowolne typy plików z ustawieniami interfejsu, a są to: 

pliki ze schematami interfejsu (.ui),



pliki z układem interfejsu (.cui),



pliki menu (.mnu),



pliki kolorów (.clr),



pliki ze skrótami klawiszowymi (.kbd),



pliki z opcjami czteroczęściowego menu kontekstowego (.qop). W preferencjach Maksa możesz ustawić automatyczne zapisywanie aktualnej konfiguracji interfejsu przy zamykaniu programu. W tym celu w panelu General okna dialogowego Preference Settings zaznacz opcję Save UI Configuration on Exit.

Blokowanie interfejsu Po wprowadzeniu odpowiednich zmian w interfejsie możesz go zablokować, aby uniknąć przypadkowych modyfikacji. Żeby to zrobić, wybierz polecenie Customize/Lock UI Layout (lub wciśnij klawisze Alt+0). Takie blokowanie polega na uniemożliwieniu przemieszczania elementów interfejsu. Modyfikacje za pośrednictwem okien dialogowych i poleceń menu są nadal możliwe.

Dodatek N  Dostosowywanie interfejsu Maksa do własnych potrzeb

1531

Przywracanie interfejsu otwarcia Gdy po raz pierwszy próbujesz zmieniać ustawienia dotyczące interfejsu Maksa, łatwo możesz doprowadzić do bałaganu. Jeśli znajdziesz się w takiej sytuacji, możesz przywrócić interfejs do stanu zapisanego podczas otwierania programu (jest on zapisywany w pliku MaxStartUI.ui), wybierając polecenie Customize/Revert to Startup UI Layout. Wybranie polecenia Reset z menu aplikacji nie powoduje przywrócenia początkowego układu interfejsu. Jeżeli w wyniku Twoich poczynań bałagan wkradnie się również do pliku MaxStartUI.ui, możesz przywrócić oryginalne, domyślne ustawienia interfejsu, usuwając wspomniany plik przed uruchomieniem Maksa. Pamiętaj przy tym, aby nie modyfikować pliku DefaultUI, ponieważ na podstawie jego zawartości są przywracane ustawienia oryginalne.

Wybieranie ustawień domyślnych i schematu interfejsu Polecenie Customize/Custom UI and Defaults Switcher otwiera interaktywne okno prezentujące kilka opcji wyboru ustawień początkowych i schematu interfejsu (patrz rysunek N.16). Po wybraniu konkretnej opcji wyświetlany jest jej szczegółowy opis. Rysunek N.16. To okno objaśnia korzyści wynikające z wyboru określonych ustawień początkowych i schematu interfejsu

Lista Initial settings for tool options (początkowe ustawienia opcji narzędzi) zawiera następujące pozycje: Max, Max.mentalray, DesignVIZ i DesignVIZ.mentalray. Oznaczają one różne ustawienia domyślne wielu elementów sterujących. Przykładowo po wybraniu opcji Max domyślnym rendererem jest Scanline, a po wybraniu opcji Max.mentalray takim rendererem jest mental ray. Na liście UI schemes (schematy interfejsu) znajdują się, opisywane już wcześniej, schematy interfejsu.

1532

Dodatki

Po wybraniu ustawień początkowych i schematu kliknij przycisk Set, aby zatwierdzić swój wybór. Kliknięcie przycisku ze strzałkami (w lewym dolnym rogu okna) powoduje powrót do informacji wstępnych. Jeśli w pliku CurrentDefaults.ini będzie brakować jakiegoś ustawienia lub w nowym folderze z ustawieniami będzie brakować jakiegoś pliku, użyte zostaną ustawienia i pliki z domyślnego folderu Maksa.

Podsumowanie Istnieje wiele sposobów dostosowywania interfejsu Maksa do własnych potrzeb i upodobań. Większość niezbędnych do tego celu poleceń i opcji zawiera menu Customize. W tym rozdziale dowiedziałeś się, jak za pomocą tego menu modyfikować różne aspekty interfejsu Maksa, by stał się bardziej wygodny i wydajniejszy. Tematyka tego rozdziału obejmowała następujące zagadnienia: 

dostosowywanie skrótów klawiszowych, pasków narzędzi, menu głównego i kontekstowego oraz kolorów interfejsu za pomocą okna dialogowego Customize User Interface,



dostosowywanie przycisków modyfikatorów i narzędzi w panelach Modify i Utilities,



zapisywanie i wczytywanie zmodyfikowanych interfejsów.

Dodatek O

Rozszerzanie możliwości Maksa przez zewnętrzne moduły dodatkowe W tym dodatku: 

Korzystanie z modułu Turbo Squid Tentacles



Idea modułów dodatkowych



Odnajdywanie modułów dodatkowych



Instalacja modułów, przegląd i zarządzanie nimi



Przykłady modułów dodatkowych

Moduł dodatkowy, plugin, to zewnętrzny program, bezkonfliktowo integrujący się z interfejsem Maksa i dodający do niego nowe funkcje. Firma Autodesk zastosowała w Maksie otwartą architekturę, co umożliwia rozszerzenie jego funkcji we wszystkich możliwych aspektach. Max dostarczany jest wraz z pakietem Software Developer’s Kit (SDK), który umożliwia użytkownikom tworzenie własnych modułów. Obecnie wiele firm produkuje moduły dodatkowe, a niektórzy użytkownicy tworzą i rozpowszechniają je darmowo lub w wersji shareware. Celem niniejszego rozdziału nie jest prezentacja wszystkich dostępnych pluginów ani nauka ich tworzenia. Ograniczymy się tutaj do pokazania sposobów instalowania i używania takich modułów. Na końcu rozdziału znajdziesz wykaz adresów internetowych, z których możesz skorzystać, aby rozbudować Maksa. Cała architektura Maksa zbudowana jest wokół modułów dodatkowych i wiele pierwotnych komponentów programu zaimplementowanych zostało w formie pluginów. Max dostarczany jest wraz z potężnym pakietem Software Developer Kit (SDK), który zawiera wszystkie informacje potrzebne do tworzenia takich modułów we własnym zakresie.

1534

Dodatki

Duży wpływ na ogromną popularność Maksa ma fakt, że użytkownicy mogą pobierać i instalować moduły poszerzające możliwości programu. Pozwalają one na dostosowanie programu do potrzeb indywidualnego odbiorcy i często zawierają propozycje nowych, oryginalnych rozwiązań. Jest jednak jeden moduł, któremu warto przyjrzeć się bliżej i który jest instalowany domyślnie wraz z Maksem. Jest to Turbo Squid Tentacles. Moduł ten łączy użytkownika z witryną internetową, której zasoby można kupować, pobierać i używać. A zasoby te to gotowe modele, tekstury, a nawet pluginy.

Korzystanie z modułu Turbo Squid Tentacles Jeśli potrzebujesz umieścić w tle sceny żabę, ale nie masz czasu ani ochoty na jej modelowanie (albo po prostu boisz się, że Twoja skóra pokryje się brodawkami), możesz skorzystać z możliwości kupna modelu, który ktoś już opracował. Moduł Turbo Squid Tentacles znajdziesz na płycie instalacyjnej Maksa. Po zainstalowaniu ujawnia się on w postaci dodatkowej pozycji na pasku menu. W menu tym znajdziesz polecenia: Search Marketplace — umożliwiające przeglądanie zasobów online, Open My Files — udostępniające zasoby zakupione i pobrane z witryny Turbo Squid oraz Save to Tentacles — pozwalające umieścić własne zasoby w tej witrynie. Wybranie polecenia Search Marketplace powoduje uruchomienie przeglądarki internetowej i otwarcie w niej strony z miniaturami dostępnych zasobów (patrz rysunek O.1). Miniatury można sortować według nazwy, formatu pliku lub ceny. Wiele pozycji ma przypisaną ocenę, a przy każdej znajdziesz także nazwisko autora. Do przeglądania zawartości witryny Turbo Squid nie jest wymagana rejestracja, ale by cokolwiek kupić lub pobrać, trzeba założyć własne konto.

Wszystkie produkty zostały podzielone na kategorie, do których należą m.in. modele (3D Models), materiały i shadery (Materials & Shaders), mapy tekstur (Texture Maps), pliki z zarejestrowanym ruchem (Motion Capture), skrypty (Scripts) i wiele innych. Niektóre pozycje można pobrać za darmo. Po zakupieniu wybranych pozycji można je pobrać i zapisać na dysku twardym komputera lub umieścić w specjalnym folderze online noszącym nazwę My Files. To właśnie do tego folderu dostajemy się, wybierając polecenie Tentacles/Open My Files. Za pomocą polecenia Tentacles/Save można przenieść zawartość sceny do folderu My Files, skąd można je udostępnić innym użytkownikom.

Praca z modułami dodatkowymi Po znalezieniu modułu, który chcielibyśmy dodać do systemu, musimy go zainstalować. Większość komercyjnych pluginów dostarczana jest z programem uruchomieniowym, który automatyzuje ten proces, jednak niektóre muszą zostać zainstalowane ręcznie, co wcale nie jest trudne.

Dodatek O  Rozszerzanie możliwości Maksa

1535

Rysunek O.1. Turbo Squid Tentacles to internetowy sklep, w którym można nabyć wiele interesujących modeli, tekstur i pluginów Z reguły moduły dodatkowe jednej wersji Maksa nie działają z inną. Jeśli jest to plugin komercyjny, producent zazwyczaj wypuszcza uaktualniony wariant dla nowej wersji Maksa.

Podczas pracy z Maksem pewnie kiedyś zechcemy zobaczyć, jakie moduły już zainstalowaliśmy, a także zrezygnować z niektórych. Max zawiera narzędzie do przeglądu i zarządzania aktualnie zainstalowanymi modułami.

Instalacja modułów dodatkowych W przypadku pluginów komercyjnych, zawierających program instalacyjny, podczas procesu instalacji pytani jesteśmy, gdzie znajduje się główny folder Maksa. Pliki modułów instalowane są w folderze plugins, pliki pomocy w folderze help, a przykładowe sceny — w folderze scenes. Pliki modułów z reguły mają rozszerzenie .dlc, .dlr, .dlo, .dlu, .dlv lub .dlm, zależnie od typu. Przy uruchomieniu Max odnajduje pliki modułów w odpowiednim folderze i ładuje je. Moduły dodatkowe typu freeware możemy zainstalować ręcznie, po prostu kopiując pliki do folderu z modułami Maksa i uruchamiając program ponownie. Moduły możemy także umieścić w innym folderze. Do określania takich dodatkowych lokalizacji służy panel 3rd Party Plug-Ins okna dialogowego Configure System Paths. Więcej o oknie dialogowym Configure System Paths dowiesz się podczas lektury rozdziału 4., „Modyfikowanie interfejsu i ustawianie jednostek”.

1536

Dodatki

Po instalacji większość komercyjnych pluginów wymaga autoryzacji. Przed skorzystaniem z modułu musimy to zrobić, a zazwyczaj dokonuje się tego drogą telefoniczną, faksem lub pocztą elektroniczną. Aby usunąć moduł, korzystamy z funkcji anulującej instalację, która jest częścią procesu konfiguracji, lub usuwamy odpowiednie pliki z folderu. Moduły mogą także instalować pliki pomocy wyjaśniające, jak same działają. Pliki te instalowane są w folderze /help, w głównym folderze Maksa. Aby przeglądać pliki pomocy, otwieramy okno dialogowe Additional Help za pomocą polecenia Help/Additional Help.

Przeglądanie zainstalowanych modułów dodatkowych Aby zobaczyć wszystkie aktualnie zainstalowane moduły, wybieramy z menu aplikacji polecenie Properties/Summary Info, otwierające okno dialogowe Summary Info, i klikamy przycisk Plug-In Info. Otwarte w ten sposób okno Plug-In Info wyświetla wszystkie zainstalowane moduły wraz ze szczegółowymi informacjami o nich, co pokazano na rysunku O.2. Jak widać, wiele modułów opracowanych przez firmę Autodesk (lub Discreet) jest instalowanych domyślnie. Rysunek O.2. Okno dialogowe Plug-in Info zawiera listę wszystkich aktualnie załadowanych modułów dodatkowych zarówno wewnętrznych, jak i zewnętrznych

Jeśli nawet nie instalowaliśmy żadnych modułów, w oknie zobaczymy ich wiele. To źródłowe funkcje Maksa zaimplementowane w formie pluginów.

Możemy ustalać, które z zainstalowanych modułów są dostępne do użycia, korzystając z okna dialogowego Plug-in Manager, pokazanego na rysunku O.3. Otwieramy to okno, wybierając polecenie Customize/Plug-in Manager. Każda kolumna w oknie Plug-in Manager zawiera informacje o modułach. Wśród kolumn znajdują się: Tag (znacznik), Name (nazwa), Description (opis), Status (stan), Size (rozmiar) i Full Path (ścieżka dostępu). Listę modułów można sortować, klikając nazwę kolumny. Każdy folder, który został określony w oknie Configure Paths, pojawia się w dolnym panelu okna Plug-in Manager. Korzystając z pól wyboru, usuwamy z listy wszystkie moduły zawarte w danym folderze.

Dodatek O  Rozszerzanie możliwości Maksa

1537

Rysunek O.3. Korzystając z okna dialogowego Plug-in Manager, możemy wyłączać moduły

Jeśli instalujesz dodatkowe moduły w folderze innym niż domyślny, możesz w dolnym panelu włączyć tylko ten folder i w ten sposób ograniczyć listę modułów do tych, które sam zainstalowałeś.

Konkretny moduł wybieramy z listy, klikając go. Możemy wybrać wiele naraz, korzystając z klawiszy Ctrl i Shift. Menu podręczne dostępne po kliknięciu prawym przyciskiem myszy pozwala na kontrolę wybranych modułów. Możemy także oznaczyć określone moduły, korzystając z polecenia Tag Selected z menu dostępnego po kliknięciu prawym przyciskiem myszy. W kolumnie Tag pojawia się biały znaczek przy zaznaczonym module. Korzystając z menu podręcznego, możemy wybierać, które z zaznaczonych modułów mają być ładowane, a które nie. Wstawki o statusie loaded, które są obecnie załadowane do pamięci i dostępne, wyróżniają się zielonym kółkiem w kolumnie Status. Wyłączone, o statusie deferred, oczekują na załadowanie w żądanym momencie; są one oznaczone żółtym kółkiem w kolumnie Status. Modułów oznaczonych unloaded (czerwone kółko) nie ma w pamięci. W menu podręcznym możemy także wybrać opcję Load New Plug-in, która otwiera okno dialogowe Choose Plug-in File, gdzie możemy wybrać plik modułu. Plik jest wtedy pobierany z odpowiedniego folderu i dołączany do listy Plug-in Manager.

Ćwiczenie: Instalacja modułu AfterBurn (w wersji demonstracyjnej) i korzystanie z niego Jeśli chcemy wypróbować jakiś moduł przed zakupem, możemy sprawdzić część Partners i Samples na płycie instalacyjnej Maksa lub odwiedzić witrynę producenta w celu pobrania wersji demonstracyjnej. Wersje demonstracyjne są w pełni funkcjonalne, jednak większość z nich posiada blokadę zapisu scen z wykorzystaniem danego modułu. Aby zobaczyć, jakie funkcje zostały wyłączone, należy zajrzeć do pliku readme, dostępnego po instalacji modułu.

Aby zainstalować moduł demonstracyjny z płyty instalacyjnej Maksa, wykonaj następujące czynności. 1. Włóż do napędu płytę instalacyjną 3ds Max. Po pojawieniu się menu kliknij łącze Partners and Samples, a następnie łącze Autodesk Certified Animation Plug-ins. Pojawi się strona z certyfikowanymi modułami, zawierająca moduły AfterBurn, Absolute Characted Tools, DreamScape i inne.

1538

Dodatki

2. Kliknij AfterBurn i wciśnij przycisk Install, by uruchomić jego program instalacyjny. Postępuj według instrukcji na ekranie i naciskaj Next po każdym etapie. Po zakończeniu instalacji kliknij przycisk Finish. 3. Zanim będziesz mógł korzystać z modułu, musisz ponownie uruchomić Maksa, wybierz zatem w systemie Start/Wszystkie programy/Autodesk/Autodesk 3ds Max 2012/3ds Max 2012, co spowoduje restart programu. 4. Korzystania z modułu AfterBurn możesz nauczyć się, czytając zainstalowane pliki pomocy; wybierz Help/Additional Help i dwukrotnie kliknij odnośnik AfterBurn na liście, aby otworzyć jego pliki pomocy. 5. Po przeglądnięciu plików pomocy wybierz Create/Helpers/Atmospherics/Sphere Gizmo i przeciągnij myszą w oknie widokowym Top, aby utworzyć gizmo. 6. Większość funkcji AfterBurn znajduje się w oknie dialogowym Environment and Effects. Wybierz Rendering/Environment (skrót na klawiaturze, 8) i wciśnij przycisk Add w rolecie Atmosphere. Na liście Add Atmospheric Effect dwukrotnie kliknij efekt AfterBurn Combustion Demo. Doda to efekt AfterBurn Combustion wraz z AfterBurn Renderer do listy Effects i spowoduje pojawienie się kilku nowych rolet. 7. W rolecie AfterBurn Combustion Parameters kliknij przycisk Pick Gizmos i wybierz ikonę Sphere Gizmo w oknie widokowym Top. 8. Wybierz Rendering/Render Setup (F10), aby otworzyć okno dialogowe Render Setup. Upewnij się, że aktywna jest opcja Atmospherics i zrenderuj widok Perspective, żeby zobaczyć rezultat efektu płomienia AfterBurn. Na rysunku O.4 pokazano ognistą kulę utworzoną przez demonstracyjną wersję modułu dodatkowego AfterBurn. Rysunek O.4. Ta prosta kula ognista utworzona została za pomocą modułu AfterBurn

Dodatek O  Rozszerzanie możliwości Maksa

1539

Poszukiwanie modułów dodatkowych Moduły, zanim będziemy mogli z nich korzystać, musimy wyszukać, pobrać i zainstalować. Dostępne są w różnych formach, mogą mieć charakter komercyjny, shareware lub freeware. Pierwszym miejscem, gdzie powinniśmy szukać komercyjnych modułów, jest Digimation. To nie tylko producent pluginów, ale także dystrybutor wiele modułów innych firm. Innym dobrym miejscem jest witryna firmy Autodesk. Firma ta nadaje modułom status Certified Plug-In, co zapewnia ich kompatybilność z Maksem. Wiele modułów dostępnych jest w formie freeware lub shareware. Możemy znaleźć je w sieci i stamtąd pobrać. Jeśli szukasz modułów zarówno komercyjnych, jak i typu shareware, powinieneś odwiedzić poniższe witryny: 

Digimation: www.digimation.com/



BoboLand: www.scriptspot.com/bobo/



Max Plugins.De: www.maxplugins.de/



Creative Crash: www.creativecrash.com/3dsmax



Autodesk: http://usa.autodesk.com/adsk/servlet/index?id=5659455&siteID= 123112



Turbo Squid: www.turbosquid.com/ Z reguły moduły dodatkowe nie są kompatybilne z różnymi wersjami Maksa. Przykładowo moduł napisany dla wersji 2.5 nie będzie działał z wersją 2009 lub 2010 lub 2012 i odwrotnie. Przy pobieraniu lub zakupie modułów należy upewnić się, że pasują one do posiadanej przez nas wersji Maksa.

Podsumowanie Dodając moduły, możemy zwiększyć możliwości Maksa daleko ponad to, co potrafi w konfiguracji domyślnej. W tym rozdziale omówiliśmy następujące zagadnienia: 

korzystanie z zasobów witryny Turbo Squid,



typy modułów dodatkowych i sposób, w jaki rozszerzają możliwości Maksa,



instalację modułów, ich przegląd i zarządzanie nimi,



miejsca, gdzie szukać modułów.

No i udało się. Dobrnęliśmy do końca książki. Gratulacje! Przed samodzielną pracą z Maksem proponujemy przeczytać dodatki, a książkę warto mieć zawsze pod ręką, jako że wiele razy może się przydać, choćby po to, by było czym rzucić w pełznącego po ścianie pająka.

1540

Dodatki

Skorowidz A akcje Birth, 1146 Miscellaneous, 1146 Operator, 1146 Test, 1146 akcje testowe, 1150 aktywność, SimEnabled, 1192 algorytm cieniowania, 526 algorytm cieniowania Phonga, 116 algorytm LSCM, Least Square Conformal Maps, 925 algorytmy kinematyki odwrotnej IK, 1022 History Dependent IK, 1047, 1066, 1068 History Independent IK, 1062, 1065 IKHISolver, 1047 IKLimb, 1047, 1068 IK Solvers, 1059 Spline IK, 1071 SplineIKSolver, 1047 analiza oświetlenia, Lighting Analysis, 1223 parametry fizyczne materiałów, 1224 analiza sceny, 1461 animacja, 128, 1461 animacja dynamiczna, 1119 animacja stanowiąca tło, 128 animacje Ghosting, 662 kierunek, 651 klucze, 955 kontrolery, 658 kopiowanie kluczy, 655 ograniczniki, 676 panel Motion, 658 podgląd, 670 preferencje, 663 prędkość, 651 przenoszenie, 955

tworzenie kluczy, 652 usuwanie kluczy, 656 warstwy, 949 wczytywanie, 953 zapisywanie, 952 animowanie dwunoga, 1413, 1429, 1473 podgląd animacji, 1435 zapisywanie klipów, 1433 animowanie kamer, 665 animowanie materiałów, 667, 993 animowanie obiektów, 665 animowanie parametrów, 992 animowanie postaci, 1091, 1117 animowanie ryby, 1503 animowanie szkieletu CAT, 1084 animowanie świateł, 666 animowanie transformacji, 992 antyaliasing, 610, 706 aplikacja Tablica znaków, 387 archiwizowanie plików, 138 atrapa, 336 atrybuty tekstu, 386 automatyczne spawanie, Automatic Welding, 397 automatyzacja animacji, 986

B barwy świateł fotometrycznych, 634 biblioteka Autodesk Material Library, 868 biblioteki materiałów, 518 Bitmap Select, zaznaczenie z obrazu, 894 blokada ustawień, 249 blokowanie świateł, 112 blokowanie transformacji, 264 blokowanie transformacji dziedziczonych, 320 blokowanie zaznaczenia, 228 błędy, 194 błędy siatki, 113

1542

3ds Max 2012. Biblia

Boolean, 410 bryła obrotowa, 1389 bryły, 829 buforowanie kluczy animacji, 955

C ciała miękkie, 1447 ciała sztywne, 1447 cienie, 618 filtrowanie, 640 mapy cienia, 618 powierzchniowe, Area Shadows, 618 śledzenie promieni, Ray Traced Shadows, 618 typu Advanced Ray Traced Shadows, 618 typu Ray Traced Max, 618 cienie raytracingowane, 643 cieniowanie, 526, 1371 cieniowanie realistyczne, Realistic, 109, 116 cieniowanie stylizowane, 721 COM, Center of Mass, 1422 czas działania, 1018 czas animacji, Time Controls, 650 czas renderowania, 1211 czas znormalizowany, Normalized Time, 988 cząsteczki, 1122 przepływ standardowy, 1145 Snow, 1125 Spray, 1124

Ć ćwiczenie animacja pączków, 1192 animowanie ruchu w warcabach, 1035 błysk samolotu, 1252 brylant, 488 bryły, 195 całująca się para, 274 chatka z piernika, 1457 ciastko, 207 czajnik, 1028 cząsteczka metanu, 283 ćmy, 1148 deskorolka, 465 deszcz, 1124 Diabelski młyn, 307 dinozaur, 289 dłoń, 775 dodawanie dźwięku do animacji, 1040 dwunóg, 1415 animowanie, 1430 czworaki, 1427 skok, 1423

dzień w 20 sekund, 638 frędzle, 842 gałka u drzwi, 398 grafika wektorowa, 156 gwiazdka ninja, 405 jabłka, 292 jajka wielkanocne, 1411 jazda figurowa, 684 kaczki, 317 klocki domina, 300 kolejka jednotorowa, 1020 koparka, 1057 koszulka, 1452 kość do gry, 589 ksylofon, 860 kwiat, 408 lampa, 627 lawina, 1146 lew, 227 liść, 1392 liść klonowy, 1381 logo firmy, 389 lot dookoła Ziemi, 321 lotki, 666 luneta, 277 lustro, 566 łabędź, 1385 łańcuch molekularny, 346 ławica ryb, 1501 łodyga kwiatu, 1391 łyżeczka, 1387 malowanie twarzy, 888 muszla, 1377 naczynie z kulkami, 1446 nadmuchiwanie balonu, 992 napój z puszki, 1131 narzuta, 585 nawigowanie, 100 noga robota, 295 oczy śledzące ruch, 990 ogień, 1142 ostrzał statku, 1150 ośmiornica, 454 oświetlenie wnętrza budynku, 1219 otwieranie drzwi, 1190 pajęczyna, 413 para wodna, 1140 pączki, 291 plastikowa butelka, 350 płatek kwiatu, 1393 płot, 305 poidełko dla ptaków, 783 półka, 419 przewracanie baniek, 1187

Skorowidz przykrywanie samolotu plandeką, 1201 pszczoła, 270 punkt widzenia, 599 puzzle, 826 reklama, 592 rozbijanie lustra, 1172 rzeka, 1025 samochód, 438 samolot, 313, 661 schody, 217 serce, 118 siatka na ryby, 578 skrzynia ze skarbami, 213 słomka, 210 staczanie koła, 679 start samolotu, 951 statek kosmiczny, 265 szachownica, 1366 szczoteczki do zębów, 240 szrama na twarzy, 793 sztuczne ognie, 1129 ściana, 1465 światła samochodu, 641 światło ostrzegawcze, 1034 talerz z pączkami, 1462 twarz kobiety, 790 tworzenie chmur, 1235 tworzenie neonu, 1248 tworzenie Słońca, 1235 tygiel, 421 ubieranie trójwymiarowej postaci, 853 Układ Słoneczny, 750 uszkodzony samochód, 354 wazon, 1389 wiatrak, 654 wiatraki, 610 wieszak, 812 włochata kość do gry, 846 woda, 1458 wóz z plandeką, 916 wyspa, 798 zające, 1441 zasłony, 531 ząb, 458 zgryz krokodyla, 996 żółw, 863 żyły na przedramieniu, 767

D debugger, 1486 debugowanie, 989 definiowanie siatki kolizyjnej, 1185 definiowanie zmiennych, 987

1543

deflektor, 964 deformacja, 813, 1112, 1114 dopasowania, Fit, 817 fazowania, Bevel, 817 przechyłu, Teeter, 817 skali, Scale, 816 skręcenia, Twist, 816 wybrzuszająca, 1115 deformatory parametryczne, Parametric Deformers, 355 deformowalne siatki, 1447 delegaty, Delegates, 1437 detekcja menedżera, 1280 dithering, 610 długość ogniskowej, 598 dodanie kontrolera do ścieżki, 1032 dodawanie dźwięku, 1040 dodawanie mięśni do szkieletu, 1095 dodawanie zdarzeń External, zewnętrzne, 1310 Image Filter, filtr obrazu, 1306 Image Input, wprowadzenie obrazu, 1303 Image Layer, warstwa obrazu, 1309 Image Output, wyprowadzenie obrazu, 1311 Loop, pętla, 1310 Scene, scena, 1305 dokowanie paska, 72 dolna listwa interfejsu, 82 dopasowywanie normalnych, 273 dopasowywanie położenia obiektów, 271 dostęp do rolet, 80 dostosowywanie głównego menu, 1523 dostosowywanie interfejsu, 1515 dostosowywanie kolorów interfejsu, 1524 dostosowywanie menu kontekstowego, 1521 dostosowywanie pasków narzędzi, 1517 dwunogi, 1076, 1413, 1473 gotowe szkielety, 1076 liczba segmentów, 1079 modyfikowanie geometrii kości, 1079 modyfikowanie szkieletów gotowych, 1077 dymki z podpowiedziami, 89, 172 dynamika, 1178, 1444 dynamika tkanin naprężenia, 1200 parametry, 1198 symulacja, 1199 dynamika włosów, 1195 symulacja, 1197 uaktywnianie sił, 1197 właściwości, 1196 włączanie zderzeń, 1196 dźwięki, 1040

1544

3ds Max 2012. Biblia

E edycja brzegów, Border, 450, 480 danych w kanałach, 934 elementów, Element, 452 geometrii, 433, 468 krawędzi, Edge, 447, 480 krzywych, 1019 łat, 1368, 1378 obiektów Poly, 428 obwiedni, 1103 podobiektów, 409, 428 segmentów, 406 splajnów, 391 wielokątów, Polygon, 452 wierzchołków, Vertex, 399, 405, 442, 477 zakresów czasowych, 1018 zdarzeń, 1303 edytor krzywych, 1325 edytor Map Channel Info, 934 edytor materiałów, Material Editor, 507, 510, 1324, 1399 narzędzia, 1399 nazwy materiałów, 1405 opcje, 1408 pobieranie materiałów, 1406 podgląd materiałów, 1407 próbki materiałów, 1400 przeciąganie materiałów, 1405 resetowanie materiałów, 1410 usuwanie materiałów, 1410 zaznaczanie obiektów, 1407 edytor MAXScriptu menu Edit, 1483 menu File, 1483 menu Search, 1483 menu Tools, 1483 edytor ścieżek, 574 edytor Visual MAXScript, 1506 elementy formularza, 1509 interfejs, 1507 konstruowanie rolety, 1510 pasek narzędziowy, 1507 pasek z kontrolkami, 1508 edytor współrzędnych UV, 915 edytor współrzędnych UVW, 1324 efekt Ambient Occlusion, 110 Auto Secondary, 1250 Blur, 1253 Brightness and Contrast, 1254 Color Balance, 1255 Depth of Field, 1256

File Output, 1255 Film Grain, 1256 flary, Lens Effect Flare, 1314 Focus, 1315 Glow, 1244, 1247, 1315 Glow Lens Effects, 1244 Glow Render, 1129 głębi ostrości, Depth of Field, 609 Lens Effects, 1313 Manual Seconday, 1252 mgły wolumetrycznej, Volume Fog, 1238 mgły, Fog, 1236 Motion Blur, 236, 1256 ognia, Fire Effect, 1232 okna witrażowego, 645 przesączania się kolorów, 1210 Ray, 1249 Ring, 1249 rozmycia ruchu, Motion Blur, 611 rybiego oka, 119 Star, 1250 Streak, 1250 szkła powiększającego, 568 światła wolumetrycznego, Volume Light, 1240 efekty animacyjne, After Effects, 1294 efekty atmosferyczne, 1231 dodawanie efektów, 1232 gizma, 1231 efekty dźwiękowe, 1038 efekty kaustyczne, Caustics, 1267 efekty obiektywu, Lens Effects, 1242, 1313 Auto Secondary, 1250 Gwiazdka, Star, 1250 Manual Secondary, 1252 panel Parameters, 1242 panel Scene, 1243 parametry globalne, 1242 pierścień, Ring, 1249 poświata, Glow, 1244 promień, Ray, 1249 smuga, Streak, 1250 efekty postprodukcyjne, 1292 efekty renderowane, Render Effects, 1227, 1240, 1253 File Output, 1255 głębia ostrości, Depth of Field, 1256 jasność i kontrast, Brightness and Contrast, 1254 rozmycie, Blur, 1253 równowaga barw, Color Balance, 1255 ziarnistość, Film Grain, 1256 ekran powitalny, 135 eksplorator materiałów, 521 eksplorator sceny, Scene Explorer, 245 menu Edit, 250 wyróżnianie obiektów, 246 wyszukiwanie obiektów, 247

Skorowidz eksportowanie, 148, 152, 154 eksportowanie obiektów Body, 835 eksportowanie symulacji, 1192 ekspozycja, 1228 elastyczność, 1450 element renderingu Alpha, 1299 elementy renderingu, render elements, 1292, 1297 emiter, 1122

F farma renderująca, rendering farm, 1277, 1286 typy wiadomości, 1286 Debug, 1286 Debug Extended, 1286 Error, 1286 Info, 1286 Warning, 1286 fazowanie, Chamfer, 479 filmy szkoleniowe, 90 filtr Adobe Premiere Transition, 1310 Contrast, 1306 Fade, 1307 Image Alpha, 1307 Negative, 1307 Pseudo Alpha, 1307 selekcji, selection filter, 221 Simple Wipe, 1307 Starfield, 1307 filtrowanie cieni, 640 filtrowanie ścieżek, 1031 filtry antyaliasingu, 706 filtry warstwowe, 1310 fizyka MassFX, 1325 folder roboczy, working folder, 1361 folder Scenes, 139 format DWF, 154 DWG, 161 DXF, 161 FBX, 149 JSR-184, 152 OBJ, 150 TIF, 149 UNC, Universal Naming Convention, 1363 XML Animation File (XAF), 952 formaty obrazów, 548 formaty plików, 147, 148, 159, 164 formaty plików renderingu, 703 fotony kaustyczne, 1268 fotony, Photons, 1267 FOV, Field Of View, 598

1545

funkcja, function, 1499 klonowania ekranu, 1326 Pack UVs, 915 Pseudo Color Exposure Control, 1229 Render Surface Map, 893 Viewport Canvas, 880 futra, fur, 327

G gesty, 102, 176 ghosting, 176 gizma modyfikatorów, 349 gizmo, 254, 354, 904 modyfikatora UVW Map, 898 obrotu, 255, 263 przesunięcia, 255 skalowania, 255 transformacji, 254 głębia ostrości, Depth of Field, 614 główny pasek narzędzi, 73, 74 gradient, 551 gradient kolorów, 335 gromadzenie parametrów, Parameter Collector, 998 grupowanie klastrów, 914 grupowanie obiektów, 311 grupy zagnieżdżone, 311

H hierarchia, 315 drzewa podrzędne, subtrees, 315 gałęzie, branches, 315 korzeń, root, 315 potomkowie, descendants, 315 przeglądanie, 318 przodkowie, ancestors, 315 zaznaczanie, 320 hierarchia połączeń, 317, 1046 hierarchia sceny, 153 humanoid, 1465

I identyfikatory materiałów, material ID, 409, 589 identyfikowanie klonów, 760 i-drop, 162 ikona Attach List, dołącz listę, 437 ikona MaxFind, 160 ikony dostępności animacji, 1017 ikony emitera, 1123 ikony obiektów reactora, 1455

1546

3ds Max 2012. Biblia

ikony rolety Envelope Properties, 1106 iluminacja, 1269 importowanie, 147, 156 importowanie obiektów CAD, 830 informacje dotyczące sceny, 162 instalacja modułów dodatkowych, 1535 modułu AfterBurn, 1537 programu, 1333 instrukcje warunkowe, 1496 Interactive IK ustawienia obliczeń, 1060 interfejs, 67 Asset Tracking, 1359, 1360 Execute Video Post, 1302 kontrolera Expression, 986 okna RAM Player, 714 postprodukcyjny, 1299 Style, 844 Video Post, 1299, 1312 interfejsy blokowanie, 1530 czteroczęściowe menu kontekstowe, 70 dolna listwa interfejsu, 70 dostosowywanie, 1515 okna dialogowe i edytory, 70 okna widokowe, 70 panel poleceń, 70 pasek tytułowy i menu, 69 paski narzędzi, 69 pływające paski narzędzi, 70 przybornik z ustawieniami, 70 schematy, 1529 ustawienia domyślne, 1531 wstążka, 69 zapisywanie i wczytywanie, 1529 izoparma, 1388

J jednostka systemowa, 167 język MAXScript, 1360, 1491, 1526 funkcje, 1499 instrukcje warunkowe, 1496 kolekcje i tablice, 1497 komentarze, 1494 pętle, 1498 przebieg programu, 1494 typy danych, 1492 wyrażenia, 1494 zmienne, 1491

K kafelkowanie, 546 kalkomania, decal, 899 kamera swobodna, Free, 599 kamera wycelowana, Target, 599 kamery, 598 Bias, 612 Display Passes, 612 FOV, 598 głębia ostrości, 609 Motion Blur, 611 Normalize Weights, 610 obiekt, 598 ogniskowa, 598 parametry, 605 perspektywa, 598 rodzaje, 606 Sample Bias, 610 sterowanie, 600, 602 Total Passes, 612 tryb wieloprzebiegowy, 608 widok, 599 wyrównywanie, 603 kanał alfa, 1292 kanał tekstury, 881 kanały, 934 czyszczenie, 935 kopiowanie, 934 kanały mapowania, 890 kant, Crease, 479 kaustyka, 1269 kąt obrotowy, 1064 kąt widzenia, 119 kąt widzenia kamery, 104 kerning, 387 kinematyka, 1046 kinematyka odwrotna, Inverse Kinematics (IK), 684, 1046, 1054 kinematyka prosta, 1054 klaster, 907 klaster głowy, 928 klatka animacji, Frame, 988 klatki kluczowe, keyframe animation, 649, 652, 1013 klon mapy, 574 klonowana geometria, Instanced Geometry, 1132 klonowanie opcje, 290 przy użyciu klawisza Shift, 288 w czasie, 296 klonowanie obiektów, 288 klonowanie włosów, 847 klony i odnośniki, 291

Skorowidz klucz, 1013 automatyczne sterowanie, 1032 dodawanie, 1015 edycja, 1016 liczba, 1022 przemieszczanie, 1015, 1020 przesuwanie, 1015 ręczne rozmieszczanie, 1032 skalowanie, 1015, 1020 usuwanie, 1015 klucze animacji, 1191, 1461 morfingu, 789 swobodne, freeform keys, 1413 trybu swobodnego, 1432 kolejność wierzchołków, 394 kolekcja, collection, 1446, 1497 kolekcja Cloth, 1449 kolekcje reactora, 1447, 1448 kolizje, 1451 kolor, 508 Ambient, 1410 Diffuse, 1411 dymu, Smoke Color, 1233 gradientu, 1314 przycisku, 85 tła, 718 wewnętrzny, Inner Color, 1233 zewnętrzny, Outer Color, 1233 kolorowanie modelu delfina, 535 kolory bazowe, 841 interfejsu, 1524 węzłów, 747 kompas, 98 komponowanie, 1296 After Effects, 1294 Composite, 1295 Photoshop, 1292 Premiere, 1294 komponowanie końcowe, 1292 komponowanie obrazów, 1297 kompozytor Simple Wipe, 1310 konfiguracja debuggera, 1488 programu, 1331 rejestratora, 1484 systemu renderingu sieciowego, 1278 konfigurowanie menedżera renderingu, 1284 Default Job Handling, 1285 Direct Access to Jobs Path, 1285 Failed Servers, 1285 General, 1284 TCP/IP, 1284

okien widokowych, 114 przycisków, 1528 serwerów sieciowych, 1285 systemu zarządzania zasobami, 1359 ścieżek systemowych, 146 ścieżek użytkownika, 145 świateł i cieni, 111 wstążki, 77 kontenery reguły udostępniania, 731 wczytywanie, 731 wypełnianie, 728 zapisywanie, 729 kontenery zastępcze, 731 kontrola renderingu, 1271 kontrole ekspozycji Automatic Exposure Control, 1228 Linear Exposure Control, 1228 Logarithmic Exposure Control, 1228 metoda Pseudo Color, 1229 kontroler, 687 Audio, 969 Barycentric Morph, 979 Bezier, 691 Block, 980 Boolean, 976 Color RGB, 979 Cubic Morph, 979 Euler XYZ Rotation, 975 Expression animowanie materiałów, 993 animowanie parametrów, 992 animowanie transformacji, 992 Float Expression, 987, 992 obliczanie wyrażeń, 989 Point3 Expression, 987 Position Expression, 987, 990 Rotation Expression, 987 Scale Expression, 987 IK, 981 Limit, 976 Linear, 692 List, 977 Master Point, 982 Motion Capture, 970, 971 Motion Clip Slave, 970 Noise, 693 On/Off, 977 Position XYZ, 695 Position/Rotation/Scale, 968 Quaternion (TCB), 973 Reaction, 974 Scale XYZ, 695 Script, 968

1547

1548

3ds Max 2012. Biblia

kontroler Smooth Rotation, 976 Spring, 694 ruch drugorzędny, 694 Waveform, 977 XRef, 969 kontrolery, 687 animacji, 658 parametrów, 976 przypisywanie, 688, 754 automatyczne, 688 w oknie Track View, 690 w panelu Motion, 689 z menu Animation, 689 ścieżek Rotation i Scale, 975 ścieżki Position, 969 transformacji, Transform, 968 ustawianie, 691 kontrolki czasu, 83 IK, 1064 kluczowania, 83 nawigacyjne, 108 nawigacyjne okien widokowych, 83 okna Schematic View, 745 paska narzędziowego Animation Layers, 949 rolety Styling, 844 konwersja animacji, 1431 konwertowanie obiektów, 328 końcowy efektor, End Effector, 1063 kopia bezpieczeństwa, 137 kopie plików, 143 kopiowanie animacji, 1473 kopiowanie materiałów, 753 kopiowanie modyfikatorów, 753 korekcja gamma, 179, 180 kości, 1047 dopasowywanie, 1052 kolorowanie, 1052 układanie, 1051 ustalanie parametrów, 1048 krawędzie, 447 krycie, 509 krzywa Multiplier, 1029 krzywa Point, 1387 krzywe CV, 1390 krzywe funkcyjne, 1020 krzywe funkcyjne z dwoma kluczami, 1020 krzywe mnożnikowe, 1027 krzywe pozazakresowe, out-of-range, 1026 krzywe rozluźniające, 1027 kształt krzywej, 333

kształt parametryczny, 378 Arc, łuk, 384 Circle, okrąg, 384 Donut, pierścień, 384 Ellipse, elipsa, 384 Helix, linia śrubowa, 388 Line, linia, 383 Ngon, wielokąt foremny, 385 Rectangle, prostokąt, 384 Section, przekrój, 388 Star, gwiazda, 385 Text, tekst, 386 kształty, shapes, 326 kwadryfikowanie, 474

L licencja, 1339 liczba klatek na sekundę, Frame Rate, 651 linia poleceń renderingu, 715 linia zachęty, 83 lina, 1447 lista Add to Type, 1000 kanałów, 881 Modifier List, 351 Parameter Type, 1001 świateł, 623 warstw, 243 węzłów, 759 logarytmiczna kontrola ekspozycji, 622 logowanie, 1361 lustrzane odbicie, 1111

Ł łańcuchy, strings, 1491 łata NURBS, 1392 Quad Patch, 1366, 1371 Tri Patch, 1366 łata edytowalna, Editable Patch, 1368 łata, Patch, 1365 łaty geometria, 1370 krawędzie, 1376 parametry powierzchni, 1371 rozluźnianie, 1372 uchwyty, 1376 wewnętrzne, 1384 wierzchołki, 1372 wygładzanie, 1372

Skorowidz łącze, 683 łączenie klastrów, 915 łączenie obiektów, 316 łączenie węzłów, 753 łączenie z obiektami pozornymi, 320

M Macro Recorder, 1483 konfiguracja, 1484 skrypt Macro, 1485 malowanie, 497, 879 deformacji, Deformation Painting, 764 na obiektach, 500 na warstwach, 885 malowanie obiektami, 496 tryb wypełniania, 500 obiektami animowanymi, 501 obrazami, 883 opcje, 887 światłem, Light Painting, 1218 Viewport Canvas, 880 w dwóch wymiarach, 886 wag, 963, 1108 wieloma obiektami, 499 wierzchołków, 890 manipulator obrotu, 105 manipulator SteeringWheels, 98, 101 manipulator ViewCube, 96 manipulatory pomocnicze, 995 mapa, 510, 535 bitmapowa, 548 cętek, peckle, 559 cienia, Shadow Map, 618 Combustion, 550 drewna, Wood, 561 drobnych nierówności, Bump, 874 dymu, Smoke, 558 efektu wyjściowego, Output, 564 fal, Waves, 560 gęstości, Density Map, 894 Gradient Ramp, 553 grubości, SubSurface Map, 894 gradientu, Gradient, 551 HDRI, 1267 kafelków, Tiles, 553 koloru wierzchołków, Vertex Color, 565 komórkowa, Cellular, 555 kompozytowa, Composite, 561 korekcji koloru, Color Correction, 564 marmuru Perlino, Perlin Marble, 558 marmuru, Marble, 557 maskowana, Mask, 562 materiałowa, 540

1549

mieszana, Mix, 562 mnożenia RGB, RGB Multiply, 563 nierówności, bump map, 540, 939 normalnych, Normal Bump, 567, 933, 940, 943 normalnych dla nierówności, Normal, 874 odbić i załamań światła, Reflect/Refract, 567 płaskiego lustra, Flat Mirror, 565 projekcyjna, projection, 540 przysłaniania, Occlusion Map, 894 pyłu, Dust Map, 894 rampy gradientowej, Gradient Ramp, 551 rozbryzgów, Splat, 559 rozmycia cząstek w ruchu, Particle MBlur, 558 stiuku, Stucco, 560 Substance, 873 szachownicy, 550 szumu, Noise, 557 śledzenia promieni, Raytrace, 567 środowiska, Environment Map, 128, 540 tła, 719 wgnieceń, Dent, 555 wieku cząstek, Particle Age, 557 większych przemieszczeń, Displacement, 874 zabarwienia RGB, RGB Tint, 565 zagłębień, Cavity Map, 894 załamania w cienkiej płytce, Thin Wall Refraction, 568 zaniku, Falloff, 556 zawirowania, Swirl, 552 mapowanie automatyczne, 913, 938 krzywoliniowe, 921 łupinowe, peel mapping, 925 płaskie, 928 skórkowe, pelt mapping, 927, 930 typu Normal, zwykłe, 913 typu Unfold, rozwijające, 914 wielu obiektów, 919 z kamery, Camera Map Per Pixel, 565 mapy dwuwymiarowe (2D), 544 inne, Other, 565 modyfikatorów koloru, Color Mods, 563 odłączanie od materiału, 542 przyłączanie do materiałów, 541 rzutowane, 643 trójwymiarowe (3D), 554 złożone, Compositor maps, 561 masa, 1450 materiał, 510 Advanced Lighting Override, 1221 animowany, 1407 Arch & Design, 868, 869 architektoniczny, 864

1550

3ds Max 2012. Biblia

materiał Car Paint, 870 dwustronny, Double Sided, 584 góra/dół, Top/Bottom, 587 kompozytowy, Composite, 583 mental ray, 866 mieszany, Blend, 582 przyporządkowany obiektowi, 1406 skorupowy, Shell, 587 specjalny, 859 Architectural, 859, 864 DirectX Shader, 865 Ink ’n’ Paint, 862 Matte/Shadow, 860 MetaSL, 865 standardowy, 525 substancyjny, 873, 875 szelakowy, Shellac, 587 typu Lightscape, 1222 typu Morpher, 587 wieloraki, Multi/Sub-Object, 584 z rozpraszaniem podpowierzchniowym, 870 złożony, Compound material, 581 materiały biblioteki, 518 edytor, 510 eksplorator, 521 identyfikatory, 589 nakładanie, 588 nawigacja, 513 parametry, 532 podgląd, 515 przeglądarka, 520 przyciski, 512 przypisywanie obiektom, 514 usuwanie, 517 węzły, 512 zaznaczanie, 514 MAXScript, 1475 MAXScript Debugger, 1486 konfiguracja, 1488 obserwacja zmiennych, 1487 polecenia, 1488 menedżer, 1278 menedżer renderingu, 1284 menedżer sieci, 1280 menedżer warstw, 241 menedżery transformacji, Transform Managers, 260 menu, 70 Adjust, korekta, 885 Bitmap Performance and Memory, 1363 Create, 186 Create/SpaceWarps, 1154 edytora krzywych, 1006

File, 71 Filter, 885 główne dostosowywanie, 1523 Graph Editors, 1005 Help, 87, 1323 Keys, 1014 kontekstowe, 84 dostosowywanie, 1521 Layer, warstwa, 885 Lighting and Shadows, 1265 MAXScript, 1476 Modes, 1006 Modifiers, 352, 948 Utilities, 517 metacząsteczki, MetaParticles, 1131 metoda Applied IK, 1056, 1061 metoda energetyczna, Radiosity, 1207, 1214 Cast Shadows, 1220 Diffuse, 1220 Exclude from Regathering, 1220 modyfikatory, 1216 parametry renderowania, 1218 Receive Illumination, 1220 Specular, 1220 Subdividing, 1220 zagęszczanie siatek, 1216 metoda fotograficzna, 1230 metoda Interactive IK, 1059 metoda krzywoliniowa, spline mapping, 921 metoda Pseudo Color, 1229 metoda raytracingu, 1209 metody kinematyki odwrotnej, 1059 algorytm History Dependent IK, 1066 algorytm History Independent IK, 1062 algorytm IK Limb, 1068 algorytm Spline IK, 1071 Applied IK, 1061 Interactive IK, 1059 metody nadpróbkowania, 534 metody tworzenia kształtów parametrycznych, 382 metody tworzenia obiektów podstawowych, 191 mierzenie wymiarów, 337 miękka selekcja, 334 miękkie zaznaczanie, 1014 mięśnie, 1092 mikser ruchu, 1469 edycja klipów, 1472 edycja wag ścieżek, 1472 pasek narzędziowy, 1470 przekształcenie czasu, 1472 ścieżki, 1471 miksowanie animacji, 1473 miniatury plików, 142

Skorowidz model cieniowania, 111 modele 3D, 1329 modelowanie, 325, 1365 modelowanie rzeczywistego obiektu, 129 modelowanie tkanin, 850 modelowanie włosów, 838 moduł Backburner, 1278 CAT, Character Animation Toolkit, 1073, 1077, 1092 Character Studio, 1101, 1437 demonstracyjny, 1537 dodatkowy, plugin, 1533 dynamiki, 1177 ProSound, 1038 RAM Player, 713, 715, 1209 reactor, 1443 Scanline Renderer, 697 Turbo Squid Tentacles, 1534 moduły dodatkowe dostępność, 1539 instalacja, 1535 modyfikator Affect Region, 356 Attribute Holder, 968 Automatic Flatten UVs, 938 Bend, 356 Bevel, 422 Bevel Profile, 422 Camera Map, 901 Cap Holes, 771 Cloth, 853 Air Resistance, opór powietrza, 1452 Bend, wytrzymałość na zginanie, 1452 Damping, tłumienie, 1452 Friction, tarcie, 1452 Mass, masa, 1452 Relative Density, względna gęstość, 1452 Shear, wytrzymałość na ścinanie, 1452 Stretch, wytrzymałość na rozciąganie, 1452 CrossSection, 423, 1368, 1383 Delete Mesh, 771 Delete Patch, 1383 Delete Spline, 415 Disp Approx, 592 Displace, 357 Displace Mesh, 592 Displace NURBS World-Space, 1396 Displacement Approximation, 1396 Edit Mesh, 770 Edit Normals, 780 Edit Patch, 1368, 1383 Edit Poly, 426, 428, 770 Edit Spline, 392, 414

1551

Extrude, 772 Face Extrude, 351, 772 FFD Box/Cyl, 373 FFD Select, 1166 FFD, Free Form Deformation, 372 Fillet/Chamfer, 415 Flex, 960 dodawanie sił i deflektorów, 964 miękka materia, 960 podobiekty, 961 rolety, 962 siła wygięcia, 961 sztywna materia, 960 tworzenie sprężyn, 964 Garment Maker, 850, 851, 853 Hair and Fur (WSM), 839, 1195 HSDS, 784 korekcja kamery, Camera Correction, 607 Lathe, 420, 1390 Lattice, 359 Linked XForm, 967 Map Scaler, 901 Material, 591 MaterialByElement, 591 Melt, 964 MeshSmooth, 783 Mirror, 360 Morpher, 790, 958 MultiRes, 338 Noise, 360 Normal, 782 Normalize Spline, 415 Patch Select, 1382 PatchDeform, 964, 965 PathDeform, 966 Physique, 1101, 1414 Point Cache, 955 Preserve, 361 Projection, 940 ProOptimizer, 774, 1326 obniżanie rozdzielczości, 775 opcje, 775 Push, 361 Rope, 1452 Quadify Mesh, 777 Relax, 362 Renderable Spline, 416 Ripple, 362 Select by Channel, 935 Shell, 362 Skew, 365 Skin, 1101, 1414 Skin Morph, 1114 Skin Wrap, 1113

1552

3ds Max 2012. Biblia

modyfikator Slice, 364 Smooth, 778 Soft Body, 1452 Spherify, 366 Spline Select, 415 SplineIK Control, 967 Squeeze, 367 STL Check, 782 Stretch, 365 Subdivide, 1216 Substitute, 370 Surf Deform, 1396 Surface, 1368, 1384 Surface Select, 1395 SurfDeform, 964 Sweep, 416 Symmetry, 778 Taper, 369 Tessellate, 779 Trim/Extend, 417 TurboSmooth, 783 Turn to Poly, 329 Twist, 368 Unwrap UVW, 901 roleta Channel, 903 roleta Edit UVs, 903 roleta Selection, 902 szybkie mapowanie planarne, 903 UVM Map, 1404 UVW Map, 898 UVW Mapping Add, 900 UVW Mapping Clear, 900 UVW XForm, 900 Vertex Paint, malowanie wierzchołków, 889 Vertex Weld, 779 Volume Select, 353, 354 Wave, 371 XForm, 370 modyfikatory, 947 Free Form Deformers, 372 kopiowanie i wklejanie, 344 Object-Space, 352 Parametric Deformers, 355 podobiekty gizma, 349 scalanie stosu, 348 Selection, 353 stos, 343 typy, 351 usuwanie, 345 World-Space, 353 wyłączanie, 345 zmiana kolejności w stosie, 346

modyfikatory animacji, 957 do edycji geometrii, 771 klonowane, 345 kolekcji, 1449 mapowania, 898 materiałów, 591 reactora, 1449 selekcji, 335 siatkowe, 763, 772 splajnów, 414 typu WSM, 965 modyfikowanie geometrii obiektu, 594 parametrów obiektów, 194, 212 podobiektów, 350 wstążki, 1525 monitor, 1278, 1287 montaż animacji w mikserze, 952 morfing, 1115 morfing obiektów, 788 mostkowanie krawędzi, Bridge Edges, 480 fazowanie, Bevel, 482 foremność, GeoPoly, 482 obrys, Outline, 482 odbicie lustrzane elementu, 483 odchylanie, Hinge, 482 odwracanie, Flip, 482 wstawka, Inset, 482 wytłaczanie wzdłuż splajnów, 482 mozaikowanie, Tessellate, 475

N nadpróbkowanie, SuperSampling, 534, 706 nagrywanie skryptu, 1485 nakładanie tekstury, 919 napinacz, Stretcher, 929 naprężenia występujące w tkaninie, 1201 narzędzia CAT, 1085 do malowania, 882 do zaznaczania, 906 dynamiki, 1178 edytora materiałów, 511, 1399 Fix Ambient, 517 Freeform, 485 Graphite, 462 malarskie, 881 MAXScriptu, 1476 modelarskie, 77 modelujące Graphite, 1324 Paint Deform, 491

Skorowidz powierzchniowe, 423 przecinania siatki, 437, 469 QuickSlice, 470 selekcji, 222 Surface, 1383 symetrii, 465 transformacji, 253, 254 gizma, 254 menedżery, 260 przybornik, 257 Reset XForm, 270 Transform Type-In, 258 z paska Animation Layers, 948 z rolety Arrange Elements, 914 z rolety Quick Transform, 907 z zakładki Selection, 493 narzędzie 1-Rail Sweep Surface, 1390 2-Rail Sweep, 1391 Align to View, 275 Asset Browser, 158 Assign Vertex Color, 893 Batch Render, 1275 Bridge, 451 Clean MultiMaterial, czyszczenie materiału złożonego, 591 Clone, 880 Clone and Align, 301 Collapse, 348 Color Clipboard, 191 Compass, 338 Dynamics, 1022, 1444 Euler Filter, 1017 File Link Manager, 161 Fix Ambient, 1410 Follow/Bank, 661 IFL Manager, 669 Level of Detail, 338 Lighting Analysis Assistant, 1224 Lighting Data Export, 155 Link Inheritance, 320 Material XML Exporter, 155 MAX File Finder, 160 Measure, 338 Measure Distance, 337 Mirror, 294, 1381 Monitor, 1286 Errors, 1288 Job Details, 1287 Job Summary, 1287 Task Summary, 1287 Motion Capture, 972 Non-Uniform Scale, 1393 Normal Align, 273 Panorama Exporter, 156, 716

1553

Parameter Wiring, 1002 Property Editor, 1450 Protractor, 337 Quadrify All, kwadryfikuj wszystko, 474 Quick Align, 273 Randomize Keys, 1016 Region, 1015, 1016 Rescale World Units, skalowanie jednostek globalnych, 170 Reset XForm, 270 Resource Collector, 160 Rotate, 1393 Select and Link, 315 Select Keys by Time, 1018 Select Object, 102 Shape Check, 417 skryptowe, scripted utility, 1490 Slice, 364 Snapshot, 297 Spacing, 299 Strokes, 177 Tape, 337 Texture Tool, 153 U Loft, 1387 UVW Remove, 1410 Walkthrough Assistant, 105, 687 Weld, spawanie, 445 xView, 113 nawias kwadratowy, 104 nawigacja, 98 Center, 99 Look, 99 Orbit, 98 Pan, 98 Rewind, 98 Up/Down, 99 Walk, 99 Zoom, 98 niezgodność jednostek, 169 normalna, 234, 273 NURBS, Non-Uniform Rational B-Splines, 279, 327, 1387 NURMS, 470

O obiekt AEC, 213 Doors, drzwi, 216 Foliage, rośliny, 214 Railings, balustrady, 215 Stairs, schody, 216 Walls, ściany, 215 Windows, okna, 217

1554

3ds Max 2012. Biblia

obiekt architektoniczny, 213 base object, bazowy, 342, 788 Biped, 1424, 1473 BlobMesh, płynny, 788, 801 Body, 831 edycja, 831 modyfikatory, 832 operacje boolowskie, 832 parametry wyświetlania i renderingu, 834 Body Cutter, 834 Body Objects, obiekty pełne, 327, 829 boolowski, Patrz obiekt ProBoolean CAD, 830 child object, dziecko 315 Compass, 636 compound object, złożony, 327, 787 Conform, owijany, 788, 791 Connect, łączony, 788, 807 Constraint Solver, 1464 Crowd, 1439 Dashpot, 1455 Delegate, 1437 Dummy, atrapa, 336, 1437 Editable Mesh, 364, 426 Editable Patch, 1368, 1372, 1386 Editable Poly, 426 Editable Spline, 1383 edytowalny, 326, 328 Fracture, 1457 Join Bodies, 834 kamery, 598 Loft, wytłaczany, 788, 809 deformacje, 813 edycja ścieżek, 820 Get Path, 810 Get Shape, 810 parametry powierzchni, 810, 811 parametry ścieżki, 810 porównywanie kształtów, 819 struktura, 818 Luminaire, 314 Mesh, siatkowy, 327, 425, 1371 Mesher, siatkowany, 788, 799 Morph, morfowany, 788 Motor, 1456 NURBS, 279 ograniczający ruch, 1463 parametryczny, 326, 382, 769, 1404, parent object, rodzic, 315 Plane, 1455 Point, punkt, 336 Poly, 327, 425 Ponytail, 1417

ProBoolean, 788, 822 część wspólna, Intersection, 822 dodawanie, Union, 822 dołączanie, Attach, 822 odejmowanie, Subtraction, 822 przyłączanie, Merge, 822 wstawianie, Insert, 823 ProCutter, rozcinany, 788, 825 proxy object, zastępczy, 737, 740 Rag Doll Constraint, 1464 reactora, 1454 renderowalny, 392 Scatter, rozproszony, 788, 802, 805 transformacje, 806 ustawienia, 806 sfazowany, 204 ShapeMerge, zagnieżdżony, 788, 793 Cookie Cutter, 795 Merge, 795 wytłaczanie obszaru, 796 Sky Portal, 1267 Spring, 1455 Target, docelowy, 788 Terrain, topograficzny, 788, 796 Toy Car, 1456 Tri Patch, 1367 Upnode, 686 Water, 1458 Wind, 1456 wklęsły, 1185, 1451 wspomagający modelowanie, 336 world object, globalny, 315 wypukły, 1185, 1451 zewnętrzny, 732 obiekty dołączanie do ścieżki, 681 dopasowywanie normalnych, 273 drugorzędny ruch, 694 filtrowanie, 246 grupowanie, 311 klonowanie, 288 klonowanie i wyrównywanie, 302 konwertowanie, 328 łączenie, 316, 319 modyfikowanie parametrów, 194, 212 nadawanie nazw, 187 obracanie, 252 odłączanie, 312 przesuwanie, 252 przyłączanie, 312 przypisywanie kolorów, 189 rozłączanie, 316 rozpraszające, Distribution, 802, 804 rozpraszane, Source, 802

Skorowidz skalowanie, 252 typ Dynamic, dynamiczny, 1182 Kinematic, kinematyczny, 1182 Static, statyczny, 1183 ukrywanie, 237 ustawianie właściwości, 232 właściwość gęstość, Density, 1184 masa, Mass, 1184 sprężystość, Bounciness, 1184 tarcie dynamiczne, Dynamic Friction, 1184 tarcie statyczne, Static Friction, 1184 wyrównywanie, 271, 275, 301 wyszukiwanie, 247 zamrażanie, 237 zaznaczanie, 220, 246 zgniatanie, 253 obiekty cylindryczne Capsule, kapsuła, 205 ChamferCyl, walec sfazowany, 205 OilTank, zbiornik, 205 Spindle, wrzeciono, 205 obiekty podstawowe, primitive objects, 185, 197, 326 Box, prostopadłościan, 197 Cone, stożek, 200 Cylinder, walec, 198 Gengon, graniastosłup, 206 GeoSphere, sfera geodezyjna, 200 Plane, płaszczyzna, 201 Pyramid, ostrosłup, 201 rozbudowane, Extended Primitives, 202 Sphere, sfera, 197 Teapot, dzbanek, 199 Torus, 199 Tube, rura, 201 obiekty podstawowe rozbudowane C-Ext, ceownik, 210 ChamferBox, prostopadłościan sfazowany, 204 Hedra, wielościan, 202 Hose, wąż, 210 L-Ext, kątownik, 209 Prism, pryzmat, 207 RingWave, falujący pierścień, 206 Torus Knot, węzeł, 208 obliczanie wyrażeń, 989 obracanie, 252 obracanie widoku, 105 obszary renderowane, 712 obwiednia wewnętrzna, Inner, 1105 obwiednia zewnętrzna, Outer, 1105 obwiednie, 1104 odbicia lustrzane, 294 odbicie, reflection, 509

1555

odblaski, specular highlights, 509 odbłyski, highlights, 111, 624, 1317 odchylenie próbki, 610 odłączanie, Detach, 477 odnośniki do materiałów zewnętrznych, 739 odnośniki do obiektów zewnętrznych, 732, 737 dołączanie modyfikatorów, 740 proxy object, 737 odnośniki do scen zewnętrznych, 733 opcje, 733 tworzenie, 736 odnośniki kontrolerów, 740 odnośniki zewnętrzne, 732 odświeżanie okna widokowego, 108 ogniskowa, 598 ogranicznik, 676 Attachment, 677 Link, 683 LookAt, 685 Orientation, 686 Path, 680 Position, 682 Surface, 678 okna niemodalne, 87 okna widokowe, viewports, 77, 94, 174 okno 2D Paint, 887 ActiveShade, 713 Add External Event, 1311 Add Image Filter Event, 1306 Add Image Input Event, 1303 Add Scene Event, 1305 Advanced Search, 249 Array, 306 Asset Browser, 158, 159 Assign Material, 881 Audio Controller, 970 Autodesk Licensing, 1339 Backburner Manager, 1286 Backburner Manager General Properties, 1279 Backburner Server, 1286 Batch Render, 1276 Behavior Assignments and Teams, 1440 Bone Tools, 1051 Brush Preset Manager, 766 CATMotion, 1089, 1091 Clone and Align, 302 Color Selector, 190, 883 Configure Columns, 250 Configure Modifier Sets, 1528 Configure System Paths, 147 Configure User Paths, 145, 741 Create Material Preview, 668, 1407 Create Multiple Footsteps, 1430

1556

3ds Max 2012. Biblia

okno Create Texture, 881 Curve Out-of-Range Types, 1028 Customize User Interface, 1516 Define Collisions, 1446 Define Stroke, 177 Deformation, 814 dialogowe zdarzenia, 1303 Display Driver Selection, 178 Display Floater, 238 Display Preferences, 1421 DWF Publish Options, 154 Ease Curve Out-of-Range Types, 1028 Edit Attributes/ Parameters, 1001 Edit Macro Button, 1519, 1520 Edit Multiple Delegates, 1439 Edit OBJ-Export Presets, 152 Edit UVWs, 904, 1324 nawigowanie, 907 zaznaczanie podobiektów, 905 zszywanie i spawanie, 910 edytora materiałów, 511, 1403 edytora MAXScriptu, 1482 eksploratora sceny, 245 Enable Anim Layers, 950 Environment and Effects, 127, 718, 1231, 1257 Expression Debug, 989 FBX Export, 150 Filter Combinations, 221 Filters, 1031 Flatten Mapping, 912 Function List, 989 Grid and Snap Settings, 276 Image Input Options, 1304 InfoCenter Settings, 88 informacyjne kluczy, 657 Instance Duplicate Maps, 574 JSR-184 Export, 153 Key Info, 1024 Layer Properties, 950 Learning Movies, 1337 Lens Effects Flare, 1313 Lens Effects Glow, 1315 Lens Effects Hightlight, 1317 Lighting Analysis Assistant, 1223 Load XML Animation File, 953 Logging Properties, 1286 Make Preview, 672 Manage Scene States, 1277 Map Animation, 954 Map Channel, 934 Map Channel Info, 934 MassFX Tools, 1180 Master Block, 980

Material Editor Options, 1408 Material/Map Browser, 527, 535, 590 MAXFinder, 160 MAXScript Debugger, 1486 MAXScript Listener, 1478 menu, 1480 polecenia, 1480 menedżera warstw, 241 Merge, 140 MIDI Time Slider Control Setup, 664 miksera ruchu, 1469 Missing External Files, 139 modyfikatora Vertex Paint, 891 Motion Capture, 971 Motion Flow Graph, 1434 Network Job Assignment, 1281 Normal Align, 274 Notes, 1033 Numeric Expression Evaluator, 87 Numerical Expression Evaluator, 986 OBJ Import, 151 Object Color, 189 Object Properties, 232, 852, 1199, 1213 Pack, 915 Painter Options, 769 Panorama Exporter Viewer, 717 Param Curve Out-of-Range Types, 1027 Parameter Collector, 998, 1000 Parameter Editor, 1000 Parameter Wiring, 986, 994 Particle View, 1144, 1151 Plug-In Info, 1536 Preference Settings, 73, 102, 178, 732, 1220, 1489 Preview, 1460 Print Size Wizard, 717 ProSound, 1039 Radial Falloff, 1245 RAM Player, 713 Reaction Manager, 974 Render Frame, 125 Render Scene, 698 Render Setup, 700, 1215, 1270, 1297 Render To Texture, 935, 936 roleta Output mapy, 937 Render UVs, 919 Rendered Frame, 710, 1227, 1241 kontrolki, 711 Rendering, 700, 1282 Rescale World Units, 170 Review Strokes, 178 SAT Export, 835 SAT Import, 830 Save Scene State, 1277

Skorowidz Save Texture Layers, 886 Save XML Animation File, 953 Scatter Objects, 1438 Schematic View, widok schematyczny, 727, 741, 743, 748, 751 główne menu, 743 kontrolki nawigacyjne, 744 liczba wyświetlanych węzłów, 756 menu List Views, widoki list, 759 opcje wyświetlania, 758 pasek narzędzi, 744 połączenia hierarchiczne, 754 preferencje, 755 siatki i tła, 757 tło, 758 Schematic View Preferences, 756, 758 Select Background, 128 Select Camera, 599 Select From Scene, 1063 Select Objects, 230, 1407 Server Properties, 1288 Spacing Tool, 299 Stroke Preferences, 178 Summary Info, 162, 736 System Unit Setup, 168 Texture Tool, 153 Time Configuration, 657 Track Sets Editor, 1032 Track View, 1004, 1006, 1013, 1017, 1031, 1032, 1041 Curve Editor, edytor krzywych, 1003 Dope Sheet, raport operatorski, 1003 Track Bar, pasek ścieżki, 1003 Track View Pick, 991 Track View Utilities, 1018 Transform Type-In, 254, 258 Units Mismatch, 169 Unwrap Options, 915 Validate PhysX Scene, 1192 VertexPaint, 890 Video Post, 1227, 1292, 1298 View File, 164 Viewport Configuration, 98, 112, 114 Visual MAXScript, 1507 Waveform Controller, 978 Week Schedule, 1288 Weight Table, 1108 Weight Tool, 1106 Welcome to 3ds Max, 89 XRef Objects, 738 XRef Scenes, 734 z błędami, 1466 z listą powiązań, 760

1557

onion-skins, przenikanie ujęć, 176 opcja Ambient Occlusion, 869 Animation Offset Keying, 1133 Auto Display Selected Lights, 112 Avoid Self-Intersections, 1452 By Vertex, 1370 Default Lights, oświetlenie domyślne, 111 Direct3D, 1338 Edged Faces, 116 Enable Hardware Shading, 1265 Facing, 1124 Ignore Backfacing, 1370 Improve Quality Progressively, 123 Knuckles, 1418 Light Tracer, 1208 Lock Zoom/Pan, 129 Net Render, 1281 Nitrous, 1338 Normalize Weights, normalizuj wagi, 610 OpenGL, 1338 Projection Mapping, 941 Radiosity, 1208 Real-World Map Size, 541 Save Viewport Thumbnail Image, 142 Short Thumb, 1417 Show Selected Segs, 405 Show Tooltips, 758 Software, 1339 Surf Norm, 1246 Tile Bitmap, kafelkuj bitmapę, 916 Triangle Pelvis, 1416 Use Wireframe Color, 758 Viewport Clipping, 118 Walk On Line, 1090 opcje edytora materiałów, 516, 1408 klonowania, 290 pędzla, 890 przyciągania, 282 rejestracji wiadomości, 1286 renderingu, 701 stylizacji, 722 wyświetlania, 606 złączy skrętnych, 1418 operacje boolowskie, Patrz obiekt ProBoolean oświetlanie sceny, 109, 615 oświetlenie analiza oświetlenia, 1223 cienie, 618 domyślne, 619 efekty zaawansowane, Advanced Effects, 630 fill light, 619

1558

3ds Max 2012. Biblia

oświetlenie globalne, 720 key light, 619 metoda standardowa, 616 odbłyski, 624 optymalizowanie świateł, 632 parametry cienia, Shadow Parameters, 631 parametry ogólne, 628 parametry reflektorów, 630 parametry świateł fotometrycznych, 632 parametry świateł kierunkowych, 630 parametry świateł wolumetrycznych, 639 stożki jasności, Hotspot, 632 stożki wygaszania, Falloff, 632 światła fotometryczne, 621 światła standardowe, 620 światło dzienne, 635 światło naturalne, 615 światło słoneczne, 635 światło sztuczne, 616 światło wolumetryczne, 639 transformacje świateł, 622 wygaszanie, Attenuation, 629 oświetlenie dla metody energetycznej, 1215 oświetlenie globalne, Global Illumination, 1260 oświetlenie pośrednie, Indirect Illumination, 1270 oświetlenie zaawansowane, 1208 materiały, 1221 ustawienia globalne, 1220 ustawienia lokalne, 1212 otwieranie plików, 138

P pakiet Character Studio, 1076 pakiet Software Developer Kit (SDK), 1533 pakowanie, 915 metoda Linear Packing, 915 metoda Recusive Packing, 915 paleta Color Clipboard, 191 paleta Display, 751 paleta kolorów, 892 paleta Layers, 885 panel Adaptive Degradation, degradacja adaptacyjna, 125 Advanced Lighting, 237, 1213, 1215, 1217 Align, 477 Analysis Output, 1224 Animation, 688 Controller, 1012 Create, 186 Depot, 1146 Display, 239 Display Performance, 123, 124

Effects, 1241 Expression, 988 External Files, pliki zewnętrzne, 145 File I/O, pliki wejściowe i wyjściowe, 145 Files, 141 Gamma and LUT, 179 General, 171 Gizmos, 255 Glow, 1314 Hide by Controller Type, 1031 Hide/Freeze, 238 Hierarchy, 269, 319 Indirect Illumination, 1270, 1271 Inverse Kinematics, 1060 Key, 1013 Layout, 121 Lighting, 1223 LimbPhases, 1090 Material/Map Browser, 866, 873 mental ray, 237 Modify, 1528 Modify Selection, 467 Motion, 658 Object Level, 238 Options dla efektu poświaty, 1245 Paint Deform, malowanie deformacji, 491 Constrain to Spline, ograniczanie do splajnu, 492 Flatten i Pinch/Spread, spłaszczanie i zsuwanie/rozsuwanie, 492 Push/Pull, wpychanie/wypychanie, 492 Relax/Soften, rozluźnianie/wygładzanie, 492 Revert, przywracanie, 493 Shift Rotate, obrót, 491 Shift Scale, skalowanie, 491 Shift, przesunięcie, 491 Smudge, Noise i Exaggerate, rozmazywanie, szum, uwydatnianie, 492 Parameters dla efektu poświaty, 1244 Pelt Map, 929 poleceń, 78 rolety, 79 zmiana miejsca dokowania, 81 zmiana szerokości, 80 PolyDraw, 485 Branches, odgałęzienia, 490 Conform, dopasuj, 486 Drag, przeciągnij, 485 Draw On, rysuj na, 489 Extend, rozszerz, 488 Optimize, optymalizuj, 488 Pick, wskaż, 489 Shapes, kształty, 490 Solve Surface, optymalizuj powierzchnię, 490

Skorowidz Splines, splajny, 490 Step Build, buduj etapami, 487 Strips, pasy, 490 Surface, powierzchnia, 490 Topology, topologia, 490 Polygon Modeling, 463 Range, 1312 Regions, 125 Render Surface Map, 895 Renderer, 1272 Rendering, 709 Ring, 1314 Safe Frames, 122 Statistics, 125 SteeringWheels, 100 Toolbars, 1517 User Defined, 237 Utilities, 158, 1528 ViewCube, 98 Viewport Canvas, 880, 887 Visual Style & Appearance, 111 World, 1181 XRefs, odnośniki zewnętrzne, 145 z węzłami, 513 panele kontrolerów i kluczy, 1011 parametr Angle of North, 98 Density, 1234 Distance Influence, zasięg wpływu, 1113 Elasticity, 1450 Energy, 1267 Face Angle Threshold, 913 Face Limit, granica ścianki, 1113 Friction, 1450 Hair Count, 840 Mass, 1450 Max Step Time, maksymalny czas kroku, 1089 Radial Thickness, 380 Random Seed, zalążek losowości, 876 Rays/Sample, 1211 Shell, 1451 Solver Iterations, iteracje algorytmu obliczeniowego, 1180 Stretch, 1234 Subdivide Down To, 1211 Substeps, kroki pośrednie, 1180 Swivel Angle, 1064 Sync Start to Frame, 128 Tension, 1200 Threshold, 1384 Visibility, 235 Weight, waga, 446 zanikania, Falloff, 1113

parametry cienia, Shadow Parameters, 631 kości, 1048 materiałów, 532 reflektorów, 630 renderingu, 698 symulacji, 1180 Acceleration, 1180 Bounce, 1181 Collision Overlap, 1181 Ground Plane, 1180 Hardware Acceleration, 1181 High Velocity Collisions, 1181 Multithreading, 1181 Sleep, 1181 Solver Iterations, 1180 Speed, 1181 Spin, 1181 Substeps, 1180 Use High Velocity Collisions, 1181 świateł fotometrycznych, 632 świateł wolumetrycznych, 639 światła, 627 tkanin, 1198 pasek narzędziowy, 72, 1517 Animation Layers, 948 Axis Constraints, 264 Brush Presets, 765 Containers, 728 Display, 1009 InfoCenter, 71, 73, 87 Key Controls, 1006 Key Entry, 1008 Key Stats, 1009, 1010 Key Tangents, 1007 Keys, 1009 MassFX Toolbar, 1179 Navigation, 1006 reactor, 1445 Snaps, 283 Tangent Actions, 1007 Time, 1009 Track Selection, 1009 Video Post, 1300 pasek stanu, 83 pasek szybkiego dostępu, 71, 73, 135 pasek ścieżki, Track Bar, 83, 656 pasek Time Ruler, skala czasu, 1012 pasek tytułowy, 71 paski pływające, 73 penetracja obiektu, 1451 perspektywa, 598

1559

1560

3ds Max 2012. Biblia

pędzel From Screen, z ekranu, 884 Hit Normal, wzdłuż normalnej, 884 opcje, 890 właściwości, 881 pędzel Paint Deformation, 764 pędzel Push/Pull, 766 pędzel Relax, 767 pędzel Revert, 767 pędzle kierunek deformacji, 766 ograniczanie deformacji, 766 opcje, 768 ustawienia, 765 pędzle deformujące, 766 pętla, loop, 1498 plik Airplane over waterfall.max, 1319 Aligator spline IK max, 1071 Alligator bones max, 1049 animacji Microsoft Video (AVI), 668 QuickTime (MOV), 668 Array of chrome spheres max, 1230 Avalanche max, 1146 Backhoe max, 1057 Balloon and pump., 992 Basketballs at a hoop max, 1134 Bathroom sink max, 416 Bendable straw max, 211 Bending tree.max, 957 Birdbath max, 783 Biting crocodile.max, 996 Blues neon max, 1248 Boolean object max, 1217 Box It Up Co logo.max, 796 Brass swan max, 1385 Brass swan-front view.jpg, 129 Bruce the dog max, 100 BuildCube.max, 1510 Bulging bicep max, 1115 Bunny in the forest max, 1441 Buzzing bee max, 270 Car at stop sign max, 612 Car bending over a hill.max, 965 Car headlights max, 641 Carousel.max, 309 Cartoon turtle.max, 863 Checkers max, 1035 Circling the globe.max, 321 Clock tower building max, 217 Cloning dinosaurs max, 289 Clouds max, 1235 Conforming road max, 487

Covered wagon max, 916 Custom alien head bone max, 1080 Damaged car max, 354 Dancing puppet max, 1065 Dandelion puff max, 1171 Dart and dartboard max, 666 Depth of field windmills max, 610 Dinosaur max, 604 Disco ball max, 1268 Doberman max, 939 Dog wagging tail.max, 694 Dolphin.max, 536 Door with hinge max, 1190 Doorknob.max, 825 Dragonfly in a foggy swamp.max, 1239 Drawing with a pencil max, 971 Easter eggs max, 518, 1411 Electricity.max, 1247 Elk on hill layers max, 244 Elk with short antlers max, 779 Face painting max, 888 Facial scar max, 793 Falling plate of donuts max, 1192, 1462 Fat crocodile max, 367 Female head with mohawk max, 1197 Ferris wheel max, 307 Figure skater skating a figure eight max, 684 Fireworks fountain max, 1129 Fish scene max, 1501 Fleeing spaceship max, 1150 Flower stem max, 1391 Following a rocket max, 603 Following eyes max, 990 Foot bones max, 112 Forearm bridge max, 451 Forearm with veins max, 767 Future man with corrected weights – final.max, 1111 Future man with skin final.max, 1109 Futureman with scar max, 501 Futuristic man with background max, 759 Futuristic man max, 755 Fuzzy dice max, 846 Gear and prop.max, 1061 Glass bowl of marbles max, 1182, 1447 Glowing halo max, 1317 Gobbleman shell max, 363 Greek woman head morph max, 790 Hazard max, 1034 Heart interior max, 118 Heart section max, 390 Hotplate max, 1211, 1213 House interior max, 1219 Human char with muscles max, 1095

Skorowidz Hyper pogo stick.max, 1040 Icy sled.max, 802 Island terrain with trees max, 806 Jet Airplane flames.max, 1142 Kissing couple max, 274 Lamp max, 627 Lathed NURBS vase max, 1390 Linked duck family.max, 317 Lion toy face max, 931 Lion toy max, 227 Lofted drapes max, 820 Lofted slip-proof hanger max, 812 Looping airplane max, 661 Magnifying glass max, 568 Maple leaf max, 1381 Marquee Lights.max, 592 Marvin Moose CAT rig – final max, 1102 Marvin Moose skin max, 1083 MaxBack.bak, 141 Maze.max, 737 Melting snowman max, 678 MetaParticles from soda can max, 1132 Mig take-off max, 951 Monorail max, 1020 Morphing facial expressions max, 960 Moths chasing light max, 1148 Mug.max, 483 Nasa decal on rocket max, 899 Octopus.max, 454 Ordered solar system max, 750 Park bench.max, 808 Patch quilt max, 585, 842 plik Patch seashell.max, 1377 Planet with starfield background.max, 1308 Plant in corner.max, 1262 Plastic bottle max, 350 Pond ripple max, 1168 Pool of water max, 1459 ProCutter puzzle max, 826 ProOptimized gator max, 942 ProOptimizer hand max, 776 Purple pyramid max, 1485 Reflection in mirror.max, 566 River.max, 1025 Robot mech max, 295 Rotating windmill blades.max, 654 Row of dominoes ma, 300 Shattering glass max, 1173 Sheet over Mig jet max, 1201 Shirt over chair max, 1453 Simple rain max, 1124 Sliced car max, 438 Smashed gingerbread house.max, 1457 Snake.max, 922

Snowman in snowstorm max, 1125 Snowman max, 625 Soft selection heart.max, 334 Spaceship and asteroids max, 681 Spaceship laser max, 642 Spider skeleton max, 1070 Spray can max, 1130 Spruce Goose max, 1252 Stained glass window.max, 644 Street vent max, 1140 Sun max, 1235 Sunlight system max, 638 Surfboard max, 588 Swinging into a wall max, 1465 T-28 Trojan plane.max, 919 Teapot max, 1492 Television-IFL File max, 670 Tipping milk cans.max, 1188 Tire hitting a curb max, 374 Tire rolling on a hill max, 679 Toolbox.max, 572 Toothbrushes max, 240 Transforming spaceship max, 265 Translucent curtains max, 531 Treasure chest of gems max, 213 Trumpet mask max, 644 U-Loft spoon max, 1388 Vertex paint on heart max, 892 Walking squirt bottle.max, 1114 Wall and crates max, 877 Wandering alien max, 1092 Water flowing down a trough.max, 1174 Waving US flag.max, 371 White picket fence max, 305 Wind-up teapot max, 1028 Xylophone on shadow matte max, 861 Zygote woman with clothes max, 853 pliki archiwizowanie, 138 automatyczne numerowanie, 137 eksportowanie, 148 formaty, 147, 159 importowanie, 147 kopie, 143 narzędzia do zarządzania, 157 otwieranie, 138 wpisane (check in) do systemu, 1360 wypisane (check out) z systemu, 1360 zapisywanie, 136 pliki .avi, 1407 .bat, 1277 .bip, 1416 .chr, 134

1561

1562

3ds Max 2012. Biblia

pliki .drf, 138 fig, 1416 .IFL, 668 .IMSQ, 668 mib, 1273 .max, 133 mix, 1473 .ui, 1529 .xml, 956 animacji, 952 binarne (Binary), 150 kolorów (.clr), 1530 menu ( mnu), 1530 menu kontekstowego (.qop), 1530 modułów, 1535 MTL, 150 OBJ, 150 PSD, 886 SAT, 830 skryptów, 1483 StereoLitograhy, 782 tekstowe (ASCII), 150 VPX, 1302 WIRE, 831, 1326 z układem interfejsu (.cui), 1530 ze schematami interfejsu (.ui), 1530 ze skrótami klawiszowymi ( kbd), 1530 płaszczyzna lustrzana, Mirror Plane, 1111 płaszczyzna tnąca, Near Clip, 607 płaszczyzny tnące, clipping planes, 117, 120, 388 płyta CD, 1327 podgląd animacji, 670 podobiekt, 331, 1368 Border, 450 Envelope, 1103 Polygon, 452 Spline, 409 Vertex, 442 Weights and Springs, 962 podobiekty siatki, 428 podpowiedź, 73 podpróbkowanie adaptacyjne, 1211 Point3, 1492 pole sił, Space Warp, 1153 kategoria Deflectors OmniFlect, 1164 SOmniFlect, 1164 UOmniFlect, 1164 kategoria Forces, 1155 Displace, 1162 Drag, 1157 Gravity, 1161 Motor, 1155

Path Follow, 1159 PBomb, 1158 Push, 1156 Vortex, 1156 Wind, 1161 kategoria Geometric/Deformable Bomb, 1169 Conform, 1168 FFD (Box), 1166 FFD (Cyl), 1166 Ripple, 1167 Wave, 1167 kategoria Modifier-Based, 1171 pole widzenia, 598 polecenie Add Time Warp, 1472 AEC Objects, 213 Align, 271 All Relationships, 759 Apply Modifier, 1449 Assign Controller, 1032 Assign to Selection, 1406 Biped, 1414 Bones IK Chain, 1047 classof, 1492 Clone, 72, 288, 309 Compact Material Editor, 1399 Compute Mixdown, 1473 Condense Material Editor Slots, 1410 Container, 728 Create/Patch Grids/Quad Patch, 1367 Crowd, 1437 Custom UI and Defaults Switcher, 68 Customize/Customize User Interface, 84 CV Surface, 1392 Delegate, 1441 Disable View, 108 Drag/Copy, przeciągnij/kopiuj, 1405 Drag/Rotate, przeciągnij/obróć, 1405 Edit/Hold, 347 Enable Transparency, 109 Environment, 1228 Essential Skills Movies, 89, 135 Foliage, 357 Fracture, 1457 Grab Viewport, 120 HI Solver, 1063 Hose, 211 Launch Magnify Window, 1403 Left, 81 Light Tracer, 1209 Lighting Analysis, 1223 Macro Recorder, 1477 macros, 1490

Skorowidz Manage Scene States, 1277 menu Graph Editors, 742 Merge, 139 mr Proxy, 1272 New Script, 1477 Object Properties, 1220 Out-of-Range Types, 1027 Path Constraint, 680 Quad Patch, 1366 RAM Player, 715 Redraw All Views, 109 Reduce Keys, 1023 Rename Objects, 188 Render Map, 1407 Render To Texture, 935 Render UVW Template, 917 Replace, 140 Reset Background Transform, 127 Reset Material Editor Slots, 1410 Restore Material Editor Slots, 1410 Revert to Startup UI Layout, 146 Rigid Body Collection, 1447 Save Custom UI Scheme, 1529 Server/Log in, 1361 Set Current View as Home, 97 Set Path, 1363 Set Project Folder, 145 Shadows, 112 Show Floating Toolbars, 73 Show Ghosting, 662 Show Materials in Viewport As, 117 Show Menu Bar, 72 Spherify, 367 Standard Flow, 1145 Summary Info, 1536 Toggle SteeringWheels, 101 Tools/Grids and Snaps/Activate Home Grid, 277 Tools/Light Lister, 623 Track View, 231 Ungroup, 312 Update Background Image, 127 Viewport Background, 127 Viewport Canvas, 880 Viewport Configuration, 114 Views/Undo View Change, 108 Wave, 371 Zoom Extents, 599 poleceniem New Scene Explorer, 245 pomoc, 87 Autodesk 3ds Max Help, 89 MAXScript Help, 89 menu Help, 87 pasek InfoCenter, 87 Tutorials, 89

What’s New, 89 witryna Autodesk.com, 87 witryna The AREA, 91 postprodukcja, 1298, 1320 powiadomienia na e-mail, 704 powierzchnia deformująca, 965 NURBS, 1387 Point, 1391 Quad Patch, 1366 sklejana, 1365 typu NURBS, 1365 UV Loft, 1388 powierzchnie sklejane, patches, 327 poziomy renderowania, 115 preferencje dotyczące okien widokowych, 174 dotyczące plików, 174 korekcji gamma, 179 ogólne, 170 renderingu, 709 prędkość liniowa, 1446 problemy z reactorem, 1466 problemy z renderingiem, 701 program Adobe Illustrator, 148, 156, 378 Adobe Premiere, 1278 After Effects, 1294 Amapi Pro, 151 AutoCAD, 159, 161, 213 Autodesk Alias Design, 1326 Autodesk DWF Viever, 154 Blender, 151 Bryce, 151 Carrara, 151 Cinema-4D, 151 Combustion, 1296 Composite, 1295 CorelDRAW, 378 DAZ Studio, 151 Deep Paint, 151 Hexagon, 151 Lightwave, 151 Maya, 149, 151, 1325 Modo, 151 Motion Builder, 149, 151, 1325 Muldbox, 149, 151 Photoshop, 1292 tekstury, 575 Poser, 149, 151 Premiere, 1294 Realflow, 151 Revit, 250 Rhino, 151

1563

1564

3ds Max 2012. Biblia

program Silo, 151 Softimage, 149, 1325 Softimage XSI, 151 UV Mapper, 151 Vault Server, 1360 VUE, 151 Worldbuilder, 151 ZBrush, 150 programy CAD, 829 projektowanie rolety, 1508 próbka materiału, 1403 próg spawania, Weld Threshold, 915 przechwytywanie ruchu, motion capture, 1414 przeciągnij i upuść, 86 przeglądarka materiałów i map, 518, 881 przekształcenia czasu, Time Warps, 1472 przemieszczenia, Displacement, 476 przenoszenie, Retargeting, 1469 przepływ cząsteczek, 1145 przesączanie się kolorów, color bleeding, 1207, 1211 przesuwanie, 252 przesuwanie widoku, 104 przewrót przegubu, gimbal flipping, 1017 przezroczystość, 109, 116, 509 przybornik transformacji, Transform Toolbox, 257 przybornik, Caddy, 85 przyciąganie opcje, 282 punkty, 281 przyciąganie do krawędzi, Edge Snap, 279 przyciąganie, Snap, 278 przycinanie, Cropping, 549 przycisk 2D View, 886 Abut Selected, 1312 Add Anim Layer, 948 Add Image Filter Event, 1306 Add Quad, 1376 Add Selected Objects to Highlighted Layer, 243 Add Tri, 1376 Additional Bump, 939 Adjust Color, 891 Align to Edge, 909 Align to Pivot, 909 Analyze World, 1446 aplikacji, application button, 71, 134 Assign Material to Selection, 514, 1406 Attach, przyłącz, 436, 474, 1371 Bake, 1191 Bend Links Mode, 1423 Bevel, fazowanie, 452 Bevel, fazowanie, 1379 Bind, wiązanie, 1373

blokady ustawień, 249 Blur Brush, 891 Body Horizontal, 1422 Body Rotation, 1423 Body Vertical, 1422 Bone Edit Mode, 1051 Boolean, 410 Break, 1374 Break Tangents, 1025 Break, rozłącz, 443 Bridge, mostkuj, 448 Cap, zatkaj, 450 Chamfer, fazowanie, 445 Collapse, scal, 436 Connect Bones, 1051 Connect, połącz, 445 Convert, 1431 Convert From, 660 Create, 1373 Create Footsteps, 1429 Create Morph, 1115 Create New Set, 339 Create Shape, 391, 1377 Create Shape from Selection, utwórz kształt z zaznaczenia, 448 Create, utwórz, 435, 472 Define Script, 1435 Delete, 1374 Delete Highlighted Empty Layers, 243 Detach, 1379 Devices, 128 Display Alpha Channel, 1243, 1292 Divide, 407 Double Buffer, 715 Edit Ranges, 1018 Edit Region, 125 Edit Seams, 925 Edit Triangulation, 449 Explode Selected, 832 Export Scene, 1192 Export to .bat, 1277 Extrude Along Spline, 454 Extrude, wytłaczanie, 1379 Extrude, wytłocz, 443 Figure Mode, 1427 Flatten by Face Angle, spłaszcz wg kąta, 912 Flatten by Smoothing Group, 912 Flip, odwróć, 452 Generate Topology, generuj topologię, 465 Graphite Modeling Tools, 462 Grid Align, 442 Grow, 431 Hide, 1374 Hide Selected, ukryj zaznaczone, 442

Skorowidz Hinge From Edge, zawias z krawędzi, 453 Inset, wstawka, 452 Linear Align, 909 Loop, pętla, 906 Make Planar, 441 Merge, 1241 Mirror, 411 Mixer Mode, 1471 Motion Flow Mode, 1434 Move All Mode, 1435 Move Keys, 1015 MSmooth, wygładzanie siatki, 440 New Scene, 136 Orbit, 105 Outline, kontur, 452 Paint, 890 Pan View, 104 Path Node, węzeł ścieżki, 1090 Pick Gizmo, 1233 Pick Hinge, wskaż zawias, 453 Pivot, 267 Progressive Display, 125 Put to Library, 1406 QClone, 290 QSlice, szybkie cięcie, 469 Quick Planar Map, 903 Realign, 1053 Reassign Root, 1051 Region Tool, 1015 Relax Until Flat, rozluźnij aż do spłaszczenia, 910 Relax, rozluźnij, 442, 472 Remove, 443 Remove Bone, 1051 Remove Isolated Vertices, 446 Render, 125 Repeat Last, powtórz ostatnie, 469 Reset Simulation, 1191 Retriangulate, 452 Ring, pierścień, 906 Scale Keys, 1015 Select and Link, 1054 Select By Color, 189 Select by Material, 1407 Set Pivot, ustal środek obrotu, 908 Simulate Local, 855 Slice Plane, płaszczyzna tnąca, 437 Slide Keys, 1015 spawania, Weld, 401 Sphere, 187 Split, rozdziel, 447 stapiania, Fuse, 401 Start Pelt, 929 Straighten Selection, prostuj zaznaczenie, 909 Subdivide, 1376

1565

Symmetrical, 1423 Tangent/Copy, 1375 Tangent/Paste, 1375 Tessellate, 476 Tessellate, mozaikowanie, 440 Track, 1425 Trim, 412 Turn, obróć, 449 Unbind, 1373 Unhide All, 1374 Unhide All, odkryj wszystko, 442 Unify Tangents, 1025 Unlink Selection, 316 Validate Scene, sprawdzanie sceny, 1192 View Align, 442 Walk Through, 104 Weld, spawanie, 445 Weld/Selected, 1374 Weld/Target, 1374 Zoom, 103 Zoom All, 103 Zoom Extents, 103 Zoom Extents All, 104, 170 Zoom Extents Selected, 104 przyciski deformacji fazowania, 817 do zakreślania obszarów, 225 głównego paska narzędzi, 74 interfejsu RAM Player, 714 menedżera warstw, 242 miękkiej selekcji, 907 nawigacyjne źródła światła, 626 okna Edit UVWs, 905, 908 okna Parameter Collector, 999 okna Parameter Wiring, 995 paska Containers, 730 paska Key Controls, 1007 paska Key Tangents, 1008 paska Keys, 1009 paska MassFX Toolbar, 1179 paska narzędziowego miksera ruchu, 1470 paska narzędziowego Video Post, 1301 paska Navigation, 1007 paska Tangent Actions, 1008 paska Time, 1010 pasków Display, 1010 pasków Track Selection i Key Stats, 1011 pola widzenia, 606 rolety Bend Links, 1424 rolety Biped, 1420 rolety Track Selection, 1422 sekcji Display, 1421 sekcji Modes, 1420 sterowania czasem, 650

1566

3ds Max 2012. Biblia

przyciski sterujące kamerą, 602 sterujące kluczami animacji, 653 sterujące widokiem sceny, 103 stosu modyfikatorów, 344 w edytorze materiałów, 512, 1401, 1402 w eksploratorze materiałów, 522 w oknie Deformation, 815 w oknie Fit Deformation, 818 w rolecie Path Parameters, 811 wyboru środka transformacji, 262 wyboru trybu zaznaczania, 224 XRef Objects, 739 z sekcji Weight Properties, 1107 przyczepianie obiektu, 677 przypisywanie wag siatce, 1109 przyspieszanie wyświetlania, 806 punkty przyciągania, 281 punkty przywracania, 347

R ramka zaznaczenia, selection brackets, 220 ramki obszarów bezpiecznych, 121 raporty o błędach, error logs, 144 Debug, 144 Errors, 144 Info, 144 kody, 144 Warnings, 144 Raytracing, śledzenie promieni, 618 reactor, 1443, 1445 Cloth, tkaniny, 1447 Deforming Mesh, odkształcalna siatka, 1447 kolekcje, 1446, 1447 modyfikatory, 1449 obiekty, 1454 ograniczniki ruchu, 1464 okno z błędami, 1466 Rigid Body, ciała sztywne, 1447 Rope, lina, 1447 Soft Body, ciała miękkie, 1447 rejestracja i aktywacja programu, 1337 rejestrowanie obrazów cyfrowych jasność, 577 odblaski, 577 rejestrowanie symulacji, 1191 rejestrowanie zderzeń, storing collisions, 1446 relacje między obiektami, 315 renderer inicjacja, 698 opcje renderingu, 701 opcje wyjściowe renderingu, 703 przypisywanie, 705

Quicksilver, 722 Quicksilver Hardware, 708 rozdzielczość obrazów, 701 Scanline A-Buffer, 705 ustawienia, 700 wersje bitmap, 702 renderer iray, 1325 panel konfiguracyjny, 1261 uruchamianie, 1262 renderer mental ray, 1208, 1259 mapy cieni, 1264 obiekty zastępcze, 1272 opcje zaawansowane, 1272 preferencje, 1263 światła i cienie, 1264 światło dzienne, 1264 światło Sky Portal, 1267 właściwości świateł, 1267 włączanie, 1259 renderer Quicksilver, 697, 1299 renderer Quicksilver Hardware, 1260 rendering elementy, 1297 rendering sieciowy, 142, 1277 inicjacja systemu, 1279 konfiguracja, 1278 moduł Backburner, 1278 opcje zlecania zadania, 1283 rendering sprzętowy, 112 rendering wsadowy, 1275 kolejka renderingu, 1277 stany scen, 1276 renderowane środowisko sceny, 718 renderowanie, 115 do tekstury, 935 map, 1407 map powierzchni, 893 pliku podglądu, 673 progresywne, 125 stylizowanych scen, 722 szablonów UV, 917 włosów, 848 materiałów, 1410 riggowanie, 1046 riggowanie postaci, 1413 rodzaje kamer, 606 kontrolerów, 687 map, 937 światła, 619 więzów, 1188 roleta, rollout, 79 Adjust Pivot, 268 Advanced Parameters, 964

Skorowidz Advanced Parameters, parametry zaawansowane, 1112 Advanced Springs, 964 Arrange Elements, 915 Auto Secondary, 1251 Automatic Mapping, 938 Baked Material, 938 Basic Parameters, 564, 1127 Bend Links, 1423 Biped Apps, 1471 Bitmap Parameters, 549 Blur Parameters, 1254 Brush Image Settings, 884 Brush Images, 883 Bubble Motion, 1136 Cage, 941 Camera Parameters, 597 Channel Color Legend, 959 Channel List, 959 Channel Parameters, 959 Collisions, 1446 Color by Elevation, 798 Common Parameters, 700 Coordinates, współrzędne, 544 Copy/Paste, 1425 Create Biped, 1416 Drag Height, 1414 Drag Position, 1414 Create Humanoid, 1465 Creation Method, 381 Custom Maps, 883 Cutter Picking Parameters, 825 Default Scanline Renderer, 705 Depth of Field Parameters, 609, 1257 DirectX Manager, 535 Display, 1446 Display Color, 239 Display, wyświetlanie, 1112 Dynamics, 1195, 1196 Edit Geometry, 433 Edit Poly Mode, 770 Element Properties, 915 Email Notifications, 704 Engine, silnik, 1181 Explode, 912 Exposure Control, 1228 File Output, 1255 Fin Adjustment Tools, 1052 Fire Effect Parameters, 1233 Footstep Creation, 1429 Forces and Deflectors, 964 General Settings, 936 Geometry, 395, 1371 Glow Element, 1244

1567

Gradient Parameters, parametry gradientu, 551 Havok 1 World, 1446 Hide by Category., 239 IK Chain Assignment, 1047 IK Controller Parameters, 1067 IK Solver, 1063 IK Solver Properties, 1064 Inherit, 320 Intensity/Color/Attenuation, 629 Interpolation, 381 Inverse Kinematics, 1059 Key Info, 1432, 1433 Keyboard Entry, 381 Keyboard Input Device, 970, 971 Keyframing Tools, 1433 Layer Manager, 1084, 1086 Layers, 1433 Lens Effects Globals, 1242 Light Object Radiosity Properties, 1220 Light Painting, 1218 Limb Setup, 1078 Link Display, 240, 318 Link Params, 684 Load/Save Presets, 1138 Local Properties, 1115 Locks, 265 LookAt Constraint, 685 map, Maps, 535 Maps, 569, 873 Material Parameters, 841 Matte/Shadow Basic Parameters, 860 MAXScript, 1477 mental ray Connection, 535, 867 mental ray Indirect Illumination, 1264 Modifier Stack, stos modyfikatorów, 343 Morpher Basic Parameters, 587 Motion Capture, 1433 Muscle Strand, 1093 nadpróbkowania, SuperSampling, 533 Noise, szum, 546 Object Motion Inheritance, 1136 Object Properties, 1052 Object Property, 1446 Objects to Bake, 936, 941 Orientation Constraint, 686 Output, wyjście, 547, 937 Paint Behavior, 887 Paint Controls, 862 Parameters, 194, 382, 794, 965, 1123 parametrów modyfikatora, 353 Particle Generation, 1127 Particle Spawn, 1136 Particle Type, 1128, 1129, 1132, 1140 Path Editor, 573

1568

3ds Max 2012. Biblia

roleta, rollout Path Parameters, 681 Peel, 927 Pelt Options, 929 Polygon Smoothing Group, 456 Vertex Colors, 457 Preview & Animation, 1445 Proxy Object, 740 PRS Parameters, 968 Quick Transform, 907, 908 Radiosity Meshing Parameters, 1216 Radiosity Processing Parameters, 1215, 1216 Randomize, 887 Render Elements, 1298 Render Preview, 687 Rendering, 379 Rendering Parameters, 1218 Reshape Elements, 909 Retargeting, 956 RGB Multiply Parameters, 563 Rigid Body Properties, 1191 Rotation and Collision, 1133 Rotational Joints, 1055 rozszerzonych parametrów, Extended Parameters, 532 Rules, 731 Scripts, 704 Selection, 394, 431, 1369 Shader Basic Parameters, 526 Shape Check, 418 Simple Soft Bodies, 962 Simulation Parameters, 1201 Simulation Settings, ustawienia symulacji, 1181 Sliding Joints, 1055 Soft Selection, 333, 432 Special Effects, 868 Spotlight Parameters, 630 Stitch, zszyj, 910 Subdivision Surface, 457 Surface Properties, właściwości powierzchni, 409, 1375 Table Pressure, 888 Templates, 868 Testing Attribute, 1002 Texture Size, rozmiar tekstury, 876 Time, czas, 547 Track Selection, 1422 Trajectories, 660 Transforms, 805 Utils, 1446 Visual Style & Appearance, 723 Wrap, 921, 923 współrzędnych, 545

rolety panelu IK, 1055 rolka przewijania, 102 rozdzielanie krawędzi, 832 rozdzielczość obiektów, 775 rozdzielczość renderowanych obrazów, 701 rozłączanie, Break, 478 rozmiar efektu, Radial Size, 1245 rozmiar okna widokowego, 106 rozmycie obiektów, 610 rozmycie ruchu, Motion Blur, 612, 707, 1256, 1305 rozwijana grupa przycisków, flyout, 73 ruch drugorzędny, 949 ruch główny, 949 ruchy obiektów, 1446 rysowanie krzywych funkcyjnych, 1022 rzucanie cienia, Cast Shadows, 1220 rzutowanie, 941 rzutowanie obrazu na scenę, 644 rzutowanie wierzchołków, 281, 792

S Sample Bias, odchylenie próbki, 610 scalanie, Collapse, 477 scena stylizowanie, 721 schemat interfejsu, 1529 schemat kolorów, 68 segmenty, 406 sekcja Animation Synchronization, 128 Apply Source and Display, 129 Aspect Ratio, 129 Command Panel, 172 Connect Copy, 408 Display Drivers, 178 Ghosting, 176 Include in Calculation, 756 Layer Defaults, 173 Link Style, 758 MIDI Time Slider Control, 664 Mouse Control, 176 Plug-In Loading, 171 Reference Coordinate System, 170 Scene Selection, 171 Scene Undo, 170 Spinners, 172 Sub-Materials, 171 Texture Coordinates, 173 UI Display, 172 Vertex Normal Style, 172 Viewport Parameters, 174 Xtras, 1419

Skorowidz sekwencje, sequence, 1302 SelectionToBitmap, obraz z zaznaczenia, 894 selekcja miękka, 332 serwery, 1278, 1288 shader, 867 anizotropowy, Anisotropic, 529 Blinn, 526 metaliczny, Metal, 530 Oren-Nayar-Blinn, 530 Phong, 529 prześwitujący, Translucent Shader, 531 Straussa (Strauss), 531 wielowarstwowy, Multi-Layer, 530 shader Car Paint, 870 Shader Model 2.0, 111 Shader Model 3.0, 111 shadery FX, 865 shadery mental ray, 867 siatka konstrukcyjna, 275 siatka skóry, 1102 siatka splajnów, 1384 siatka typu Composite, 1186 siatka typu Original, 1186 siatka wypukła, 1186 siatka złożona, 1186 siatki łat, patch grids, 1366 silnik reactora, 1445 silnik renderujący mental ray, 535 skala czasu, 1013 skala widoku, 103 skalowanie, 252 skalowanie kluczy, 1469 skalowanie nieproporcjonalne, 253 skalowanie światła, 622 skanowanie obrazów, 578 skinning, 1046, 1101 składowe koloru R, G, B i A, 1031 skłębianie, puffing, 1128 skróty klawiszowe, 71, 1341 skrypt animacja ryby, 1503 BuildCube.ms, 1513 rctRagdollScript ms, 1465 rtcRagdollScript, 1465 SphereArray.ms, 1478 skrypty blok, block, 1502 menu podręczne, 1490 moduły dodatkowe, 1490 narzędzia, 1490 skrypty Macro, 1490 Smoothing Bias, odchylenie wygładzania, 1424 spacer po scenie, 104 spawanie, Weld, 479, 910

1569

spawanie wierzchołków, Threshold, 1384 spinery, 86, 172 splajny, splines, 326, 377, 1385 3D, 418 Attach, 396 Attach Multiple, 396 Bind/Unbind, przywiąż/odwiąż, 404 Boolean, 410 Break, przerwij, 396 bryły obrotowe, 420 Chamfer, zetnij, 403 Close, zamknij, 412 Connect Copy, połącz kopię, 407 Connect, połącz, 402 Create Line, utwórz linię, 395 Cross Section, przekrój, 397 CrossInsert, wstaw w punkcie przecięcia, 402 Cycle, przejdź do następnego, 402 Delete, usuń, 405 Detach, odłącz, 407 Divide, podziel, 407 edycja, 392 Explode, rozbij, 413 Extend, wydłuż, 412 Fillet, zaokrąglij, 403 Fuse, stapiaj, 401 geometria, 395 Hide/Unhide All, ukryj/pokaż wszystko, 404 Insert, wstaw, 397 Make First, uczyń pierwszym, 402 Mirror, 411 Outline, obrysuj, 410 przekształcenia, 392 Refine, doprecyzuj, 400 Reverse, odwróć, 409 Tangent Copy, 404 Tangent Paste, 404 Trim, przytnij, 412 Weld, spawaj, 401 wytłaczanie, 419 splajny edytowalne, 392 spłaszczanie, flattening, 912 stany scen, Scene States, 1276 sterowanie cząsteczkami, 1143 sterowanie symulacją, 1187 sterowanie transformacjami obiektów, 991 sterownik Direct3D 9.0, 111 sterownik DirectX, 940 sterownik grafiki, 1337 sterownik Nitrous, 178, 1324 stos modyfikatorów, Modifier Stack, 342, 348 styczne, 1024 styczne ciągłe, 1024 styczne In i Out, 1037

1570

3ds Max 2012. Biblia

styczne kluczy, 658 styczne nieciągłe, 1024 styl okna widokowego, 115 stylizowanie włosów, 843, 1195 stylizowany tryb cieniowania, 721 suwak czasu, Time Slider, 83, 664 suwak Lighting and Shadows Quality, 112 suwak Origin, 169 symbole wieloznaczne gwiazdka (*), 88 pytajnik (?), 88 tylda (~), 88 symulacja, 1180, 1459 dynamiki włosów, 1197 rejestrowanie, 1191 tkaniny, 1199 tłumu, 1442 system Biped, 1413 system cząsteczkowy Blizzard, 1138 łączenie z polami sił, 1172 mapa Particle Age, 1142 mapa Particle MBlur, 1142 PArray, 1139 roleta Basic Parameters, 1139 Particle Flow, 1143 PCloud, 1141 przypisywanie map, 1142 sterowanie cząsteczkami, 1143 Super Spray, 1126, 1143 roleta Basic Parameters, 1126 system Daylight, 1265 system degradacji adaptacyjnej, 123 system jednostek, 168 system kinematyki odwrotnej, 1054 hierarchia ważności, 1056 łączenie systemu, 1054 odbicia złączy, 1056 ograniczenia złączy, 1055 terminator, 1054 wiązanie obiektów, 1056 system kości, bones system, 1047 system Light Tracer, 1208 roleta Parameters, 1210 wyłączanie obiektów, 1213 system map zastępczych, Proxy System, 702 system MassFX, 1177, 1179 definiowanie obiektu, 1180 parametry początkowe, 1187 parametry symulacji, 1180 rejestrowanie symulacji, 1191 siatki kolizyjne, 1185 więzy, 1188 właściwości obiektu, 1180 zestawy właściwości, 1185

system miar, 168 system Proxy, 1363 system Ring Array, 309 system symulacyjny Cloth, 837 system śledzenia światła, 1208 system Vault, 1362 system warstw animacji, 950 system zarządzania zasobami, 1360 systemy cząsteczkowe, particle systems, 327, 1121 systemy tkanin, cloth, 327 systemy tłumu, crowd systems, 1437 szkielet CAT, 1081 animowanie, 1084 parametry globalne, 1089 przyłączanie siatki skóry, 1102 spacerowanie po ścieżce, 1090 warstwy, 1084 szkielet dwunoga, 1045, 1414 szkielet zriggowany, 1083 sztywność, Stiffness, 1446 szwy, 924, 926 szyk kołowy, 306 szyk liniowy, 304 szyk pierścieniowy, 308

Ś ścieżka, 146 ścieżka dostępu do zasobu, 1363 ścieżka Position, 677 ścieżka równowagi, 1471 ścieżka w labiryncie, 297 ścieżki animowalne, Keyable Tracks, 1031 ścieżki animowane, Animated Tracks, 1031 ścieżki dla odnośników, 741 ścieżki nadrzędne, 1013 ścieżki przejścia, 1471 ścieżki warstw, 1471 ścieżki widoczności, 1033 ścieżki z notatkami, 1033 ślady stóp, footsteps, 1413 śledzenie światła, light tracing, 1207 środek ciężkości, 1422 obrotu, pivot point, 262, 267, 316 roboczy, 268 ustawianie, 267 wyrównywanie, 268 transformacji, 262 układu odniesienia, 262 zaznaczenia, 262 światła fotometryczne, 621 barwy, 634 kształty świateł, 635

Skorowidz opcje dystrybucji, Distribution, 632 opcje koloru, Color, 633 opcje natężenia, Intensity, 634 opcje wygaszania, Attenuation, 634 światła obszarowe, Area Lights, 1260 światła standardowe, 620 kierunkowe, Direct, 621 powierzchniowe, Area Omni, Area Spot, 621 punktowe, 620 reflektor, Spotlight, 621 rozproszone, Skylight, 621 światło drugorzędne, 616 dzienne, Daylight, 635 kierunkowe, Direct Light, 616 kluczowe, 616 mental ray Sky Portal, 1266 naturalne, 615 otaczające, Ambient, 617, 620 słoneczne, Sunlight, 635 azymut, 637 data i czas, 637 kompas, 636 miejsce, 637 wysokość, 637 sztuczne, 616 wolumetryczne, Volume Lights, 639 własności, 868 światłomierz, 1224

T tabela wag wierzchołków, Skin Weight Table, 1101 tabela wag, Weight Table, 1107 tablica LUT, 179 tablica, array, 1497 tarcie, 1450 techniki animowania postaci, 1117 technologia i-drop, 162 tekst, 386 atrybuty, 386 tekstury proceduralne, 1324 tekstury substancyjne, 873, 1324 Bump, mapa drobnych nierówności, 874 ćwiczenie, 877 Diffuse, kolor podstawowy, 874 Displacement, mapa większych przemieszczeń, 874 Glossiness, połyskliwość, 874 Height, wysokość, 874 łączenie substancyjnych map, 875 Normal, mapa normalnych dla nierówności, 874 różnicowanie, 876 Specular, odblaski, 874 wczytywanie, 874

1571

tekstury w programie Photoshop, 575 terminator, 1054, 1055 Texture Wrap, owinięcie teksturą, 894 tkaniny, 849, 1447 elementy ubrań, 851 modelowanie, 850 modyfikator Garment Maker, 850 tło, 127 topologia siatki, 351 trajektoria, 659 transformacja, 251 obrót, 252 skalowanie, 252 translacja, 252 transformacja obiektu za pomocą wzoru, 986 transformacje blokowanie, 264 korygowanie, 269 ograniczenia, 263 układy odniesienia, 260 translacja, 252 tryb Affect Hierarchy Only, 267 Affect Pivot Only, 267 AutoGrid, 277 Edge, 1376 Element, 455, 1378 Footstep, 1429 Freeform, 1432 Handle, 1376 kluczowania automatycznego, Auto Key, 653 kluczowania ręcznego, Set Key, 653 Mirror, 1111 Mirror Mode, 1110 Motion Flow, 1434 Patch, 1378 podobiektu Segment, 392 Spline, 392 Vertex, 392 Polygon, 455 Posture, 1425 Precomputed, 1197 Segment, 406 swobodny, Freeform, 1432 symulacyjny, SimMode, 1192 Vertex, 1372 wieloprzebiegowy, Multi-Pass Camera Effects, 608 zaznaczania, 224 Crossing, 224 Window, 224 zaznaczania podobiektów Edge, krawędzie, 905 Polygon, wielokąty, 905 Vertex, wierzchołki, 905

1572

3ds Max 2012. Biblia

tryby renderowania, 116 Tutorials, 87 tworzenie brył obrotowych, 420 dwunoga, 1076, 1414 części dwunoga, 1417 edycja, 1416 modyfikowanie, 1419 opcje wyświetlania, 1421 postawa, 1425 przemieszczanie, 1422 efektów atmosferycznych, 1231 grafiki trójwymiarowej, 151 grup, 312 i ustawianie świateł w scenie, 622 kluczy animacji, 1461 kluczy morfingu, 789 kompozycji, 1296 kontenerów, 728 konturu obiektu, 280 łat, 1366 map normalnych, 939 map wektorów normalnych, 933 mapy normalnych, 936 miękkiej materii, 962 nowego menu, 1524 nowej sceny, 136 obiektów Editable Poly, 426 obiektów podstawowych, 186, 1527 metody, 192 obiektów reactora, 1454 obiektu kamery, 598 obrazów panoramicznych, 716 parametrów, 1000 paska narzędzi, 1518 podglądu, 671 podobiektów, 472 pola sił, 1154 połączeń hierarchicznych, 316, 754 postaci, 1075, 1413 przekroju, 388 ruchomej grafiki, 1296 siatek konstrukcyjnych, 276 skrótów klawiszowych, 1516 sprężyn, 964 systemu cząsteczkowego, 1122 systemu kinematyki odwrotnej, 1054 systemu kości, 1048 szyku obiektów, 304 śladów, 1429 tłumu, 1437 węzłów materiałowych, 512 własnych ikon, 1520 własnych siatek kolizyjnych, 1186

wyrażeń, 987, 988 zespołów, 313 zestawów ścieżek, 1031 zestawu ścieżek, 1032 typ obiektu, 1182 typ symulacyjny, SimType, 1192 typy mięśni, 1092 brzusiec mięśniowy, Muscle Strand, 1092 mięśnie płaskie, 1094 typy modeli, 326 typy modyfikatorów, 351 typy obiektów podstawowych, 196 typy plików, 1304 typy pól sił, 1154 typy renderowania, 125

U uchwyty wierzchołków, 404, 1373 układ okien widokowych, 121 układ oryginalny okien widokowych, 106 układy odniesienia, 260 umiejscowienie, Placement, 549 ustawianie ekspozycji, 1228 metoda fotograficzna, 1230 usuwanie, Remove, 478 materiałów, 1410 materiałów i map, 517 obiektów, 194 warstwy, 243 węzłów, 749 wierzchołków, 479

V Video Post filtry, 1318 kolejka, 1300 tło, 1318 zasięg zdarzeń, 1300 Viewport Canvas, 880 malowanie na warstwach, 885 narzędzia, 881 opcje, 887 przygotowanie obiektu, 881

W wadliwe elementy, 114 waga, Weight, 479 waga globalna, 1087

Skorowidz waga lokalna, 1087 waga ścieżki, 1472 wagi wierzchołków, 1110 warstwa CAT Motion, 1088 warstwa podstawowa, Base Layer, 950 warstwy, 240, 885 menedżer, 241 podział sceny na warstwy, 244 właściwości, 244 warstwy animacji, 948, 949, 1086 scalanie, 950 właściwości, 950 włączanie, 950 warstwy korekcyjne, 1088 warstwy typu Absolute, 1086 wartość bezwzględna, Absolute, 1052 wartość względna, Relative, 1052 warunki początkowe, 1187 wektor normalny, 234, 329, 781, 1371, 1380 zwrot, 330, 435, 782 wektorowe mapy przemieszczeń, 1326 węzeł, node, 741, 746 węzeł mapy, 542 węzeł mapy Substance, 874 węzły łączenie, 753 rozmieszczanie, 748 typy węzłów i ich kolory, 747 ukrywanie, 749 usuwanie, 749 zaznaczanie, 747 węzły schematu sceny, 746 wiązanie parametrów, Parameters Wiring, 994 wiązanie zdarzeń, 1147 widok hierarchiczny, 319 aksonometryczny, 94 izometryczny, 94 ortogonalny, 94 perspektywiczny, 94 z kamery, 107, 599 z reflektora, 107 ze źródła światła, 625 wiersz poleceń, 138, 715 wierzchołki, 399 Bézier, 400 Bézier Corner, 400 Corner, 400 kolorowanie, 889 modyfikator Vertex Paint, 890 przypisywanie kolorów, 889 Smooth, 400 uchwyty, 404

1573

więzy, 1188 witryna Autodesk.com, 87 witryna The AREA, 91 witrynaTurbo Squid, 1534 własności światła, 868 właściwości kontenerów, 732 materiałów, 539, 570 materiału, 507 modyfikatorów, 1452 obiektów, 1450 obiektu, 232 pliku, 163 powierzchni, 409 powierzchniowe, 483 powierzchniowe podobiektów, 455, 484 renderowania, 235 świateł, 1267 warstw, 244 warstw animacji, 950 wierzchołków, 484 włosów, 840 wyświetlania, 233 włosy, hair, 327 dynamika, 1195 klonowanie, 847 modelowanie, 838 określanie właściwości, 840 opracowywanie, 839 pokrywanie włosami, 839 renderowanie, 848 stylizowanie, 843 ustawienia predefiniowane, 847 zmiana właściwości włosów, 842 WSM, World Space Modifier, 965 współczynnik gamma, 180 współczynnik skali, Scale Factor, 170 współrzędne U i V, 435, 469, 549 wstążka, , Ribbon, 77, 461 modyfikowanie, 1525 obiekty podstawowe, 1527 wygląd przycisku, 1519 wygładzanie, MSmooth, 475 wygładzanie tekstur postaci, 931 wyjściowe urządzenie renderujące, Match Rendering Output, 129 wypiekanie, baking, 935, 1191 wypiekanie tekstur, 933, 935 939 wypiekanie, SimBaked, 1192 wyrażenia regularne, 248 wyrażenie, 985, 986 wyrażenie, Expression, 995, 1494 wyszukiwanie, 88

1574

3ds Max 2012. Biblia

wyświetlanie map, 540 map tekstur, 109 materiałów, 109 normalnych, Show Normals, 329 połączeń, 317 statystyk, 126 stylizowanych scen, 721 świateł i cieni, 109 wytłaczanie, Extrude, 419, 478 wytłaczanie powierzchni, 1387

X XRef Objects, 737 XRef Scenes, 733 XRefs, eXternal References, 732

Z zachowania delegatów, 1439 zachowawczość okien, 87 zakładka Animation, 664 zakładka Selection kopiowanie i wklejanie zaznaczeń, 493 zaznaczanie, 493 zaznaczanie według kryteriów, 494 załamanie, refraction, 509 zapisywanie plików, 136 zarządzanie wersjami, 1362 zarządzanie zasobami, 1359 zarządzanie zestawami wyboru, 229 zasięg miękkiej selekcji, 907 zasięg zdarzeń, 1303, 1312

zaznaczanie bazujące na odległości od środka obrotu, 494 losowe, 494 według koloru, 495 według materiału, 516 według normalnych, 494 według perspektywy, 494 według powierzchni, 494 według widoku, symetrii i liczby krawędzi, 495 zaznaczanie czasu, 1018 zaznaczanie materiałów, 514 zaznaczanie obiektów, 220, 226 blokowanie zaznaczenia, 228 filtry selekcji, 220 menu Edit, 222 narzędzia selekcji, 222 przez malowanie, 226 przez zakreślenie obszaru, 224 w innych oknach, 230 według koloru, 224 według nazwy, 223 według warstw, 224 wydzielanie bieżącego zaznaczenia, 230 zaznaczanie podobiektów, 430 zaznaczanie segmentów, 406 zaznaczanie węzłów, 747 zaznaczenie podobiektów, 331 zbiór węzłów, 359 zdarzenia warstw, layer events, 1309 zmienna, 987, 1491, 1492 znormalizowane współrzędne procentowe, 549 zszywanie, 910 zwrot wektora, 1380 zwroty wektorów normalnych, 330, 435, 782

Dodatkowe materiały do książki można znaleźć pod adresem: ftp://ftp.helion.pl/przyklady/max12b.zip rozmiar: 380 MB

Smile Life

When life gives you a hundred reasons to cry, show life that you have a thousand reasons to smile

Get in touch

© Copyright 2015 - 2024 AZPDF.TIPS - All rights reserved.