Génération procédurale de niveaux de jeu alliant approche constructive et optimisation
Auteur / Autrice : | Raphaël Bailly |
Direction : | Pierre Cubaud |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 08/12/2022 |
Etablissement(s) : | Paris, HESAM |
Ecole(s) doctorale(s) : | École doctorale Sciences des métiers de l'ingénieur |
Partenaire(s) de recherche : | Laboratoire : Centre d'études et de recherche en informatique et communications (Paris) - Laboratoire du froid et des systèmes énergétiques et thermiques / Lafset |
établissement de préparation de la thèse : Conservatoire national des arts et métiers (France ; 1794-....) | |
Jury : | Président / Présidente : Ludovic Denoyer |
Examinateurs / Examinatrices : Pierre Cubaud, Ludovic Denoyer, Ronan Champagnat, Anne-Gwenn Bosser, Eric Galin | |
Rapporteurs / Rapporteuses : Ronan Champagnat, Anne-Gwenn Bosser |
Mots clés
Résumé
Le travail de recherche effectué dans ce manuscrit se positionne dans le domaine de la génération procédurale de contenu dans le jeu vidéo. Cette thèse s'intéresse plus spécifiquement aux questionnements liés à la diversité et à la qualité du contenu généré. En effet, dans le milieu du jeu vidéo, les développeurs sont amenés continuellement à offrir une palette diversifiée d'espaces de jeu de qualité aux joueurs. Ce défi perpétuel nous a interpellé et nous a conduit à l'étude de nombreuses méthodes et algorithmes, grâce à une revue de littérature de la génération procédurale de contenu. Finalement, nous nous sommes penchés sur la problématique suivante : comment aboutir à une méthode de génération proposant une forte diversité d'expériences de jeu, tout en conservant une certaine qualité structurelle dans ses résultats ? Nous avons centré notamment notre étude sur la conception des niveaux de jeu et le placement d’objets. Nous nous sommes focalisés, plus particulièrement, sur la génération de niveaux 3D ouverts non-linéaires de type jeu de tir à la première personne, avec une infrastructure de campement dont le contenu est positionné sur une grille 2D.Cette thèse propose une nouvelle méthode, nommée Genetic-WFC, dans le but d'offrir une diversité d'expériences de jeu avec des niveaux possédant une certaine qualité structurelle. Il s'agit d'un pipeline de génération procédurale qui combine une approche Search-Based, à savoir un algorithme génétique et une évaluation par simulation, avec une méthode constructive, le Wave Function Collapse, afin de générer des niveaux ciblant des expériences de jeu spécifiques. Le Wave Function Collapse, abrégé WFC, est un algorithme de propagation de contraintes locales d'adjacence. Dans notre approche, il extrait ces contraintes à partir d'exemples de niveau, et nous permet d'effectuer la recherche génétique sur des résultats ne présentant pas d'erreurs de placement d'objets. Il agit en tant qu'opérateur de réparation pour les individus de la population de l'algorithme génétique. Le pilotage du WFC, par l'algorithme de recherche, est rendu possible en influençant la probabilité de sélection de ses éléments. Nous employons une solution de réencodage des niveaux qui nous permet d'améliorer le processus d'optimisation de notre algorithme évolutionnaire. Nous utilisons également un joueur synthétique pour évaluer l'expérience de jeu à l'aide de trois heuristiques de perception, à savoir, la nouveauté, la sécurité et la complexité, lors d'une simulation d'un parcours.Diverses expérimentations sur notre approche ont été menées afin d'établir ses capacités et ses performances. Après s'être intéressé au temps de calcul du WFC pour la génération de niveaux, une seconde expérience s'est attachée, plus particulièrement, à comparer notre méthode à d'autres similaires en prenant en compte, notamment, le temps de calcul et la valeur de score des résultats obtenus. Nous y confrontons également les différences visuelles entre certains niveaux produits par ces diverses méthodes. Une dernière expérience repose, quant à elle, sur l'évaluation de la diversité des expériences de jeu que peut proposer notre algorithme de génération procédurale.Nous terminons cette thèse en évoquant plusieurs pistes d'amélioration et de poursuite de recherche, qui peuvent encore être approfondies. Une expérience utilisateur avec des campements jouables pourrait représenter, par exemple, une prochaine étape dans l'étude de notre méthode.