5 conseils pour utiliser GitHub Copilot avec Unity

STACEY HAFFNER / UNITY TECHNOLOGIESContributor
Aug 11, 2026|5 MIN
Un panneau d'invite de l'éditeur de code en ligne sur le thème sombre, montrant une balise de référence de fichier C# intitulée « EquipmentSlot.cs:9-18 » en haut, un champ de saisie de texte avec un texte d'espace réservé « Décrire ce qu'il faut construire », et une barre d'outils inférieure avec des boutons pour ajouter (+), mode Agent, mode Auto, une icône de paramètres/filtre et un bouton d'arrêt.
Cette page a été traduite automatiquement pour faciliter votre expérience. Nous ne pouvons pas garantir l'exactitude ou la fiabilité du contenu traduit. Si vous avez des doutes quant à la qualité de cette traduction, reportez-vous à la version anglaise de la page web.

Avec les outils d’IA d’Unity désormais disponibles en version bêta, nous constatons beaucoup d’enthousiasme autour de ses nouvelles fonctionnalités, à savoir l’assistant d’IA in-Editor et ses intégrations avec les outils de développement populaires. Si vous débutez dans la version bêta, vous pouvez en savoir plus sur la page Web des outils d’IA. Nous avons également créé une série de tutoriels vidéo pour vous aider à démarrer avec ses fonctionnalités principales.

Nous avons rencontré Stacey Haffner pour discuter de la façon dont elle utilise GitHub Copilot avec Unity pour optimiser ses workflows de développement de jeux. Stacey est un ancien développeur principal chez Microsoft, ainsi qu'un youtubeur avec plus d'une décennie d'expérience en tant que développeur de jeux indépendant. Ses antécédents couvrent la technologie des créateurs sur .NET, Xbox et Unity. Lorsqu'elle ne défend pas les intérêts des développeurs, elle gère son propre studio indépendant et publie des tutoriels de développement de jeux toutes les deux semaines.

Plongeons-y.

Conseil 1: Travailler avec la fenêtre contextuelle, pas contre elle

« La fenêtre contextuelle est la mémoire de travail de l'IA pour une session qui a une limite. Selon le modèle sous-jacent utilisé, les performances peuvent commencer à se dégrader avant même d'atteindre leur limite, de sorte que les réponses peuvent devenir moins précises au fil d'une session. GitHub Copilot aide à cela en vous permettant de compacter une session, mais si vous déclenchez le compactage après que le modèle sous-jacent a déjà commencé à se dégrader, l'état dégradé devient votre nouvelle référence. C'est pourquoi je recommande de structurer votre flux de travail autour de cette limite dès le départ. »

« Pour les fonctionnalités plus complexes, j’utilise le fil de discussion principal pour orchestrer ce travail. Pour une grande fonctionnalité, je vais demander au thread principal de diviser le travail en morceaux concentrés, puis de démarrer des agents de fond pour gérer chacun d’eux. Un agent de codage s'occupe de l'implémentation, un agent de validation l'examine, et une fois l'examen passé, le cycle se répète jusqu'à ce que la fonctionnalité soit terminée. Chaque agent travaille dans son propre contexte, de sorte que le fil principal reste concentré et fonctionne de façon cohérente plus longtemps. »

Une fenêtre Visual Studio Code montrant un panneau de discussion GitHub Copilot intitulé « PLAN D'IMPLÉMENTATION DU SYSTÈME DE QUÊTES MODULAIRES ». Une invite utilisateur demande à Copilot de créer un plan d'implémentation pour un système de quête modulaire pour un RPG en monde ouvert dans Unity, avec dialogue de branchement, dépendances de quête, interactions avec les PNJ, récompenses et outillage de l'éditeur, en référence au fichier EquipmentSlot.cs lignes 9 à 18. La réponse de Copilot explique qu'il lance deux agents de recherche parallèles — l'un explorant les options du système de quêtes Unity en lisant README.md, et l'autre scannant l'architecture du projet en lisant Interactable.cs lignes 1 à 40 — avec un indicateur d'état "Thinking" en bas.

Astuce 2: Mettre en place l'environnement du projet

