Unity 6.3
0 онлайн 94 гостей 3 в системе
Вход
Разработка платформы Шаг 144 из 387

Настройки проигрывателя выделенного сервера

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

Настройки проигрывателя выделенного сервера
Настройки проигрывателя выделенного сервера

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

  • Иконы
  • Разрешение и представление
  • Изображение Splash
  • Параметры публикации

Другие настройки

Этот раздел позволяет настроить ряд параметров, которые распределены по следующим группам:

Конфигурация

Свойство Описание
Скриптирование Выберите скриптовый сервер, который вы хотите использовать. Скриптовый сервер определяет, как Unity компилирует и выполняет код C# в вашем Project.

  • Mono: Компиляции C# код в .NET Общий промежуточный языкCIL) и исполняет это CIL с помощью Common Language Runtime. Дополнительные сведения см. в Mono.
  • IL2CPP: компилирует код C# в CIL, преобразует CIL в C++, а затем компилирует C++ в нативный машинный код, который выполняется непосредственно во время работы приложения. Дополнительные сведения см. в разделе IL2CPP.
API Совместимость Выберите, какие .NET APIs можно использовать в вашем проекте. Эта настройка может повлиять на совместимость со сторонними библиотеками. Однако она не влияет на код, специфичный для Редактора (код в каталоге Редактора или в определении сборки, специфическом для Редактора).

Тип: Если у вас возникают проблемы с сборкой стороннего производителя, вы можете попробовать предложение в API Совместимость раздел.

  • .Net Рамки: Совместим с .NET Framework 4 (который включает все в .NET Standard 2.0 profile плюс дополнительный APIs). Выберите этот вариант, когда используете библиотеки, которые доступны APIs, не включенные в .NET Standard 2.0. Производит более крупные сборки и любые дополнительные APIs доступные не обязательно поддерживаются на всех платформах. Для более подробной информации, см. Ссылки на дополнительные сборки библиотек классов.
  • .Net Стандартный 2.1: Производит меньшие сборки и имеет полную кросс-платформенную поддержку.
Уровень совместимости сборок редактора Выберите .NET APIs для использования в сборках Редактора.

  • .NET Рамки: Совместим с .NET Framework 4 (который включает все в .NET Standard 2.1 profile плюс дополнительный APIs). Выберите этот вариант при использовании библиотек, которые доступны APIs не включены в .NET Standard 2.1. Производит более крупные сборки и любые дополнительные APIs доступные не обязательно поддерживаются на всех платформах. Для получения дополнительной информации, см. Ссылки на дополнительные сборки библиотек классов.
  • .NET Стандарт: Совместим с .NET Стандарт 2.1. Производит меньшие сборки и имеет полную кросс-платформенную поддержку.
IL2CPP Генерация кодов Определяет, каким образом Unity управляет генерацией кода IL2CPP. Эта опция доступна только при использовании IL2CPP.

  • Оптимизировать для скорости выполнения: Создает код, оптимизированный для производительности выполнения. Эта настройка включена по умолчанию.
  • Оптимизировать для размера кода и времени сборки: Создает код, оптимизированный для размера сборки и итерации. Этот параметр генерирует меньше кода и производит меньшую сборку, но может уменьшить производительность выполнения для общего кода. Используйте этот параметр, когда важны более короткие сроки сборки, например, при итерации изменений.
C++ Конфигурация компилятора Выберите конфигурацию компилятора C++, используемую при компиляции кода, генерируемого IL2CPP.

  • Отладка: Конфигурация отладки отключает все оптимизации, что делает код быстрее для сборки, но медленнее для выполнения.
  • Выпуск: Конфигурация выпуска позволяет оптимизировать так, что скомпилированный код работает быстрее, размер двоичного файла уменьшается, но компиляция занимает больше времени.
  • Мастер: Конфигурация Master позволяет использовать все возможные оптимизации, выжимая каждый бит производительности. Например, на платформах, использующих компилятор MSVC++, эта опция позволяет генерировать код в режиме link-time. Компиляция кода с помощью этой конфигурации может занимать значительно больше времени, чем с помощью конфигурации Release. Рекомендуемая наилучшая практика создания версии для продажи игры с помощью конфигурации Master, если увеличение времени сборки приемлемо.
