Python

Labas 3D Python spēļu dzinēji

Labas 3D Python spēļu dzinēji

Ievads

Atrast pamatu 3D spēļu dzinējiem, kas izgatavoti Python un ar to, var izrādīties ļoti grūti. Iemesls tam ir tāds, ka, palielinoties sarežģītībai, Python ātri saskaras ar veiktspējas problēmām. Ātru grafikas renderēšanu Python nedara vislabāk. Tomēr, tā kā Python ir ļoti labs loģikas izveidei un ir diezgan populārs, jums ir daudz iespēju palaist C++.

Lai tas darbotos 3D spēļu dzinējiem, jūs nevarat izdarīt visu, kā parasti varētu darīt Python. Lielākā daļa ietvaru izveido iesaiņojumu savām C ++ bibliotēkām. Jums būs jāizdomā, kā kompilēt, lai Python varētu atsaukt šo iesaiņojumu. Viņi dokumentācijā norāda, kā kompilēt ar Python iesaiņotāju.

Spēles stils un valodas izvēle

Apsveriet, pirms sākat, vai jūsu spēle ir platformera, pirmās personas šāvēja vai dialoglodziņa pamatā. Varbūt jūs izveidosiet spēli, kas izaicina intelektuālās prasmes. Tam nav nepieciešama augstas veiktspējas grafika. Lieta ir tāda, ka pirms darba uzsākšanas jums būs jāzina, ko jūs mēģināt sasniegt. Programmēšanai jūs varat būt pieradis pie Python. Bet, ja jūs vēlaties izveidot spēles ar daudziem efektiem, jums vajadzētu apsvērt citas programmēšanas valodas. Tas ir liels darbs, lai iemācītos jaunu valodu, taču tas ir arī ļoti gandarīts, kad esat nokārtojis šo sākotnējo šķērsli. Laiks, kad parastajai dokumentācijai ir jēga, pat ātri skatoties.

Iesiešana, bibliotēkas, kas jāņem vērā

Lai izveidotu spēles, jums būs jāizveido grafika, izvēlnes un audio. Šajos gadījumos ir vairākas bibliotēkas un Python sasaistes. Viena no visizplatītākajām no šīm bibliotēkām ir SDL2, kas dod programmētājiem tiešu piekļuvi video kadru buferim, audio izejai, pelei un tastatūrai. Bez šiem jūsu spēlē būs jāizmanto parastā kārtība, kas dažreiz var būt lēna. Pirmā versija joprojām ir pieejama, taču SDL2 ir visi nepieciešamie sīkrīki.

SFML2 spēlē līdzīgu lomu kā lielākajai daļai multivides funkciju un apvieno visas funkcijas. Turpretī SDL2 satur daudz mazāku gabalu, kas jums jāpievieno savam kodam pa vienam.

Lai izmantotu Python, jums būs nepieciešamas attiecīgi PySDL2 un PySFML2 paketes.

PyOgre

PyOgre dizaineri rakstīja Ogres ietvaru C ++ ar iesaiņojumu Python. Iesaiņojums ir iebūvēts iesaiņojums. Vecais projekts joprojām ir pieejams tīmeklī. Apmācību ievērošana var būt noderīga, taču esiet piesardzīgs, jo ne viss tiešsaistē pieejamais būs pareizs. Ogrē ir klases daudziem pasaules objektiem, dodot jums slāni virs OpenGL un Direct3D.

Ogre strādā ar ainām un var izveidot visu grafiku, kas var būt nepieciešama jūsu spēlei. PyOgre moduļi darbojas versijās pirms Ogre versijas v1.05. Pēc tam ir pieejami citi moduļi. Programmā Ogre ir iekļauti Python skripti datu importēšanai no Blender uz Ogri. Tas ļauj izveidot Blender savai spēlei savus resursus. Pieejami arī citi eksportētāji.

http: // wiki.ogre3d.org /

Allegro

Allegro pārvar visu smago logu izveides procesu, pieņemot lietotāju ievades, zīmējot attēlus un atskaņojot skaņas - visas funkcijas, kas noder videospēļu un multivides programmēšanai. Allegro dizaineri neapgalvo, ka šī programma ir spēļu dzinējs, taču tā ir noderīga spēļu veidošanai.

Tā kā Allegro tika uzbūvēts C ++, jums būs jāizveido iesaiņotājs, lai šo programmu izmantotu Python. Šo darbību varat veikt, apkopojot no avota. Process izveido klases failā ar nosaukumu allegro.py. Kad esat pabeidzis šo darbību, jūs varat izvēlēties klases no šī faila, taču ieteicams izlasīt arī regulāro dokumentāciju par šīs programmas darbību. Tas var sarežģīt procesu, taču arī mācīšanās C ++ ir nepatīkams darbs.

