Kiedy używać drzewa mieszanego do automatu stanów do animacji


13

Jestem doświadczonym twórcą gier tworzącym moją pierwszą grę z animowanymi postaciami 3D (w Unity) i staram się dowiedzieć, kiedy użyć drzew mieszanych zamiast automatów stanów animacji. Rozumiem oba koncepcyjnie, ale widziałem zarówno drzewa mieszania, jak i automaty stanów animacji używane do animacji postaci w wielu samouczkach zarówno z Unity, jak iz innych źródeł. Nie jestem pewien, kiedy / dlaczego jedno jest lepsze od drugiego, mam nadzieję, że ktoś wskaże mi właściwy kierunek.

Moja gra to trzecioosobowa gra RPG a'la WoW lub KOTOR lub Mass Effect (znam różne systemy, ale perspektywy i style walki są dość zbliżone na wysokim poziomie). Mam mnóstwo animacji do ataków, bloków, udawania, śmierci, chodzenia, biegania, skakania, strzelania itp., Ale nie jestem pewien, jak je porządkować w naturalny sposób.

Widziałem drzewa mieszane używane do poruszania się, co ma dla mnie sens, gdy próbuję utrzymać płynność ruchu postaci, ale nie rozumiem, jak przejść z tego drzewa mieszania do stanu ataku i nic, co do tej pory nie widziałem, nie przemknęło przez ruch (brak ataków itp). Czy muszę mieszać drzewa ze stanów ruchu, aby atakować / śmierć / unikać? Czy mam większą kontrolę przy użyciu tylko automatów stanowych? Jestem trochę ostrożny w stosunku do automatów stanowych ze względu na tak powszechne z nimi wzdęcie przejściowe i ponieważ podejrzewam, że istnieje większy potencjał sekwencjonowania animacji bez mieszania.

Planuję użyć kontrolera znaków Unity i napisać własne skrypty logiczne, aby nim sterować. Do AI będę używał wbudowanych agentów nav mesh. Czy animacje kontrolera postaci są obsługiwane inaczej niż AI?

Wszelkie spostrzeżenia byłyby mile widziane!

Dzięki

Odpowiedzi:


21

Pracowałem całkiem sporo z Mecanim w Unity i czuję, że całkiem dobrze rozumiem, jak to działa.

Jak mówisz, drzewa mieszane są niemal zdecydowanie sposobem na poruszanie się. Drzewa mieszania są zazwyczaj przeznaczone do ciągłego mieszania animacji w celu uzyskania ostatecznego wyniku. Daj graczowi kontrolę nad tym, jak szybko działa awatar.

Wszystkie pojedyncze działania prawdopodobnie lepiej zachować jako osobny stan, w który można przejść. W zależności od tego, jak intensywna będzie Twoja gra, możesz nawet rozważyć użycie dowolnego stanu jako punktu wyjścia, aby szybko przejść do skoku, ataku itp., Bez konieczności oczekiwania na zakończenie kolejnej animacji.

Kluczem do mieszania z drzewa mieszania z uruchomieniem jest użycie przejść . Nie ma magii, aby wyglądać świetnie, tylko staranne planowanie i poprawki podczas podglądu przejścia w Unity. Wiele pracy zależy od animatora, który ma podstawy do udanych przejść.

Podczas przechodzenia między przejściami należy pamiętać o tym, by zachować równowagę i wyglądać świetnie, dając graczowi oczekiwane informacje zwrotne. Może się okazać, że szybka zmiana działa najlepiej w grze, podczas gdy wolniejsza zmiana może wyglądać lepiej, ale sprawi, że gracze będą chcieli wyrzucić kontroler.

Poniżej znajduje się dość prosta konfiguracja, w której strzałki wskazują, jak przebiegają przejścia. Przejścia są oparte na warunkach wejścia i wychodzą po zakończeniu animacji lub spełnieniu określonego warunku. Oznacza to również, że jeden stan może przejść do różnych innych stanów w zależności od różnych warunków.

Maszyna stanowa

To, co prawdopodobnie zauważysz, to to, że szybko może stać się dużą kupą „spaghetti”, a sposobem na uniknięcie tego bałaganu jest wykorzystanie Dowolnego Stanu, który również znajduje się na powyższym obrazku.

Każde państwo ma tę zaletę, że jest w stanie przejściowym do niczego od danej chwili. Przejścia mogą być nadal używane do mieszania animacji, jednak pracujesz trochę więcej w ciemności, jak to będzie wyglądać. Podczas konfigurowania można wyświetlić podgląd z / do różnych stanów.

Coś, o czym nie wspomniałeś, to Warstwy , które mogą być niezwykle przydatne do zranienia twojej postaci lub do przesłonięcia górnej części ciała, aby nosić różne bronie, używając tej samej animacji dla nóg dla wszystkich broni. Warstwy są również mieszane i mogą być dostosowywane stopniowo, więc postać może na przykład być mniej lub bardziej zraniona. Innym przykładem może być podniesienie rąk postaci w powietrzu (jeśli postać się podda czy coś), przy jednoczesnym zachowaniu wszystkich pozostałych animacji bez zmian.

Ale skonfigurowanie solidnego kontrolera animacji nie jest godzinnym zadaniem. Zajmuje to trochę planowania i mogę tylko zachęcić cię do próby skonfigurowania prostej maszyny stanów z dwoma atakami, skokiem, bezczynnością i drzewem mieszania. Zachowania wprowadzone w Unity 5 mogą być również bardzo przydatne do kontrolowania skryptów lub interakcji z nimi.

Jestem 99% pewien, że AI będzie zachowywać się tak samo, jak kontroler odtwarzacza, biorąc pod uwagę, że to parametry zmieniane za pomocą skryptów kontrolujących sposób przejścia animacji ze stanu do stanu.

streszczenie

  • Drzewa mieszane do poruszania się.
  • Stany pojedynczych, zdefiniowanych akcji lub prostych stanów zapętlenia.
  • Podstany do organizowania szeregu stanów, takich jak skok.
  • Przejścia do mieszania / przechodzenia między różnymi stanami (stan może być również drzewem mieszania).
  • Warstwy do nadpisywania lub dodawania do animacji podstawowej.

Więc pomyśl o drzewach mieszania jako stanach rozwiniętych, które działają również w oparciu o wartości parametrów.

Trochę długa wędrówka, ale mam nadzieję, że rzuci nieco światła na ten temat :)


Dzięki za wspaniały opis, ma to teraz sens
weichsem,

Fantastycznie, chętnie pomogę :)
Morten Andersen
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.