Beste Python -spillmotorer

Beste Python -spillmotorer
Å skrive dataspill (oss oldies kaller dem videospill!), lurer du kanskje på: "Hvor begynner jeg?”For å lage et spillbart spill i en anstendig tidsramme mens du også lærer hvordan programmet fungerer, trenger du et spillrammeverk. Rammeverket skaper mange av konstruksjonene du trenger for at spillene dine skal fungere. Du vil ikke finne opp disse selv. Disse inkluderer hvordan du tegner hva som helst til skjerm, hvordan du kan oppdage en kollisjon og hvordan du kan beholde poengsummen.

Selv å få ting til å bevege seg på skjermen er sammensatt uten noe underliggende bibliotek. I denne artikkelen vil du lære om hvilke pakker som gjør hva og hvor enkelt det er å komme i gang med spillet ditt.

Hvorfor spillmotorer?

Når du begynner å programmere spillet ditt, vil du sette pris på kraften i å ha alle de grunnleggende klare, for eksempel klasser og funksjoner. På denne måten kan du komme i gang og fokusere på detaljene i prosjektet ditt. Du lurer kanskje på hva forskjellen er mellom et rammeverk og en spillmotor. På et høyt nivå implementerer spillmotoren alle raske operasjoner - for det meste grafikk. Rammeverket implementerer logikken, de tingene du vil legge i spillet ditt - historien, hvis du vil.

Pygame

Dette er et sett med Python -moduler. Dette settet med moduler er bevisst lite for å gjøre det enkelt å komme i gang. Designerne har også bestemt seg for å lage mange små stykker i biblioteket. Takket være dette designet, kan du bytte ut deler av biblioteket når dine behov endres. Mikseren er for eksempel et eget programvare; Så hvis du blir mer avansert i programmeringen din, kan du bytte til et annet programvare. Grafisk gjengivelsesmaskin er også separat, og så videre. Faktisk kan du bruke Pygame til å prototype et spill og overføre ett stykke om gangen til mer avansert programvare. Når det er sagt, har Pygame et stort antall spill under navnet allerede.

Å komme i gang med Pygame er enkelt, men du kan gjøre det enda enklere. PGZero -pakken er laget for lærere å vise programmering. Med pakken kan du enkelt skrive mange deler av spillet ditt uten kjeleplate -kode.

Kivy

Du kan installere Kivy som Python -moduler også. Dette er den beste måten å bruke Python på alle rammer. Kivy har flere funksjoner enn Pygame og skaper mer polerte resultater. For å komme i gang har Kivy gode opplæringsprogrammer rett på hjemmesiden. En styrke OV KYVI er deres KV -designspråk. Dette designspråket gjør det enkelt å lage menyer, spillplan og all grafikk. Takket være dette systemet trenger du ikke lage bilder for den enkleste grafikken.

På siden deres beskriver de også hvordan du kommer i gang med Kivy med Pycharm. Det er også utvidelser for distribusjon til Android og iOS. Dette er litt enklere enn å bruke pygame.

Pyglet-3D

Ved første øyekast virker Pyglet liten og begrenset, men det er dybde som gjemmer seg under enkelheten. Dette programmet støtter OpenGL, mens du ikke har noen avhengigheter, selv om du kan utvide mediefunksjonene ved å ringe FFMPEG. Pyglet håndterer også oppsett med dobbelt overvåking. Det er tredjepartsbiblioteker tilgjengelig som utvider systemet. Du bør vite om disse bibliotekene for alle funksjonene de legger til. Det kan også være lurt å bruke Glooey til å lage en jevn GUI for søknaden din. Bruk Pyshaders for gjengivelse og Ratcave for å håndtere 3D -scener. Hvis du starter med Pyglet3D, er det godt å vite at COCOS2D bruker Pyglet. Dette programmet bygger et omfattende rammeverk for spillapper og andre GUI-baserte applikasjoner.

Panda3d

Dette er ikke en pakke du kan bruke til å lære programmering eller for å lage et spill enkelt. Det du får her er et profesjonelt verktøy for å lage animasjoner og spill. PANDA3D er skrevet i C ++ for å ivareta ytelsen. Det meste av manualen peker imidlertid på Python -brukere. Mens ideen bak Panda3D er for spillutviklere å lage spillene sine ved hjelp av Python, kan du også bruke C++.

Panda3D er et veldig dyktig system og kommer til og med med sin egen SDK. Hvis du er villig til å sette inn innsatsen, og du allerede kjenner litt Python -programmering, er dette systemet allerede langt utover alt du vil opprette. Tross alt bruker Disney det til sine kommersielle produkter!

Ren'py

Du har sannsynligvis lest dette innlegget fordi du vil lage spill. Denne pakken er for å lage visuelle romaner. Hvis du ikke har tenkt gjennom prosjektideen din ennå, er det nå tid. Det kan være lurt å lage et historiebasert spill som krever et fortellerformat. Dette er hva Ren'Py er for.

Det er allerede mange kommersielle spill skrevet i Ren'Py, og det vil være mer som kommer. Du kan også lage en visuell roman og gjøre den til et spill. Med Ren'py kan du opprette hele saken ved å bruke for det meste tekstredaktører.

Ursina for å forbedre Panda

Hvis du finner Panda som mangler på noen måte, kan du prøve å bruke Ursina. Dette er et enkelt utviklerprosjekt, så ikke avhengig av denne pakken for større prosjekter, med mindre du er villig til å bidra. Når det er sagt, er Ursina en forbedring for Panda3D. Prosjektet er også veldig aktivt, og det er flere mennesker som bidro til det.

Å lage et spill med dette rammeverket er veldig enkelt og gjort i veldig få kodelinjer. Hvis du føler at prosjektet ditt kan utvides, må du ikke bekymre deg. Dette programmet er bygget på Panda, så når behovene dine øker, kan du bruke noen av PANDA3D -funksjonene. Dette gir deg rask start sammen med kraften til et etablert system.

Konklusjon

For å begynne å lære og bruke et nytt spillutviklingsramme, velg noen få opplæringer og kjør gjennom dem. Ikke velg for mange, du vil bare kaste bort tiden din. Start et enkelt prosjekt, bestem deg for veldig få funksjoner, og prøv å få dem til å jobbe sammen. Når du er ferdig med ett prosjekt, vil du ha tusen ideer til det neste. Valget av spillmotor er ikke så viktig, så lenge du vurderer valget ditt tidlig nok. Dette for å gjøre den eventuelle overgangen til en bedre mindre kompleks og mer effektiv.