« Les modèles sous-jacents alimentant GitHub Copilot sont généralement généralistes, mais vous pouvez personnaliser le comportement de Copilot en ajoutant des fichiers de configuration au dossier GitHub de votre projet. Vous pouvez ajouter trois types de fichiers principaux pour aider GitHub Copilot à comprendre votre projet et votre domaine. »

  • Les instructions personnalisées sont un contexte toujours activé que Copilot charge pour chaque session qui définit le niveau de référence de votre projet. Ils doivent inclure vos conventions de codage préférées, les spécifications du projet Unity (par exemple, la version Unity Engine et le pipeline de rendu), les modèles d'architecture et les préférences générales. Utilisez-les pour des choses qui devraient toujours être vraies quelle que soit la partie du projet sur laquelle vous travaillez.
  • Les agents sont des experts du domaine, chacun ayant ses propres outils et instructions dédiés. J'ai des agents concentrés sur les shaders, les UI Toolkit, les systèmes de jeu, etc. Au plus simple, vous choisissez l'agent qui correspond au travail à accomplir, mais vous pouvez ajouter plus de structure en incluant des remises entre agents.
  • Les compétences sont des instructions modulaires et réutilisables qui se chargent uniquement lorsqu'une tâche spécifique les déclenche. La description des compétences se charge à chaque session afin que le modèle sache quand l'appeler, mais les détails complets ne se chargent que lorsqu'ils sont réellement nécessaires. Par exemple, mon agent UI Toolkit appelle des compétences individuelles pour le style, l'écriture UXML et les tâches connexes en fonction de ce qui est nécessaire. Cela permet de garder le contexte mémoire du modèle efficace entre les tâches.
Un panneau de paramètres Visual Studio Code "Personnalisations de l'agent pour local" avec un thème sombre. La barre latérale gauche répertorie les éléments de navigation — Vue d'ensemble, Agents (9), Compétences (32), Instructions, Invites (4), Crochets (2), Serveurs MCP (2) et Plugins (1). La zone de contenu principale affiche une rubrique « Personnalisations des agents pour le local » avec la description « Adaptez le fonctionnement des agents dans vos projets. Configurez les personnalisations de l'espace de travail pour l'ensemble de l'équipe, ou créez-en des personnalisées qui vous suivent dans tous les projets. » Voici une entrée de texte intitulée « Personnaliser votre agent » avec un texte d'espace réservé « Préférez des commits concis, des examens approfondis et du code testé... » Six fiches de fonctionnalités suivent dans une grille — Agents, compétences, instructions, crochets, serveurs MCP et plugins — chacune avec une courte description et un bouton « Nouveau... » ou « Parcourir... ».

Astuce 3: Un grand plan va loin

« Le mode Plan est la première étape avant le début de toute implémentation. Lorsque vous utilisez la commande /plan suivie de vos instructions spécifiques, GitHub Copilot raisonne à travers votre base de code et demande de tracer un chemin d'implémentation avant qu'il n'écrive une seule ligne de code.

Assurez-vous de décrire la fonctionnalité ou de corriger le plus de détails pertinents possible, puis demandez à Copilot d'enquêter et de revenir avec des questions. L'échange vous aidera à réfléchir plus en détail à l'expérience utilisateur et aux fonctionnalités, qui font souvent surface sur les cas de bord. Une fois cette itération effectuée, demandez à l'IA de définir les grandes lignes de l'implémentation, y compris les systèmes existants qu'elle utilise, les nouvelles classes et méthodes que vous devez créer et comment tout cela s'intègre. Alors seulement vous devriez le laisser écrire le code. »

Une zone de saisie de chat Visual Studio Code sur le thème sombre montrant une invite tapée commençant par la commande slash "/plan" (surlignée en bleu) suivie de: "Créer un plan de mise en œuvre pour un système de quête modulaire. Le système devrait prendre en charge le dialogue de branchement, les dépendances de quête, les événements scriptés, les objectifs, les interactions avec les PNJ, les récompenses et l'outillage de l'éditeur. Organiser le travail en jalons, identifier les risques techniques et recommander l'architecture. Posez des questions pour réfléchir à travers le design / cas de bord." La barre d'outils ci-dessous montre le mode Agent, Claude Opus 4.8, le contexte High 1M et une icône de paramètres. La barre d'état en bas affiche Local, Approbations par défaut, Projets: 2, Debug Any CPU, et Solution: starter-project.slnx.

Astuce 4: Ne sautez pas l’examen du code

« Le code généré par l’IA doit être revu, surtout si c’est du code qui reste dans le projet à long terme. Une fois l’implémentation retournée, vous devriez la traiter comme une pull request et la lire. »

