Koji 2D Game Engine koristiti za sljedeću igru

Prije nekoliko tjedana objavio sam o svom iskustvu u pokušaju izrade prototipa u mnoštvu različitih 2D mehanizama / okvira igara kako bih naučio zbog čega ih krckaju.

Ako kupujete motor za sljedeću 2D igru, ovaj će članak pružiti neke stvari koje biste trebali uzeti u obzir, a koje bi mogle pomoći u vašem procesu razlučivanja.

Imajte na umu da ne pokušavam pokriti sve mehanizme za 2D igre vani; niti postavljam jedan motor ili okvir iznad drugog. Ove su preporuke iz mog osobnog iskustva korištenja različitih motora i okvira za izradu prototipova.

A ako biste radije gledali nego čitali, kreirao sam video verziju ovog posta (26-minutno gledanje):

Reagirati

Na prvi pogled možda mislite: "React je prednji okvir za izradu interaktivnih web stranica. To nije pokretač igara!" I uglavnom biste bili u pravu.

Reagirati ne pruža podršku za razvoj igre osnove, kao što su, na primjer, 2D fizike, ali to ne ručicu stanje vrlo dobro. Ako ste već programer za JavaScript i spremni ste upariti React s nečim poput boardgame.io kako biste napravili jednostavnu 2D igru, potencijalno biste mogli prilično brzo pokrenuti prototip.

Za sve ostale vrste 2D igara morat ćete potražiti drugdje.

Jedinstvo

Jedinstvo se učinilo sveprisutnim u prostorima za razvoj 2D i 3D igara. Pozicionirao bih ga kao izvrstan pokretač 3D igara, kao i upotrebljiv 2D.

Uređivač Unity prilično je složen, s puno ugniježđenih izbornika kojima je potrebno neko vrijeme da se ovijete (pogledajte ovaj članak za obilazak njegovih 2D značajki). Ako još nemate pozadinu u C #, koju Unity koristi za skriptiranje, morat ćete je razmotriti prije učenja Unityja, jer će to olakšati vašu cjelokupnu krivulju učenja.

Unity također puno stvari radi na "teži način" što se tiče razvoja 2D igara, što se ne čini urođenim u usporedbi s drugim motorima za igre. Stvaranje svijeta 2D igara u Unityju, na primjer, čini vam se da 2D ravninu potiskujete u veliki 3D prostor, a stvari poput animacije i savršenstva piksela nezgrapnije su nego kod ostalih 2D specifičnih motora.

Možete stvoriti bilo koju vrstu 2D igre s Unityjem ako ste voljni hrvati se s uređivačem i temeljnim 3D idiosinkrazijama. Ima opsežnu podršku zajednice i vidjet ćete da je rad s C # oduševljen. Uz to, Unity's Asset Store ima sve vrste umjetnina i predloške koje možete preuzeti i kupiti, ali kupac se pripazite: možda ćete potrošiti toliko vremena na prepisivanje tuđeg koda kako bi odgovarao vašem projektu, kao što biste započeli ispočetka.

Općenito je jedinstvo besplatno, ali cijene postaju složenije ako želite koristiti sve što nudi (za više detalja pogledajte ovu stranicu).

Godot

Godot je besplatni i otvoreni izvor 2D i 3D mehanizma za igre koji podržava GDScript, C #, pa čak i C ++ i Python ako ste spremni napraviti puno dizanja kako bi ih natjerali da rade. Podržava tijek rada u obliku čvora i izuzetno je lagan.

Ako ste a) voljni ulagati u učenje GDScript-a ili b) već ste super u C #, C ++ ili Pythonu, vjerojatno će vam biti dobro u Godotu, pogotovo ako volite raditi s softverom otvorenog koda. Ako ne, lako ćete se isfrustrirati jer nema ni približno toliko podrške za C # ili druge jezike koliko za GDScript. Ipak, Godot je ugodan motor s kojim možete raditi, i premda možda nema isti pedigre i podršku zajednice kao nešto poput Unity, ako ste samo pokretač, možda ćete se osjećati dobro kao kod kuće.

