„Python“

Geri 3D Python žaidimų varikliai

Geri 3D Python žaidimų varikliai

Įvadas

Surasti 3D žaidimų variklių, sukurtų „Python“ ir su juo, pagrindą gali pasirodyti labai sunku. To priežastis yra ta, kad padidėjus sudėtingumui, „Python“ greitai susiduria su našumo problemomis. Greitas grafikos atvaizdavimas nėra tas, ką „Python“ daro geriausiai. Tačiau, kadangi „Python“ yra labai geras kuriant logiką ir yra gana populiarus, turite daug galimybių paleisti sistemas, parašytas C++.

Kad tai veiktų 3D žaidimų varikliuose, negalite padaryti visko, kaip paprastai darote „Python“. Dauguma rėmelių sukuria pakuotę savo C ++ bibliotekoms. Turėsite išsiaiškinti, kaip sukompiliuoti, kad „Python“ galėtų atšaukti šį paketą. Jie dokumentacijoje aprašo, kaip kompiliuoti naudojant „Python“ pakuotę.

Žaidimo stilius ir kalbos pasirinkimas

Prieš pradėdami apsvarstykite, ar jūsų žaidimas yra platformingo, pirmo asmens šaudyklės, ar dialogo pagrindas. Galbūt sukursite žaidimą, kuris iššaukia intelektinius įgūdžius. Tam nereikia didelio našumo grafikos. Esmė ta, kad prieš pradėdami turėsite žinoti, ko bandote pasiekti. Programavimui galite būti pripratę prie „Python“. Bet jei norite kurti daug efektų turinčius žaidimus, turėtumėte apsvarstyti kitas programavimo kalbas. Tai yra didžiulė pastanga išmokti naują kalbą, tačiau ji taip pat yra labai patenkinta, kai jau įveiksite tą pradinių kliūčių. Laikas, kai įprasta dokumentacija yra prasminga net iš pirmo žvilgsnio.

Įrišimai, apsvarstomos bibliotekos

Norėdami kurti žaidimus, turėsite sukurti grafiką, meniu ir garsą. Šiems atvejams tvarkyti yra kelios bibliotekos ir „Python“ susiejimai. Viena iš labiausiai paplitusių bibliotekų yra SDL2, kuri suteikia programuotojams tiesioginę prieigą prie vaizdo kadrų disko, garso išvesties, pelės ir klaviatūros. Be jų jūsų žaidime reikės naudoti įprastą tvarką, kuri kartais gali būti lėta. Pirmoji versija vis dar yra, tačiau SDL2 turi visas reikalingas programėles.

SFML2 vaidina panašų vaidmenį kaip ir dauguma daugialypės terpės funkcijų ir sujungia visas funkcijas. Priešingai, SDL2 yra daug mažesnių dalių, kurias reikia įvesti į kodą po vieną.

„Python“ jums reikės atitinkamai „PySDL2“ ir „PySFML2“ paketų.

PyOgre

„PyOgre“ dizaineriai parašė „Ogre“ karkasą C ++ formatu su „Python“ pakuote. Apvyniojimas yra įmontuotas įvyniojimas. Senąjį projektą vis dar galima rasti internete. Vadovavimasis pamokomis gali būti naudingas, tačiau būkite atsargūs, nes ne viskas internete bus teisinga. „Ogre“ turi daugybės pasaulio objektų klases, suteikdama jums sluoksnį ant „OpenGL“ ir „Direct3D“.

„Ogre“ dirba su scenomis ir gali sukurti visą grafiką, kurios gali prireikti jūsų žaidimui. „PyOgre“ moduliai veikia prieš „Ogre“ versiją v1.05. Po to yra kitų modulių. „Ogre“ programinėje įrangoje yra „Python“ scenarijai, skirti importuoti duomenis iš „Blender“ į „Ogre“. Tai leidžia sukurti „Blender“ išteklius savo žaidimui. Kiti eksportuotojai taip pat yra.

http: // wiki.ogre3d.org /

Allegro

„Allegro“ imasi visų sunkumų kuriant langus, priimant vartotojo įvestį, piešiant vaizdus ir grojant garsus - visas funkcijas, naudingas vaizdo žaidimams ir daugialypės terpės programavimui. „Allegro“ dizaineriai neteigia, kad ši programa yra žaidimų variklis, tačiau ji naudinga kuriant žaidimus.

Kadangi „Allegro“ buvo sukurta C ++, jums reikės sukurti pakuotę, kad galėtumėte naudoti šią programą „Python“. Šį veiksmą galite atlikti kompiliuodami iš šaltinio. Procesas sukuria klases faile, pavadintame „allegro“.py. Atlikę šį veiksmą, galite pasirinkti klases iš to failo, tačiau rekomenduojama perskaityti ir įprastą šios programos veikimo dokumentaciją. Tai gali apsunkinti procesą, tačiau išmokti C ++ taip pat yra nemalonu.

