5 советов по использованию GitHub Copilot с Unity

STACEY HAFFNER / UNITY TECHNOLOGIESContributor
Aug 11, 2026|5 MIN
Встроенная панель редактора кода в темной теме, отображающая вверху ссылку на файл C# с меткой "EquipmentSlot.cs:9-18", текстовое поле ввода с текстом-заполнителем "Опишите, что нужно построить", и нижнюю панель инструментов с кнопками добавления (+), режима агента, автоматического режима, значком настроек/фильтра и кнопкой остановки.
Эта веб-страница была переведена с помощью машинного перевода для вашего удобства. Мы не можем гарантировать точность или надежность переведенного контента. Если у вас есть вопросы о точности переведенного контента, обращайтесь к официальной английской версии веб-страницы.

Теперь, когда инструменты искусственного интеллекта Unity доступны в бета-версии , мы наблюдаем большой интерес к их новым функциям, а именно к встроенному в редактор помощнику на основе ИИ и его интеграции с популярными инструментами для разработчиков. Если вы впервые участвуете в бета-тестировании, вы можете узнать больше на веб-странице, посвященной инструментам искусственного интеллекта . Мы также создали серию видеоуроков , чтобы помочь вам освоить основные функции программы.

Мы побеседовали со Стейси Хаффнер о том, как она использует GitHub Copilot с Unity для оптимизации рабочих процессов разработки игр. Стейси — бывший ведущий специалист по взаимодействию с разработчиками в Microsoft, а также видеоблогер с более чем десятилетним опытом работы независимым разработчиком игр. Ее опыт охватывает технологии для разработчиков, включая .NET, Xbox и Unity. В свободное от работы время она занимается защитой интересов разработчиков, управляет собственной инди-студией и публикует раз в две недели обучающие материалы по разработке игр.

Давайте начнём.

Совет 1: Работайте с контекстным окном, а не против него.

«Контекстное окно — это рабочая память ИИ для сессии, которая имеет свои ограничения». В зависимости от используемой базовой модели, производительность может начать снижаться еще до достижения предела, поэтому точность ответов может снижаться по мере продолжения сессии. GitHub Copilot помогает в этом, позволяя сжимать сессию, но если вы запускаете сжатие после того, как базовая модель уже начала деградировать, деградировавшее состояние становится вашей новой базовой версией. Поэтому я рекомендую с самого начала выстраивать свой рабочий процесс, ориентируясь на это ограничение.

«Для более сложных функций я использую основной чат для координации этой работы». Для реализации масштабной функции я настрою основной поток на разбиение работы на отдельные, целенаправленные части, а затем запущу фоновые агенты для обработки каждой из них. Программист занимается реализацией, агент проверки проверяет её, и как только проверка проходит успешно, цикл повторяется до тех пор, пока функция не будет завершена. Каждый агент работает в своем собственном контексте, поэтому основной поток остается сфокусированным и стабильно функционирует в течение более длительного времени.

Окно Visual Studio Code, отображающее панель чата GitHub Copilot с заголовком «ПЛАН РЕАЛИЗАЦИИ МОДУЛЬНОЙ СИСТЕМЫ ЗАДАНИЙ». Пользовательское сообщение просит Copilot создать план реализации модульной системы квестов для ролевой игры с открытым миром в Unity, включающий разветвлённые диалоги, зависимости квестов, взаимодействие с NPC, награды и инструменты редактора, со ссылкой на файл EquipmentSlot.cs, строки 9–18. В ответе Copilot поясняется, что запускаются два параллельных исследовательских агента — один изучает варианты системы заданий Unity , читая файл README.md, а другой сканирует архитектуру проекта, читая строки 1–40 файла Interactable.cs, — с индикатором статуса «Размышление» внизу.

Совет 2: Настройте среду проекта.