Konstruiraj 3

Ako samo želite izrađivati ​​2D igre i ne brinete se za programski jezik ili pretplatu, naći ćete Construct 3 kako biste imali sve što je potrebno za pokretanje demonstracije i to brzo. Sav će se vaš posao obavljati u pregledniku, koristeći alate za povlačenje i ispuštanje (i prilagođenu JavaScript podršku ako vam je potrebna).

Međutim, nemojte očekivati ​​da ćete imati značajno produktivno iskustvo s Constructom 3 besplatno. Postoji jednostavna demonstracija koju možete isprobati, ali dojmljiv razvoj igara s Constructom 3 zaključan je iza platnog zida i pretplate.

Game Maker Studio 2

Game Maker Studio 2 ima user-friendly uređivač koji podržava zaštićeni jezik nazvan, na odgovarajući način, Game Maker Language (GML), zajedno s vizualnim skriptiranjem. Također ima puno vodiča, veliku podršku zajednice i trgovinu imovinom (koja dolazi s istim upozorenjima kao i Unity, gore).

Općeniti tijek rada Game Maker Studija 2 i radnje poput animiranja spriteova, postavljanja vašeg svijeta igre itd., Izravni su i intuitivni. GML možda neće biti vaša šalica čaja ako potječete iz drugog, šire korištenog programskog jezika, i ne bih ga preporučio kao prvo uvođenje u učenje kodiranja. Zapošljava neke od osnovnih koncepata programiranja, ali ne i važne detalje poput kodiranja najboljih praksi ili načina pisanja čistog koda.

Uz to, Game Maker Studio 2 možete isprobati s besplatnom probnom verzijom od 30 dana, ali morat ćete platiti da biste ga nastavili koristiti i nakon tog vremena.

Phaser 3

Ako želite sve kodirati i pritom naučiti puno o JavaScript ekosustavu, pogledajte Phaser 3 (ili pričekajte Phaser 4 koji je na putu).

Phaser je lagan i moćan JavaScript okvir za izradu 2D igara. Dok je Phaser 2 bio izuzetno dobro dokumentiran i imao je izvrsnu podršku zajednice, Phaser 3 je upravo suprotno. Postoji dobra službena dokumentacija i gomila primjera (bez puno konteksta oko njih, to se mora reći), i užasno mala količina vodiča.

Očekujte da sve napravite sami, ali ako tražite podršku za ES6 ili TypeScript ili ako zaista želite usavršiti svoje vještine kao JavaScript programer, moći ćete daleko napredovati s Phaserom 3.

U interesu poštenosti, trebao bih spomenuti još dva motora za 2D igre koji su mi se preporučivali otkad sam počeo pisati na tu temu: LÖVE 2D koji koristi Lua i MonoGame koji podržava C #. Nisam koristio nijedno od njih (ili druge, poput PyGame) i ne mogu govoriti o njihovoj korisnosti, ali možda ih vrijedi provjeriti.

Javite mi koji se 2D motor igara zaustavljate i zašto!

Ako vam se svidio ovaj članak, razmislite o provjeri mojih igara i knjiga, pretplati se na moj YouTube kanal ili se pridružite Entromancy Discord .

MS Farzan, dr. Sc. napisao je i radio za istaknute tvrtke za video igre i uredničke web stranice kao što su Electronic Arts, Perfect World Entertainment, Modus Games i MMORPG.com, a služio je i kao upravitelj zajednice za igre poput Dungeons & Dragons Neverwinter i Mass Effect: Andromeda . Kreativni je direktor i vodeći dizajner igara Entromancy: Cyberpunk Fantasy RPG i autor knjige The Nightpath Trilogy . Pronađite MS Farzan na Twitteru @sominator.