Unreal Engine zawiera zestaw narzędzi do animacji i edytorów do tworzenia postaci i systemów animacji obiektów w czasie rzeczywistym, renderowania treści filmowych oraz tworzenia nowych treści animacyjnych bezpośrednio w silniku i w czasie rzeczywistym, dzięki czemu wszystkie zmiany są widoczne natychmiast.
Dla użytkowników programu Maya silnik Unreal Engine umożliwia animację w środowisku czasu rzeczywistego z interaktywną zawartością dostosowaną do gier, wykorzystującą logikę opartą na stanie oraz interaktywne doświadczenia, które użytkownik może „odtwarzać”, a nie tylko oglądać. Mimo że środowisko Unreal Engine jest dostosowane do tego typu produkcji, nie oznacza to, że trzeba tworzyć tego typu przygody. Przepływy pracy offline można dostosować do środowiska działającego w czasie rzeczywistym, które kładzie nacisk na współpracę i natychmiastową informację zwrotną dotyczącą oświetlenia i materiałów, a jednocześnie zwiększa wydajność pracy dzięki możliwości podejmowania decyzji bez konieczności długiego oczekiwania na renderowanie sceny.
W tej sekcji przewodnika przedstawiono porównania między pojęciami Maya i Unreal Engine, omówiono podstawowe elementy animacji w Unreal Engine, przedstawiono przegląd procesów tworzenia animacji w silniku lub przy użyciu importowanej zawartości oraz wskazano dodatkowe narzędzia do animacji, z którymi warto się zapoznać.
Porównanie kluczowych pojęć
Poniżej znajduje się lista pojęć z programu Maya i ich odpowiedniki w Unreal Engine.
| Maya | Unreal Engine |
|---|---|
Joints oraz Skeleton | Szkielety |
Rigging | Szkielety |
Skinning | Siatka szkieletowa |
Keyframe Animation | Zaimportowany zasób animacji |
Animation Exports (OBJ, FBX itd.) | Sekwencje animacji |
Blend Shapes oraz Driven Keys | Cele transformacji, przestrzenie mieszania i krzywe animacji |
Animation Layers / Non-Linear Animation (NLA) | Warstwy anim |
Graph Editor | Krzywe Sequencera i graf animacji |
IK, FK oraz HumanIK | Control Rig oraz dopasowanie IK w czasie rzeczywistym i w czasie nierzeczywistym |
Trax Editor (non-linear editing) | Montaże animacji i Sequencer |
Physics / Dynamics | System animacji oparty na fizyce |
Komponenty animacji
Poniżej znajduje się lista różnych komponentów Unreal Engine, które będą używane do animowania obiektów i pracy z animacjami zaimportowanymi lub utworzonymi w edytorze.
| Komponent Unreal Engine | Opis |
|---|---|
Szkielet i siatka szkieletowa | Szkielet służy do definiowania kości (czasami nazywanych przegubami) w siatce szkieletowej (po skinningu). Te kości, pod pewnymi względami, przypominają prawdziwy szkielet biologiczny ze względu na swoje położenie i kontrolę nad deformacją siatki postaci. Szkielety służą do przechowywania i powiązania danych animacji, ogólnej hierarchii szkieletu oraz sekwencji animacji. Szkielety mogą być współdzielone między różnymi siatkami szkieletowymi i animacjami. Siatki szkieletowe zawierają siatkę wizualną postaci lub obiektu, która wykorzystuje szkielet do przechowywania danych kości używanych do animacji. Siatki szkieletowe odtwarzają animacje i tworzą logikę sterującą zachowaniem postaci w czasie rzeczywistym. Aby dowiedzieć się więcej, patrz: |
Sekwencja animacji | Jest to zasób animacji zawierający dane animacji, które można odtworzyć na siatce szkieletowej w celu jej animacji. Te sekwencje animacji zawierają klatki kluczowe, które określają położenie, obrót i skalę szkieletu przypisanego do siatki szkieletowej w określonych momentach czasu. Dzięki połączeniu klatek kluczowych podczas sekwencyjnego odtwarzania ruch szkieletu animuje postać. Sekwencje animacji są powiązane z konkretnymi zasobami szkieletu, co umożliwia współdzielenie animacji między dowolnymi siatkami szkieletowymi, które wykorzystują ten sam zasób szkieletu. Aby dowiedzieć się więcej, patrz: |
Przestrzeń mieszania | Są to zasoby, które pozwalają na mieszanie wielu animacji lub póz poprzez wykreślenie ich na jedno- lub dwuwymiarowym grafie. Do tego grafu można następnie odwołać się w Blueprincie animacji, gdzie mieszanie można kontrolować za pomocą danych wejściowych z rozgrywki lub innych zmiennych. Dzięki przestrzeniom mieszania można stosować praktycznie każdy rodzaj układu mieszania w animacjach. Przestrzenie mieszania można traktować jako interaktywne suwaki lub klawisze sterujące, które wykorzystują wizualną siatkę do płynnego interpolowania między animacjami na podstawie danych wejściowych. Chociaż są one powszechnie stosowane do płynnego mieszania animacji cyklu bezczynności / chodzenia / biegania, mogą również uwzględniać prędkość i kierunek. Aby dowiedzieć się więcej, patrz: Przestrzenie mieszania. |
Control Rig | Jest to zestaw narzędzi do animacji, które umożliwiają rigowanie i animowanie postaci bezpośrednio w silniku, dzięki czemu nie ma potrzeby korzystania z zewnętrznych narzędzi do rigowania i animacji. W Control Rig można tworzyć i ustawiać niestandardowe elementy sterujące dla postaci, animować w Sequencerze oraz korzystać z szeregu innych narzędzi do animacji, aby wspomóc proces pracy. Aby dowiedzieć się więcej, patrz: Control Rig. |
Modułowe systemy Control Rig | Jest to cyfrowy rig animacji, który powstał poprzez połączenie serii gotowych zasobów Control Rig zwanych modułami. Moduł to komponent Control Rig, który reprezentuje część ciała postaci, taką jak ramię, noga lub kręgosłup, i może służyć do automatycznego tworzenia zestawu elementów sterujących oraz rigowania części ciała, umożliwiając jej odbieranie danych animacji. Moduły można łączyć ze sobą, tworząc kompletny rig animacji do poruszania szkieletem. Aby dowiedzieć się więcej, patrz: Modułowe systemy Control Rig. |
Edytor krzywych | Ten edytor służy do modyfikowania i precyzyjnego dostosowywania klatek kluczowych animowanych obiektów. W grafie edytora krzywych można edytować istniejące klatki kluczowe lub tworzyć nowe, edytować styczne oraz używać wbudowanych narzędzi do dostosowywania krzywych animacji. Zasoby krzywych można wykorzystywać w innych edytorach silnika, takich jak Niagara, ale są one szeroko stosowane w Sequencerze do pracy z animacjami. |
Sequencer | Jest to edytor filmowy służący do animowania postaci, kamer, właściwości i innych aktorów w czasie. Ma nieliniowe środowisko edycji, w którym można tworzyć i modyfikować ścieżki oraz klatki kluczowe wzdłuż osi czasu. Aby dowiedzieć się więcej, patrz: |
Tryb animacji | Edytor poziomów można przełączać między różnymi trybami, które służą różnym celom, takim jak rzeźbienie i malowanie terenu, modelowanie geometrii lub animowanie. Tryb animacji edytora poziomów umożliwia animowanie aktorów i komponentów poziomu bezpośrednio w poziomie za pomocą Sequencera, podczas pracy w środowisku czasu rzeczywistego, w którym obowiązuje zasada WYSIWYG. Tryb animacji zawiera następujące narzędzia dla systemów Control Rig:
Aby dowiedzieć się więcej, patrz
|
Blueprint animacji | Są to specjalistyczne Blueprinty, które kontrolują animację siatki szkieletowej podczas symulacji lub rozgrywki. Grafy animacji są edytowane w edytorze Blueprintów animacji, gdzie można mieszać animacje, kontrolować kości szkieletu lub tworzyć logikę definiującą ostateczną pozę animacji dla siatki szkieletowej, która będzie używana w każdej klatce. Aby dowiedzieć się więcej, patrz: |
Maszyna stanów | Są to modułowe systemy, które można budować wewnątrz Blueprintów animacji w celu zdefiniowania określonych animacji, które mogą być odtwarzane oraz kiedy mogą być odtwarzane. Ten rodzaj systemu służy przede wszystkim do korelowania animacji ze stanami ruchu postaci, takimi jak stanie w miejscu, chodzenie, bieganie i skakanie. Dzięki nim można tworzyć „stany” definiowane przez animacje odtwarzane w tych momentach oraz tworzyć różne rodzaje przejść, aby kontrolować moment przechodzenia do innych stanów animacji. Ułatwia to tworzenie złożonego mieszania animacji bez konieczności stosowania nadmiernie skomplikowanego grafu animacji. Aby dowiedzieć się więcej, patrz: Maszyny stanów. |
Dodatkowe narzędzia do animacji
Unreal Engine zawiera wiele narzędzi i systemów, które umożliwiają pełną animację projektu w ramach silnika. Poniżej przedstawiono kilka najważniejszych dodatkowych narzędzi, systemów i kwestii, które należy wziąć pod uwagę podczas animacji w Unreal Engine.
Dopasowanie animacji
Dopasowanie animacji to funkcja, która umożliwia ponowne wykorzystanie animacji między wieloma postaciami, które korzystają z tego samego zasobu szkieletu, ale mogą mieć znacznie różne proporcje. Eliminuje to konieczność tworzenia zupełnie nowych animacji, ponieważ można współdzielić zasoby animacji między nimi.
Dopasowania animacji można używać na dwa sposoby:
Szkielet postaci, do której dokonywane jest dopasowanie, wykorzystuje ten sam zasób szkieletu, dla którego zostały utworzone animacje.
Szkielet postaci, do której dokonywane jest dopasowanie, nie korzysta z tego samego zasobu szkieletu. Zamiast tego należy użyć rigu, aby przekazać informacje o kościach szkieletu do drugiego.
W poniższym przykładzie trzy postacie wykorzystują ten sam zasób szkieletu, ale wszystkie mają różne proporcje względem siebie. Przed dopasowaniem szkielety ulegają deformacji, tracąc proporcje. Po dopasowaniu proporcje znaków są zachowane dla każdej postaci.
Aby dowiedzieć się więcej, patrz:
Animacja oparta na fizyce
UE wykorzystuje symulacje fizyczne (ragdolle, ubrania, dynamiczne włosy) w celu zwiększenia realizmu.
Można płynnie łączyć z animacjami klatek kluczowych, co jest funkcją bardziej charakterystyczną dla robotów niż typowych procesów pracy w programie Maya.
Animacja oparta na fizyce łączy wyniki symulacji z animacją opartą na klatkach kluczowych, tworząc naturalnie symulowane wrażenie dla postaci, które muszą wykazywać efekt „ragdolla” lub mają elementy, które nie są animowane za pomocą klatek kluczowych, takie jak włosy, ubrania lub łańcuchy, symulowane bez specjalnej animacji.
Przykład animacji opartej na fizyce z przykładowego projektu Przykładowe treści.
Animacja oparta na fizyce wymaga skonfigurowania zasobu fizyki dla każdej postaci, co umożliwia jej reagowanie z innymi powierzchniami, dla których skonfigurowano kolizję.
Aby dowiedzieć się więcej, patrz:
Warstwowe Control Rig
Warstwowe Control Rig to system, który wykorzystuje Control Rig w wielu innych procesach roboczych bez konieczności wypalania danych w celu edycji postaci, co ostatecznie może prowadzić do destrukcyjnego procesu roboczego podczas wprowadzania zmian. Kontrolery warstw umożliwiają mieszanie i nakładanie na siebie różnych Control Rig w Sequencerze, dodając do klipu w Sequencerze rozwiązanie wstecz w Control Rig na żywo. Wcześniej, aby edytować animację, należało przypisać Control Rig do siatki szkieletowej w Sequencerze, wypalić klatki kluczowe i odtworzyć animację na żywo.
Aby dowiedzieć się więcej, patrz kurs Warstwowe Control Rig – szczegółowe omówienie w EDC. Dodatkowo można pobrać projekt Przykładowe treści z Fab. Poziom „Animation_ControlRig” zawiera kilka demonstracji warstwowych Control Rig oraz przykładów ich zastosowania, które można obejrzeć.
Rozwiązanie wstecz Control Rig
Control Rig są oceniane na kilka sposobów, zwanych kierunkami rozwiązań. Są one tworzone w grafie Control Rig i dzielą logikę rigu na wiele kierunków rozwiązywania lub solwerów, za pomocą których można rozszerzyć dane przychodzące do rigu. Umożliwia to takie operacje, jak współdzielenie rigów, wypalanie animacji z powrotem do elementów sterujących oraz debugowanie zachowań.
Głównym zastosowaniem rozwiązania wstecz jest wypalenie sekwencji animacji do Control Rig w celu wprowadzenia dalszych zmian w animacji w Unreal Engine. Rozwiązanie wstecz może być również przydatne do wprowadzania poprawek do istniejących animacji lub danych przechwycenia ruchu, które zostały zaimportowane do silnika, a następnie wypalenia tych zmian.
Aby dowiedzieć się więcej, patrz: sekcja „Rozwiązanie wstecz” w artykule Kierunki rozwiązań.
Wtyczka Animation Kit
Zestaw animatora to wtyczka, która dodaje do projektu przyjazne dla animatorów deformatory i rigi narzędziowe. Działa to tak samo, jak dodawanie dowolnych Control Rig za pomocą Sequencera.
Wtyczkę można włączyć z poziomu menu głównego, przechodząc do obszaru Edytuj > Wtyczki i wyszukując „Zestaw animatora”.
Ta wtyczka zawiera następujące Control Rig, których można używać w Sequencerze:
Rigi narzędziowe
BlendParent
3Node
ChainSim
SingleCim
SplinePath
Deformatory
Deformator rzeźbienia
Deformator kratownicy (2x2x2, 3x3x3 oraz 4x4x4)
Kratownica przestrzeni kamery
Aby dowiedzieć się więcej o używaniu tej wtyczki i deformatorów, patrz: kurs Pierwsze kroki z deformatorami w EDC.
Dodatkowe uwagi dotyczące animowania w Unreal Engine
Ruch komponentu głównego
W Unreal Engine postacie składają się z wielu komponentów, a ruch jest często obsługiwany przez Movement Components postaci, na które nakładane jest odtwarzanie animacji, aby przekazać wizualną informację zwrotną o ruchu. Animacje ruchu komponentu głównego mogą sterować ruchem postaci za pomocą danych animacji, aby stworzyć bardziej realistyczny ruch w ramach poziomu. Przykładami animacji opartych na ruchu komponentu głównego są animacje, które powodują przemieszczenie postaci z pozycji głównej, np. skok do przodu lub do tyłu, lub wykonanie skomplikowanej czynności, takiej jak kombinacja ruchów mieczem.
Aby dowiedzieć się więcej, patrz: Ruch komponentu głównego.
Kompresja animacji
Jest to proces przekształcania danych animacji z zasobów sekwencji animacji w celu zmniejszenia ogólnego rozmiaru plików animacji i zużycia pamięci. W przypadku kompresji kompromisem jest wydajność projektu, zwłaszcza podczas skalowania projektów na wiele urządzeń o różnych specyfikacjach. Animacje z minimalnym ruchem są lepsze niż te z dużą ilością ruchu, w których może wystąpić zauważalny spadek jakości. Ważne jest, aby dostosować rodzaj kompresji do rodzaju utraty jakości, na jaką może sobie pozwolić dany projekt.
Aby dowiedzieć się więcej, patrz: Kompresja animacji.
Live Link
Zapewnia to wspólny interfejs do streamingu i używania danych animacji z zewnętrznych źródeł, takich jak Maya, w Unreal Engine. Umożliwia edycję animacji zewnętrznie, jednocześnie wyświetlając podgląd pracy w Unreal Engine w czasie rzeczywistym. Jest to bardzo przydatne w systemach przechwytywania ruchu i procesach roboczych.
Aby dowiedzieć się więcej, patrz: Live Link.
Następna strona
Używanie sekwencji filmowych i Sequencera w Unreal Engine dla użytkowników programu Maya
Przegląd narzędzia Sequencer do tworzenia filmów w Unreal Engine dla użytkowników programu Maya.