Jaką technikę animacji stosuje się w „Dont Starve”? [Zamknięte]


12

Podczas grania w kilka gier w wolnym czasie, natknąłem się na grę survivalową 2D / 3D. Gra została najwyraźniej stworzona w SDL i GLUT (nie głoduj), ale naprawdę zadziwiły mnie animacje w grze.

Animacje są niezwykle płynne i płynne. Podczas animacji nie ma zniekształceń, co zwykle dzieje się w ręcznie wykonanych animacjach, to usunięcie pikseli, animacje są postrzępione i po prostu nie są tak płynne. To sprawiło, że pomyślałem o tym, jak udało im się osiągnąć taką jakość animacji. Czy były naprawdę ręcznie (jeśli tak, to musiał mieć bardzo utalentowanego artystę), czy to animacja kości, czy też używają innej techniki?


2
Sugeruję skontaktowanie się z samymi programistami w celu uzyskania tak dokładnych informacji na temat zastosowanych technologii. Każdy, kto nie działał w grze, może po prostu ustalić, nie będąc pewnym.
— DogDog,

2
Cóż, zadając to pytanie, podjąłem kilka założeń, które są następujące: 1. Kontakt z samymi programistami ma bardzo małą szansę na sukces (dlaczego ktoś miałby dzielić się swoimi sekretami z przypadkową osobą i ile czasu ma na sprawdzenie swoich e-maili ?) 2. Mogę uzyskać znacznie szybszą odpowiedź na tej stronie, która składa się z ludzi, którzy mają wieloletnie doświadczenie w tle i których odpowiedzi cenię, nawet jeśli są to tylko spekulacje i na koniec, sami programiści mogą korzystać z tej strony i może odpowiedzieć na to pytanie, ale jest to bardzo dalekie.
— Bugster

1
Większość programistów jest naprawdę otwarta na dzielenie się swoją wiedzą i nie sądzę, że sposób, w jaki robią swoje animacje 2D, jest tak tajemnicą, myślę, że warto spróbować. Może jeśli powiesz im trochę o sobie i dlaczego chcesz, aby byli bardziej interesujący w udzielaniu ci pomocy lub porad.
— DogDog,

1
Zapoznaj się z często zadawanymi pytaniami na temat „ jakiej technologii użyto konkretnej gry ”. Pytanie o osiągnięcie podobnego efektu byłoby znacznie lepszym pytaniem. (Choć prawdopodobnie duplikat czegoś już na stronie.)
— MichaelHouse

To pytanie wydaje się być nie na temat, ponieważ dotyczy technologii używanej przez inną grę.
— MichaelHouse

Odpowiedzi:


40

Nazywam się Kevin i jestem programistą / projektantem w Klei. Napisałem kilka animacji, które wykorzystaliśmy w serialu Shank, Mark of the Ninja i Don't Starve.

Nasi animatorzy pracują we Flashu. Mamy pojęcie „kompilacji” postaci, która jest zestawem symboli części ciała o wielu widokach. W zależności od wierności danej gry, jest mniej lub więcej części ciała z mniej lub bardziej „widokiem”. Myślę, że Shank miał około 30 części ciała z 1-2 tuzinami widoków, podczas gdy Wilson z Don't Starve ma około tuzina części ciała z tylko taką samą liczbą wyświetleń. Niestandardowe skrypty JSFL są używane do analizy osi czasu symboli flash, a następnie wypiekają odpowiednie obrazy jako serię plików PNG o wysokiej rozdzielczości, wraz z grupą metadanych, które umieszczamy w pliku XML.

Biorąc pod uwagę budowę postaci, nasi animatorzy tworzą nowy symbol główny w innym pliku zawierającym fragment animacji dla tej postaci. Na tej osi czasu tworzą postać z symboli kompilacji i przesuwają ją, animują itp., Aby tworzyć indywidualne animacje (wyznaczone za pomocą etykiet klatek). Skrypt eksportera eksportuje te osie czasu do formatu XML, biorąc pod uwagę transformację 2d każdego elementu kompilacji i widok, który pokazuje.

Po wyeksportowaniu wszystkich tych informacji do formatu XML i PNG uruchamiamy serię skryptów Python, aby przekonwertować je na dane w czasie wykonywania. Jeden skrypt zmniejsza rozmiary, atlasy i mipsuje wszystkie tekstury i konwertuje je na (jeden lub więcej) skompresowanych formatów specyficznych dla platformy. Inny skrypt przetwarza dane animacji XML do bardziej wydajnego w celu załadowania formatu binarnego.

W czasie wykonywania tak naprawdę chodzi tylko o pokazanie odpowiednich symboli kompilacji z odpowiednimi transformacjami i widokiem.