IL2CPP Информация о Stacktrace Выберите сведения, которые будут включены в трассировку стека. Дополнительные сведения о типах данных см. в разделе Управляемые трассировки стека с IL2CPP.

  • Имя метода: Включить каждый управляемый метод в трассировку стека.
  • Имя метода, имя файла и номер строки: Включить каждый управляемый метод с информацией о файле и номере строки в трассировку стека.

    Примечание: Использование этой опции может увеличить как время сборки, так и окончательный размер собранной программы.
Используйте постепенно GC Использует инкрементальный сборщик мусора, который распределяет сбор мусора по нескольким кадрам, чтобы уменьшить связанные с сбором мусора пики в длительности кадра. Дополнительные сведения см. в Автоматическое управление памятью.
Разрешить загрузку через HTTP Указать, разрешать ли загрузку контента через HTTP. По умолчанию Не разрешено из-за рекомендуемого протокола HTTPS, который более безопасен.

  • Не разрешено: Никогда не разрешайте загрузки сверх HTTP.
  • Разрешено в сборках для разработчиков: Разрешить загрузку только через HTTP в сборках для разработчиков.
  • Всегда разрешено: Разрешить загрузки через HTTP в сборках для разработки и выпуска.
Целевые минимальные macOS версии Указывает минимальную поддерживаемую версию macOS, которая является 10.13.0

API Совместимость

Вы можете выбрать уровень совместимости моно API для всех целей. Иногда сторонняя библиотека .NET использует функциональность, которая находится вне вашего уровня совместимости .NET. Чтобы понять, что происходит в таких случаях, и как лучше всего исправить это, попробуйте выполнить следующие предложения:

  1. Установка ILSpy для Windows.
  2. Перетащите сборки .NET для уровня совместимости API, с которым у вас возникли проблемы, в ILSpy. Вы можете найти их в Frameworks/Mono/lib/mono/YOURSUBSET/.
  3. Перетащите в стороннюю сборку.
  4. Щелкните правой кнопкой мыши стороннюю сборку и выберите Анализ.
  5. В отчете об анализе осмотрите Зависит от Отчет выделяет все, что зависит от сборки сторонней стороны, но это не доступно в разделе .NET уровень совместимости по вашему выбору в красном цвете.

Настройки шейдера

Свойство Описание
Модель точности шейдера Выберите используемые по умолчанию шейдеры точности. Дополнительные сведения см. в разделе Использовать 16-битную точность в шейдерах.

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

Настройки загрузки варианта шейдера

Используйте эти параметры для управления объемом памяти, используемой шейдерами во время выполнения.

Свойство Описание
Размер блока по умолчанию (MB) Задает максимальный размер сжатых блоков данных вариантов шейдера Unity, хранящихся в созданном приложении для всех платформ. По умолчанию это 16. Дополнительные сведения см. в Загрузка шейдера.
Количество кусков по умолчанию Устанавливается ограничение по умолчанию на количество разсжатых кусочков, которые Unity хранит в памяти на всех платформах. По умолчанию 0, что означает, что ограничения нет.
Переопределение Разрешает переопределение Размер куска по умолчанию и Количество куска по умолчанию для этой цели сборки.
Размер куска (MB) Переопределяет значение Размер блока по умолчанию (MB) для этой цели сборки.
Количество кусочков Переопределяет значение Количество блоков по умолчанию на этой цели сборки.

Компиляция скриптов

Свойство Описание
Определение символов скриптов Задает пользовательские флаги компиляции.

Дополнительные сведения см. в Компиляция в зависимости от платформы.
Дополнительные аргументы компилятора Указывает дополнительные аргументы для передачи Roslyn C# компилятор. Введите один допустимый аргумент компилятора для каждой записи в списке. Чтобы создать новую запись, выберите Плюс (+)Чтобы удалить запись, выберите Исключить (-)Выбрать Применить чтобы включить вновь добавленные аргументы в будущие компиляции. Вернуть чтобы сбросить список до последнего примененного значения stateАргументы должны использовать csc.exe синтаксис, например: -warnaserror. Полный список поддерживаемых опций компилятора Roslyn см. C# параметры компилятора в документации Майкрософт.

