Unity 6.3
0 онлайн 3 гостей 3 в системе
Вход

Unity Editor ссылка на аргументы командной строки

Вы можете запустить Unity Editor и Player с дополнительными аргументами командной строки для управления поведением при запуске, настройки параметров или автоматизации рабочих процессов.

Чтобы использовать эти аргументы, добавьте их к пути исполняемого файла Unity при запуске из терминала или командной строки. Например: unity.exe -batchmode -quit -executeMethod MyClass.MyMethod.

Дополнительные сведения см. в Запуск Unity из интерфейс командной строки.

Аргументы конфигурации

Вы можете запустить Unity Editor и создать Unity приложения с дополнительными командами и информацией о запуске. На этой странице перечислены аргументы командной строки, которые можно использовать для запуска и настройки экземпляров Unity Editor и Unity Player.

Команда Описание
-createProject <pathname> Создать пустой проект в указанном пути.
-cloneFromTemplate <template-path> Используйте -cloneFromTemplate в сочетании с -createProject для создания нового проекта в пути, указанном -createProject, используя архив шаблона или каталог, указанный -cloneFromTemplate.

Пример (Windows):
-createProject "C:\Projects\MyProject" -cloneFromTemplate "C:\Path\To\Templates\com.unity.template.urp-blank-17.1.0.tgz"
Пример (macOS):
-createProject "/Users/username/Projects/MyProject" -cloneFromTemplate "/Users/username/Library/Application Support/UnityHub/Templates/com.unity.template.urp-blank-17.1.0.tgz"
Пример (Linux):
-createProject "/home/username/Projects/MyProject" -cloneFromTemplate "/home/username/.config/UnityHub/Templates/com.unity.template.urp-blank-17.1.0.tgz"
-consistencyCheck Выполняет проверку согласованности импортера при запуске Редактора. По умолчанию Unity выполняет проверку local, которая заставляет повторно импортировать все ресурсы локально. Она также проверяет, отличается ли импорт от предыдущего импорта.

Примечание: Режим проверки согласованности отключает загрузки в Unity Ускоритель и предназначен для проверки детерминированности вывода импортера. Дополнительные сведения см. в описании -consistencyCheckSourceMode.
-consistencyCheckSourceMode string Задает источник для проверки при сравнении Unity импортов ассетов. Выберите одно из следующих значений:
  • local: Принуждает к повторному импорту всех ассетов локально и проверяет, отличается ли импорт от предыдущего импорта.
  • cacheserver: Если вы включили Unity Ускоритель, эта опция получает метаданные для активов с сервера кэша и сравнивает, соответствуют ли результаты локально тому, что находится на сервере кэша. Эта опция реимпортирует только те ассеты, которые имеют присутствие на сервере кэша. Если проверка согласованности успешна, то первоначальный результат импорта сохраняется, и загрузка не требуется, так как результат согласован и уже кэшируется. Если проверка не удаётся, то в журнал редактора записывается сообщение о том, что импорт не удался. Несогласованный результат не загружается, чтобы предотвратить отравление кэша.
Более подробную информацию см. Проверка согласованности импортера.
-disable-assembly-updater <assembly1 assembly2> Укажите разделенный пробелами список имен сборок в качестве параметров для Unity, которые будут игнорироваться при автоматическом обновлении.

Список имен сборок, разделенный пробелами, необязателен: передавайте параметры командной строки без названий сборок, чтобы игнорировать все сборки, как в примере 1.

Пример 1
unity.exe -disable-assembly-updater

Пример 2
unity.exe -disable-assembly-updater A1.dll subfolder/A2.dll

В примере 2 имеются два имени сборки, одно из которых содержит имя пути. A1.dll, независимо от того, в какой папке он хранится, и игнорирует A2.dll только если он хранится под subfolder папка:

Если вы перечислите сборку в -disable-assembly-updater параметр командной строки (или если вы не указываете сборки), Unity регистрирует следующее сообщение в Editor.log:

[Assembly Updater] warning: Ignoring assembly [assembly_path] as requested by command line parameter.”).

Используйте это, чтобы избежать ненужного API Обновитель накладные расходы при импорте сборок.

