11 points par GN⁺ 2025-08-18 | 1 commentaires | Partager sur WhatsApp
  • LL3M utilise plusieurs grands modèles de langage pour écrire automatiquement du code Python et générer et éditer des assets 3D dans Blender
  • À partir d’instructions textuelles, il crée directement des formes créatives et précises et implémente en code des manipulations géométriques complexes
  • Contrairement aux outils existants de génération de modèles 3D, il offre une création d’assets sans contrainte et des interactions fines
  • Le code Blender généré est clair et présente une forte transparence des paramètres, ce qui permet aux utilisateurs ou aux agents de le modifier facilement ou de l’améliorer de façon itérative
  • Il montre de larges possibilités de traitement d’assets 3D, comme la stylisation cohérente, l’édition de matériaux et la mise en œuvre de hiérarchies

Présentation de LL3M

  • LL3M est un framework innovant dans lequel plusieurs agents LLM écrivent du code Python pour générer et éditer des assets 3D dans Blender
  • Lorsque l’utilisateur donne des instructions en texte, LL3M automatise la génération de formes créatives et les manipulations géométriques précises, et utilise du code de haut niveau comme représentation 3D afin de permettre l’amélioration itérative et le travail collaboratif
  • Le code est expliqué de manière claire, avec des paramètres et des structures rendus transparents, ce qui facilite les éditions supplémentaires et le feedback continu de l’utilisateur

Vue d’ensemble du pipeline

  • Le pipeline se compose de trois grandes étapes (génération initiale, amélioration automatique, amélioration fondée sur le feedback utilisateur)
    • Lors de l’étape de génération initiale, une forme de base est créée, tandis que LL3M détecte et améliore automatiquement les structures logiquement inadaptées ou les éléments géométriques trop simples
    • La deuxième étape applique des corrections automatiques plus raffinées et prend aussi en compte des formes ou relations complexes
    • La dernière étape accepte les demandes d’édition supplémentaires de l’utilisateur et permet une génération d’assets 3D interactive et itérative
  • Chaque étape met en œuvre une méthode d’amélioration itérative et progressive fondée sur une répartition des rôles entre les agents

Galerie et performances

  • Génération de formes variées : moulins à vent, pianos, batteries, etc., avec implémentation en code d’agencements complexes et de détails fins
  • Application d’un style cohérent : en appliquant la même instruction steampunk à plusieurs meshes (chapeaux), le système produit des résultats variés tout en conservant un style commun
  • Prise en charge de l’édition des matériaux : par exemple, seule la partie lame peut être définie avec des nœuds de shader distincts afin d’en modifier le matériau

Interprétabilité du code

  • Le code généré inclut une logique structurelle, des noms de variables explicites et des commentaires, ce qui le rend facile à comprendre et à modifier
  • Exemple : il est possible de modifier directement la logique du motif d’un clavier ou les variables de largeur des touches
  • Les nœuds Blender et les paramètres restent visibles tels quels, ce qui permet d’ajuster intuitivement des propriétés visuelles comme la couleur ou les motifs

Réutilisabilité et généralité du code

  • Même entre des formes différentes, des motifs de code de haut niveau comme les boucles, modificateurs et configurations de nœuds sont réutilisés
  • Cela permet de générer, à partir de prompts variés, un code modulaire et modifiable

Scène et hiérarchie

  • Le système crée plusieurs objets et place automatiquement leurs relations spatiales via instancing et parenting
  • Exemple : lors de la création d’un objet composite comme une lampe, il reflète une structure de relation parent-enfant afin que les transformations se propagent de manière hiérarchique
  • Chaque partie reçoit un nom sémantique pertinent, ce qui permet une gestion efficace dans le scene graph de Blender