«В основе GitHub Copilot лежат универсальные модели, но вы можете настроить поведение Copilot, добавив файлы конфигурации в папку .github вашего проекта». Вы можете добавить три основных типа файлов, чтобы помочь GitHub Copilot понять ваш проект и вашу предметную область.

  • Пользовательские инструкции — это постоянно доступный контекст, который Copilot загружает для каждой сессии и который определяет базовую конфигурацию вашего проекта. Они должны включать ваши предпочтительные соглашения о кодировании, спецификации проекта Unity (например, версию Unity Engine и конвейер рендеринга), архитектурные шаблоны и общие предпочтения. Используйте их для условий, которые всегда должны выполняться независимо от того, над какой частью проекта вы работаете.
  • Агенты — это эксперты в своей области, каждый из которых обладает собственными инструментами и инструкциями. У меня есть агенты, специализирующиеся на шейдерах, инструментарии пользовательского интерфейса, игровых системах и так далее. В самом простом случае вы выбираете агента, соответствующего выполняемой работе, но можно добавить больше структуры, включив передачу задач между агентами.
  • Навыки представляют собой модульные, многократно используемые инструкции, которые загружаются только тогда, когда их запускает конкретная задача. Описание навыка загружается в каждой сессии, чтобы модель знала, когда его нужно вызвать, но полные подробности загружаются только тогда, когда они действительно необходимы. Например, мой агент UI Toolkit вызывает отдельные навыки для стилизации, написания UXML-кода и выполнения связанных задач в зависимости от потребностей. Это обеспечивает эффективное использование памяти моделью между задачами.
Панель настроек "Agent Customizations for Local" в Visual Studio Code с темной темой. В левой боковой панели перечислены пункты навигации: Обзор, Агенты (9), Навыки (32), Инструкции, Подсказки (4), Перехватчики (2), Серверы MCP (2) и Плагины (1). В основной области контента отображается заголовок «Настройки агентов для локальной сети» с описанием «Настройте работу агентов в ваших проектах». Настройте параметры рабочего пространства для всей команды или создайте персональные параметры, которые будут действовать во всех проектах. Ниже находится текстовое поле с заголовком «Настройте своего агента» и текстом-заполнителем «Предпочитаю краткие коммиты, тщательные проверки и протестированный код…». Далее следуют шесть карточек с функциями в виде сетки — Агенты, Навыки, Инструкции, Хуки, Серверы MCP и Плагины — каждая с кратким описанием и кнопкой «Новый…» или «Обзор…».

Совет 3: Хороший план может многое изменить.

«Планирование — это первый шаг перед началом любой реализации». Когда вы используете команду /plan, а затем указываете свои конкретные инструкции, GitHub Copilot анализирует ваш код и запрашивает план реализации, прежде чем написать хотя бы одну строку кода.

Обязательно опишите проблему или исправление как можно подробнее, затем попросите Copilot провести расследование и вернуться с вопросами. Обмен опытом поможет вам более детально продумать пользовательский опыт и функциональность, что часто приводит к выявлению нестандартных ситуаций. После завершения этой итерации поручите ИИ определить основные этапы реализации, включая используемые существующие системы, необходимые для создания новые классы и методы, а также то, как все это будет взаимодействовать друг с другом. Только после этого следует позволить программе написать код.

В Visual Studio Code отображается поле ввода чата в темной теме, начинающееся с команды "/plan" (выделена синим цветом), за которой следует: «Разработайте план внедрения модульной системы заданий». Система должна поддерживать разветвлённые диалоги, зависимости между заданиями, скриптовые события, цели, взаимодействие с NPC, награды и инструменты редактора. Организуйте работу по этапам, выявите технические риски и порекомендуйте архитектуру. Задавайте вопросы, чтобы продумать дизайн и возможные нестандартные ситуации. На панели инструментов ниже отображаются режим агента, Claude Opus 4.8, контекст High 1M и значок настроек. В строке состояния внизу отображаются следующие элементы: Локальные, Утверждения по умолчанию, Проекты: 2. Отладка любого процессора, решение: starter-project.slnx.

Совет 4: Не пропускайте проверку кода.

«Код, сгенерированный искусственным интеллектом, нуждается в проверке, особенно если он остается в проекте надолго». После того, как реализация будет завершена, следует рассматривать её как запрос на слияние и внимательно её изучить.