Вы также можете предоставить дополнительные аргументы командной строки для C# компилятор с csc.rsp файл ответа в вашем проекте Assets Дополнительные сведения о создании файла ответов см. в разделе Создание файла ответов. Примечание: Определение одних и тех же аргументов в обоих Дополнительные аргументы компилятора список и файл ответов могут вызвать ошибки и непредвиденное поведение.
Подавление общих предупреждений Указывает, должны ли отображаться предупреждения C# CS0169 и CS0649.
Разрешить «небезопасный» код Активируйте поддержку компиляции «небезопасного» C# кода в предопределенном сборочном файле (например, Assembly-CSharp.dll).
Для файлов определения сборки (.asmdef), щелкните один из ваших файлов .asmdef и активируйте опцию в окне Inspector, которое появится.
Использование детерминистической компиляции Указывает, следует ли запрещать компиляцию с флагом -deterministic C#. При активации этого параметра скомпилированные сборки будут одинаковыми байт за байтом каждый раз, когда они будут компилироваться.

Дополнительные сведения см. в разделе Microsoft параметр компилятора deterministic.

Оптимизация

Свойство Описание
Включить оптимизацию выделенного сервера Включите эту опцию для выполнения дополнительных оптимизаций на сборки Выделенного Сервера. Дополнительные сведения об этих оптимизациях см. в документации Оптимизация Выделенного Сервера.
Prebake столкновения сетки Добавляет данные о столкновениях в Меши во время сборки.
Предварительно загруженные активы Задает массив Assets для проигрывателя для загрузки при запуске.
Чтобы добавить новые Assets, увеличьте значение свойства Размер и затем установите ссылку на Asset для загрузки в новом поле Элемент, которое появится.
Управляемый уровень стрипинга Выберите, насколько агрессивно Unity удаляет неиспользуемый управляемый (C#) код. Когда Unity создает ваше приложение, процесс Unity Linker может удалить неиспользуемый код из управляемого DLLs, используемого вашим Project. Удаление кода может уменьшить размер получаемого исполняемого файла, но иногда может удалить используемый код.

Дополнительные сведения об этих параметрах и удалении байт-кода с помощью IL2CPP см. ManagedStrippingLevel.

  • Минимальная: используйте этот вариант, чтобы урезать библиотеки классов, UnityEngine и сборки Windows Runtime, а все остальные сборки скопировать.
  • Низкий: Удалить недоступный управляемый код для уменьшения размера сборки и Mono/IL2CPP времени сборки.
  • Средний: Запустите UnityLinker для уменьшения размера кода за пределы того, что Низкий может достичь. Вам может понадобиться поддержка пользовательского файла link.xml, и некоторые пути кодов отражения могут не вести себя так же.
  • Высокий: UnityLinker удалит столько кода, сколько возможно. Это еще больше уменьшит размер кода за пределы того, что может сделать Medium, но управляемая отладка кода некоторых методов может больше не работать. Вам может понадобиться поддержка пользовательского файла link.xml, и некоторые пути кодов отражения могут не вести себя так же.
Сжатие вершин Это влияет на все меши в вашем проекте.
Как правило, сжатие вершин используется для уменьшения размера данных меши в памяти, уменьшения размера файла и повышения производительности GPU.

Более подробную информацию о том, как настроить сжатие вершин и ограничения этой настройки, см. в Сжатие данных сетки.
Оптимизация данных сетки Включите эту опцию, чтобы удалить неиспользуемые вершинные атрибуты из сетки, используемой в сборке. Эта опция уменьшает количество данных в сетке, что может помочь уменьшить размер сборки, время загрузки и использование памяти во время выполнения.

Предупреждение: Если эта опция включена, не меняйте параметры материалов или шейдеров во время выполнения.

Дополнительные сведения см. в PlayerSettings.stripUnusedMeshComponents.
Стриппинг текстуры
Unity определяет неиспользуемые уровни mipmap путем сравнения уровня mipmap с параметрами качества текущей платформы. Если уровень mipmap исключен из всех параметров качества текущей платформы, то Unity удаляет эти уровни mipmap из сборки во время сборки. Если QualitySettings.globalTextureMipmapLimit установлен на уровень mipmap, который был удален, Unity установит значение на ближайший уровень mipmap, который не был удален.

Трек стека

Выберите предпочтительный тип ведения журнала, включив параметр, соответствующий каждому типу журнала.

Свойство Описание
Нет Никакие журналы не записываются.
ScriptOnly Ведет журнал только при запуске скриптов.
Полная Журналы все время.

См. log log для более подробной информации.

Устаревшие

Активируйте опцию Clamp BlendShapes (Deprecated) для зажима диапазона весов форм смешивания в SkinnedMeshRenderers.

Журналы захвата

Активируйте опцию Capture Startup Logs для записи журналов запуска для последующей обработки (например, сторонней библиотекой журналов).

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