Drugi wpis związany z grafiką i projektem Deep Platformer. ;)
Na potrzeby pliku z informacjami o projekcie, który znajdować się będzie w głównym katalogu repozytorium z kodem projektu, postanowiłem stworzyć prostego, animowanego GIF-a. Animowany obrazek miał składać się z loga gry oraz bohatera mrugającego oczami, całość z przezroczystym tłem. Nic skomplikowanego – ot kilkanaście klatek, każda trwająca zadaną ilość czasu, rezultat niżej.
.
Zacząłem więc szukać w sieci jakiegoś prostego narzędzia, które pozwoliłoby mi taką animację stworzyć. Szukałem takiego, które pozwala po kolei dodać do listy kolejne obrazki i każdy z nich odpowiednio konfigurować (głównie ustalać czas trwania klatki). Znalazłem sporo narzędzi, niestety jedno gorsze od drugiego, prześcigając się w debilnych pomysłach związanych z UI. Jedne nie pozwalały nadawać czasu osobno dla każdej klatki animacji, inne nie obsługiwały przezroczystości – tragedia.
W końcu znalazłem program mniej więcej odpowiadający moim potrzebom (nazwy nie będę podawał) – darmowy, duża funkcjonalność, w miarę proste i intuicyjny interfejs. Uradowany dodaję kolejne obrazki do animacji, układam w odpowiedniej kolejności i przechodzę do ostatniej czynności, czyli określania czasu trwania klatek. Ktoś wpadł na pomysł, aby za miarę trwania klatki przyjąć 1/100 sekundy – widać milisekundy są zbyt oczywiste i trzeba było utrudnić użytkownikom życie… :/
No dobra, już trudno… Czas trwania klatek z założenia miał być zgodny z mechanizmem mrugania bohatera w grze, a ten obliczany jest na podstawie liczby klatek trwania każdej fazy. Tak więc z kalkulatorem w ręcę szybciutko określiłem ile każda klatka ma trwać w milisekundach, następnie zaokrągliłem wyniki (dla tej głupiej jednostki…), wyeksportowałem i gotowe – wyszło prawidłowo.
Przeniosłem tę animację na swój komputer i co widzę? GIMP ma skojarzone rozszerzenie .gif (własną ikonkę w oknie eksploratora dla plików tego formatu). Z ciekawości otworzyłem animację w tym edytorze i niespodzianka – widzę wszystkie klatki animacji w postaci warstw obrazu. Każda warstwa posiada nazwę w specyficznym formacie, zawierającą nazwę klatki, czas jej trwania i funkcję jej użycia.
Poprawiłem więc czasy trwania klatek, usunąłem opcje użycia, wyeksportowałem. Nie dość że efekt końcowy jest dokładnie taki jak oczekiwałem, to w dodatku mogłem ustalić czas trwania każdej klatki z osobna (w milisekundach!), ustalić przezroczyste tło, skorzystać z indeksowanej palety kolorów i mieć pod ręką masę funkcji do ewentualnej obróbki grafik. Same plusy.
Podsumowując – zmarnowałem ze dwie godziny na szukanie odpowiedniego do tego celu narzędzia, mając pod nosem bardzo dobre, zainstalowane i już mi znane, którym umiem się posługiwać… No ale przynajmniej mam animację i w razie gdybym potrzebował zrobić kolejne to wiem, że mam je w czym stworzyć.
#gimp #platformer #retro
A ja wiedziałem, że w GIMPie można robić gify, czemu mnie nie spytałeś? :P
BTW. wiesz, że Twój gif może zajmować duuuuużo mniej?
Eksportuj jako animacja z traktowaniem klatek jako kumulacja warstw (składanie).
Coś mi wcięło przy edycji... trzeba jeszcze wcześniej przed eksportem zastosować filtr.
Filtry/Animacja/Optymalizuj (dla formatu GIF)
Tzn. wiedziałem, że GIMP ma opcję zapisu do formatu GIF, ale że nie znalazłem opcji ustalania czasu klatek, to pomyślałem, że moja wersja (a mam nieco starszą, bo najnowsza nie wspiera XP) wymaga pewnie jakichś dodatkowych pluginów. Wiedziałem też, że jest masa małych narzędzi typowo do tworzenia takich animacji, więc od razu zainteresowałem się znalezieniem takiego.
@Spine: kumulacja warstw niczego nie zmienia (nadal jest 32,5 KB) – tę ustawił mi automatycznie. Natomiast skorzystanie z filtra optymalizacji zmniejsza rozmiar do 2,58 KB, zostawiając w warstwach tylko animowane obszary (resztę usuwa). Dzięki za podpowiedź! :]
Żyj retro i patrzaj retro :P
Myślisz, że czemu robi taką grę?
Żeby mieć jakąś nowość, która mu będzie płynnie działać ;)
@mr_jaro: mam do dyspozycji w sumie trzy laptopy – jeden z WinXP, jeden z Win7 i jeden z Win10. Apka którą rozwijam musi być kompatybilna z XP, więc na lapku z tym systemem przesiaduję prawie cały czas, bo mogę od razu testować nowe funkcjonalności. No i przy okazji jest to biznesowa wersja Lenovo, która jest wspaniała do pracy. Ostateczne testy przeprowadzam na wszystkich trzech.
@Spine: ;)
@furious programming: nie inaczej, biznesóweczki idealne do klepania #gimbynieznajo :)
@furious programming: jak dla mnie do pracy nadaje się tylko porządny pecet, robienie czegokolwiek na lapkach sprawia, że mam ochotę wyrzucić lapka przez okno.
@furious programming: ja jedyny lapek jaki bym zaakceptował to siedzący w stacji dokującej podpięty do 2 normalnych monitorów 24/27 cali i pecetowej klawy i myszki
I taką konfigurację mam na myśli.
Sam mam wpiętego laptopa do stacji dokującej i podłączony jeden monitor z lewej strony (z prawej mam tablicę na pisak), do tego myszka i trochę peryferiów (w końcu łącznie 7 portów USB daje trochę możliwości). Tyle że klawiatura w starszych Lenovo jest świetna do pisania (i ma pogrupowane klawisze), więc nie muszę mieć dodatkowej.
@furious programming: no to jeszcze by uszło, chociaż jak na dłużej to żadnej klawy laptopowej bym nie przeżył
Jeśli klawiatura w laptopie ma taką samą konstrukcję jak klawiatura zewnętrzna, to praktycznie żadna różnica której się użyje. Chyba że ta wbudowana ma mniej klawiszy, np. nie ma bloku klawiszy numerycznych (o ile te są użytkownikowi potrzebne).
@furious programming: w skrócie już kiedyś miałem spore problemy z rękami przez złą klawe/myszkę, wiem czego potrzebuje by było dla mnie wygodnie i po prostu nie znam lapka który by spełniał moje wymogi. A gdy dobieram sobie klawe/myszke to objade sklepy w kilku miasta testując sprzet by dojść do wniosku co bedzie najwygodniejsze. Cóż zdrowie przede wszystkim.
czysteskarpetyNo tak jest Gimp i PS mają tworzenie gif całkiem niezłe :)