5 tips for speeding up your XR dev workflows with Unity CLI
Dilmer Valecillos - Meta
Developer Advocate
Эта веб-страница была переведена с помощью машинного перевода для вашего удобства. Мы не можем гарантировать точность или надежность переведенного контента. Если у вас есть вопросы о точности переведенного контента, обращайтесь к официальной английской версии веб-страницы.
После запуска Unity CLI мы наблюдаем большой энтузиазм и множество интересных вариантов его использования. Мы также создали вводный видеоурок , который поможет вам начать работу.
В предыдущей публикации мы рассказывали о Стейси Хаффнер, бывшем ведущем евангелисте разработчиков в Microsoft и разработчике инди-игр, которая поделилась своими лучшими рекомендациями по организации рабочего процесса в GitHub Copilot.
В сегодняшней статье мы пообщались с Дилмером Валесильосом , представителем разработчиков в Meta, основателем Learn XR и создателем популярного YouTube-канала, посвященного XR и разработке игр. Мы спросили его: Назовите пять ключевых способов интеграции Unity CLI в ваши любимые инструменты и рабочие процессы XR .
Давайте рассмотрим советы Дилмера:
Совет 1: Используйте новый интерфейс командной строки Unity и пакет конвейера через MCP.
«Как один из первых пользователей новых технологий, я постоянно ищу способы оптимизировать свои рабочие процессы в XR , и с момента выхода сервера Unity MCP я работаю с ним». Однако я рекомендую отказаться от MCP и использовать новый CLI Unity и пакет конвейера. Интерфейс командной строки имеет собственный встроенный MCP-сервер, использующий тот же протокол. Это означает, что ваш клиент MCP сможет подключаться без проблем, как и сейчас. Этот новый интерфейс командной строки и его модуль MCP также предоставляют ряд преимуществ. Для меня наиболее важным является то, что это обеспечивает значительно более быстрое время итерации за счет использования компилятора Roslyn для оценки кода. Это устраняет необходимость в перекомпиляции редактора и перезагрузке домена, а также расширяет поддержку целевых сред выполнения наряду с редактором. Процесс установки прост, и я недавно опубликовал видео с пошаговой демонстрацией, которое вы можете посмотреть здесь . Однако истинное преимущество агентских рабочих процессов заключается в их сочетании с пакетом Pipeline, который позволяет взаимодействовать с редактором.
Установка CLI + пакета Pipeline
Мы не будем подробно описывать процесс установки, но вы можете найти эту информацию здесь:
https://docs.unity.com/en-us/unity-cli
Совет 2: Ознакомьтесь с основными командами.
«Вы можете сэкономить время, ознакомившись с некоторыми основными командами командной строки». Необязательно запоминать все, но знание нескольких основных моментов сэкономит время, поскольку вы сможете пропустить этапы пользовательского интерфейса. Вот несколько основных команд, которые я постоянно использую.
Позвольте мне начать с:
unity command --changelog
«Поскольку интерфейс командной строки часто обновляется, полезно следить за списком изменений». В нем кратко изложены последние изменения, что позволяет легко понять, какие новые функции становятся доступны по мере развития интерфейса командной строки. Как человек, стремящийся использовать самые новые функции, я обращаю на это особое внимание.
Команда Unity `eval "return UnityEditor.EditorApplication.isPlaying;"`
Команда `eval` — пожалуй, самая мощная из всех команд, которые вы найдете. Когда пакет Unity Pipeline запущен внутри вашего редактора, CLI может компилировать и запускать фрагменты кода C# в режиме реального времени в основном потоке с помощью Roslyn. Поскольку отсутствует перекомпиляция на уровне проекта и перезагрузка домена, выполнение происходит за миллисекунды, а не заставляя вас ждать. Вы можете использовать это для запуска автоматизированных скриптов настройки, запросов к редактору состояний или даже выполнения файлов скриптов C# с вашего диска с помощью команды Unity eval_file "path/to/script.cs"
unity install 6000.5.0f1 -m android android-sdk-ndk-tools --cm --accept-eula --yes
Ещё один простой совет: вы можете использовать команды с заданными параметрами. Возьмем, к примеру, команду установки: поскольку я предпочитаю использовать последнюю версию Unity, мне часто приходится ее устанавливать. Например, при использовании команды установки можно добавить команды в очередь, как показано в примере выше.