«До появления окна агента в VS Code я пробовал несколько разных подходов к этому вопросу, и теперь чаще всего использую именно его». Я могу выделить определенный фрагмент кода и использовать команду /Explain, чтобы ИИ пошагово объяснил, что он делает, или команду /Review, чтобы он проанализировал только что написанный код. После этого я буду добавлять комментарии непосредственно в изменения, как это делаю в реальном запросе на слияние, и отправлять их обратно в сборку ИИ для дальнейшей доработки.

«Эта привычка важна, потому что она позволяет поддерживать код в соответствии с моими стандартами и гарантирует глубокое понимание моих систем». Эти знания помогают мне принимать правильные дизайнерские решения по мере развития игры.

Панель Visual Studio Code под названием «Пояснение активного выделения в C#» показывает использование команды /explain (косая черта) для выделенного фрагмента кода из файла EquipmentSlot.cs, строки 9–18. Выделенный фрагмент кода демонстрирует приватный метод OnRightClick(PointerDownEvent evt), который защищает от щелчков правой кнопкой мыши и null элементов, останавливает распространение события, перетаскивает элемент с помощью DropItem() и возвращает его в инвентарь с помощью InventoryWindow.Instance.TryReturnItem(item). Ниже блока кода в четырех абзацах приводится объяснение Copilot, описывающее метод: его назначение как обработчика снятия экипировки по щелчку правой кнопкой мыши, два защитных условия раннего возврата, почему StopPropagation() предотвращает дублирование событий пользовательского интерфейса, а также как DropItem() и TryReturnItem() вместе удаляют предмет из слота и возвращают его в инвентарь игрока.

Совет 5: Используйте ИИ в качестве личного репетитора.

«Вы можете использовать GitHub Copilot для создания собственного обучающего руководства по любой концепции Unity , которую хотите изучить». Поскольку GitHub Copilot может читать ваш проект, вы можете попросить его адаптировать урок к потребностям вашей игры и вашему уровню навыков.

«Я давно хотел изучить шейдеры, поэтому создал агента Unity Shader Graph , который активно занимается обучением, и использовал его для создания наложений для прицеливания по земле в бою». Когда я сталкивался с концепцией, которую не до конца понимал, я мог задавать вопросы и переходил к следующему шагу только тогда, когда был к этому готов.

«Важно использовать серию уроков, которые со временем способствуют развитию самостоятельности». Например, я попросил его предоставить пошаговые инструкции для первых двух шейдеров. Это помогло мне разобраться с незнакомыми узлами и математическими вычислениями, так что я действительно понял, как работает каждый шейдер. Я хотел самостоятельно создать третий шейдер, поэтому, когда застрял, просто попросил подсказку, а не готовый ответ. Это дало мне несколько наводящих вопросов, которые помогли определить следующий шаг, и я продолжил двигаться вперед. К концу процесса я наконец понял, что именно создал.

Редактор графов шейдеров в темной теме (вероятно, Unity Shader Graph или аналогичный инструмент на основе узлов), демонстрирующий сложную сеть взаимосвязанных узлов, соединенных бирюзовыми/голубыми проводами. График разбит на обозначенные секции, включая «Внешний круг», «Конус» и «Линия». Узлы отображают различные промежуточные варианты текстур, включая белые, черные и серые круги, градиентные шкалы, конусообразную/каплевидную форму в несколько этапов, черно-белые полосатые узоры и образцы цветовых градиентов от зеленого к красному и от черного к красному. Желтые аннотационные узлы содержат описательные комментарии по всему графу. В правом нижнем углу отображается панель «Предварительный просмотр», демонстрирующая окончательный результат: сплошной красный круг на темном фоне. На левой панели отображаются входные параметры свойств шейдера, включая ключевые слова типа Enum, значения типа Float, логические значения (Boolean) и несколько параметров типа Float.

Подробный обзор Stacey и доступ к бета-версии ИИ.

Для более подробного изучения этих тем Стейси опубликовала несколько видеороликов на своем YouTube-канале . Доступ к встроенному в редактор ИИ-помощнику Unity уже открыт в режиме открытого бета-тестирования. Начните бесплатную 14-дневную пробную версию здесь .