Est-ce que le Blender Game Engine (BGE) est adapté pour créer votre projet ? Après tout, il y a beaucoup d'autres moteurs de jeux vidéo, et votre temps est probablement limité pour pouvoir tous les tester.
Le moteur temps réel de Blender permet de réaliser beaucoup de choses différentes.
Comme son nom l'indique, le Game Engine nous permet de créer des jeux vidéo et de le faire assez facilement. En quelques minutes, il est possible de créer un jeu basique, de le lancer et d'avoir une première interaction avec le jeu comme celle de déplacer un objet. En poussant ses capacités, il est possible de créer des jeux ou des simulations très complexes, voir photoréalistes, avec une logique avancée et des interactions sophistiquées.
A priori, tous les types de jeux sont réalisables avec le BGE. Néanmoins, vous ne pourrez pas produire de MMORPG* de nouvelle génération, mais d'un autre côté, vous ne disposez probablement pas d'une équipe de 200 personnes ! Si vous n'avez pas les yeux plus gros que le ventre, votre idée pourra certainement être réalisée.
Même si vous êtes un professionnel du jeu vidéo ou un développeur aguerri, le BGE pourra vous intéresser pour réaliser un prototype de jeu et le tester rapidement. Vous pourrez ensuite éventuellement passer à un autre moteur de jeu plus adapté pour votre concept. Ainsi, vous pourriez ne passer que quelques jours à le concevoir avec le BGE, plutôt qu'un mois à coder avant de tester votre idée.
Le BGE est souvent utilisé tout simplement pour permettre à un utilisateur (joueur) de se déplacer dans un univers virtuel, en 3D ou en 2D. Si vous êtes architecte, vos clients seront ravis de visiter leur future maison.
Le BGE permet également de présenter un objet ou un produit sous plusieurs angles et de le faire réagir aux clics des utilisateurs.
Il est possible de faire des simulations 3D, avec de la physique rigide, comme une chute d'objets ou une simulation de voiture.
Si vous exercez un métier dans le domaine de la réalité virtuelle et que vous cherchez à tester vos concepts, le BGE est peut-être une bonne solution. Des médecins ont utilisé Blender pour simuler des opérations chirurgicales avec retour de force.
Le monde de l'éducation et de la formation cherche toujours de nouvelles solutions pour la diffusion de contenu et surtout pour rendre ses contenus plus attrayants. Les logiciels éducatifs pour enfants mais aussi les MOOC* ou plate-formes de formation à distance, nécessitent la réalisation d'animations interactives qui permettent aux apprenants de tester. Blender peut alors se prêter à cette utilisation autant que d'autres. On peut également imaginer réaliser des Serious Game avec le BGE, c'est à dire des jeux à but pédagogique qui reproduisent une situation réelle qui serait dangereuse (apprendre à ne pas jouer avec le gaz de la cuisine par exemple).
Le BGE est aussi utilisé pour des installations artistiques, intégrant de l'interaction avec le public. La possibilité d'intégrer tant du contenu 3D, 2D, que du son et des capteurs (grâce au développement en Python) permet de développer des projets complexes et variés.
L'intégration de la texture vidéo permet également de concevoir des environnements appliquant la vidéo sur des surfaces non planes. Ceci permettant ce qu'on appelle maintenant le mapping, c'est-à-dire le fait de texturer des objets réels par des projections vidéo s'adaptant à la géométrie de l'espace réel, redressant des perspectives et jouant sur des illusions d'optique.
Perma-Cabane est une installation vidéo interactive dans un musée, avec mapping dynamique contrôlé par Kinect (http://www.ogeem.be/doku/doku.php?id=fr:perma_cabane). L'image est produite avec seulement 2 projecteurs vidéo installés de part et d'autre de l'espace.
Cosmic Sensations proposait une projection en dôme d'un système permettant de visualiser les rayons cosmiques de manière créative (http://download.blender.org/documentation/bc2010/cosmicsensation_slides.pdf ). L'image est projetée à une taille de 1000x4000 pixels, grâce à plusieurs projecteurs et à un mapping en dôme.
Blender est également extensible grâce à Python, et peut s'interfacer facilement avec d'autres logiciels, d'image ou de son par exemple. Une méthode courante pour interfacer avec Blender est l'utilisation du protocole OSC (Open Sound Control), sorte de successeur du MIDI, très courant dans les logiciels de travail du son. Ceci permet par exemple de créer un système sonore indépendant du BGE mais synchronisé avec lui. Ce protocole est également souvent utilisé pour intégrer des contrôleurs externes, et compléter la palette d'interface physique disponible (par exemple Kinect, Wiimote, détection caméra, senseurs avec Arduino, etc.). Dernièrement on a pu voir aussi qu'il était simple d'utiliser le BGE avec les casques de réalité virtuelle de type Oculus Rift.
Pas convaincu(e) ? Voici des exemples de jeux réalisés avec le Blender Game Engine.
Il s'agit d'un jeu vidéo gratuit et libre édité par la Blender Foundation en 2008 dont le personnage principal, Frank, est issu du court-métrage Big Buck Bunny.
Url du projet : http://www.yofrankie.org
Un jeu de course/plateforme, gagnant d'un concours de création de jeux vidéo en juin 2014. Il est possible de jouer à deux sur la même machine avec le clavier ou des manettes et de jouer en multi-joueur (les serveurs peuvent gérer plusieurs parties en parallèles). Le code et toutes les ressources (images et musiques) sont entièrement libres. Il a été réalisé par seulement deux personnes en deux semaines. Depuis il continue d'être amélioré. Des fonctionnalités et du contenu sont ajoutés tous les mois.
Accessible sur http://rg.osxia.org
Un jeu complet d'aventure SF, une histoire à propos du sens de la vie et de la mort. Il est disponible sur le Steam Greenlight.
Accessible sur http://deadcyborg.com
ColorCube est un jeu de puzzle/réflexion basé sur le roulement d'un cube et le fait d'attraper et de déposer une face colorée. Le jeu a été entièrement conçu à l'aide de Blender, que ce soit pour la modélisation ou la logique interne, utilisant le moins possible de scripts Python. La toute première version du jeu n'utilisait d'ailleurs que des briques logiques, afin de participer à un concours basé sur ce principe. Après l'enthousiasme encourageant des joueurs testeurs, une version améliorée incluant un éditeur de niveau a été proposé à petit prix, dans l'optique de faire un test de jeu commercial utilisant le BGE. Le jeu a connu un succès raisonnable, principalement au niveau de la communauté Blender.
Développeur : ColorCubeStudio
Genre : puzzle/réflexion 3D
Licence : propriétaire / Démo libre disponible
Prix : 4,50€
Il existe de nombreux moteurs de jeu. Beaucoup d'entre eux sont d'ailleurs libres dont l'un des plus prometteur pourrait être Godot dont le statut évolue (http://okamstudio.com/tech/).
En attendant Godot, ou qu'un autre moteur indépendant se révèle, il est important d'avoir de nombreux critères pour en choisir un. Tout d'abord, le Game Engine est intégré à Blender : si vous connaissez déjà Blender, il sera plus facile de commencer les jeux vidéos avec votre outil préféré ! Si vous ne connaissez pas Blender, avoir un moteur de jeu directement intégré à votre outil de création 3D est clairement un plus : pas besoin de changer d'outil pour tester son jeu, un simple appui sur P permet de lancer le jeu. Cela représente aussi un avantage non négligeable sur les jeux créés en langages compilés.
De plus, vous n'avez pas besoin de savoir coder pour commencer à utiliser le BGE : les briques logiques (Logic Bricks) permettent d'aller assez loin dans la création et l'interactivité du jeu.
À l'inverse, si vous savez coder en Python, vous pourrez accéder à absolument toutes les possibilités du BGE avec votre code, comme c'est le cas dans Blender en général.
Enfin, c'est un moteur de jeu libre, sous licence GPL* : vous avez le droit de l'utiliser sans restrictions, de le partager autour de vous, de l'étudier, et même de le modifier pour l'améliorer !
Bien sûr, comme tous les outils, le BGE ne sait pas absolument tout faire. Il possède ses propres spécificités et limites, dont voici les principales. Un outil ça s'utilise, ça se contourne, et cela a parfois besoin d'adaptation pour fonctionner comme désiré. Libre à vous de contribuer à son amélioration si vous avez des demandes spécifiques !
Il est possible de faire des jeux en réseau avec le BGE mais il n'y a pas de fonction toute prête pour le faire rapidement : il faudra utiliser le langage Python et une librairie dédiée au réseau, donc avoir les compétences nécessaires en programmation. En revanche, avoir plusieurs joueurs sur le même ordinateur est plus accessible, nous l'aborderons dans la section Développer l'ergonomie.
Il y a plus rapide que le Game Engine de Blender, et, malgré des progrès dans ce sens, vous pourrez atteindre des limites de performance plus tôt qu'avec d'autres moteurs. Cela est principalement dû à l'utilisation du langage Python, qui apporte beaucoup d'avantages et de simplicité, mais qui n'est pas conçu pour le cas spécifique des performances dans un environnement 3D.
Cependant, tout jeu doit toujours être pensé en fonction de ces contraintes de calcul et cela a un impact systématique, y compris dès le départ sur la modélisation. Optimiser son jeu dès le début et prendre de bonnes habitudes ici sera utile dans tous les moteurs ! Nous traiterons de ces habitudes à prendre dans tout le livre, et nous aborderons plus particulièrement les techniques dédiées à l'amélioration des performances dans la section Optimisations.
Le Game Engine est une partie à part de Blender. Le calcul en temps réel réclame d'autres solutions techniques que celles utilisées pour faire du rendu 3D. De ce fait, tout ce que vous savez faire dans Blender ne sera pas forcément possible dans le BGE, à moins de passer par une étape de conversion aux solutions dédiées au « temps réel ». Si votre ambition est de faire des jeux, vous concevrez vos projets directement dans cette optique et bientôt ces contraintes n’apparaitront plus.
Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.
Vous devriez rafraîchir la page.