Warning: Undefined array key "hostname" in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-admin/includes/class-wp-filesystem-ftpext.php on line 98
Comment le RPG assisté par l'IA Tales of Syn utilise la diffusion stable et ChatGPT pour créer des actifs et des dialogues - En Cause

Comment le RPG assisté par l’IA Tales of Syn utilise la diffusion stable et ChatGPT pour créer des actifs et des dialogues

Comment le RPG assisté par l’IA Tales of Syn utilise la diffusion stable et ChatGPT pour créer des actifs et des dialogues

Tales of Syn est un prochain RPG développé avec l'aide de Stable Diffusion et ChatGPT.

Qu’est-ce que Tales of Syn ?

  • Développé par un artiste britannique HackmansTales of Syn a commencé à attirer l’attention le mois dernier. Le jeu sera également présenté lors du prochain festival Culture AI Film and Games 2023.
  • Tales of Syn est un jeu vidéo et une bande dessinée qui se déroule dans le monde du Giga Bloc C. Il est décrit comme une « métropole tentaculaire dans une période future de la Terre ».
  • Il s’agit d’un monde dystopique cyberpunk classique, qui combine haute technologie et vie de misère. Le joueur explorera à la fois les niveaux supérieurs riches, contrôlés par l’Echelon Corporation, et les niveaux inférieurs pauvres, gouvernés par des factions rivales.
  • L’un des principaux objectifs du projet est de tester les technologies d’intelligence artificielle émergentes afin de voir comment elles peuvent contribuer à améliorer le processus de conception, tant au niveau de la production que de la narration », peut-on lire dans la section « À propos ».
  • Ce qui a vraiment attiré notre attention, c’est une série de billets de blog de Hackmans détaillant la création de personnages et d’autres aspects du développement assisté par l’IA. Ces informations pourraient s’avérer très utiles pour d’autres développeurs, notamment grâce à des décompositions étape par étape.

Comment la diffusion stable est-elle utilisée dans les Contes de Syn ?

  • Hackmans a d’abord décidé d’affiner un modèle personnalisé basé sur des photographies aériennes afin de créer quelques concepts de vues isométriques de paysages urbains.
  • L’artiste a utilisé des images Google Earth de villes asiatiques et a créé un ensemble de données de huit images recadrées à 512×512. Hackmans l’a ensuite entraîné comme un style en utilisant l’itération Dreambooth de Joe Penna et a choisi la diffusion stable 1.5 comme modèle de base.
  • Les premiers résultats générés ressemblaient déjà à des concepts prometteurs, mais manquaient de qualité d’image et de lignes de route claires.
Lire  Le château de Balmoral, résidence de la Reine, ouvre ses portes aujourd'hui pour la première fois depuis sa mort - voir l'intérieur

En haut : Quelques images du jeu de données original de photos Google Earth ; En bas : Deux exemples des premiers concepts de ville générés

  • Un autre problème était que Hackmans ne pouvait pas générer de sorties de style pictural. L’artiste a donc décidé de jouer avec Automatic 1111, un outil d’interface utilisateur open-source pour la diffusion stable, et ses fonctions d’édition d’invites.
  • « En commençant les générations dans le style entraîné pour les premières étapes et en passant à la peinture à l’huile ou à des modificateurs d’art similaires, cela a fourni une variété beaucoup plus grande de sorties de style qui conservaient toujours l’aspect isométrique aérien », a noté Hackmans.
  • Voici quelques résultats générés en utilisant l’invite suivante : « rue d’une ville futuriste, métropole, dystopique, in [<token artstyle>:vibrant oil painting:0.25] »
  • Selon Hackmans, de meilleurs résultats peuvent être obtenus en utilisant des images de jeux de données de meilleure qualité et davantage d’exemples de jeux de données.

  • Hackmans a également utilisé la diffusion stable pour créer des arrière-plans isométriques pour Tales of Syn. L’idée était d’écrire des invites détaillées, en expérimentant avec le nombre d’étapes et différents paramètres pour l’échelle de guidage sans classificateur (échelle CFG). Cette dernière permet d’ajuster la proximité de l’image de sortie par rapport à l’invite et à l’image d’entrée.
  • Les premiers résultats décents ont été obtenus lorsque Hackmans a augmenté le nombre d’étapes à la centaine et a réglé CFG à 15-30.

Différentes sorties pour différents pas et paramètres d’échelle CFG

  • Pour éditer les images de sortie, Hackmans a utilisé Photoshop pour peindre des couleurs fortes, puis a placé ces arrière-plans dans Unity. L’objectif était de supprimer tout l’éclairage et de l’ajouter en utilisant des shaders personnalisés dans le moteur.
  • Dans le billet de blog, Hackmans décrit également les différentes méthodes utilisées pour créer des cartes de profondeur et de normales, ainsi que le processus de création d’ombres pour la scène du jeu et la mise à l’échelle de l’image de sortie pour qu’elle puisse être utilisée comme arrière-plan.
