Parimad Pythoni mängumootorid

Best Python Game Engines

Arvutimängude kirjutamiseks (meie, vanad, nimetame neid videomängudeks!), Võite mõelda, kust alustada? Korraliku aja jooksul mängitava mängu tegemiseks, õppides samal ajal ka programmi toimimist, vajate mänguraamistikku. Raamistik loob palju konstruktsioone, mida vajate oma mängude toimimiseks. Sa ei taha neid ise välja mõelda. Nende hulka kuuluvad, kuidas ekraanile midagi joonistada, kokkupõrget tuvastada ja skoori hoida.

Isegi asjade ekraanil liigutamine on keeruline ilma aluseks oleva raamatukoguta. Sellest artiklist saate teada, millised paketid mida teevad ja kui lihtne on oma mänguga alustada.



Miks just mängumootorid?

Kui hakkate oma mängu programmeerima, hindate kõigi põhitõdede, näiteks klasside ja funktsioonide valmisolekut. Nii saate alustada ja keskenduda oma projekti üksikasjadele. Võite küsida, mis vahe on raamistikul ja mängumootoril. Kõrgetasemeliselt rakendab mängumootor kõiki kiireid toiminguid - enamasti graafikat. Raamistik rakendab loogikat, asju, mida soovite oma mängu lisada - lugu, kui soovite.



PyGame

See on Pythoni moodulite komplekt. See moodulite komplekt on teadlikult väike, et oleks lihtne alustada. Samuti on disainerid otsustanud raamatukogus luua palju väikseid tükke. Tänu sellisele kujundusele saate raamatukogu osi vahetada, kui teie vajadused muutuvad. Mikser on näiteks eraldi tarkvara; nii et kui olete oma programmeerimises rohkem arenenud, saate üle minna mõnele teisele tarkvarale. Ka graafika renderdusmasin on eraldi jne. Tegelikult võite PyGame'i kasutada mängu prototüübi tegemiseks ja ühe osa korraga üleminekuks täiustatud tarkvarale. Seda öeldes on PyGame'il juba oma nime all palju mänge.



PyGame'iga alustamine on lihtne, kuid saate seda veelgi lihtsamaks muuta. Pakett pgzero on mõeldud õpetajatele programmeerimise näitamiseks. Paketiga saate hõlpsalt kirjutada oma mängu paljud osad ilma katlaplaadi koodita.

Pettunud

Kivy saate installida ka Pythoni moodulitena. See on parim viis Pythoni kasutamiseks mis tahes raamistiku jaoks. Kivyl on rohkem funktsioone kui PyGame'il ja see loob rohkem poleeritud tulemusi. Alustuseks on Kivy kodulehel suurepärased õpetused. Üks Kyvi tugevusi on nende Kv disainikeel. See disainikeel muudab menüüde, mänguplaani ja kogu graafika loomise lihtsaks. Tänu sellele süsteemile ei pea te lihtsaima graafika jaoks pilte looma.

Oma lehel kirjeldavad nad ka üksikasjalikult, kuidas alustada Kivy kasutamist koos PyCharmiga. Samuti on laiendusi Androidi ja iOS -i juurutamiseks. See on natuke lihtsam kui PyGame'i kasutamine.



pyglet-3D

Esmapilgul tundub pyglet väike ja piiratud, kuid lihtsuse all peitub sügavus. See programm toetab OpenGL -i, ilma sõltuvusteta, kuigi saate meediumivõimalusi laiendada, helistades ffmpeg. Pyglet tegeleb ka kahe monitoriga seadistustega. Saadaval on kolmanda osapoole teeke, mis laiendavad süsteemi. Nende teekide kohta peaksite teadma kõigi nende lisatavate funktsioonide kohta. Samuti võite soovida kasutada glooey, et luua oma rakendusele ühtne graafiline kasutajaliides. Kasutage renderdamiseks PyShadersit ja 3D stseenide käsitlemiseks Ratcave'i. Kui alustate pyglet3d -ga, on hea teada, et cocos2d kasutab pyglet. See programm loob tervikliku raamistiku mängurakendustele ja muudele GUI-põhistele rakendustele.

Panda3D

See ei ole pakett, mida saate kasutada programmeerimise õppimiseks või mängu hõlpsaks tegemiseks. Siit saate professionaalse tööriista animatsioonide ja mängude loomiseks. Toimivuse tagamiseks on Panda3D kirjutatud C ++ keeles. Suurem osa kasutusjuhendist osutab siiski Pythoni kasutajatele. Kuigi Panda3D idee on see, et mänguarendajad saaksid oma mänge teha Pythoni abil, saate kasutada ka C ++.

Panda3d on väga võimekas süsteem ja sellel on isegi oma SDK. Kui olete valmis pingutama ja teate juba mõnda Pythoni programmeerimist, on see süsteem juba kaugelt üle selle, mida soovite luua. Lõppude lõpuks kasutab Disney seda oma kommertstoodete jaoks!

Ren’Py

Tõenäoliselt lugesite seda postitust seetõttu, et soovite mänge luua. See pakett on mõeldud visuaalsete romaanide loomiseks. Kui te pole oma projektiideed veel läbi mõelnud, siis nüüd on õige aeg. Võib-olla soovite teha lugupõhise mängu, mis nõuab jutustamisvormingut. Selleks on Ren’Py.

Ren’Py's on juba palju kommertsmänge kirjutatud ja neid tuleb veel. Samuti saate luua visuaalse romaani ja muuta sellest mängu. Ren’Py abil saate kogu teksti luua enamasti tekstiredaktorite abil.

Ursina Panda täiustamiseks

Kui leiate, et Pandal on mingil moel puudus, proovige kasutada Ursinat. See on ühe arendaja projekt, nii et ärge sõltuge sellest suuremate projektide paketist, kui te pole valmis oma panust andma. Seda öeldes on Ursina Panda3D täiustus. Projekt on samuti väga aktiivne ja sellesse on panustanud mitu inimest.

Selle raamistikuga mängu tegemine on väga lihtne ja seda tehakse väga väheste koodiridadega. Kui tunnete, et teie projekt võib laieneda, ärge muretsege. See programm on ehitatud Pandale, nii et kui teie vajadused suurenevad, saate kasutada mis tahes Panda3D funktsioone. See annab kiire väljavõtmise koos väljakujunenud süsteemi võimsusega.

Järeldus

Uue mänguarendusraamistiku õppimise ja kasutamise alustamiseks valige mõned õpetused ja vaadake need läbi. Ärge valige liiga palju, lihtsalt raiskate oma aega. Alustage mis tahes lihtsat projekti, otsustage väga vähe funktsioone ja proovige neid koos teha. Selleks ajaks, kui olete ühe projekti lõpetanud, on teil järgmise projekti jaoks tuhat ideed. Teie mängumootori valik pole nii oluline, kui te oma valikut piisavalt varakult ümber hindate. Selle eesmärk on muuta üleminek paremale vähem keeruliseks ja tõhusamaks.