1 commentaires

 
GN⁺ 2025-08-18
Commentaires Hacker News
  • J’ai eu un succès inattendu avec meshy.ai pour convertir les images voulues par mes amis en bons modèles 3D. Mon workflow est le suivant : 1) je transforme l’image d’origine en une sorte de mesh rendu de façon lisse avec un modèle d’image comme GPT-5 ou Midjourney, c’est-à-dire en supprimant les détails inutiles ainsi que les effets de transparence ou de relief. 2) J’envoie ensuite cette image nettoyée dans le mode image-to-3D de meshy.ai et, si le résultat ne me plaît pas, je reviens à l’étape 1 pour modifier le style de l’image et en choisir un autre. 3) Enfin, j’importe le tout dans Blender pour éditer le mesh comme je veux (ajuster certaines parties, ajouter de l’asymétrie, etc.), puis je fais le reste du travail de modélisation. La structure du mesh est plutôt stable, et j’ai l’impression qu’ils utilisent probablement quelque chose comme marching cubes ou dual contouring au-dessus d’un générateur de type NeRF. Je suis très rapide en CAD mécanique, mais seulement moyen sur Blender, donc c’est extrêmement efficace quand l’IA me fournit la structure générale du modèle et que je n’ai plus qu’à corriger et compléter à la main. Par exemple, si un ami me demande de transformer une statue représentant une vraie personne, c’était avant quelque chose qui me prenait énormément de temps ; avec la combinaison IA + Blender, je peux maintenant créer le modèle en 5 minutes puis le peaufiner dans Blender en environ une heure, ce qui représente un énorme gain de productivité
    • Tu dis qu’à l’étape 1 tu transformes l’image pour lui donner un aspect de mesh rendu en matte ; je me demande quel type d’image tu veux dire exactement. Je comprends l’idée de rendre des surfaces transparentes opaques, mais j’aimerais bien voir un exemple d’image complète, ou les prompts que tu utilises pour ce processus, si tu peux les partager
    • GPT-5 est un modèle texte uniquement. ChatGPT utilise toujours 4o pour le traitement d’image
  • J’utilise Blender depuis plus de 7 ans, j’ai posté plus de 1 000 réponses sur Blender Stack Exchange et j’y ai environ 48 000 points. Ces outils Blender basés sur l’IA sont peut-être corrects pour apprendre Python, notamment les bases de l’API Python de Blender, mais en pratique je n’en ressens pas vraiment le besoin. Les tâches montrées en exemple sont vraiment très faciles à faire dans Blender, et avec ce genre d’outil on n’obtient au final que des résultats fades, simplement alignés sur le prompt d’entrée. La modélisation de base s’apprend en une journée de tutoriels, et le gros avantage des modèles ainsi créés, c’est qu’ils reflètent ma propre créativité. Au bout d’une semaine environ, on peut les faire soi-même plus vite qu’avec des prompts IA, tout en progressant continuellement. On n’apprend pas grand-chose avec l’IA. meshy.ai est correct pour convertir une photo ou un rendu en mesh et lui appliquer une texture acceptable, mais au-delà, ça ne convient sans doute qu’aux gens peu à l’aise en sculpt. Pour référence, j’ai résumé mes tests de meshy.ai ici
    • Même après avoir suivi des tutoriels Blender pendant plusieurs jours, je ne suis pas capable d’atteindre le niveau des exemples montrés. Tu projettes un peu trop ton propre niveau. Je ne suis pas artiste 3D, j’avais juste besoin d’un modèle 3D, et pour ce genre d’utilisateur cette technologie est vraiment utile
    • Moi aussi, en tant qu’amateur de Houdini, je peux fabriquer en quelques jours un modèle unique paramétré, mais pour produire une courte vidéo ou une scène complète, il faut des centaines voire des milliers de modèles, des textures, du rigging, de l’animation, voire même des simulations. Même une animation de 2 minutes est presque impossible pour un artiste solo. La plupart du temps, on achète des packs d’assets puis on les assemble, mais dans ce cas mon art devient dépendant de leur style. Ce type d’outil IA allège fortement une ou deux de ces étapes et élargit donc ce qu’on peut faire seul
    • En tant que développeur et designer d’outils de support client IA, je sens que je dois constamment expliquer à mon entreprise que les LLM manquent d’initiative conversationnelle et de créativité. J’aimerais qu’on se concentre davantage sur l’intégration de l’IA dans les outils pour accélérer les tâches répétitives, plutôt que sur une fonction unique. Par exemple, des fonctions comme l’automatisation des contraintes par IA dans Fusion360 augmentent réellement la productivité. Pour Blender aussi, des outils de ce type seraient bien plus intéressants à mes yeux, par exemple la connexion automatique des matériaux
    • Pour un utilisateur qui n’a pas envie de passer des semaines à apprendre Blender, s’il peut obtenir un résultat suffisamment exploitable en y consacrant seulement quelques heures, c’est de loin l’option la plus efficace
    • Il faut se rappeler que cet outil est au pire de ce qu’il sera aujourd’hui. Il va forcément continuer à s’améliorer, donc l’application des LLM dans ce domaine n’en est qu’à ses débuts
  • C’est une direction que je martèle à mes amis depuis longtemps. À l’avenir, les logiciels de création centrés sur les API vont l’emporter. After Effects propose une API JS correcte, et Da Vinci Resolve peut être automatisé avec divers scripts comme Python ou Lua. Le processus de scripting y prend bien en charge les rollbacks de transaction. On a de plus en plus besoin d’un MCP généralisé pour les environnements de scripting de la plupart des applications desktop. Il faudrait aussi des captures d’écran connectées aux entrées multimodales
  • Récemment, j’ai écrit avec Claude un script Lua d’automatisation pour créer des personnages générés procéduralement dans Aseprite (éditeur pixel art). On pouvait reproduire les résultats avec une seed, et on obtenait grosso modo des formes humaines, mais on est encore loin du niveau de qualité souhaité. Cela dit, c’était très accessible et vraiment amusant à utiliser.
    • Si ce sujet t’intéresse, pixellab.ai mérite aussi un coup d’œil. Ils développent un plugin Aseprite qui génère des sprites assez corrects à partir de simples prompts
    • Moi aussi, je cherche toujours une bonne IA pour le pixel art. La plupart des outils que j’ai essayés étaient juste corrects, sans vraiment m’impressionner. Si tu as eu une bonne expérience, j’aimerais bien un lien de recommandation
  • Avant de rabaisser la qualité des modèles 3D, il faut se souvenir du Dancing Baby d’autrefois et des premières animations Pixar : les progrès sont franchement impressionnants. J’attends avec impatience l’époque où il suffira de donner un prompt à un LLM pour obtenir un modèle 3D presque terminé, et où je n’aurai plus qu’à faire les textures, le baking et l’export
    • Moi aussi, j’attends avec impatience l’époque où les données expérimentales accumulées par l’humanité sur des billions d’heures seront agrégées dans des modèles statistiques, puis monétisées par des entreprises sans qu’un centime ne soit versé à ceux qui les ont effectivement rendues possibles
    • Un LLM est un modèle de langage, et les données de mesh ne sont pas du langage. En théorie, on pourrait générer des meshes simples en Python, mais personne ne produit de véritable bel art 3D de cette manière. De la même façon qu’on ne crée pas du vectoriel en écrivant directement du code SVG, il est difficile de produire des arts visuels avec le seul LLM. Un LLM peut servir d’interface vers d’autres modèles, mais il ne peut pas tout créer à lui seul
  • Les progrès récents de l’intelligence spatiale des LLM sont vraiment encourageants. Il y a encore un an, dès qu’on leur demandait d’écrire une histoire impliquant des notions de position comme haut/bas, gauche/droite ou avant/arrière, ils s’embrouillaient complètement et ne faisaient pas correctement la distinction. Quand j’ai demandé à GPT quel logiciel de CAD était le plus pratique à scripter, il m’a répondu Freecad. Blender reste plutôt un modeleur qu’un vrai outil de CAD, notamment parce qu’il ne permet pas les mesures de précision. L’API de Freecad est moins bien structurée, donc GPT mémorise mal les fonctions pertinentes ou les retrouve difficilement. Blender fonctionne bien mieux, car il a davantage d’utilisateurs et beaucoup plus de code partagé
    • Je me demande ce que vaut OpenSCAD
    • Je me demande aussi s’il serait possible d’écrire des scripts qui automatisent les opérations de mesure en CAD
  • J’ai essayé Blender plusieurs fois avant d’abandonner. Aujourd’hui, je ne l’utilise plus que pour faire des titres animés dans Openshot. Toute façon de rendre un outil avancé plus facile à utiliser est bonne à prendre
  • Je pense que des grands modèles à base de tokens vont émerger pour tout, parce que toutes les données du monde peuvent être tokenisées. Il n’est pas nécessaire de passer par le langage, et l’IA finira par manipuler de façon fluide les données géométriques aussi
    • Le rejet des données générées par IA vient en grande partie de cette limitation au langage. À cause de cela, les véritables apports créatifs ne sont pas bien reflétés
    • Comme word2vec a déclenché une grande innovation autrefois, les modèles 3D aussi pouvaient fondamentalement être représentés dans un espace vectoriel
  • Le point important ici, c’est le workflow agentique. À mesure que la compréhension du monde 3D par les LLM continue de progresser, cela sera utile dans de nombreuses situations. C’est aussi pertinent pour faire tourner en arrière-plan, sans intervention humaine, des vérifications de bugs, des recommandations ou des aides contextuelles qui détectent des problèmes. La capacité à piloter cela par programmation va elle aussi prendre de plus en plus de valeur
  • Je ne suis pas modeleur, mais j’ai essayé plusieurs fois dans le cadre du développement solo d’un jeu 3D. Pour moi, la modélisation était une souffrance nécessaire. Avec ce genre d’outil, je ferais des modèles de base en très low poly rapidement pour des projets indé, puis je m’en servirais comme point de départ pour les retravailler moi-même en détail. De mon point de vue, économiser du temps vaut davantage qu’obtenir une qualité maximale