Этот аргумент полезен, если вы хотите импортировать сборки, которые имеют доступ к Unity API, которые не нуждаются в обновлении. Он также полезен, когда вы импортируете сборки, которые не имеют доступа к Unity APIs (например, если вы построили часть или весь исходный код вне Unity и хотите импортировать полученные сборки в свой проект Unity).

Примечания::
  • Если отключить обновление любой сборки, которая нуждается в обновлении, могут возникнуть ошибки во время компиляции, выполнения или в обоих случаях, которые трудно отслеживать.
  • Этот аргумент отключает только компонент AssemblyUpdater обновителя API Обновитель. Компонент ScriptUpdater обновителя API Updater по-прежнему запускается для кода в вашем проекте, включая пакеты, если вы не запустили Редактор в пакетном режиме без аргумента -accept-apiupdate. Дополнительные сведения см. в Arguments Batch mode.
-disable-gpu-skinning Отключить скининг графического процессора (GPU) при запуске.
-disable-playback-engines <PlaybackEngineNames> Отключить указанные движки воспроизведения (модули сборки).

Этот аргумент полезен для предотвращения создания Unity метаданных платформы для нецелевых платформ, что устраняет необходимость удаления модулей сборки для того же результата.

Этот аргумент не ограничивает количество передаваемых параметров. Параметры должны соответствовать имени каталога установки модуля сборки и учитывать регистр.

Пример
unity.exe -disable-playback-engines AndroidPlayer iOSSupport
-executeMethod <ClassName.MethodName> или -executeMethod <NamespaceName.ClassName.MethodName> Выполнить статический метод сразу после открытия проекта в Unity и после завершения необязательного обновления с Asset Server. Это удобно для непрерывной интеграции, прогона модульных тестов, создания сборок или подготовки данных. Если -activeBuildProfile предоставляется, Unity компилирует скрипты с определениями скриптов профиля перед запуском -executeMethod.

Чтобы вернуть ошибку из процесса командной строки, либо бросьте исключение, которое заставляет Unity выйти с кодом возврата 1, либо вызовите EditorApplication.Exit с ненулевым возвратным кодом.

Чтобы передать параметры, добавьте их в командную строку и извлеките их внутри функции с помощью System.Environment.GetCommandLineArgs. Использовать -executeMethod, содержащий скрипт нужно поместить в папку Editor. Выполняемый метод должен быть объявлен статическим.
-job-worker-count <N> Укажите максимальное количество потоков для Unity JobQueue Количество рабочих заданий.
-gc-helper-count <N> Укажите число потоков вспомогательного сборщика мусора ассетов. Значение по умолчанию соответствует количеству доступных ядер.
-logFile <pathname> Указывает расположение пути к файлу, в котором Unity записывает файл журнала редактора. Дополнительные сведения о расположении файла журнала по умолчанию см. в Файлы журналов ссылка на. Для вывода на консоль укажите - в качестве имени пути. На Windows вы можете использовать -logFile для направления вывода на stdout, который по умолчанию не является консолью. Если путь содержит пробелы, заключите его в кавычки. Некоторые интерфейсы командной строки могут требовать указания пути в кавычках, даже если путь не содержит пробелов.

Пример (Windows):
"C:\Program Files\Unity\Hub\Editor\<Version>\Editor\Unity.exe" -projectPath "C:\Projects\MyGame" -logFile "C:\Logs\Editor.log"
Пример (macOS):
"/Applications/Unity/Hub/Editor/<Version>/Unity.app/Contents/MacOS/Unity" -projectPath "/Users/me/Projects/MyGame" -logFile "/Users/me/Logs/Editor.log"
Пример (Linux):
"/opt/Unity/Hub/Editor/<Version>/Editor/Unity" -projectPath "/home/me/Projects/MyGame" -logFile "/home/me/logs/Editor.log"

