Python

Bons moteurs de jeu Python 3D

Bons moteurs de jeu Python 3D

introduction

Trouver un framework pour les moteurs de jeux 3D conçus pour et avec Python peut s'avérer très difficile. La raison en est que Python rencontre rapidement des problèmes de performances lorsque la complexité augmente. Le rendu graphique rapide n'est pas ce que Python fait de mieux. Cependant, puisque Python est très bon pour créer la logique et est assez populaire, vous avez de nombreuses options pour exécuter des frameworks écrits en C++.

Pour que cela fonctionne pour les moteurs de jeux 3D, vous ne pouvez pas tout faire comme vous le feriez habituellement en Python. La plupart des frameworks créent un wrapper pour leurs bibliothèques C++. Vous devrez comprendre comment compiler pour que Python puisse rappeler ce wrapper. Ils expliquent dans la documentation comment compiler avec le wrapper Python.

Style de jeu et choix de la langue

Déterminez, avant de commencer, si votre jeu est un jeu de plateforme, un jeu de tir à la première personne ou basé sur des dialogues. Peut-être que vous allez créer un jeu qui met au défi les compétences intellectuelles. Cela n'a pas besoin de graphiques haute performance. Le fait est que vous aurez besoin de savoir ce que vous essayez d'accomplir avant de commencer. Vous pouvez être habitué à Python pour la programmation. Mais si vous cherchez à créer des jeux avec beaucoup d'effets, vous devriez envisager d'autres langages de programmation. C'est un gros effort d'apprendre une nouvelle langue, mais c'est aussi extrêmement satisfaisant une fois que vous avez passé l'obstacle initial des bases. Le moment où la documentation régulière a du sens, même d'un simple coup d'œil.

Reliures, bibliothèques à prendre en compte

Pour créer des jeux, vous devrez créer des graphiques, des menus et de l'audio. Il existe plusieurs bibliothèques et liaisons Python pour gérer ces cas. L'une des bibliothèques les plus courantes est SDL2, qui donne aux programmeurs un accès direct au tampon d'images vidéo, à la sortie audio, à la souris et au clavier. Sans ceux-ci, votre jeu devra utiliser des routines régulières, qui peuvent parfois être lentes. La première version est toujours là, mais SDL2 a tous les gadgets nécessaires.

SFML2 joue un rôle similaire à la plupart des fonctions multimédia et rassemble toutes les fonctions. En revanche, SDL2 contient de nombreux éléments plus petits que vous devez intégrer à votre code un par un.

Pour Python, vous aurez besoin des packages PySDL2 et PySFML2, respectivement.

PyOgre

Les concepteurs de PyOgre ont écrit le framework Ogre en C++ avec un wrapper pour Python. Le wrapper est un wrapper intégré. L'ancien projet est toujours disponible sur le web. Suivre les tutoriels peut être utile mais soyez prudent, car tout ce qui est disponible en ligne ne sera pas correct. Ogre a des classes pour de nombreux objets du monde, vous donnant une couche au-dessus d'OpenGL et de Direct3D.

Ogre fonctionne avec des scènes et peut créer tous les graphismes dont vous pourriez avoir besoin pour votre jeu. Les modules PyOgre fonctionnent pour les versions antérieures à la version Ogre v1.05. Après cela, il y a d'autres modules disponibles. Le logiciel Ogre inclut des scripts Python pour importer des données de Blender vers Ogre. Cela permet de créer vos ressources dans Blender pour votre jeu. D'autres exportateurs sont également disponibles.

http://wiki.ogre3d.org/

Allegro

Allegro gère tout le travail lourd de création de fenêtres, d'acceptation des entrées utilisateur, de dessin d'images et de lecture de sons - toutes les fonctionnalités utiles pour la programmation de jeux vidéo et multimédia. Les concepteurs d'Allegro ne prétendent pas que ce programme est un moteur de jeu, mais il est utile pour créer des jeux.

Comme Allegro a été construit en C++, vous devrez créer le wrapper pour utiliser ce programme en Python. Vous pouvez effectuer cette étape en compilant à partir de la source. Le processus crée les classes dans un fichier nommé allegro.py. Une fois que vous avez terminé cette étape, vous pouvez choisir les classes dans ce fichier, mais il est recommandé de lire également la documentation régulière sur le fonctionnement de ce programme. Cela peut compliquer le processus, mais apprendre le C++ est aussi une corvée.