https: // github.com / liballeg / allegro5

„Armory 3D“ - „Blender“ pratęsimas

Šis paketas naudoja „Blender“ kaip kūrimo platformą ir „HAXE“ kaip programavimo kalbą. Taip, jums reikės pereiti prie „Haxe“, tačiau galite konvertuoti kai kurias esamas žaidimų logikas iš „Python“. „Armory3D“ veikia „Blender“ viduje kaip plėtinys, kuriame galite sukurti visus savo žaidimo išteklius.

Nors „Armory 3D“ neveikia „Python“, vis dėlto atidžiai apsvarstykite šią programą, nes su šiuo įrankiu galite pradėti labai greitai. https: // ginkluotė3d.org /

Urho3D

Šis paketas naudoja „Blender“ kaip kūrimo platformą, o HAXE - kaip programavimo kalbą. Vėlgi, turėsite pereiti prie „Haxe“, tačiau galite konvertuoti kai kurias esamas „Python“ žaidimų logikas. „Armory3D“ veikia „Blender“ viduje kaip plėtinys, kuriame galite sukurti visus savo žaidimo išteklius.

Nors „Urho3D“ neveikia „Python“, atidžiai apsvarstykite ir šią programą, nes su šiuo įrankiu galite pradėti labai greitai. https: // ginkluotė3d.org /

Ursina

„Ursina“ yra parašyta „Python“ ir pastatyta ant „Panda3D“. Šis įrankis sukurtas daugybei primityvių dalykų, tokių kaip kubas, rutulys ir kt., kad galėtumėte kuo greičiau pereiti prie paties žaidimo. „Panda3D“ atlieka gilų darbą, o „Ursina“ suteikia jums paruoštas programos funkcijas. Žaidėjų klasė suteikia galimybę užregistruoti paspaustus klavišus ir pelės judesius.

Dauguma funkcijų yra intuityviai naudojamos su aiškiais pavadinimais ir lengvai suprantamomis funkcijomis. Galėsite greitai pradėti savo žaidimą, jei naudosite šį žaidimo kūrimo įrankį. „Ursina“ taip pat turi įrankių, skirtų konvertuoti tiek „blend“, tiek „psd“ failus.

https: // github.com / pokepetter / ursina

„Blender“ žaidimų variklis (?)

Prieš 2 versiją.79, „Blender“ turėjo įmontuotą žaidimų variklį. Tačiau vėlesnėse versijose dizaineriai nusprendė pašalinti žaidimų variklį iš standartinės versijos ir sutelkti dėmesį į animacijas. Taigi, žmonės, dirbantys UPBGE, nusprendė sukurti savo plėtinį, kuris veiktų „Blender“ viduje. Todėl naudodami „Blender“ galite sukurti visą žaidimą. Kaip tai siejasi su „Python“ žaidimų kūrimu?

BPGE turi API, leidžiančią pasiekti visus duomenis, kuriuos sukūrėte dirbdami „Blender“. Norėdami pasiekti ir išbandyti API, galite naudoti „Blender“ konsolę. Tiesą sakant, taip galėtumėte parašyti visą programą, tačiau tai gali būti ne geriausias pasirinkimas jūsų poreikiams. Bent jau turėsite visus išteklius ir taip, kaip norite, nuo pat to momento, kai juos sukursite.

GODOT - „GDscript“, NĖRA „Python“

Jei norite parašyti žaidimą ir jums patiko „Python“, taip pat galite naudoti „GODOT“. Ši kalba yra labai panaši į „Python“, tik ji skirta žaidimams rašyti.

Išvada

Yra daugybė žaidimų rašymo „Python“ pagrindų. Jei norite kurti didelio našumo 3D žaidimus, turėtumėte rimtai apsvarstyti galimybę mokytis kitų tų žaidimų kalbų. Įsitikinkite, kad pasirinkę programą galite sekti savo originalią žaidimo idėją. Jei reikia, pritaikykite savo programavimo kalbą savo asmeninei vizijai.

Kaip pakeisti pelės ir jutiklinių plokščių slinkimo kryptį sistemoje „Windows 10“
Pelė ir Jutiklinė dalisTai ne tik palengvina skaičiavimus, bet ir efektyvesnį bei mažiau laiko reikalaujantį. Mes neįsivaizduojame gyvenimo be šių pri...
Kaip pakeisti pelės žymeklio ir žymeklio dydį, spalvą ir schemą sistemoje „Windows 10“
„Windows 10“ pelės žymeklis ir žymeklis yra labai svarbūs operacinės sistemos aspektai. Tai galima pasakyti ir apie kitas operacines sistemas, taigi, ...
Nemokami ir atvirojo kodo žaidimų varikliai, skirti kurti „Linux“ žaidimus
Šiame straipsnyje bus pateiktas nemokamų ir atvirojo kodo žaidimų variklių, kurie gali būti naudojami kuriant 2D ir 3D žaidimus „Linux“, sąrašas. Toki...