Для указания расположения файла журнала фонового приложения UPM см. описание -upmLogFile.
-noUpm Отключает Unity Package Manager.
-openfile <path> Откройте проект из пути к сцене или файлу пакета. В качестве альтернативы вы можете использовать аргумент -projectPath
-password <password> Введите пароль в форму входа во время активации Unity Editor.
-projectPath <pathname> Откройте проект в указанном пути, который может быть абсолютным или относительным к текущей рабочей папке. Если имя пути содержит пробелы, заключите его в кавычки.
-quit Выход из Unity Editor после завершения выполнения других команд. Это может скрыть некоторые сообщения об ошибках, но они все еще появляются в редакторе файл лог. -quit аргумент имеет следующие ограничения:
  • Если Редактор подключен к Серверу Кэширования Ускорителя, то дополнительный аргумент -cacheServerWaitForUploadCompletion требуется для предотвращения выхода Unity до завершения ожидаемой загрузки кэша.
  • Если Редактор запускает тесты с аргументом -runTests, то -quit вызывает немедленный выход Редактора, прежде чем текущие тесты смогут завершиться.
  • Если Редактор запускает асинхронный код, то -quit может вызвать зависание приложения и прекращение отклика.
-quitTimeout При использовании аргумента -quit Редактор ожидает завершения ожидающих выполнения Асинхронных задач с таймом по умолчанию 300 секунд. Используйте этот параметр для установки другого тайма в секундах.
-releaseCodeOptimization Включает режим оптимизации выпуска кода, переопределяя текущий режим оптимизации кода по умолчанию для сеанса.
-setDefaultPlatformTextureFormat (только Android) Установите текстуру по умолчанию сжатие в желаемом формате перед импортом текстуры или сборкой проекта. Это для того, чтобы вам не приходилось импортировать текстуру снова в желаемом формате. Доступные форматы: dxt, atc, etc, etc2 и astc. Этот аргумент игнорируется, когда включено сжатие текстуры с целью.
-overrideMaxTextureSize Переопределяет максимальный размер текстуры (в пикселях), который Unity применяет при импорте ресурсов. Эта настройка влияет на все текстуры в вашем проекте и переопределяет любые Максимальный размер, настроенные для отдельных текстур в настройках импорта текстуры. Значение является целым числом, которое представляет максимальный предел высоты или ширины текстуры, в зависимости от того, что больше. Соотношение сторон всегда сохраняется при изменении размера. Например, если текстура имеет размер 2048×1024 пикселей, но -overrideMaxTextureSize установлено на 512, Unity импортирует текстуру с размером 512×256 пикселей. Для более подробной информации см. EditorUserBuildSettings.overrideMaxTextureSize.
-overrideTextureCompression Переопределяет настройки сжатия текстуры, которые Unity использует при импорте ресурсов. Это особенно полезно во время локальной разработки, чтобы ускорить импорт текстуры или переключение целей сборки. Для подробностей см. EditorUserBuildSettings.overrideTextureCompression.
-silent-crashes Запрещает Unity отображать диалоговое окно, которое отображается при сбоях автономного проигрывателя. Этот аргумент полезен, если вы хотите запустить проигрыватель в автоматизированных сборках или тестах, где диалоговое окно не должно препятствовать автоматизации.
-upmLogFile <pathname> Укажите путь и имя файла, в котором Unity записывает файл журнала для фонового приложения UPM, которое запускается независимо от Редактора. Вы можете указать -upmLogFile и -logFile в одной команде. Если вы включите оба аргумента, вы можете указать независимые пути для двух файлов журнала.
-username <email_address> Введите адрес электронной почты, связанный с Unity ID, который используется для входа в продукты и службы Unity.

Дополнительные сведения об использовании этого параметра при активации лицензии Unity с помощью командной строки см. в разделе Управление лицензией с помощью командной строки.

Дополнительные сведения об использовании этого параметра при экспорте и подписании созданного пакета UPM см. в разделе Подписание пакета с помощью аргументов командной строки.
-vcsMode <mode> Устанавливает режим управления версиями. Доступны следующие режимы: "Visible Meta Files", "Hidden Meta Files", Perforce, и PlasticSCMВы можете использовать дополнительные флаги для заполнения полей конфигурации для данного режима управления версиями. Эти флаги основаны на Provider.GetActiveConfigFields Например, вы можете использовать -vcPerforceUsername, -vcPerforcePassword, -vcPerforceWorkspace и -vcPerforceServer чтобы установить поля имени пользователя, рабочей области и сервера Perforce.