Справочник по интерфейсу командной строки Unity (CLI)
Полное справочное руководство доступно здесь:
https://docs.unity.com/en-us/unity-cli/unity-cli-reference
Совет 3: Попробуйте разные программы магистратуры.
«Хотя для многих разработчиков использование одного инструмента является приемлемым вариантом, я предпочитаю экспериментировать с различными решениями». Для нас в Meta важно интегрировать инструменты, с которыми вы предпочитаете работать, непосредственно в ваши основные редакторы, такие как Cursor, Claude Code и Muse Code. Поскольку интерфейс командной строки Unity поддерживает множество клиентов, обязательно свяжите его с выбранной вами программой LLM. В настоящее время я использую комбинацию Кодекса Клода и Кодекса, но регулярно меняю их. Ещё один совет по организации рабочего процесса — использовать разные инструменты, например, один LLM для написания кода, а другой — для проверки кода.
Совет 4: Создавайте рабочие сборки Quest быстрее с помощью инструментов искусственного интеллекта от Meta.
«Программисты-ассистенты в программировании на удивление уверены в своих способностях к виртуальной реальности, и на удивление часто ошибаются». Спросите кого-нибудь о отслеживании движений рук или о том, как уменьшить количество вызовов для отрисовки, и вы, как правило, получите ответ, который подходит для мобильных устройств, но не подходит для Quest. В этом нет никакой вины модели. В нем нет наших документов, и он не распознает вашу гарнитуру. Именно этот пробел я и пытаюсь заполнить с помощью Meta VR CLI .
Meta VR CLI предоставляет вашему ассистенту обе эти возможности, и он поставляется со своим собственным MCP-сервером, поэтому он интегрируется с любым клиентом, который вы уже используете, будь то Codex, Cursor, Claude Code, Gemini или VS Code:
metavr mcp install claude-code # или cursor, vscode, project
«Как только связь установлена, ответы меняются». Если вы спросите о сквозном доступе к камере, система запросит актуальную документацию, а не будет гадать, основываясь на информации, полученной год назад. А поскольку оно может взаимодействовать с устройством, оно гораздо реже останавливается на предложенных вариантах. Программа устанавливает сборку, отслеживает состояние logcat во время воспроизведения ошибки и делает скриншоты того, что я вижу в гарнитуре, а не того, что, по мнению игрового режима, я вижу. «Последняя вещь сэкономила мне больше циклов включения и выключения гарнитуры, чем что-либо еще в моей системе».
Ещё два момента стоит учесть, прежде чем писать строку кода. Инструмент настройки проекта проверяет ваш проект на соответствие реальным требованиям Quest и исправляет ошибки конфигурации, так что вы узнаете об этом сейчас, а не во время сборки. Библиотека Meta Asset Library содержит 1,5 миллиона бесплатных 3D ресурсов с уже созданными уровнями детализации (LOD), которые можно использовать в SDK. Ваш агент может осуществлять поиск непосредственно через интерфейс командной строки Meta VR, поэтому вам никогда не придется ограничиваться временными изображениями, созданными только для проверки идеи.
Совет 5: Позвольте агентам помочь вам в составлении профиля эффективности.
«Производительность — это та часть разработки VR, о которой вас никто не предупреждает». Вы создаёте что-то, что отлично работает в редакторе, а затем запускаете это на своём устройстве и видите, как оно разваливается. А процесс исправления этой проблемы всегда был очень сложным: захватить трассировку, загрузить её в Perfetto, а затем прокручивать список, пытаясь определить, какой из этих тысяч фрагментов приводит к потере кадров. Я таким образом терял целые послеполуденные часы.
Именно этот замкнутый круг призваны разорвать новые команды perf в интерфейсе командной строки Meta VR. Вы можете захватывать данные с подключенного Quest, просто описав, что вам нужно, например, «сделать 15-секундный захват с данными GPU», и агент выполнит захват и считывает результат, выявляя скачки времени кадра и узкие места CPU/GPU за считанные секунды, а не после целого дня прокрутки.
metavr perf capture --mode full --duration 15000 --app com.mycompany.myvrapp --output my_vr_trace
«Дело не в том, что ИИ находит то, чего вы сами не смогли бы найти. Дело в том, что чтение трассировки — это именно та работа, для которой она хорошо подходит: большой объем неструктурированных данных и закономерности, которые в противном случае пришлось бы искать вручную. Это позволяет вам высвободить это время и потратить его на сам ремонт.
Внутри Unityоптимизатор среды выполнения Quest решает ту же проблему, но с другой стороны. Анализ узких мест обрабатывает захваченные данные времени выполнения, выявляет проблемы и предлагает варианты решения; анализ «Что если» позволяет сравнивать производительность отдельных GameObjects, чтобы увидеть, во сколько вам обходится каждый из них. А если вы предпочитаете работать руками, то уже знакомые вам инструменты по-прежнему доступны и по-прежнему эффективны: OVRMetrics для отображения данных в гарнитуре, форк RenderDoc для Meta Quest для отладки кадров, а также наши улучшения Perfetto и собственный профилировщик Unity.
«Как бы вы ни пришли к этой цели, она одна и та же: меньше времени на доказательство наличия проблемы, больше времени на ее решение».
Если вас интересует тема оптимизации производительности, мы настоятельно рекомендуем нашу электронную книгу по этой теме. Электронную книгу можно скачать бесплатно здесь .

Следите за Дилмером
Если эти советы оказались вам полезными и вы хотите узнать больше, обязательно свяжитесь с Дилмером в X или LinkedIn и подпишитесь на его канал на YouTube . Чтобы узнать больше о CLI, ознакомьтесь с нашей официальной документацией здесь .