https: // github.com / liballeg / allegro5

Armory 3D - Blendera pagarinājums

Šajā paketē kā izstrādes platforma tiek izmantots Blender un kā programmēšanas valoda HAXE. Jā, jums būs jāpārslēdzas uz Haxe, bet jūs varat pārveidot kādu esošo spēļu loģiku no Python. Armory3D darbojas Blender iekšpusē kā paplašinājums, kur jūs varat izveidot visus savus resursus spēlei.

Lai gan Armory 3D nedarbojas Python, tomēr rūpīgi apsveriet šo programmu, jo ar šo rīku varat sākt ļoti ātri. https: // armory3d.org /

Urho3D

Šajā paketē kā izstrādes platforma tiek izmantots Blender un kā programmēšanas valoda tiek izmantota HAXE. Atkal jums būs jāpārslēdzas uz Haxe, taču jūs varat pārveidot kādu no esošajām spēļu loģikām no Python. Armory3D darbojas Blender iekšpusē kā paplašinājums, kur jūs varat izveidot visus savus resursus spēlei.

Lai arī Urho3D nedarbojas Python, rūpīgi apsveriet arī šo programmu, jo ar šo rīku varat sākt ļoti ātri. https: // armory3d.org /

Ursina

Ursina ir rakstīta Python valodā un veidota uz Panda3D. Šis rīks ir paredzēts, lai nodrošinātu daudzus primitīvus, piemēram, kubu, sfēru utt., lai jūs varētu pēc iespējas ātrāk pāriet uz pašu spēli. Panda3D veic dziļu darbu, un Ursina sniedz jums gatavas programmas funkcijas. Spēlētāju klase dod iespēju reģistrēt nospiestos taustiņus un peles kustības.

Lielākā daļa funkciju ir intuitīvi lietojamas ar skaidriem nosaukumiem un viegli saprotamām funkcijām. Jūs varēsiet ātri sākt darbu ar savu spēli, ja izmantosit šo spēles izveides rīku. Ursinai ir arī rīki gan blend, gan psd failu konvertēšanai.

https: // github.com / pokepetter / ursina

Blender Game Engine (?)

Pirms 2. versijas.79, Blenderam bija iebūvēts spēļu dzinējs. Tomēr nākamajās versijās dizaineri izvēlējās noņemt spēles dzinēju no standarta uzbūves un koncentrēties uz animācijām. Tātad UPBGE cilvēki nolēma izveidot savu paplašinājumu, kas darbojas Blender iekšpusē. Tādēļ jūs varat izmantot Blender, lai izveidotu visu spēli. Kā tas saistās ar Python spēļu izstrādi?

BPGE ir API, kas ļauj piekļūt visiem datiem, kurus izveidojat, strādājot Blender. Lai piekļūtu API un pārbaudītu to, varat izmantot Blender iekšējo konsoli. Patiesībā jūs varētu uzrakstīt visu programmu šādā veidā, taču tā var nebūt labākā izvēle jūsu vajadzībām. Vismaz jums būs gatavi visi resursi un veids, kā tos vēlaties, no brīža, kad tos izveidojat.

GODOT - GDscript, NAV Python

Ja vēlaties rakstīt spēli un jums ir ērti ar Python, varat izmantot arī GODOT. Šī valoda ir ļoti līdzīga Python, tikai tā ir īpaši paredzēta spēļu rakstīšanai.

Secinājums

Spēļu rakstīšanai Python ir daudz sistēmu. Ja jūs vēlaties izveidot augstas veiktspējas 3D spēles, jums nopietni jāapsver citu valodu apguve šīm spēlēm. Pārliecinieties, ka jūsu izvēlētā programma ļauj jums sekot jūsu sākotnējai spēles idejai. Ja nepieciešams, pielāgojiet savu programmēšanas valodu personiskajam redzējumam.

Atdariniet peles klikšķus, virzot kursoru, izmantojot operētājsistēmā Windows 10 bezklikšķu peli
Peles vai tastatūras lietošana nepareizā pozā, ja to lieto pārmērīgi daudz, var izraisīt daudz veselības problēmu, tostarp spriedzi, karpālā kanāla si...
Pievienojiet peles žestus operētājsistēmai Windows 10, izmantojot šos bezmaksas rīkus
Pēdējos gados datori un operētājsistēmas ir ievērojami attīstījušās. Bija laiks, kad lietotājiem bija jāizmanto komandas, lai pārvietotos pa failu pār...
Kontrolējiet un pārvaldiet peles kustību starp vairākiem monitoriem sistēmā Windows 10
Dual Display Mouse Manager ļauj kontrolēt un konfigurēt peles kustību starp vairākiem monitoriem, palēninot tās kustību robežas tuvumā. Windows 10/8 ļ...