Примечание: <mode> аргументы, содержащие пробелы, должны быть заключены в кавычки («»).| |-vcsModeSession <mode>|Установить режим управления версиями для данного сеанса. Доступны следующие режимы "Visible Meta Files", "Hidden Meta Files", Perforce, и PlasticSCMВы можете использовать дополнительные флаги для заполнения полей конфигурации для данного режима управления версиями. Эти флаги основаны на Provider.GetActiveConfigFields Например, вы можете использовать -vcPerforceUsername, -vcPerforcePassword, -vcPerforceWorkspace и -vcPerforceServer чтобы установить поля имени пользователя, рабочей области и сервера Perforce.

Примечание: <mode> аргументы, содержащие пробелы, должны быть заключены в кавычки (»).
-version Вывести номер версии Unity Editor в командной строке, не запуская Редактор.
-timestamps Префиксы каждого сообщения Editor.log с текущим временем и потоком ID.

Аргументы пакетного режима

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

Важно:, если на него не распространяются отдельные коммерческие условия с Unity, использование Unity в пакетном режиме регулируется Условиями предоставления услуг Unity, включая применимые Дополнительные условия. Дополнительные сведения см. в последней версии Условий предоставления услуг Unity и Дополнительных условий , включая Условия программного обеспечения Unity Editor.

Команда Описание
-accept-apiupdate Используйте этот параметр командной строки для запуска API Обновитель при запуске Unity в пакетном режиме.

Пример:
unity.exe -accept-apiupdate -batchmode [other params]

Updater API не запускается, если вы пропустите этот аргумент командной строки при запуске Unity в пакетном режиме. Это может привести к ошибкам компилятора.
-batchmode Бег Unity в пакетном режиме. В пакетном режиме Unity запускает аргументы командной строки без необходимости вмешательства человека. Он также подавляет диалоговые окна, требующие вмешательства человека (например, Сохранить Scene окно). Всегда запускать Unity в пакетном режиме при использовании аргументов командной строки, так как это позволяет автоматизации работать без перебоев.

Когда во время выполнения кода скрипта возникает исключение, обновления сервера ассетов не выполняются или другие операции не выполняются, Unity немедленный выход с возвратным кодом 1.

В пакетном режиме, Unity отправляет минимальную версию своего вывода журнала на консоль. Однако, Журнальные файлы Вы не можете открыть проект в пакетном режиме, пока редактор имеет открытым тот же проект; только один экземпляр Unity может работать одновременно.

Чтобы проверить, работает ли Редактор или Автономный проигрыватель в пакетном режиме, используйте Application.isBatchMode оператор.

Если проект еще не импортирован при использовании -batchmode, целевая платформа является платформой по умолчанию. Чтобы заставить использовать другую платформу, используйте -buildTarget вариант.
‑ignorecompilererrors При использовании этого аргумента Unity продолжает запускать приложение даже в случае ошибок компиляции.
-nographics При запуске этого в пакетном режиме, Unity не инициализирует графическое устройство. Вы можете запустить автоматизированные рабочие процессы на машинах, которые не имеют GPU. Автоматизированные рабочие процессы работают только тогда, когда окно находится в фокусе, в противном случае вы не сможете отправить симулированные команды ввода. -nographics не позволяет вам запекать GI, потому что Enlighten Realtime Global Illumination требует GPU для Meta Pass рендера (См. Раздел Meta Pass страницы Lightmapping и Shaders для получения дополнительной информации).
Примечание: В этом режиме вывод журналов отключен. Чтобы разрешить создание журналов вывода, укажите расположение файла с помощью команды -logFile.

Аргументы Package Manager

Для управления пакетами из командной строки используются следующие аргументы.

