Запуск Unity
В macOS введите в терминал следующее, чтобы запустить Unity:
/Applications/Unity/Unity.app/Contents/MacOS/Unity
В Windows введите в командной строке следующее, чтобы запустить Unity:
"C:\Program Files\Unity\Editor\Unity.exe"
Когда вы запускаете Unity таким образом, он получает команды и информацию при запуске, что может быть полезно для наборов тестов, автоматических сборок и других производственных задач.
Аргументы конфигурации
Вы можете запускать редактор и создавать приложения Unity с дополнительными командами и информацией при запуске. На этой странице перечислены аргументы командной строки, которые можно использовать для запуска и настройки экземпляра редактора Unity.
Команда | Подробности: |
---|---|
-createProject |
Создайте пустой проект по указанному пути. |
-disable-assembly-updater |
Укажите разделенный пробелами список имен сборок в качестве параметров, которые Unity будет игнорировать при автоматических обновлениях.
Список имен сборок, разделенных пробелами, является необязательным: передайте параметры командной строки без имен сборок, чтобы игнорировать все сборки, как в примере 1. Пример 1 Пример 2 В примере 2 есть два имени сборки, одно с путем. Пример 2 игнорирует Если вы указываете сборку в параметре командной строки
Используйте это, чтобы избежать ненужных накладных расходов API Updater при импорте сборок. Этот аргумент полезен, если вы хотите импортировать сборки, которые обращаются к Unity API, который не требует обновления. Это также полезно при импорте сборок, которые не имеют доступа к API Unity (например, если вы создали часть или весь исходный код вне Unity и хотите импортировать полученные сборки в свой проект Unity). р> Примечание. Если вы отключите обновление любой сборки, которую необходимо обновить, вы можете получить ошибки во время компиляции, во время выполнения или в обоих случаях, которые трудно отследить. |
-disable-gpu-skinning |
Отключение графического процессора (GPU) skinningПроцесс привязки соединений костей к вершинам меша или «кожи» персонажа. Выполняется с помощью внешнего инструмента, такого как Blender или Autodesk Maya. Подробнее См. в Словарь при запуске. |
-executeMethod or -executeMethod
|
Выполните статический метод, как только Unity откроет проект и после завершения необязательного обновления сервера активов. Вы можете использовать это для таких задач, как непрерывная интеграция, выполнение модульных тестов, создание сборок или подготовка данных.
Чтобы вернуть ошибку из процесса командной строки, либо сгенерируйте исключение, из-за которого Unity завершит работу с кодом возврата 1, либо вызовите EditorApplication.Exit с ненулевым кодом возврата. Чтобы передать параметры, добавьте их в командную строку и получите внутри функции с помощью |
-exportPackage |
Экспорт пакета по заданному пути (или набору заданных путей). В этом примере exportAssetPath — это папка (относительно корня проекта Unity) для экспорта из проекта Unity, а exportFileName — имя пакета. Эта опция экспортирует только целые папки за раз. Обычно вам нужно использовать эту команду с аргументом -projectPath . |
-importPackage |
Импортировать заданный пакет ресурсовколлекцию файлов и данных из проектов Unity или элементов проектов, которые сжимаются и хранятся в одном файле, похожем на Zip-файлы, с расширением .unitypackage . Пакеты ресурсов — это удобный способ совместного использования и повторного использования проектов и коллекций ресурсов Unity. ПодробнееСм. в Словарь. Unity не отображает никакого диалога импорта. |
-job-worker-count |
Укажите максимальное количество потоков для Unity JobQueue Число исполнителей заданий. Вы также можете установить это значение как job-worker-count= в boot.config для автономного проигрывателя Unity. |
-logFile |
Укажите, куда Unity записывает автономный файл журнала Editor или Windows/Linux/OSX. Для вывода в консоль укажите - для имени пути. В Windows укажите параметр -, чтобы направить вывод на stdout , который по умолчанию не является консолью. |
-noUpm |
Отключает диспетчер пакетов Unity. |
-openfile |
Откройте проект по пути к сцене или файлу пакета. В качестве альтернативы вы можете использовать аргумент -projectPath . |
-password |
Введите пароль в форму входа во время активации редактора Unity. |
-projectPath |
Откройте проект по указанному пути. Если путь содержит пробелы, заключите его в кавычки. |
-quit |
Выйдите из редактора Unity после завершения выполнения других команд. Это может привести к тому, что сообщения об ошибках будут скрыты (но они по-прежнему будут отображаться в файле Editor.log ). |
-releaseCodeOptimization |
Включает режим оптимизации кода выпуска, переопределяя текущий режим оптимизации кода по умолчанию для сеанса. |
-setDefaultPlatformTextureFormat (Android only) |
Установите текстуру по умолчанию сжатиеМетод хранения данных, который уменьшает объем требуемого места для хранения. См. Сжатие текстур, Сжатие анимации, Сжатие звука, Сжатие компоновки. Посмотрите в Словарь нужный формат, прежде чем импортировать текстуру или создать проект. Это сделано для того, чтобы вам не пришлось снова импортировать текстуру в нужном формате. Доступные форматы: dxt, pvrtc, atc и т. д., etc2 и astc. |
-silent-crashes |
Не позволяйте Unity отображать диалоговое окно, которое появляется при сбое автономного проигрывателя. Этот аргумент полезен, когда вы хотите запускать проигрыватель в автоматизированных сборках или тестах, когда вы не хотите, чтобы диалоговое окно мешало автоматизации. |
-username |
Введите имя пользователя в форму входа во время активации редактора Unity.. |
-vcsMode |
Установите режим контроля версий. Доступные режимы: "Видимые метафайлы" , "Скрытые метафайлы" , Perforce и PlasticSCM . Вы можете использовать дополнительные флаги для заполнения полей конфигурации для данного режима контроля версий. Эти флаги основаны на методе Provider.GetActiveConfigFields. Например, вы можете использовать -vcPerforceUsername , -vcPerforcePassword , -vcPerforceWorkspace и -vcPerforceServer , чтобы задать поля имени пользователя, рабочей области и сервера Perforce.
Примечание. Аргументы Примечание. Аргументы |
-version |
Выведите номер версии редактора Unity в командной строке, не запуская редактор. |
Аргументы пакетного режима
Используйте следующие аргументы для настройки пакетного режима Unity. Пакетный режим позволяет Unity запускать предопределенные задачи без дополнительных входных данных, что делает пакетный режим полезным для автоматизированных задач, таких как тестирование. Дополнительную информацию см. в разделе Пакетный режим и совместимость со встроенными сопрограммами.
Команда | Подробности: |
---|---|
-accept-apiupdate |
Используйте этот параметр командной строки, чтобы указать, что APIUpdater должен запускаться при запуске Unity в пакетном режиме.
Пример:
APIUpdater не запустится, если вы не укажете этот аргумент командной строки при запуске Unity в пакетном режиме. Это может привести к ошибкам компилятора. |
-batchmode |
Запустите Unity в пакетном режиме. В пакетном режиме Unity запускает аргументы командной строки без участия человека. Он также подавляет всплывающие окна, требующие вмешательства человека (например, окно сохранения сцены); однако сам редактор Unity открывается как обычно. Вы всегда должны запускать Unity в пакетном режиме при использовании аргументов командной строки, потому что это позволяет автоматизации работать без перерыва.
Когда во время выполнения кода скрипта возникает исключение, происходит сбой обновления сервера активов или другие операции, Unity немедленно завершает работу с кодом возврата 1. В пакетном режиме Unity отправляет на консоль минимальную версию выходных данных журнала. Однако файлы журнала по-прежнему содержат полную информацию журнала. Вы не можете открыть проект в пакетном режиме, пока тот же проект открыт в Редакторе; одновременно может работать только один экземпляр Unity. Чтобы проверить, работает ли редактор или автономный проигрыватель в пакетном режиме, используйте оператор Application.isBatchMode. Если проект еще не был импортирован при использовании |
-nographics |
Когда вы запускаете это в пакетном режиме, оно не инициализирует графическое устройство. Затем вы можете запускать автоматизированные рабочие процессы на машинах без графического процессора. Автоматизированные рабочие процессы работают только тогда, когда у вас есть окно в фокусе, в противном случае вы не можете отправлять смоделированные команды ввода. -nographics не позволяет запекать GI, потому что Enlightenсистема освещения от Geomerics, используемый в Unity для создания карт освещения и глобального освещения в реальном времени. ПодробнееДля см. Словарь требуется ускорение графического процессора. |
Создать аргументы
Используйте следующие аргументы для создания проигрывателей для различных платформ из командной строки. Дополнительные сведения о создании проигрывателей с аргументами командной строки см. в разделе аргументы командной строки Unity Standalone Player.
Команда | Подробности: |
---|---|
-buildLinux64Player |
Создайте 64-разрядный автономный проигрыватель Linux (например, -buildLinux64Player path/to/your/build ). |
-buildOSXUniversalPlayer |
Создайте 64-разрядный автономный проигрыватель Mac OSX (например, -buildOSXUniversalPlayer path/to/your/build.app ). |
-buildTarget |
Выберите активную цель сборки перед загрузкой проекта. Возможные варианты:
• Standalone |
-buildWindowsPlayer |
Создайте 32-разрядный автономный проигрыватель Windows (например, -buildWindowsPlayer path/to/your/build.exe). |
-buildWindows64Player |
Создайте 64-разрядный автономный проигрыватель Windows (например, -buildWindows64Player path/to/your/build.exe). |
Кэшировать аргументы сервера
Используйте следующие аргументы, чтобы настроить использование Unity сервера кэширования. Дополнительную информацию см. в разделе Кэш-серверАвтономное приложение, которое можно запустить на локальном компьютер, на котором хранятся данные импортированных активов, чтобы сократить время, необходимое для импорта активов. Подробнее
См. в Словарь.
Команда | Подробности: |
---|---|
-EnableCacheServer |
Сообщает Unity, что нужно использовать более новый Accelerator Cache Server. Вы также должны использовать -cacheServerEndpoint , чтобы указать адрес. |
-cacheServerEndpoint |
Указывает адрес конечной точки, если вы используете новый сервер кэширования Accelerator.
Пример: |
-cacheServerNamespacePrefix |
Установите префикс пространства имен для более нового сервера кэширования Accelerator. Используется для группировки данных на сервере кэширования.
Пример: |
-cacheServerEnableDownload |
Включите загрузку с нового кэш-сервера Accelerator.
Пример: |
-cacheServerEnableUpload |
Включите загрузку на более новый сервер кэширования Accelerator.
Пример: |
-CacheServerIPAddress |
Позволяет использовать старый (v1) сервер кэширования и указывает IP-адрес для подключения при запуске. Это переопределяет любую конфигурацию, хранящуюся в настройках редактора. Используйте это для подключения нескольких экземпляров Unity к разным серверам кэширования v1.. |
Аргументы отладки
Команда | Подробности: |
---|---|
-disableManagedDebugger |
Отключает сокет прослушивания отладчика. |
-diag-debug-shader-compiler |
Unity запускает только один экземпляр программы ShaderA, работающей на графическом процессоре. Подробнее См. в Словарь Компилятор, и устанавливает время ожидания равным единице час. Полезно для отладки проблем компилятора шейдеров. |
-debugCodeOptimization |
Включает режим оптимизации кода отладки, переопределяя текущий режим оптимизации кода по умолчанию для сеанса.. |
-enableCodeCoverage |
EВключает покрытие кода и предоставляет доступ к Coverage API. |
-stackTraceLogType |
Разрешить детальную отладку. Все настройки позволяют выбрать Нет, Только скрипт и Полный (например, -stackTraceLogType Full код>). |
Аргументы API графики
Используйте следующие аргументы, чтобы заставить редактор Unity использовать определенный графический API.
Команда | Подробности: |
---|---|
-force-d3d11 (Windows only) |
Заставьте редактор использовать Direct3D 11 для рендерингапроцесса вывода графики на экран (или текстуры рендеринга). По умолчанию основная камера в Unity отображает изображение на экране. Подробнее См. в Словарь. Обычно графический API зависит от настроек игроканастроек, которые позволяют вам устанавливать различные параметры для конкретного игрока для окончательной игры, созданной Единство. Подробнее См. в Словарь (обычно по умолчанию используется D3D11). |
-force-d3d12 (Windows only) |
Заставьте редактор использовать Direct3D 12 для рендеринга. Обычно графический API зависит от настроек проигрывателя. |
-force-glcore |
Заставьте редактор использовать основной профиль OpenGL 3/4 для рендеринга. Редактор пытается использовать наилучшую доступную версию OpenGL и все расширения OpenGL, предоставляемые драйверами OpenGL. Если платформа не поддерживается, редактор использует Direct3D. |
-force-glcoreXY |
Аналогичен -force-glcore , но запрашивает конкретную версию контекста OpenGL. Допустимые значения для XY: 32, 33, 40, 41, 42, 43, 44 или 45. |
-force-gles (Windows only) |
Заставьте редактор использовать OpenGL для встроенных систем для рендеринга. Редактор пытается использовать лучшую доступную версию OpenGL ES и все расширения OpenGL ES, предоставляемые драйверами OpenGL. |
-force-glesXY (Windows only) |
Аналогичен -force-gles , но запрашивает конкретную версию контекста OpenGL ES. Допустимые значения для XY: 30, 31 или 32. |
-force-vulkan |
Заставьте редактор использовать Vulkan для рендеринга. Обычно графический API зависит от настроек проигрывателя.. |
-force-clamped |
Используйте это с -force-glcoreXY , чтобы запретить Unity проверять наличие дополнительных расширений OpenGL, что позволит ему работать между платформами с одинаковыми путями кода. |
Аргументы лицензии
Используйте следующие аргументы для обработки лицензии Unity или запуска редактора Unity с другими вариантами лицензии.
Команда | Подробности: |
---|---|
-createManualActivationFile |
Шаг первый из трехшагового процесса, чтобы вручную активировать лицензию Unity. Дополнительные сведения см. в разделе Создание файла активации лицензии (.alf) из командной строки. |
-force-free |
Запустите редактор так, как если бы на компьютере была установлена бесплатная лицензия Unity, даже если установлена лицензия Unity Pro. |
-manualLicenseFile |
Третий шаг трехшагового процесса активации лицензии Unity вручную. Дополнительные сведения см. в разделе Создание файла активации лицензии (.alf) из командной строки. |
-returnlicense |
Верните текущую активную лицензию на сервер лицензий. Дополнительную информацию см. в разделе Возврат лицензии. |
-serial |
Активируйте лицензию Unity с указанным серийным номером. Дополнительные сведения см. в разделе Активация лицензии из командной строки.
Примечание. При использовании этого аргумента необходимо также использовать аргумент |
Металлические аргументы (только для macOS)
Используйте следующие аргументы, чтобы настроить использование Unity графического API Metal для устройств Apple.
Команда | Подробности: |
---|---|
-force-device-index |
При использовании Metal заставьте редактор использовать конкретное устройство графического процессора, передав ему индекс этого графического процессора (только для macOS). |
-force-low-power-device (macOS only) |
Если вы используете Metal, заставьте редактор использовать устройство с низким энергопотреблением. |
-force-metal |
Заставьте редактор использовать Metal в качестве графического API по умолчанию (только для macOS). |
Аргументы профайлера
Используйте следующие аргументы, чтобы настроить использование Unity Profilerокна, которое поможет вам оптимизировать вашу игру. Он показывает, сколько времени вы тратите на различные области вашей игры. Например, он может сообщать о проценте времени, затраченном на рендеринг, анимацию или игровую логику. Подробнее
См. в Словарь.
Команда | Подробности: |
---|---|
-deepprofiling |
Включите параметр Deep Profiling для профилировщика процессора.. |
-profiler-enable |
Профилируйте запуск Player или Editor. Использование этого аргумента с проигрывателем дает тот же эффект, что и создание проигрывателя с включенным параметром Autoconnect Profiler в настройках сборки.
При использовании этого аргумента с редактором он начинает собирать и отображать информацию профилировщика в окне профилировщика при запуске редактора. |
-profiler-log-file |
Tего аргумент настраивает профайлер Unity для потоковой передачи данных профиля в файл .raw при запуске. Это работает как для игроков, так и для редактора. |
-profiler-capture-frame-count |
Этот аргумент устанавливает, сколько кадров Profiler должен захватить в профиле при потоковой передаче в файл .raw при запуске. Работает только на игроках. |
-profiler-maxusedmemory |
По умолчанию maxUsedMemory для Unity Profiler составляет 16 МБ для проигрывателей и 256 МБ для редактора. Вы можете использовать этот аргумент, чтобы задать для параметра maxUsedMemory нестандартный размер при запуске (например, -profiler-maxusedmemory 16777216 ). Размер задается в байтах. |
Примеры
*Скрипт C# в проекте:*
using UnityEditor;
class MyEditorScript
{
static void PerformBuild ()
{
string[] scenes = { "Assets/MyScene.unity" };
BuildPipeline.BuildPlayer(scenes, ...);
}
}
Следующая команда запускает Unity в пакетном режиме, выполняет метод MyEditorScript.PerformBuild
и после завершения завершает работу.
Windows:
"C:\Program Files\Unity\Editor\Unity.exe" -quit -batchmode -projectPath "C:\Users\UserName\Documents\MyProject" -executeMethod
MyEditorScript.PerformBuild
macOS:
/Applications/Unity/Unity.app/Contents/MacOS/Unity -quit -batchmode -projectPath ~/UnityProjects/MyProject -executeMethod
MyEditorScript.PerformBuild
Специальные аргументы командной строки редактора Unity
Вы должны использовать их только при особых обстоятельствах или по указанию службы поддержки Unity.
Команда | Подробности: |
---|---|
-enableIncompatibleAssetDowngrade |
Используйте это, если у вас есть активы, созданные в более новой несовместимой версии Unity, которые вы хотите понизить для работы с вашей текущей версией Unity. Когда вы включаете это, Unity представляет вам диалоговое окно с запросом на подтверждение этого понижения, если вы пытаетесь открыть проект, для которого это требуется.
Примечание. Эта процедура не поддерживается и очень рискованна, и ее следует использовать только в крайнем случае. |
Дополнительные аргументы редактора из пакетов
При установке этих пакетов доступны дополнительные аргументы командной строки редактора.
Package | Подробности: |
---|---|
Burst | См. документацию по пакету Burst. |
Test Framework | См. документацию по пакету Unity Test Framework. |