Python

Beste Python-game-engines

Beste Python-game-engines
Om computerspelletjes te schrijven (wij oudjes noemen ze videospelletjes)!), vraag je je misschien af: “Waar moet ik beginnen??” Om een ​​speelbare game te maken in een fatsoenlijk tijdsbestek en tegelijkertijd te leren hoe het programma werkt, heb je een gameframework nodig. Het framework creëert veel van de constructies die je nodig hebt om je games te laten functioneren. Deze wil je toch niet zelf verzinnen. Deze omvatten hoe u iets op het scherm kunt tekenen, hoe u een botsing kunt detecteren en hoe u de score kunt bijhouden.

Zelfs dingen op het scherm laten bewegen is complex zonder een onderliggende bibliotheek. In dit artikel leer je welke pakketten wat doen en hoe gemakkelijk het is om aan de slag te gaan met je game.

Waarom game-engines?

Wanneer je begint met het programmeren van je game, zul je de kracht waarderen van het gereed hebben van alle basisfuncties, zoals klassen en functies. Op deze manier kunt u aan de slag en u concentreren op de details van uw project. Je vraagt ​​je misschien af ​​wat het verschil is tussen een framework en een game-engine. Op een hoog niveau implementeert de game-engine alle snelle bewerkingen - voornamelijk grafische afbeeldingen. Het raamwerk implementeert de logica, de dingen die je in je spel wilt stoppen - het verhaal, zo je wilt.

PyGame

Dit is een set Python-modules. Deze set modules is bewust klein gehouden om het gemakkelijk te maken om aan de slag te gaan. De ontwerpers hebben ook besloten om veel kleine stukjes in de bibliotheek te maken. Dankzij dit ontwerp kun je delen van de bibliotheek verwisselen wanneer je behoeften veranderen. De mixer is bijvoorbeeld een apart stukje software; dus als je meer gevorderd bent in je programmering, kun je overschakelen naar een ander stuk software. De grafische weergavemachine is ook apart, enzovoort. Je zou PyGame zelfs kunnen gebruiken om een ​​game te prototypen en stuk voor stuk over te stappen naar geavanceerdere software. Dat gezegd hebbende, PyGame heeft al een groot aantal games onder zijn naam.

Aan de slag met PyGame is eenvoudig, maar je kunt het nog makkelijker maken. Het pgzero-pakket is gemaakt voor docenten om programmering te laten zien. Met het pakket kun je gemakkelijk veel delen van je spel schrijven zonder standaardcode.

Kivy

U kunt Kivy ook als Python-modules installeren. Dit is de beste manier om Python voor elk framework te gebruiken. Kivy heeft meer functies dan PyGame en zorgt voor meer gepolijste resultaten. Om te beginnen heeft Kivy geweldige tutorials op hun homepage. Een sterk punt van Kyvi is hun Kv Design-taal. Deze ontwerptaal maakt het gemakkelijk om menu's, spelplannen en alle afbeeldingen te maken. Dankzij dit systeem hoeft u geen afbeeldingen te maken voor de eenvoudigste afbeeldingen.

Op hun pagina vertellen ze ook hoe je aan de slag kunt gaan met Kivy met PyCharm. Er zijn ook extensies voor implementatie op Android en iOS. Dit is een beetje eenvoudiger dan het gebruik van PyGame.

pyglet-3D

Op het eerste gezicht lijkt pyglet klein en beperkt, maar onder de eenvoud gaat diepte schuil. Dit programma ondersteunt OpenGL, hoewel het geen afhankelijkheden heeft, hoewel u de mediamogelijkheden kunt uitbreiden door ffmpeg . aan te roepen. Pyglet verwerkt ook opstellingen met twee monitoren. Er zijn bibliotheken van derden beschikbaar die het systeem uitbreiden. U moet deze bibliotheken kennen voor alle functies die ze toevoegen. Misschien wilt u glooy ook gebruiken om een ​​consistente GUI voor uw toepassing te maken. Gebruik PyShaders voor het renderen en Ratcave voor het verwerken van 3D-scènes. Als je begint met pyglet3d, is het goed om te weten dat cocos2d pyglet gebruikt. Dit programma bouwt een uitgebreid raamwerk voor game-apps en andere GUI-gebaseerde applicaties.