Lire  Selwyn Patterson, de Death in Paradise, fait une apparition inattendue dans un spin-off.

  • En ce qui concerne la création de personnages, Hackmans a essayé de trouver un moyen de transformer les images générées par la diffusion stable en modèles 3D. Ces personnages doivent être dans le style de l’univers du jeu et rester cohérents tout au long du pipeline.
  • Tout d’abord, Hackmans a dessiné les contours du personnage avec Artstudio Pro sur un guide de référence des proportions qu’ils ont trouvé en ligne. Ensuite, l’artiste a ajouté quelques couleurs et un ombrage de base pour « informer les matériaux et les détails des vêtements lors du traitement de l’image avec Stable Diffusion. »
  • Hackmans a placé ces croquis dans le générateur img2img d’Automatic 1111 pour obtenir des dizaines de portraits peints à l’huile d’un marchand futuriste.

  • Ensuite, Hackmans a choisi les meilleurs résultats et les a ajustés dans Photoshop en superposant les images les unes sur les autres et en ajoutant certains détails ou en supprimant des régions spécifiques.
  • L’un des problèmes des images générées par l’IA était la mauvaise qualité des mains, que l’artiste devait donc corriger par la suite.

Croquis bruts (en haut) comparés au résultat final (en bas)

  • L’étape suivante consistait à charger l’image dans Spotlight, un système de texturation par projection dans ZBrush, et à former les formes principales à l’aide de l’outil de génération de maillage DynaMesh.
  • Le processus suivant comprenait la sculpture, la création de cartes et d’autres éléments de modélisation 3D. « J’ai obtenu un flux de travail qui répondait à mes objectifs initiaux, à savoir générer des personnages en 3D à partir d’images de diffusion stable, qui étaient en accord avec le style de ma bande dessinée », écrit Hackmans.
Lire  La BBC ne peut autoriser le retour de Lineker que s'il s'engage à mettre fin à ses tweets politiques.

Comment Tales of Syn utilise-t-il ChatGPT ?

  • Hackmans a mis en ligne un clip de cinq minutes sur YouTube pour montrer comment le joueur pourra interagir avec les personnages non jouables.
  • Le jeu vous permet d’écrire des entrées de texte dans la fenêtre de dialogue pour déclencher certaines réponses du PNJ. Le processus est construit sur le modèle de langage GPT-3.
  • Dans la séquence, le joueur demande au marchand ce qu’il vend et quelles armes il fabrique, puis détaille ses requêtes avec des invites plus spécifiques telles que « Avez-vous un outil qui peut pirater un réseau ? » ou « Pouvez-vous m’apprendre à utiliser les outils de piratage ? ».
  • Il est intéressant de noter que la voix du marchand est synthétisée à l’aide de l’outil de génération de voix d’IA d’ElevenLabs.
  • Hackmans a également utilisé ChatGPT pour écrire quelques scripts Unity. « Je l’ai un peu utilisé pour la navigation de mon personnage, mais il faut quand même avoir quelques connaissances pour pouvoir lui demander de corriger certaines choses ou d’améliorer les scripts », a noté le développeur sur Reddit.
  • Il convient de noter que ce dialogue avec les PNJ n’est qu’un prototype, donc on ne sait pas quel niveau de liberté le joueur aura dans la version finale ou comment ce système fonctionnera dans l’ensemble du jeu.

Vous trouverez plus d’informations sur la création de personnages et de décors assistée par l’IA dans les articles complets sur le site de Tales of Syn. Hackmans révélera également plus de détails sur le jeu et son développement à la GDC 2023.


Vous avez une histoire que vous aimeriez partager ? Contactez-nous à [email protected]

À propos de l'auteur :

Joe Pezzo
Joe Pezzo

0 0 votes
Évaluation de l'article
S’abonner
Notification pour
guest
0 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn.jpg): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-cityscapes.jpg): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-cityscapes-2.jpg): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-cfg-steps.jpg): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-gif.gif): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-cfg-characters.jpg): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-cfg-compared.jpg): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0 in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Warning: getimagesize(https://gameworldobserver.com/wp-content/uploads/2023/03/tales-of-syn-gif2.gif): Failed to open stream: no suitable wrapper could be found in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/media.cls.php on line 860

Fatal error: Uncaught ErrorException: md5_file(/home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/cache/ls/css/aa79c18fca834f06e7ad2643c31d96b0.css.tmp): Failed to open stream: No such file or directory in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/optimizer.cls.php:149 Stack trace: #0 [internal function]: litespeed_exception_handler(2, 'md5_file(/home/...', '/home/clients/5...', 149) #1 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/optimizer.cls.php(149): md5_file('/home/clients/5...') #2 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/optimize.cls.php(843): LiteSpeed\Optimizer->serve('https://encause...', 'css', true, Array) #3 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/optimize.cls.php(334): LiteSpeed\Optimize->_build_hash_url(Array) #4 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/optimize.cls.php(264): LiteSpeed\Optimize->_optimize() #5 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/class-wp-hook.php(324): LiteSpeed\Optimize->finalize('<!DOCTYPE html>...') #6 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/plugin.php(205): WP_Hook->apply_filters('<!DOCTYPE html>...', Array) #7 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/core.cls.php(456): apply_filters('litespeed_buffe...', '<!DOCTYPE html>...') #8 [internal function]: LiteSpeed\Core->send_headers_force('<!DOCTYPE html>...', 9) #9 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/functions.php(5471): ob_end_flush() #10 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/class-wp-hook.php(324): wp_ob_end_flush_all('') #11 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) #12 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #13 /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-includes/load.php(1304): do_action('shutdown') #14 [internal function]: shutdown_action_hook() #15 {main} thrown in /home/clients/5b0ebaad580f036b98077d4f120ff4c5/sites/encause.fr/wp-content/plugins/litespeed-cache/src/optimizer.cls.php on line 149