Команда Описание
-exportPackage <exportAssetPath1 exportAssetPath2 ... exportAssetPathN exportFileName> Экспорт пакета ассетов (.unitypackage) из указанного пути или путей в папке Assets проекта. В этом примере exportAssetPath относится к папкам относительно корня проекта Unity, а exportFileName — это имя пакета. Эта опция экспортирует только целые папки одновременно. Используйте эту команду с аргументом -projectPath.
-importPackage <pathname> Импорт заданного пакет активов. Unity не отображает диалог импортирования.
-upmPack Используйте эту команду в пакетном режиме для экспорта и подписания созданного вами пакета UPM. После успешного завершения команда создает файл tarball в указанном расположении. В следующем примере показаны обязательные параметры для этой команды:

-batchmode -username <email_address> -password <your_password> -upmPack <package_folder_path> <output_path> -cloudOrganization <your_org_id>

Дополнительные сведения см. в разделе Упаковка и подписка пакета с помощью аргументов командной строки редактора.

Примечание: При использовании аргумента -upmPack необходимо также использовать аргумент -batchmode.

Аргументы сборки

Используйте следующие аргументы для сборки проигрывателей для различных платформ из командной строки. Дополнительные сведения о сборке проигрывателей из командной строки см. в Создание сборки из командной строки.

Команда Описание
-activeBuildProfile <pathname> Установить построить профиль сохраняется в указанном пути как активный профиль сборки (например, -activeBuildProfile "Assets/Settings/Build Profiles/WindowsDemo.asset").

Примечания:
  • -activeBuildProfile <pathname> применяет определения пользовательских скриптов, найденные в Данные сборки раздел активного профиля сборки перед компиляцией. Эти директивы препроцессора добавляются к текущему набору и не переопределяют и не удаляют уже имеющиеся в проекте.
  • Путь к ресурсу профиля сборки должен быть относительным к корневой папке проекта.
  • При указании вместе с -executeMethod, Unity применяет определения скриптов профиля и вызывает компиляцию скриптов перед вызовом метода. Определения профиля добавляются к определениям текущего проекта и действуют во время последующего выполнения -executeMethod. Это позволяет выполнять рабочие процессы CI/CD, такие как переключение целевой платформы в одном пакетном сеансе.
-build <pathName> Создайте проигрыватель из activeBuildProfile <pathname> в указанный целевой путь. Для некоторых платформ путь должен заканчиваться расширением файла, специфическим для целевой платформы. Например, -build path/to/your/build.exe. Информацию о том, какие платформы требуют расширения, см. в Ссылка на путь создания платформы.
-buildLinux64Player <pathname> Создайте 64-битный автономный проигрыватель Linux (например, -buildLinux64Player path/to/your/build).
-buildLinuxHeadlessSimulation <pathname> Создайте 64-битный Linux бесголовочный симулятор (например, -buildLinuxHeadlessSimulation path/to/your/build).
-buildOSXUniversalPlayer <pathname> Создайте 64-битный автономный проигрыватель macOS (например, -buildOSXUniversalPlayer path/to/your/build.app).
-buildTarget <name> Выберите активную цель сборки для запуска редактора. Доступные параметры зависят от того, какие цели сборки включены в редакторе. Эти параметры соответствуют параметрам, доступным в перечислении API BuildTarget следующим образом:
  • android
  • cloudrendering
  • ios
  • linux64
  • osxuniversal
  • tvos
  • visionos
  • windowsstoreapps
  • webgl
  • win
  • win64
Если вы разработчик с доступом к закрытым платформам, у вас могут быть другие -buildTarget Дополнительные сведения см. в документации для целевой платформы.
-buildWindowsPlayer <pathname> Создайте 32-битный автономный проигрыватель Windows (например, -buildWindowsPlayer path/to/your/build.exe).
-buildWindows64Player <pathname> Создайте 64-битный автономный проигрыватель Windows (например, -buildWindows64Player path/to/your/build.exe).
-standaloneBuildSubtarget <name> Перед загрузкой проекта выберите активную подцелевую строку сборки для автономных платформ:
  • Игрок
  • Сервер

Unity Аргументы сервера кэша ускорителя

Используйте следующие аргументы для настройки использования Unity Unity Ускоритель сервер кэша. Эти аргументы переопределяют соответствующую конфигурацию, сохранённую в настройках редактора.