Panda3D

Dit is geen pakket dat je kunt gebruiken om te leren programmeren of om gemakkelijk een spel te maken. Wat je hier krijgt is een professionele tool voor het maken van animaties en games. Panda3D is geschreven in C++ om de prestaties te waarborgen. Het grootste deel van de handleiding verwijst echter naar Python-gebruikers. Hoewel het idee achter Panda3D is dat game-ontwikkelaars hun games maken met Python, kun je ook C . gebruiken++.

Panda3d is een zeer capabel systeem en wordt zelfs geleverd met een eigen SDK. Als je bereid bent moeite te doen, en je kent al wat Python-programmering, dan gaat dit systeem al veel verder dan alles wat je wilt maken. Disney gebruikt het tenslotte voor hun commerciële producten!

Ren'Py

Je leest dit bericht waarschijnlijk omdat je games wilt maken. Dit pakket is voor het maken van visuele romans. Als u nog niet over uw projectidee heeft nagedacht, is dit het moment. Misschien wil je een op verhalen gebaseerd spel maken dat een verhalend formaat vereist. Dit is waar Ren'Py voor is.

Er zijn al veel commerciële games geschreven in Ren'Py en er zullen er nog meer volgen. Je kunt ook een visuele roman maken en er een spel van maken. Met Ren'Py kun je het hele ding maken met voornamelijk teksteditors.

Ursina om Panda te verbeteren

Als je vindt dat Panda op de een of andere manier ontbreekt, probeer dan Ursina. Dit is een project voor één ontwikkelaar, dus vertrouw niet op dit pakket voor grotere projecten, tenzij je bereid bent om bij te dragen. Dat gezegd hebbende, Ursina is een verbetering van Panda3D. Het project is ook erg actief en er zijn verschillende mensen die eraan hebben bijgedragen.

Een spel maken met dit framework is heel eenvoudig en gedaan in een paar regels code. Als u denkt dat uw project kan uitbreiden, hoeft u zich geen zorgen te maken. Dit programma is gebouwd op Panda, dus als uw behoeften toenemen, kunt u een van de Panda3D-functies gebruiken. Dit geeft je een snelle start naast de kracht van een gevestigd systeem.

Conclusie

Om te beginnen met het leren en gebruiken van een nieuw framework voor het ontwikkelen van games, kies je een paar tutorials en loop je ze door. Kies niet te veel, je verspilt gewoon je tijd. Start een eenvoudig project, beslis over een paar functies en probeer ze samen te laten werken. Tegen de tijd dat je het ene project hebt afgerond, heb je duizend ideeën voor het volgende. Uw keuze voor de game-engine is niet zo belangrijk, zolang u uw keuze maar vroeg genoeg opnieuw evalueert. Dit is om de uiteindelijke overgang naar een betere minder complex en efficiënter te maken.

Beste gamepad-toewijzingsapps voor Linux
Als je graag games op Linux speelt met een gamepad in plaats van een typisch toetsenbord- en muisinvoersysteem, zijn er enkele handige apps voor jou. ...
Handige hulpmiddelen voor Linux-gamers
Als je graag games op Linux speelt, is de kans groot dat je apps en hulpprogramma's zoals Wine, Lutris en OBS Studio hebt gebruikt om de game-ervaring...
HD Remastered Games voor Linux die nog nooit eerder een Linux-release hebben gehad
Veel game-ontwikkelaars en uitgevers komen met HD-remaster van oude games om de levensduur van franchise te verlengen, fans die compatibiliteit met mo...