« J’ai essayé plusieurs approches différentes avant que VS Code n’envoie la fenêtre de l’agent, et c’est maintenant ce que j’utilise le plus. Je peux surligner du code spécifique et utiliser la commande /Explain pour que l'IA me guide dans ce qu'elle fait, ou la commande /Review pour qu'elle critique le code qu'elle vient d'écrire. À partir de là, je vais ajouter des commentaires en ligne directement dans le diff, comme je le ferais sur une vraie requête pull, et les renvoyer en groupe à l’IA pour itération. »

« Cette habitude est importante car elle maintient le code à mes normes et m’assure de maintenir une compréhension profonde de mes systèmes. Ces connaissances m’aident à prendre les bonnes décisions de conception à mesure que le jeu grandit. »

Un panneau Visual Studio Code intitulé "Active Selection Explanation in C#" montrant la commande /explain slash utilisée sur un extrait de code sélectionné à partir des lignes 9 à 18 d'EquipementSlot.cs. Le code en surbrillance montre une méthode privée OnRightClick(PointerDownEvent evt) vide qui protège contre les non-clics-droits et les éléments nulls, arrête la propagation d'événements, dépose l'élément via DropItem(), et le renvoie à l'inventaire via InventoryWindow.Instance.TryReturnItem(item). En dessous du bloc de code, l'explication de Copilot décrit la méthode en quatre paragraphes: son but en tant que gestionnaire de déséquipement par clic droit, les deux clauses de garde de retour anticipé, pourquoi StopPropagation() empêche les événements d'interface utilisateur en double, et comment DropItem() et TryReturnItem() retirent ensemble l'élément de la fente et le renvoient dans l'inventaire du joueur.

Astuce 5: Utiliser l’IA comme tuteur personnel

« Vous pouvez utiliser GitHub Copilot pour créer un tutoriel personnalisé pour n’importe quel concept Unity que vous souhaitez apprendre. Comme GitHub Copilot peut lire votre projet, vous pouvez lui demander d’adapter la leçon à vos besoins de jeu et à votre niveau de compétence. »

« Je voulais apprendre les shaders depuis longtemps, alors j’ai construit un agent Unity Shader Graph qui se penche fortement sur l’enseignement et je l’ai utilisé pour faire des superpositions de ciblage au sol pour le combat. Quand je rencontrais un concept que je ne comprenais pas bien, je pouvais poser des questions et je ne passais à l'étape suivante que lorsque j'étais prêt. »

« Il est important d’utiliser une série de leçons qui renforcent l’indépendance au fil du temps. Par exemple, je lui ai demandé de fournir des tutoriels guidés pour les deux premiers shaders. Il m'a guidé à travers les nœuds inconnus et les mathématiques afin que je comprenne réellement comment chaque shader fonctionnait. Je voulais construire le troisième shader tout seul, alors quand je suis resté coincé, j'ai juste demandé un indice au lieu de la réponse. Ça m'a donné quelques questions directrices qui m'ont aidé à identifier la prochaine étape, et j'ai continué. À la fin du processus, j’ai compris ce que j’avais créé. »

Un éditeur Shader Graph à thème sombre (probablement Unity Shader Graph ou un outil similaire basé sur des nœuds) montrant un réseau complexe de nœuds interconnectés reliés par des fils sarcelle/cyan. Le graphique est organisé en sections étiquetées, y compris « Cercle extérieur », « Cône » et « Ligne ». Les nœuds affichent divers aperçus de textures intermédiaires — y compris des cercles blancs, noirs et gris, des rampes de dégradés, une forme de cône/larme en plusieurs étapes, des motifs de rayures en noir et blanc et des échantillons de dégradés de couleurs en vert-rouge et noir-rouge. Les nœuds d'annotation jaune fournissent des commentaires descriptifs tout au long du graphique. Le bas à droite montre un panneau "Aperçu principal" rendant la sortie finale: un cercle rouge plein sur un fond sombre. Le panneau de gauche montre les entrées de propriétés shader, y compris Enum Keyword, Float, Boolean et plusieurs paramètres Float.

Regard approfondi avec Stacey et accès bêta à l'IA

Pour une plongée plus profonde, Stacey a partagé plusieurs vidéos couvrant ces sujets sur sa chaîne YouTube. L’accès à l’assistant d’IA d’Unity est disponible dès maintenant en version bêta ouverte. Commencez votre essai gratuit de 14 jours ici.