Команда Описание
-EnableCacheServer Включите ускоритель Unity. Также необходимо использовать -cacheServerEndpoint <host:port> для указания адреса экземпляра ускорителя Unity.
-cacheServerEndpoint <host:port> Указывает адрес конечной точки экземпляра ускорителя Unity.

Пример:
-cacheServerEndpoint 127.0.0.1:10080
Порт по умолчанию — 10080, но его можно изменить во время установки.
-cacheServerNamespacePrefix <prefix> Установить префикс пространства имен для экземпляра Unity Accelerator. Используйте этот аргумент с именем пространства имен для разделения данных на сервере кэша, например, для изоляции данных кэша для различных проектов или версий Unity.

Пример:
-cacheServerNamespacePrefix MyProject_Unity23LTS
Префикс, содержащий пробелы, должен быть заключён в кавычки (").
Предоставленное имя используется в качестве префикса до 3 пространств имен в кэше, которые разделяют данные по типу — метаданные, данные артефактов и данные кэша шейдеров.
-cacheServerEnableDownload true
-cacheServerEnableDownload false
Включить или отключить загрузку из экземпляра ускорителя Unity.
-cacheServerEnableUpload true
-cacheServerEnableUpload false
Включить или отключить загрузку в экземпляр ускорителя Unity.

Пример:
-cacheServerEnableUpload true
-cacheServerWaitForConnection <ms> Укажите время в миллисекундах, которое Unity будет ждать подключения к экземпляру ускорителя Unity во время загрузки проекта, прежде чем начать обновление проекта.

Пример:
-cacheServerWaitForConnection 5000
-cacheServerWaitForUploadCompletion Предотвращает закрытие Unity до тех пор, пока не будут завершены все ожидающие загрузки Unity Accelerator. Это рекомендуется, когда Unity Accelerator используется в сочетании с аргументом командной строки -quit, который закрывает Unity Editor после завершения выполнения других скриптовых команд.
-cacheServerDownloadBatchSize <batchSize> Установить количество артефактов в отдельных пакетах загрузки сервера кэша. Пакета загрузки являются оптимизацией, используемой для уменьшения количества операций загрузки путем группирования отдельных загрузк в более крупные пакета.

Пример:
-cacheServerDownloadBatchSize 256
Значение по умолчанию — 128.
-cacheServerUploadExistingImports Загрузить все существующие импорты, которые не были загружены ранее, когда Unity начинает загружать новые импорты в экземпляр ускорителя Unity. Импорты, которые были загружены ранее, не загружаются повторно.
-cacheServerUploadAllRevisions Загрузить любые существующие импорты, включая все предыдущие известные ревизии в Базу данных ассетов, которые не были загружены ранее, когда Unity начинает загружать новые импорты в экземпляр ускорителя Unity. Ревизии импорта, которые были загружены ранее, не загружаются повторно.
-cacheServerUploadExistingShaderCache Загрузить любые существующие импорты кэша шейдеров, которые не были загружены ранее, когда Unity начинает загружать новые импорты на сервер кэша. Импорты шейдеров, которые были загружены ранее, не загружаются повторно.

Аргументы отладки

Команда Описание
-disableManagedDebugger Отключает сокет прослушивания отладчика.
-diag-debug-shader-compiler Unity запускает только один экземпляр Шейдер Compiler, и заставляет его timeout составлять один час. Полезно для отладки проблем Shader Compiler.
-debugCodeOptimization Включает режим оптимизации отладки кода, переопределяя текущий режим оптимизации кода по умолчанию для сеанса.
-enableCodeCoverage Включает покрытие кода и позволяет доступ к Покрытие API.
-force-d3d12-debug Включает слой проверки DX12. Это полезно для работы с плагинами XR или собственными плагинами.
-force-d3d12-debug-gbv Включает проверку на основе DX12 GPU. Это полезно для работы с плагинами XR или собственными плагинами.
-force-vulkan-layers Включает слой проверки Vulkan. Это полезно для работы с плагинами XR или собственными плагинами.
-stackTraceLogType Разрешить подробную отладку. Все настройки позволяют выбрать Нет, Только скрипт и Полный (например, -stackTraceLogType Full).
-log-memory-performance-stats Добавляет подробные отчеты о памяти и производительности в главный файл журнала Unity Editor при закрытии редактора.
-wait-for-managed-debugger Заставляет Редактор дождаться подключения управляемого отладчика перед запуском. Создает диалог, в котором отображается процесс Редактора ID. Дополнительные сведения об управляемой отладке см. в Отладка C# кода в Unity.
-wait-for-native-debugger Заставляет редактор ждать, пока отладчик подключится к редактору перед запуском. Создает диалог, который отображает процесс редактора ID.

Графика API аргументы

Используйте следующие аргументы, чтобы заставить Unity Editor использовать определенную графику API.

Команда Описание
-force-clamped Используйте это вместе с -force-glcoreXY для предотвращения проверки Unity на наличие дополнительных расширений OpenGL, что позволит ему работать между платформами с одинаковыми путями кода. Этот подход помогает определить, является ли проблема специфической для платформы. Например, ошибка драйвера.
-force-d3d11 (только Windows) Использование редактора Direct3D 11 для рендеринга. Обычно графика API зависит от Настройки Игрока (обычно по умолчанию D3D11).
-force-d3d12 (только Windows) Заставляет Редактор использовать Direct3D 12 для рендеринга. Обычно графика API зависит от Настройки Игрока.
-force-device-index Заставьте Редактор использовать определенное устройство GPU, передавая ему индекс этого GPU. Например, используйте это, чтобы заставить Редактор использовать встроенный GPU вместо выделенного. Отображение между GPU индексами и физическим GPUs определяется порядком, в котором GPUs перечислены вашей системой. Это перечисление обычно выполняется драйвером GPU или используемым базовым фреймворком (например, Metal, Direct3D или Vulkan). Обычно индекс 0 будет GPU, подключенным к вашему основному монитору. На настольных компьютерах это обычно выделенный GPU, в то время как на ноутбуках это обычно интегрированный GPU. Поэтому на настольных компьютерах -force-device-index=0 обычно является выделенной видеокартой.
-force-glcore Заставляет Редактор использовать OpenGL 3/4 core profile для рендеринга. Редактор пытается использовать лучшую доступную версию OpenGL и все расширения OpenGL, доступные драйверам OpenGL. Если платформа не поддерживается, редактор использует Direct3D.
-force-glcoreXY Аналогично-force-glcore, но требует определенной версии контекста OpenGL. Приемлемые значения для XY: 32, 33, 40, 41, 42, 43, 44 или 45. Если платформа не поддерживает определенную версию OpenGL, Unity вернется к поддерживаемой версии.
-force-gles (только Windows) Задать редактору использование OpenGL для встраиваемых систем для рендеринга. Редактор пытается использовать наилучшую доступную версию OpenGL ES и все расширения OpenGL ES, доступные с помощью драйверов OpenGL.
-force-glesXY (только Windows) Аналогично -force-gles, но требует определенной версии контекста OpenGL ES. Приемлемые значения для XY: 30, 31, 31aep или 32. Если платформа не поддерживает определенную версию OpenGL ES, Unity вернется к поддерживаемой версии. Если платформа не поддерживает OpenGL ES, Unity вернется к другой графике API.
-force-opengl Использовать устаревший редактор OpenGL конец.
-force-vulkan Заставляет Редактор использовать Vulkan для рендеринга. Обычно графика API зависит от Настройки Игрока.

Аргументы лицензии

Используйте следующие аргументы для обработки лицензии Unity или запуска Unity Editor с различными параметрами лицензии.

Команда Описание
-createManualActivationFile Первый шаг трехступенчатый процесс чтобы вручную активировать Unity лицензии. Для получения дополнительной информации, см. Активация лицензии вручную.
-manualLicenseFile <yourulffile> Этап 3 трехступенчатый процесс чтобы вручную активировать Unity лицензии. Для получения дополнительной информации, см. Активация лицензии вручную.
-returnlicense Не используйте -returnlicense для возврата плавающей лицензии. Дополнительные сведения см. в Возврат лицензии. Дополнительные сведения о моделях лицензирования см. в Обзор лицензирования.
-serial <serial-key> Активируйте платную Unity лицензию. Включите значение <serial-key>, чтобы активировать последовательную лицензию, или чтобы активировать одновременно лицензию именованного пользователя и ее серийный ключ. Исключите значение <serial-key>, чтобы активировать лицензию именованного пользователя без активации ее серийного ключа. Дополнительные сведения см. в Активация лицензии из командной строки. Дополнительные сведения о моделях лицензирования см. в Обзор лицензирования.

Примечание: При использовании аргумента -serial необходимо также использовать аргумент -batchmode. Также рекомендуется указать аргумент -quit.

Аргументы Metal (только macOS)

Используйте следующие аргументы для настройки использования Unity графики Metal API для устройств Apple.

Команда Подробности:
-force-low-power-device (только macOS) Если вы используете Metal, заставьте Редактор использовать устройство с низким потреблением энергии.
-force-metal Заставляет Редактор использовать Metal в качестве графики по умолчанию API (только macOS).
-enable-metal-capture Включить возможность принимать Metal снимок изнутри Редактора.

Аргументы Profiler

Используйте следующие аргументы для настройки Unityиспользования Profiler.

Команда Описание
-deepprofiling Включите опцию Deep Profile для профилера CPU.
-profiler-enable Профилирует запуск Проигрывателя или Редактора. При использовании этого аргумента с Проигрывателем, он имеет тот же эффект, что и построение Проигрывателя с опцией Autoconnect Profiler, включенной в Создание профилей.

При использовании этого аргумента с Редактором, он начинает собирать и отображать информацию Profiler в окне Profiler при запуске Редактора.
-profiler-log-file <Path/To/Log/File.raw> Этот аргумент устанавливает Unity Profiler для передачи данных профиля в файл .raw при запуске. Это работает как для Игрока, так и для Редактора.
-profiler-capture-frame-count <NumberOfFrames> Этот аргумент устанавливает, сколько кадров Profiler должен захватывать в профиле при потоке в файл .raw при запуске. Это работает только на Players.
-profiler-maxusedmemory По умолчанию, maxUsedMemory для Unity Profiler составляет 16МБ для Игр и 256МБ для Редактора. Вы можете использовать этот аргумент для установки параметра maxUsedMemory на пользовательский размер при запуске (например, -profiler-maxusedmemory 16777216). Размер устанавливается в байтах.

Unity Editor специальные аргументы командной строки

Используйте их только при особых обстоятельствах или по указанию службы поддержки Unity.

Команда Описание
-enableIncompatibleAssetDowngrade Используйте это, когда у вас есть Assets, созданные более новой, несовместимой версией Unity, которые вы хотите понизить для работы с текущей версией Unity.
Когда вы включаете это, Unity отображает диалог с просьбой о подтверждении этого понижения, если вы пытаетесь открыть проект, который требует этого.

Примечание: Эта процедура не поддерживается и очень рискована, и должна использоваться только в качестве последнего средства.
-giCustomCacheLocation Задает настраиваемое расположение для Глобальное освещение (GI) кэш папка. Значение должно быть абсолютным путем, который должен быть заключён в кавычки, если он содержит пробелы. -giCustomCacheLocation установлено, то для текущей сессии Редактора его значение переопределяет любые настраиваемые Местоположение папки кэша ранее определенных в GI Настройки кэша. Это значение не сохраняется после выхода из Редактора.
-rebuildLibrary Эта процедура удаляет подкаталог проекта Library, что вызывает полный реимпорт всех ассетов. Используйте это, когда Unity сообщает об ошибке повреждения базы данных во время инициализации проекта.

Unity Hub специальные аргументы командной строки

Используйте их только при особых обстоятельствах или по указанию Unity Support. Эти аргументы используются в версиях Unity Editor, которые не используют Unity Hub по умолчанию.

Команда Описание
-useHub Запустите Unity Editor с интеграцией Hub.
-hubIPC Разрешить связь и взаимодействие между Unity Editor и Unity Hub.
-hubSessionId Укажите уникальный идентификатор для сессии Unity Hub.

Во всех поддерживаемых версиях Unity Editor эти аргументы уже установлены по умолчанию.

Дополнительные ресурсы