Podsumowanie

W grze, którą tworzymy, bohater ma wykonywać pewne czynności, należą do nich: chodzenie, spoczynek, skok i upadek. Elementy te powinny być zobrazowane odpowiednimi animacjami.

Kwestie, które należy uwzględnić przy implementacji animacji ruchu postaci:

  • przygotowanie odpowiednich tekstur, dopasowanych do stanów, w których znajduje się postać;

  • nagranie sekwencji ruchów, które wykonuje bohater podczas danej czynności;

  • dodanie przejść między poszczególnymi czynnościami;

  • uwzględnienie w kodzie warunków, w których mają zajść przejścia pomiędzy animacjami poszczególnych stanów.

Tekstury

Pracę nad zanimowaniem bohatera zaczynamy od dodania tekstur do projektu – potrzebne są grafiki przedstawiające postać w różnych pozycjach.

Skąd brać tekstury? Grafiki można zrobić samemu w programie do obróbki grafiki albo skorzystać z gotowych. Tekstury można kupić w sklepie Unity lub na innych portalach z assetamizasoby (ang. assets)assetami. W internecie dostępne są również darmowe grafiki.

Dla zainteresowanych

Informacje na temat wyszukiwania grafik w sieci znajdziesz w e‑materiale: Grafika komputerowa – narzędziaPF1ODtjEgGrafika komputerowa – narzędzia.

Po dodaniu tekstur należy wyodrębnić poszczególne klatki animacji. W tym celu zaznaczamy teksturę, wchodzimy w Sprite Editor, a następnie w Slice. Spośród dostępnych opcji wybieramy Grid By Cell Count i wpisujemy liczbę klatek w obrazie. Potwierdzamy i zapisujemy przyciskiem Apply. Podobnie postępujemy z pozostałymi teksturami.

RVHmUoxDSYOzM
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.

Nagranie sekwencji ruchów (animacji)

Z podzielonych na klatki tekstur należy stworzyć krótkie animacje poklatkowe, obrazujące poszczególne ruchy czy stany postaci. Do tego celu potrzebujemy odpowiedniego narzędzia. Uruchamiamy je, wybierając: Window | Animation | Animation.

Za pomocą tego narzędzia nagrywamy poszczególne animacje. Odbywa się to poprzez przypisanie klatek do odpowiednich momentów na osi czasu. W ten sposób tworzymy animację spoczynku, chodzenia, skoku i upadku, przy czym w naszym wypadku dwie ostatnie potrzebują tylko po jednej klatce.

R1e7hol624tkw
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.

Przejścia między animacjami

Po stworzeniu animacji należy wskazać programowi, kiedy powinien je uruchamiać. Otwieramy w tym celu nowy rodzaj okna: klikamy Window | AnimationAnimator.

W nowo otwartym oknie widzimy bloczki będące odpowiednikami wszystkich stworzonych dotychczas animacji. Dodajemy pomiędzy nimi przejścia. Tworzymy także nowe parametry odpowiadające poszczególnym czynnościom, mają one typ booleanbooleanboolean. Jeżeli dany parametr przyjmie wartość prawda, zajdzie przejście z jednej animacji w drugą.

Jak powinny odbywać się przejścia między poszczególnymi czynnościami postaci? Ze spoczynku można przejść do chodzenia i odwrotnie. Z obu stanów można też przejść do skoku. Natomiast po skoku powinien nastąpić spadek i powrót do spoczynku.

RGCVOtzZPd0Uk
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.

Warunki przejścia między animacjami:

  • zmienna odpowiedzialna za animację chodzenia przyjmie wartość prawda, jeśli wciśnięta na klawiaturze zostanie któraś ze strzałek kierunkowych – wówczas uruchomiona zostanie animacja chodzenia; w przeciwnym wypadku wartością tej zmiennej logicznej będzie fałsz, co poskutkuje uruchomieniem animacji spoczynku;

  • jeśli zostanie wciśnięta spacja, zmienna odpowiedzialna za skok przyjmie wartość prawda, co wywoła animację skoku;

  • zmienna odpowiedzialna za spadek postaci powiązana jest jest z jej szybkością na osi y, jeśli ta będzie mniejsza od zera, zmienna spadek powinna otrzymać wartość prawda, co uruchomi odpowiednią animację;

  • wartość zmiennej odpowiedzialnej za spadek przyjmie wartość fałsz, jeśli obiekt postaci wejdzie w kolizję z platformą; uruchomi to przejście do animacji spoczynku.

Nauczysz się

W następnych częściach serii e‑materiałów stworzymy pierwszy i kolejne poziomy gry, dodamy również ruch kamery, aby podążała za postacią. Aby nieco utrudnić, a zarazem uatrakcyjnić grę, dodamy do niej przeszkody, przeciwników oraz punktowane elementy. Zaimplementujemy zarówno warunki przejścia na kolejny poziom, jaki i sytuacje, w których gracz musi rozpocząć grę od początku. Na koniec poprawimy ewentualne błędy i wyeksportujemy projekt, aby móc przekazać go graczom.

Słownik

boolean
boolean

logiczny typ danych przyjmujący dwie wartości – prawda i fałsz.

silnik gry komputerowej
silnik gry komputerowej

zintegrowane środowisko programistyczne stworzone dla osób projektujących gry komputerowe

zasoby (ang. assets)
zasoby (ang. assets)

wszystkie elementy, z których zbudowana jest gra – tekstury, skrypty, sceny itd.