Un script de génération procédurale de vaisseau spatial pour Blender
Réalisé au cours d'un défi sur la génération procédurale

Le , par LittleWhite

0PARTAGES

6  0 
Michael Davies (a1studmuffin sur GitHub) est développeur de jeux vidéo depuis plus de 15 ans et a travaillé sur de grands projets tels que Need For Speed Rivals ou encore Battlefield 4. Michael a voulu participer au défi mensuel de génération procédurale sur Reddit.
Sa participation consiste en un script pour Blender 2.76 (le logiciel de modélisation 3D open source) qui produit des vaisseaux spatiaux de manière procédurale.


Pour la génération, son principe est :
  • de débuter avec un cube ;
  • de créer la coque à travers plusieurs extrusions à l'avant et à l'arrière et en appliquant une translation/rotation/redimensionnement aléatoire ;
  • d'ajouter une asymétrie à la coque en extrudant des faces sélectionnées aléatoirement, mais en réduisant la taille à chaque étape ;
  • d'ajouter des détails (moteurs, antennes, tourelles, lumières) suivant l'orientation des faces ;
  • de créer une symétrie sur quelques parties aléatoires du vaisseau ;
  • de biseauter les angles ;
  • d'appliquer les matériaux pour le résultat final.


Bien sûr, il y a aussi des résultats quelque peu exagérés :


Le tout est disponible sur GitHub, sous licence MIT.

Votre opinion

Que pensez-vous de la génération procédurale ? Est-ce juste un mot clé à la mode, ou réellement un aspect à approfondir ?
Comment auriez-vous écrit l'algorithme de génération de vaisseaux ?
N'hésitez pas à modifier le script et à nous montrer vos résultats !

Source

GitHub
Reddit

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Songbird
Expert confirmé https://www.developpez.com
Le 22/06/2016 à 8:00
Bonjour,

Que pensez-vous de la génération procédurale ? Est-ce juste un mot clé à la mode, ou réellement un aspect à approfondir ?
Un mot-clé à la mode ? Je ne pense pas.
Pour ma part, je trouve que la génération procédurale (dans un contexte où il n'y a pas besoin d'être très précis) pourrait (peut?) s'avérer utile pour des développeurs qui ne disposent pas d'énormément de ressources (textures, ...) pour concevoir leur jeu sans pour autant réduire le contenu qu'ils souhaiteraient proposer.
0  0 
Avatar de evil duke
Nouveau membre du Club https://www.developpez.com
Le 22/06/2016 à 14:26
C'est vraiment cool la génération procédurale.
J'aimerais bien apprendre comment on s'y prend, mais la plupart des tutos sont souvent trop spécifiques et pas assez généralistes pour être utilisés partout.
1  0 
Avatar de raphchar
Membre éclairé https://www.developpez.com
Le 23/06/2016 à 20:09
Peut-être pourrais-tu regarder http://algorithmicbotany.org/papers/abop/abop.pdf, cela me semble une première référence intéressante.
1  0 
Avatar de LittleWhite
Responsable 2D/3D/Jeux https://www.developpez.com
Le 28/06/2016 à 9:20
Aussi, récemment, il y a eu cette conférence : http://unity.developpez.com/videos/u...n-procedurale/
1  0 
Avatar de papy88140
Membre habitué https://www.developpez.com
Le 06/07/2016 à 11:43
c'est hyper puissant la génération procédurale !

sinon, comment voulez-vous casez une démo comme celle-ci dans 177 Ko ...
1  0 
Avatar de LittleWhite
Responsable 2D/3D/Jeux https://www.developpez.com
Le 26/07/2016 à 22:13
Une autre conférence sur la génération procédurale et précisément, la génération de modèles 3D :
http://unity.developpez.com/videos/u...e-proceduraux/

Pour les démos de Farbraush, il y a un making of d'une des plus impressionnantes prod du groupe : FR-08 .the .product
0  0 
Responsable bénévole de la rubrique 2D - 3D - Jeux : LittleWhite -

Partenaire : Hébergement Web