https://github.com/liballeg/allegro5

Armurerie 3D - Extension Blender

Ce package utilise Blender comme plate-forme de développement et HAXE comme langage de programmation. Oui, vous devrez passer à Haxe, mais vous pouvez convertir une logique de jeu existante à partir de Python. Armory3D fonctionne dans Blender comme une extension, où vous pouvez créer toutes vos ressources pour le jeu.

Même si Armory 3D ne fonctionne pas sur Python, pensez néanmoins à ce programme avec attention, car vous pouvez démarrer très rapidement avec cet outil. https://armory3d.org/

Urho3D

Ce paquet utilise Blender comme plate-forme de développement et utilise HAXE comme langage de programmation. Encore une fois, vous devrez passer à Haxe, mais vous pouvez convertir une logique de jeu existante à partir de Python. Armory3D fonctionne dans Blender comme une extension, où vous pouvez créer toutes vos ressources pour le jeu.

Même si Urho3D ne fonctionne pas sur Python, considérez également ce programme avec attention, car vous pouvez démarrer très rapidement avec cet outil. https://armory3d.org/

Ursine

Ursina est écrit en Python et construit sur Panda3D. Cet outil est conçu pour fournir de nombreuses primitives, telles qu'un cube, une sphère, etc., afin que vous puissiez passer au jeu lui-même dès que possible. Panda3D fait le travail en profondeur et Ursina vous offre des fonctions de programme prêtes à l'emploi. Une classe de joueur vous donne la possibilité d'enregistrer les touches enfoncées et les mouvements de la souris.

La plupart des fonctions sont intuitives à utiliser avec des noms clairs et des fonctions facilement compréhensibles. Vous pourrez démarrer rapidement votre jeu si vous utilisez cet outil de création de jeu. Ursina a également des outils pour convertir les fichiers blend et psd.

https://github.com/pokepetter/ursina

Moteur de jeu Blender (?)

Avant la version 2.79, Blender avait un moteur de jeu intégré. Dans les versions ultérieures, cependant, les concepteurs ont choisi de supprimer le moteur de jeu de la version standard et de se concentrer sur les animations. Ainsi, les gens de l'UPBGE ont décidé de créer leur propre extension qui fonctionne à l'intérieur de Blender. Vous pouvez donc utiliser Blender pour créer l'intégralité du jeu. Comment cela est-il lié au développement de jeux Python?

BPGE a une API qui vous permet d'accéder à toutes les données que vous créez en travaillant dans Blender. Vous pouvez utiliser la console dans Blender pour accéder et tester l'API. En fait, vous pourriez écrire tout le programme de cette façon, mais ce n'est peut-être pas le meilleur choix pour vos besoins. À tout le moins, vous aurez toutes les ressources prêtes et comme vous le souhaitez dès le moment où vous les créez.

GODOT - GDscript, PAS Python

Si vous voulez écrire un jeu et que vous êtes à l'aise avec Python, vous pouvez également utiliser GODOT. Ce langage est très similaire à Python sauf qu'il est spécialement destiné à l'écriture de jeux.

Conclusion

Il existe de nombreux frameworks pour écrire des jeux en Python. Si vous cherchez à créer des jeux 3D hautes performances, vous devriez sérieusement envisager d'apprendre d'autres langues pour ces jeux. Assurez-vous que votre choix de programme vous permet de suivre votre idée de jeu originale. Si nécessaire, adaptez votre langage de programmation à votre vision personnelle.

Le curseur saute ou se déplace de manière aléatoire lors de la saisie dans Windows 10
Si vous constatez que le curseur de votre souris saute ou se déplace tout seul, automatiquement, au hasard lors de la saisie sur un ordinateur portabl...
Comment inverser le sens de défilement de la souris et des pavés tactiles dans Windows 10
Souris et Pavé tactiles rendent non seulement l'informatique facile, mais plus efficace et moins chronophage. Nous ne pouvons pas imaginer une vie san...
Comment changer la taille, la couleur et le schéma du pointeur et du curseur de la souris sous Windows 10
Le pointeur et le curseur de la souris dans Windows 10 sont des aspects très importants du système d'exploitation. Cela peut également être dit pour d...