Najbolji motori za igre Python

Best Python Game Engines

Za pisanje računalnih igara (nas stari ih nazivamo videoigrama!), Možda se pitate: Gdje da počnem? Da biste napravili igru ​​koja se može igrati u pristojnom vremenskom okviru i pritom naučiti kako program radi, trebat će vam okvir igre. Okvir stvara mnoge konstrukte koji će vam biti potrebni za funkcioniranje igara. Ne želite sami to izmisliti. To uključuje kako nacrtati bilo što na ekranu, kako otkriti sudar i kako zadržati rezultat.

Čak je i kretanje stvari na ekranu složeno bez neke temeljne biblioteke. U ovom ćete članku naučiti o tome koji paketi rade što je i kako je lako započeti s igrom.



Zašto Game Engine?

Kad počnete programirati svoju igru, cijenit ćete moć pripreme svih osnova, poput klasa i funkcija. Na ovaj način možete započeti i usredotočiti se na pojedinosti svog projekta. Možda se pitate koja je razlika između frameworka i engine -a za igre. Na visokoj razini, engine za igre provodi sve brze operacije - uglavnom grafiku. Okvir implementira logiku, stvari koje želite staviti u svoju igru ​​- priču, ako želite.



PyGame

Ovo je skup Python modula. Ovaj skup modula namjerno je mali kako bi se olakšao početak rada. Dizajneri su također odlučili stvoriti mnoge male komade u knjižnici. Zahvaljujući ovom dizajnu, možete zamijeniti dijelove knjižnice kad god se vaše potrebe promijene. Na primjer, mikser je zaseban softver; pa ako napredujete u programiranju, možete se prebaciti na neki drugi softver. Stroj za iscrtavanje grafike također je zaseban itd. Zapravo, možete koristiti PyGame za izradu prototipa igre i prijelaz po komad na napredniji softver. Uz to, PyGame već ima veliki broj igara pod svojim imenom.



Početak rada s PyGameom je jednostavan, ali ga možete učiniti još lakšim. Paket pgzero napravljen je za učitelje koji prikazuju programiranje. Uz paket možete jednostavno napisati mnoge dijelove svoje igre bez programskog koda.

Razočaran

Kivy možete instalirati i kao Python module. Ovo je najbolji način korištenja Pythona za bilo koji okvir. Kivy ima više značajki od PyGame -a i stvara sjajnije rezultate. Za početak, Kivy ima odlične vodiče na svojoj početnoj stranici. Jedna snaga Kyvija je njihov jezik Kv dizajna. Ovaj jezik dizajna olakšava stvaranje izbornika, plana igre i sve grafike. Zahvaljujući ovom sustavu, ne morate stvarati slike za najjednostavniju grafiku.

Na svojoj stranici također opisuju kako započeti koristiti Kivy s PyCharmom. Postoje i proširenja za implementaciju na Android i iOS. Ovo je malo lakše nego korištenje PyGame -a.



pyglet-3D

Na prvi pogled, pyglet se čini malim i ograničenim, ali dubina se krije pod jednostavnošću. Ovaj program podržava OpenGL, iako nema ovisnosti, iako možete proširiti mogućnosti medija pozivom na ffmpeg. Pyglet također upravlja postavkama s dva monitora. Dostupne su knjižnice trećih strana koje proširuju sustav. Trebali biste znati o tim knjižnicama za sve značajke koje dodaju. Možda ćete također htjeti upotrijebiti glooey za izradu dosljednog GUI -ja za svoju aplikaciju. Koristite PyShaders za iscrtavanje i Ratcave za rukovanje 3D scenama. Ako počnete s pyglet3d, dobro je znati da cocos2d koristi pyglet. Ovaj program gradi opsežan okvir za aplikacije za igre i druge aplikacije temeljene na grafičkom sučelju.

Panda3D

Ovo nije paket koji možete koristiti za učenje programiranja ili jednostavnu izradu igre. Ovdje dobivate profesionalni alat za stvaranje animacija i igara. Panda3D je napisan na C ++ radi zaštite performansi. Većina priručnika, međutim, upućuje na korisnike Pythona. Iako je ideja Panda3D -a da programeri igara naprave svoje igre pomoću Pythona, možete koristiti i C ++.

Panda3d je vrlo sposoban sustav i čak dolazi sa vlastitim SDK -om. Ako ste spremni uložiti napor, a već znate neko programiranje na Pythonu, ovaj sustav već je daleko iznad svega što želite stvoriti. Uostalom, Disney ga koristi za svoje komercijalne proizvode!

Ren’Py

Vjerojatno ste pročitali ovaj post jer želite stvarati igre. Ovaj paket je za stvaranje vizualnih romana. Ako još niste dobro razmislili o ideji projekta, sada je trenutak. Možda biste htjeli napraviti igru ​​temeljenu na pričama koja zahtijeva format pripovijedanja. Ovome služi Ren’Py.

U Ren’Pyu je već napisano mnogo komercijalnih igara i bit će ih još. Također možete stvoriti vizualni roman i učiniti ga igrom. Uz Ren’Py možete stvoriti cijelu stvar koristeći uglavnom uređivače teksta.

Ursina da poboljša Pandu

Ako smatrate da Pandi na neki način nedostaje, pokušajte upotrijebiti Ursinu. Ovo je jedan razvojni projekt, stoga nemojte ovisiti o ovom paketu za veće projekte, osim ako niste voljni pridonijeti. Rekavši to, Ursina je poboljšanje Panda3D -a. Projekt je također vrlo aktivan i nekoliko je ljudi koji su mu pridonijeli.

Izrada igre s ovim okvirom vrlo je jednostavna i izvedena u vrlo malo redova koda. Ako mislite da bi se vaš projekt mogao proširiti, ne brinite. Ovaj je program izgrađen na Pandi, pa kad vam se povećaju potrebe, možete koristiti bilo koju od funkcija Panda3D. To vam omogućuje brzo uzlijetanje uz snagu uspostavljenog sustava.

Zaključak

Za početak učenja i korištenja novog okvira za razvoj igara, odaberite nekoliko vodiča i prođite kroz njih. Ne birajte previše, samo ćete gubiti vrijeme. Pokrenite bilo koji jednostavan projekt, odlučite se za vrlo malo značajki i pokušajte ih natjerati da rade zajedno. Kad završite jedan projekt, imat ćete tisuću ideja za sljedeći. Vaš izbor pokretača igara nije toliko bitan, sve dok svoj izbor preispitujete dovoljno rano. Time bi konačni prijelaz na bolji bio manje složen i učinkovitiji.