Ceci est une ancienne révision du document !
Table des matières
Comparaison de moteur de jeux
Cette page liste des moteurs de jeux libres (Open Source), avec du scripting python.
Suite à l'annonce de la suppression du moteur de jeux dans les version de Blender à partir de la 2.80,
cette page fait aussi un point sur l'avenir du BGE.
List of game engines
Blender Game Engine
- Licence GPLv2 et GPL-3.0
Extrait de https://fr.wikipedia.org/wiki/Blender_Game_Engine
Le 16 avril 2018, le code du Blender Game Engine est supprimé du code de Blender. Selon Ton Roosendaal, le principal problème du Blender Game Engine était qu'il ne partageait pas assez de code avec le cœur de Blender. Les choix de conception du game engine remontant au début des années 2000 n'était pas les bons et les nouvelles fonctionnalités apportées à Blender ne peuvent pas directement bénéficier au Game Engine. Le but à moyen ou long terme est donc de recréer un moteur de jeu réutilisant plus largement le code de blender et notamment de EEvEE (Le moteur temps réel de Blender développé pour la version 2.8).
Que devienne Armory et UPBGE ?
ARMORY3D
Avantage:
- Qualité d'image au top, bien mieux que tous les jeux crées à la tonne.
- Export Android
- Il est possible d'utiliser EEvEE, mais je n'ai pas réussi à mettre la main sur Render-Armory avec l'exemple tanks2.8
Inconvénients:
- Je n'ai pas vu beaucoup de python, mais surtout du Haxe
- Patience et longueur de temps
- Font plus que force ni que rage.
- Sœur Anne ne vois-tu rien venir
UPBGE Uchronia Project Blender Game Engine
License: GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007
Sur github
UPBGE
Uchronia Project Blender Game Engine est un fork de Blender créé par Porteries Tristan (un développeur de Blender Game Engine) et certains de ses amis en septembre 2015.
C'est une branche indépendante, dont le but est de nettoyer et d'améliorer le code BGE actuel, d'expérimenter de nouvelles fonctionnalités et d'implémenter des fonctionnalités oubliées qui existent actuellement mais qui n'ont pas été fusionnées avec le tronc officiel de Blender.
Actuellement, après la décision de la BF de supprimer BGE de la prochaine version 2.8, UPBGE devient, de facto, le seul à suivre le développement de BGE. Cela nous donne encore plus de liberté, si possible, pour prendre certaines décisions, puisque nous ne pourrons jamais entrer en conflit avec la version officielle.
Son cycle de développement s'étend sur 4 mois: 3 mois pour ajouter de nouvelles fonctionnalités et refacteurs et 1 mois pour corriger les bugs. Une nouvelle version est ensuite disponible au téléchargement (environ 3 ou 4 par an).
Régulièrement, l'UPBGE fusionne les nouveaux patchs officiels de Blender, pour rester au courant des dernières évolutions de Blender.
Remarque LaLabomedia
- Ton parle de but à moyen ou long terme, pour recréer un moteur de jeu
- Patience et longueur de temps
- Font plus que force ni que rage.
- Sœur Anne ne vois-tu rien venir
- Je parie un début pour la fin de 2020
Pour
- Visualisation en temps réel de la vue caméra pour toutes modifications.
- Presque tout se règle dans l'interface sans script (matériaux, textures, éclairages, world, animation ….
- Moteur de jeu complet, modélisation, moteur physique, logique avec des briques sans script, ou avec des scripts python3, rendu, interaction clavier joystick réseau .
Contre
- Pas de compilation possible pour Android
Installation
- https://download.upbge.org/ résumé simple
- https://github.com/UPBGE/blender/wiki/Build-UPBGE-on-Linux installation et mise à jour
Documentation
- https://pythonapi.upbge.org/ API Python
Conclusion
La modification de l'interface 2.8 est importante, comme le fut (du canon) la 2.5.
Restons sur la 2.79 pendant 2 ans, comme nous étions restés sur la 2.49 pendant longtemps. Prenons le temps de tester, nous familiariser avec la 2.8, que les bugs soient corrigés, et probablemnt attendre une 2.9 mature (comme l'a été la 2.6) !!
godot
- License: C'est globalement libre, le détail est dans une fenêtre d'un jeu, Help, onglet License et Thirdparty License
Pour
- Export Android possible
Contre
Le langage de script est le godot ! C'est presque du python mais ce n'est pas du python, il n'est pas possible d'utiliser des modules python courants.
Un projet existe https://github.com/touilleMan/godot-python mais il n'y a qu'un seul contributeur, parisien certes, ce n'est pas très pérenne.
Kivy
http://kivent.org/ Dévepoppement sur PC, puis compilation pour Android avec buildozer
- kivent A Real-Time Rendering Framework for Kivy
Pour
- Prend en charge le tactile nativement, en particulier le multitouch.
- Permet la capture de la pression
- Option Adroid accessible facilement
- Exemple de jeu: multi_pong Ce jeu n'utilise pas kivent mais blender sur un PC avec du réseau.
Contre
- Le python3 est très mal pris en charge par kivy (en cours de dev). La compilation avec Buildozer est impossible 9,9 fois sur 10 !!!
- La doc est nulle !
Panda3D
Pour
- Tout se fait en python, voir https://ressources.labomedia.org/panda3d_installation_sur_debian#hello_world
- Export sur Android
Contre
- C'est quand même mieux de voir le rendu en temps réel dans la vue camera de Blender quand on fait des modifications.
TA Spring
- https://en.wikipedia.org/wiki/Spring_Engine Spring, anciennement dénommé Total Annihilation Spring puis TA Spring, est un moteur de jeu de stratégie en temps réel libre et open-source sous licence GPL Version 2, principalement multijoueur, en Réseau local et sur Internet.
renpy
- https://en.wikipedia.org/wiki/Ren%27Py MIT License, construit sur pygame, .deb dans les dépôts debian. It has also been ported to Android.
Delta3D
- https://en.wikipedia.org/wiki/Delta3D Licence LGPL Linux
Verge3D
https://en.wikipedia.org/wiki/Verge3D Verge3D is a real-time renderer and a toolkit used for creating interactive 3D experiences running on websites.
Allegro
Allegro est une bibliothèque logicielle libre dédiée à la création de jeux vidéo.
Cocos2d
Python-Ogre
https://en.wikipedia.org/wiki/Python-Ogre LGPL pas android https://www.ogre3d.org/