Budowa tego systemu zajęła dużo czasu i została udoskonalona, ​​ponieważ przenosiliśmy go z gry do gry. Jest wiele szczegółów, nad którymi pracuję (na przykład, jak radzimy sobie z nakładaniem warstw i zamianą kostiumów w czasie wykonywania), ale to jest ogólny zarys.

Oczywiście technologia, której używamy, jest prawdopodobnie najmniej ważnym aspektem „Klei Look”. Najważniejsze jest to, że mamy grupę naprawdę dobrych animatorów. :)

W każdym razie mam nadzieję, że to pomoże. Jeśli masz więcej pytań na temat Don't Starve, możesz odwiedzić nasze fora, na których zazwyczaj chętnie rozmawiam w sklepie.


1
dzięki za dogłębne. Wydaje mi się, że system, który masz, naprawdę pomaga w utrzymaniu świetnych, płynnych postaci, co większość zespołów o małym budżecie (i niektóre zespoły o wysokim budżecie) mogą sobie tylko wyobrazić. Z pewnością można śmiało powiedzieć, że jeśli zajmujesz się sztuką sprite, bez interpolacji / przekształceń części ciała, lub po prostu przekształca się i nie ma stanów / poglądów, nie byłoby to aż tak niesamowite. Tak jak powiedziałeś, narzędzie robi dobrą robotę, gdy zsuwa się z drogi i pozwala artyście zabłysnąć, co Klei często robi. Muszę powiedzieć, że uwielbiałem wszystkie twoje rzeczy i dziękuję za porty PC.
— Norguard,

2
Cieszę się, że mogłem pomóc! Myślę, że nasi artyści woleliby pracować w systemie, w którym po prostu wypalaliśmy każdą ramkę jako duszek, ale wtedy nie bylibyśmy w stanie wymieniać kostiumów, a rozmiary tekstur byłyby wygórowane.
— Kevin

1
Niesamowite, nigdy nie myślałem, że dostanę odpowiedź od twórcy tej gry. Dziękuję za poświęcenie czasu na udzielenie odpowiedzi na to pytanie. +1
— Bugster,

7

Klei zazwyczaj używa naprawdę fajnej kombinacji animacji szkieletowych i zmian duszka.
Olinują szkielet, nakładają duszki na kości, a następnie zamieniają duszki, gdy wymaga tego ramka animacji.

Dokładne „jak” (workflow / narzędzia / itp.) Tak naprawdę może pochodzić tylko od nich, jednak tak powiedzieli sami, reklamując „Shank”, przedpremierowo.

A jeśli spojrzysz na Shank / ShankII, Mark of the Ninja i Don't Starve, zauważysz, że animacja wygląda bardzo podobnie do rzeczy, które mogą pochodzić z Nickelodeon.

Wyobrażam sobie, że pracują z grafami scen, aby utrzymać wszystko przy zdrowych zmysłach, ale znowu, jest to bardziej założenie oparte na złożoności i działające w przypadku animacji (2d / 3d) niż gwarancja.


Ponieważ jest to naprawdę tylko przypuszczenie, prawdopodobnie działałoby to lepiej jako komentarz. Nie do końca twoja wina, nie sposób zgadnąć, chyba że jesteś programistą. (problem z pytaniem, a nie odpowiedź)
— MichaelHouse

To właściwie odpowiada na pytanie, które zadałem, miałem na myśli coś podobnego, ale wygląda na to, że masz rację.
— Bugster

2

Myślę, że zdecydowanie używają animacji kości. Używają też duszków o wysokiej rozdzielczości (aby zapobiec postrzępieniu) lub używają grafiki wektorowej. Jest to całkowicie możliwe, wstępnie renderowali grafikę wektorową do duszków o wysokiej rozdzielczości. Zdecydowanie nie wykorzystali w tym przypadku grafiki pikselowej. :)


2
Bardziej komentarz niż odpowiedź, prawda?
— MichaelHouse

grafika wektorowa w openGL? Jest to możliwe, ale naprawdę wątpię, aby niezależny programista doszedł do takich starań.
— Eric B,

1
@EricB W porządku, może być wstępnie renderowany w duszki lub ręcznie rysowany i renderowany w wysokiej rozdzielczości. Na pewno nie są to duszki w „klasycznym sensie” (tj. Pixel art), takie jak Spelunky i Cave Story.
— AturSams,

@ Byte56 Zgadzam się z tobą. Odpowiadam bardziej na temat tego, jak osiągnąć podobne efekty wizualne niż na tym, co zrobił ich artysta.
— AturSams,

@ Byte56, ponieważ na pytanie jest tak trudno odpowiedzieć, jedynymi realnymi odpowiedziami są założenia, ale odpowiedź ta może być bardzo możliwa, dzięki.
— Bugster
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.