Jak sprawić, by rigowana postać poruszała się po linii prostej zamiast po automatycznym łuku
Aby przesunąć rigowaną postać po linii prostej, animuj kontroler ruchu między dwiema pozycjami, zsynchronizuj w czasie klatki kluczowe translacji i na początek ustaw styczne Linear. Jeśli postać nadal porusza się po łuku, sprawdź transformacje jej obiektów nadrzędnych i połączenia ze ścieżką ruchu.
Ten poradnik jest przeznaczony dla animatorów, którzy mają działający rig postaci, ale widzą niechciany łuk między pozą początkową a końcową. Przykładowe kroki wykonano w programie Maya. Celem jest wyprostowanie ogólnego toru ruchu postaci przy zachowaniu osobnej animacji pozy.
Ustal, czy problem dotyczy trasy, czy prędkości
Prosta trasa i stała prędkość to dwa odrębne wymagania. Postać może poruszać się po linii prostej, stopniowo przyspieszając, albo podążać po zakrzywionej trasie ze stałą prędkością. Dokumentacja Adobe wyraźnie rozróżnia interpolację przestrzenną, która steruje ruchem w przestrzeni, od interpolacji czasowej, która steruje zmianami w czasie. To rozróżnienie pomaga ustalić, którą część animacji należy skorygować. Interpolacja klatek kluczowych w After Effects
Najpierw wybierz punkt, którego tor ma być prosty: początek kontrolera ruchu, staw główny albo inny wyraźnie określony punkt rigu. Obserwuj ten sam punkt przez cały ruch. Obracająca się lub przyjmująca pozy postać może poruszać kończynami po zakrzywionych torach, nawet gdy jej ogólny ruch przebiega po linii prostej.
Zanim zmienisz animację, wykonaj poniższe kroki diagnostyczne:
| Obserwacja | Co najpierw sprawdzić |
|---|---|
| Punkt ruchu odchyla się od zamierzonej linii | Krzywe translacji i klatki pośrednie |
| Trasa jest prosta, ale ruch przyspiesza lub zwalnia | Timing i nachylenie stycznych |
| Krzywe translacji wyglądają na liniowe, ale punkt nadal porusza się po łuku | Transformacje obiektów nadrzędnych lub inne połączenie sterujące ruchem |
Wybierz kontroler, który faktycznie przesuwa całą postać
Zacznij od wskazanego w rigu kontrolera ruchu. Jego nazwa i przeznaczenie zależą od rigu: kontroler o nazwie „global” może odpowiadać za pozycjonowanie, a inny — za animowany ruch. Wykonaj niewielką tymczasową translację wybranego kontrolera, sprawdź wynik, a następnie cofnij test.
Upewnij się, że widoczne części postaci i powiązane kontrolery poruszają się razem. Jeśli niektóre kontrolery pozostają w miejscu, najpierw ustal, w jaki sposób rig przewiduje ich ruch. Edycja przypadkowego stawu albo widocznej siatki utrudnia interpretację testu.
Sprawdź też hierarchię obiektów nadrzędnych kontrolera. Obiekty w Maya mogą dziedziczyć transformacje od swoich obiektów nadrzędnych. W efekcie prosta lokalna translacja pod animowanym, obracającym się obiektem nadrzędnym może utworzyć zakrzywiony tor w przestrzeni świata. Wynika to z połączenia odziedziczonej transformacji z lokalną animacją. Polecenie Maya inheritTransform
Na potrzeby wstępnego testu użyj kontrolera ruchu, którego transformacje obiektów nadrzędnych pozostają niezmienione w danym przedziale. Jeśli musisz tymczasowo odizolować istniejącą animację, pracuj na zapisanej kopii. Zapisz pierwotne wartości zamiast zerować kontrolery, których przesunięcia mogą być częścią konfiguracji rigu.
Przygotuj prosty test translacji z dwiema klatkami kluczowymi
Użyj klatek kluczowych na obu końcach, aby sprawdzić, czy podstawowa translacja działa prawidłowo. Poniższe wartości są przykładowymi jednostkami sceny, a nie pomiarami konkretnej postaci. Zakładają, że kontroler ruchu można edytować, układ współrzędnych jest nieruchomy i żadne inne połączenie nie steruje jego translacją.
| Klatka | Translate X | Translate Y | Translate Z |
|---|---|---|---|
| 1 | 0 | 0 | 0 |
| 25 | 6 | 0 | 0 |
Wykonaj test w Maya w następujący sposób:
- Zaznacz kontroler ruchu i ustaw suwak czasu na klatce 1.
- Wprowadź wartości początkowej translacji w Channel Box.
- Zaznacz nazwy atrybutów Translate X, Translate Y i Translate Z, kliknij prawym przyciskiem myszy i wybierz Key Selected.
- Przejdź do klatki 25 i wprowadź wartości docelowe.
- Ponownie dodaj klatki kluczowe dla tych samych trzech atrybutów translacji.
- Sprawdź, czy w tym przedziale są już inne klatki kluczowe translacji. W kopii testowej usuń tylko te klatki pośrednie, które kolidują z zamierzonym ruchem, zachowując niezwiązaną z nim animację pozy.
W Maya można dodawać klatki kluczowe dla pojedynczych atrybutów lub wybranych grup atrybutów w Channel Box. Użycie opcji Key Selected jasno określa zakres testu. Jeśli kontroler zaczyna od wartości niezerowych, zachowaj te przesunięcia i dodaj zamierzone przemieszczenie na odpowiedniej osi. Dodawanie klatek kluczowych w Channel Box
Ustaw styczne Linear dla klatek kluczowych translacji
Otwórz Graph Editor w Maya, mając zaznaczony kontroler ruchu. Wyświetl kanały translacji, zaznacz klatki kluczowe na tych kanałach i wybierz Tangents > Linear. Zastosuj zmianę do wszystkich kanałów translacji używanych podczas ruchu. Dokumentacja Maya opisuje styczne Linear jako proste odcinki krzywej animacji między klatkami kluczowymi. Pasek narzędzi Graph Editor, Menu kontekstowe stycznych klatek kluczowych
W przykładowym ruchu wartość X powinna równomiernie rosnąć, a Y i Z pozostawać bez zmian. Przewijaj klatki w całym przedziale zamiast sprawdzać tylko jego końce. Postać może dotrzeć do właściwego celu, a mimo to po drodze zboczyć z zamierzonej trasy.
W przypadku ruchu po przekątnej ustaw te same klatki początkowe i końcowe dla każdego zmieniającego się kanału translacji. Na przykład ruch z (0, 0, 0) do (6, 0, 3) przy zsynchronizowanej interpolacji liniowej tworzy prostą linię ukośną w danym układzie współrzędnych. Jeśli X osiągnie wartość końcową wcześniej niż Z, łączny tor zmieni kierunek.
Stosuj styczne Linear wybiórczo. Zmiana wszystkich klatek kluczowych w rigu wpłynęłaby również na timing pozy, który nie wymaga korekty. Autodesk rozróżnia styczne Linear, Spline, Flat i inne typy, ponieważ tworzą one odmienne przejścia między kluczowanymi wartościami. Menu kontekstowe stycznych klatek kluczowych
Sprawdź wynik za pomocą Motion Trail i kontroli w połowie ruchu
Utwórz Motion Trail dla kontrolera ruchu, aby sprawdzić jego tor. W zestawie menu Animation w Maya otwórz Visualize > Open Motion Trail Editor, wybierz odpowiedni zakres wyświetlania i kliknij Create Motion Trail, mając zaznaczony animowany kontroler. Udokumentowany sposób pracy obejmuje tryb wyświetlania Before i After, który pozwala sprawdzić ruch wokół bieżącej klatki. Tworzenie i edycja Motion Trail
Wykonaj obliczenia kontrolne na podstawie przykładowych wartości. Klatka 13 znajduje się dokładnie w połowie między klatkami 1 i 25, więc oczekiwana translacja to (3, 0, 0). W przypadku ruchu po przekątnej jest to (3, 0, 1.5). Są to obliczone wartości dla zsynchronizowanej interpolacji liniowej, a nie zgłoszone wyniki testu oprogramowania.
Ogólna kontrola polega na obliczeniu P(u) = A + u × (B − A), gdzie A oznacza pozycję początkową, B — pozycję docelową, a u — postęp od 0 do 1. Przy jednej czwartej postępu pozycja powinna znajdować się w jednej czwartej długości odcinka. Pozwala to sprawdzić zarówno kierunek, jak i rozkład położeń.
Sprawdź ruch z więcej niż jednego nieruchomego kąta widoku, aby widzieć zmiany głębi. Pamiętaj, że Motion Trail pokazuje wynikowy ruch. Różni się od ścieżki ruchu, która prowadzi obiekt po wyznaczonej trasie. Podgląd animacji za pomocą Motion Trails
Zdiagnozuj łuk, który pozostaje po zastosowaniu interpolacji liniowej
Jeśli test z dwiema klatkami kluczowymi nadal daje zakrzywiony ruch, sprawdź, co wpływa na pozycję końcową. Najpierw zbadaj hierarchię obiektów nadrzędnych w całym przedziale. Obiekt nadrzędny może obracać się między klatkami o pozornie identycznej orientacji, dlatego sprawdź również klatki pośrednie. Korzystaj z przestrzeni ruchu przewidzianej przez rig zamiast zmieniać dziedziczenie transformacji bez zrozumienia konfiguracji. Polecenie Maya inheritTransform
Następnie sprawdź, czy kontroler jest przypisany do ścieżki ruchu. Animacja ścieżki w Maya prowadzi obiekt po wyznaczonej trasie trójwymiarowej, a dokumentacja opisuje zmianę kształtu trasy i zmianę prędkości ruchu jako osobne operacje. Jeśli sama trasa jest zakrzywiona, zmiana timingu jej nie wyprostuje. Zmień trasę na prosty odcinek albo użyj obsługiwanego przez rig sposobu bezpośredniej translacji. Animacja po ścieżce
Na koniec porównaj tor kontrolera ruchu z torem konkretnego stawu lub kontrolera, który wydaje się poruszać po łuku. Ewaluacja rigu może dawać różne wyniki pośrednie. Przykładowo Autodesk opisuje, że globalne efektory IK i efektory FK w lokalnej hierarchii HumanIK interpolują w różny sposób. Prosty tor kontrolera ruchu nie oznacza zatem, że każdy punkt rigu będzie podążał tą samą trasą. Kontrolery HumanIK
Dodaj easing bez ponownego zakrzywiania trasy
Po sprawdzeniu trasy zdecyduj, czy postać ma poruszać się ze stałą prędkością, czy też łagodnie rozpędzać się i zatrzymywać. W przypadku ruchu wyłącznie wzdłuż osi X pozostaw Y i Z bez zmian i modyfikuj tylko timing X. Zmiana postępu wzdłuż jednej osi nie może spowodować przemieszczenia w bok, jeśli układ współrzędnych pozostaje nieruchomy.
W ruchu po przekątnej wszystkie zmieniające się współrzędne muszą korzystać z tego samego znormalizowanego postępu. W wyrażeniu P(u) = A + u × (B − A) easing zmienia tempo, w jakim u zmienia się w czasie. Niezależna edycja easing dla każdej współrzędnej może zaburzyć tę zależność i wygiąć trasę. Jest to warunek geometryczny wynikający z równania linii prostej.
Na koniec sprawdź cały rig przy włączonej animacji pozy, zgodnie z zamierzeniem. Zweryfikuj pozycje końcowe i pośrednie oraz ślad ruchu w całym przedziale. Zachowaj sprawdzony ruch jako punkt odniesienia podczas dopracowywania lokalnych ruchów postaci.
Źródła
- Interpolacja klatek kluczowych w After Effects — Adobe
- Dodawanie klatek kluczowych w Channel Box — Autodesk Maya
- Pasek narzędzi Graph Editor — Autodesk Maya 2026
- Menu kontekstowe stycznych klatek kluczowych — Autodesk Maya 2026
- Tworzenie i edycja Motion Trail — Autodesk Maya 2025
- Podgląd animacji za pomocą Motion Trails — Autodesk Maya
- Polecenie inheritTransform — Autodesk Maya 2025
- Animacja po ścieżce — Autodesk Maya
- Kontrolery HumanIK — Autodesk Maya
