Gry – wybór silnika

To piękny czas dla twórców gier. Możliwości jest masa, zacząć łatwo bez inwestowania jakiejś wielkiej kasy. Silników do wyboru do koloru – można tak wysokopoziomowo jak tylko się chce.

Kontekst

Czas – jestem stary i pobłogosławiony rodziną i pracą. Do kompletu lubię coś polepić i grać w giereczki. Z tym czasem jest krucho. Bardzo krucho. Potrzebuję silnik w miarę wysokopoziomowy – żeby nie bujać się jakoś mocno z wektorami, kolizjami i sprzętem. Pomysł + trochę klocków + assety i pokazać ludziom – nie międlić latami w jaskini.

Gatunki gier – obiecałem se, że będzie po mojemu – ma być radocha, ma być przekonanie o wspaniałości dzieła i z tego ma się brać siła do marketingu – więc muszę robić to co lubię. A co lubię?

  • Lubię słodkie gierki logiczno-platformowe (Lost Vikings, Humans, VooDoo Friends).
  • Lubię przygodówki 'jednokliki’ – Love You To Bits, Gobliiins, Agent A.
  • Lubię przygodówki 'pełne’ – wszystko LucasArtsów, Deponie, Thimbleweed Park.
  • Lubię też dungeon crawlery – Dungeon Master, Eye of Beholdery, Ishary, Legend of Grimmrock.
  • No i rogaliki – NetHack, Adom, Crawl. Ostatnio łoję w Pathos na telefonie i bardzo-bardzo mi pasuje.

Tyle z grubsza. Wybrany engine powinien maksymalnie ułatwiać pisanie tego typu gier.

Opcje

Moje opcje. Nie są to wszystkie aktualnie popularne silniki. To silniki, kóre chociaż trochę znam i których wybór rozważałem. Nie będę tu przeklejał tekstów z ichnich stron WWW – podam kilka istotnych (dla mnie) faktów i ogólne wrażenie (moje, a jakże).

Unreal Engine

WWW http://unrealengine.com
Paluchami C++
Wizualnie Blueprinty
Cena Do $3000/projekt darmowy, potem 5%
Największe plusy Możliwości – sky is the limit, blueprinty, eksport do wszystkiego
Największe minusy Moloch (i na dysku, i w pamięci), niekoniecznie dobry do małych 2D giereczek

Odczucia :: Lekko przytłaczający, bardziej chyba dla dużych zespołów. Wsparcie dla 2D (Paper) całkiem przyjemne ale ograniczone i ostatnio trochę po macoszemu traktowane. Kompilowanie shaderów rozwala. I mnie psychicznie i „development loop” – może tu by pomógł wypasiony sprzęt ale lubię se podziuptać na laptopku.

Godot

WWW http://godotengine.org
Paluchami GDScript i C#
Wizualnie VisualScript (od wersji 3.0)
Cena Darmowy, open source, licencja MIT
Największe plusy Mały engine, GDScript, świeżo i tak jakoś 'programistycznie’
Największe minusy Brak eksportu na konsole, słabawe 3D

Odczucia :: Mały, uwodzicielski filutek 🙂 Bardzo dobre wsparcie dla 2D. Cała gra budowana na nodach – bardzo elastyczne składanie assetów i łatwe dzielenie tego na pliki. Bardzo podoba mi się GDScript – podobny do Pythona, świetnie mi się w tym pisze. Bardzo fajny „development loop” – szybkie iteracje. Godot szybko goni „duże” silniki.

Nie ma prostego eksportu na konsole (da się to ogarnąć podwykonywcami). Wsparcie 3D trochę słabsze, ale nie wiem czy to ma większy wpływ na moje plany. Jest plugin do point’n’clicków – podobno całkiem przyjemny.

Unity

WWW http://unity3d.com
Paluchami C#
Wizualnie natywnie nic (prace trwają – coś się w 2019 pokaże) są pluginy – głównie Bolt i Playmaker
Cena Do $100.000 przychodu darmowy, potem $25/mies, potem 125$/mies
Największe plusy Aktualny król, wspiera wszystkie typy gier które chciałbym robić, eksportuje do wszystkiego w miarę bezboleśnie
Największe minusy Duży engine, nuda?, jak to ktoś napisał: 'zabiera feeling of development’

Odczucia :: Mam duży staż – pierwsze tutki w 2010, pierwsza opublikowana gra w 2012. Zrobiłem w tym kilka gierek i jeden spory program. Na pewno silnik z największym potencjałem na przyszłość – sporo umiem, szybko się rozwija. W razie czego najłatwiej będzie złapać zlecenie. Kosmiczne community, wypasiony sklep z assetami i pluginami – bardzo dużo można osiągnąć składając łatwo dostępne „klocki”. Do point’n’clicków jest sprawdzony w boju Adventure Creator. Mam też plugin do dungeon crawlerów.

Za to trochę mi to wszystko już spowszedniało – brakuje trochę ognia w tym związku 😀 C# też nie jest jakoś specjalnie seksi językiem, a Boo wywalili.

libGDX i Cocos2D

Miałem je też rozpisać ale jak tak pomyślałem to w sumie nie mogę ich brać na poważnie – fajne są i „blisko metalu” ale jestem już chyba za stary – mało mam czasu i nie wiem czy chcę się bawić w budowanie gier tak bardzo od podstaw – wolałbym wypluwać fajne pomysły niż latami cyzelować kolejne kawałki enginu. Eksport do iOS i Androida w miare bezboleśny, z konsolami dużo trudniej. 3D leży i kwiczy – więc Dungeon Master raczej tylko 'po staremu’ – za pomocą 2d spritów. Nie, szkoda czasu.

Wybór i powody

Strasznie mnie kusił Godot, strasznie. Jakbym był młodziakiem w szkole średniej to pewnie waliłbym jak w dym. Szybko, fajnie, tak „kodersko-czadersko”.

No ale nie jestem młodziakiem. Skoro ustaliłem, że mam „dowieźć” jakieś giereczki, sam napisać i wypromować to najrozsądniej będzie zostać przy tym w czym jestem najlepiej ogarnięty i nie ganiać za pokusami. Wypada więc na Unity. W perspektywie kilku lat to na pewno najbezpieczniejszy wybór. To także dobry wybór ze względu na blogaska. Posty po polsku o Unity powinny trafiać do większej liczby odbiorców niż posty o Godocie 🙂 Kusi mnie ten Godot i będzie kusić ale spróbuję w tym roku nie robić większych wycieczek do tamtego sadu. Mam dowozić giereczki, a nie zaspokajać swoje programistyczne ciągutki 😀