5 conseils pour utiliser GitHub Copilot avec Unity

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. »

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.

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. »

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. »

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éé. »

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.
