Обзор Android Performance Tuner (Unity),Обзор Android Performance Tuner (Unity),Обзор Android Performance Tuner (Unity),Обзор Android Performance Tuner (Unity)

В этом руководстве описывается, как использовать плагин Unity для записи и загрузки данных о времени кадра из Unity 2017.4 или более поздней версии .

Для игровых движков, использующих C или C++, см. руководство по собственным игровым движкам .

Фон

Ключевым компонентом игрового процесса является производительность рендеринга . Производительность рендеринга зависит от следующих двух факторов:

  • Частота кадров: как часто прорисовывается кадр.
  • Настройки качества графики: уровень точности представления кадра, включая точность моделирования и графики.

Для игр хорошая производительность рендеринга определяется следующим образом:

  • Обеспечение стабильной и постоянной частоты кадров (т. е. процента кадров, отображаемых с желаемой частотой).
  • Рендеринг кадров с максимально возможной частотой при сохранении стабильности, обычно 30 или 60 кадров в секунду в зависимости от типа игры.
  • Максимизация уровня детализации для пользователя с учетом размера и плотности его экрана при сохранении желаемой стабильной частоты кадров.

Библиотека Android Frame Pacing ограничивает большую часть изменений во времени кадра, обеспечивая стабильную частоту кадров в играх. Остальные различия во времени кадра обусловлены уровнем детализации, отображаемой в определенных сценах игрового процесса, и графическими возможностями устройства. Используя Android Performance Tuner, вы можете определить моменты во время игры, когда время кадра медленнее или быстрее целевого, и сопоставить эти проблемы и возможности, чтобы:

  • Особые настройки качества
  • Конкретные сцены в вашей игре
  • Конкретные модели устройств или характеристики устройств

Запись и загрузка данных

Библиотека Tuning Fork использует одну из своих тиковых функций, вызываемую в каждом кадре библиотекой Android Frame Pacing (или движком Unity для более старых версий Unity, где библиотека Frame Pacing отсутствует). В библиотеке эта информация о тиках объединяется в гистограммы, которые затем периодически загружаются в Google Play через конечную точку HTTP. Каждый тик записывается как связанный с ключом инструмента и аннотацией . Вы определяете аннотации с помощью плагина Unity.

Клавиши прибора

Ключ инструмента указывает, откуда в кадре берется тик, и представляет собой целое число, которое необходимо передавать при каждом вызове функции тика. Это делается автоматически плагином Unity. Если в настройках Unity вашей игры включена опция «Оптимизированная частота кадров» (доступна в версии Unity 2019.3.14 или более поздней), Android Performance Tuner будет использовать информацию из библиотеки Android Frame Pacing для составления отчета об улучшенных показателях.

Аннотации

Аннотации предоставляют контекстную информацию о том, что делает ваша игра, когда записывается тик. Например, аннотация может идентифицировать любое из следующего:

  • Текущий уровень игры
  • Загружается конкретная сцена
  • На экране «большой босс»
  • Любая другая соответствующая информация о состоянии игры.

Аннотации определяются в диалоговом окне, предоставляемом плагином Unity.

Внутри библиотека Tuning Fork использует формат буфера протокола Google для хранения аннотаций и параметров точности. Это четко определенный многоязычный протокол для расширяемых структурированных данных. Дополнительную информацию см. в документации по протокольным буферам .

Параметры точности

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

Нагрузка на память и процессор

Вся память, используемая библиотекой Tuning Fork, выделяется при инициализации, чтобы избежать неожиданностей во время игры. Размер данных зависит от количества ключей инструмента, количества возможных аннотаций и количества сегментов в каждой гистограмме; это кратно всем этим четырем байтам для каждого сегмента. Также имеются две копии всех гистограмм, что позволяет отправлять их в режиме двойной буферизации.

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

При вызове тиковой функции не требуется больших затрат на обработку: она просто вычисляет индекс в массиве сегментов гистограммы и увеличивает число целых чисел.

Веб-запросы

Библиотека отправляет два типа запросов к конечной точке сервера:

  • generateTuningParameters при инициализации
  • Периодически во время игры возникает запрос uploadTelemetry для отправки данных на сервер.

Оффлайн игроки

Если при инициализации доступное соединение отсутствует, запрос повторяется несколько раз с увеличением времени задержки. Если при загрузке нет соединения, загрузка кэшируется. Загрузки сохраняются в виде файлов во временном хранилище.

Требования

Чтобы использовать плагин в своей игре, используйте поддерживаемую версию Unity:

  • Unity версии 2017.4 или новее и .NET версии 4.6.
  • Для использования файлов расширения APK требуется Unity 2018.2.
  • Для улучшенной частоты кадров и измерений графического процессора требуется Unity версии 2019.3.14 или новее.
  • Для поддержки сцен Addressables требуются Unity 2019.3 или новее и пакет Addressables 1.19.4 или новее.

Интегрируйте Android Performance Tuner в Unity

Информацию об интеграции Android Performance Tuner в Unity см. в разделе Включение API .

,

В этом руководстве описывается, как использовать плагин Unity для записи и загрузки данных о времени кадра из Unity 2017.4 или более поздней версии .

Для игровых движков, использующих C или C++, см. руководство по собственным игровым движкам .

Фон

Ключевым компонентом игрового процесса является производительность рендеринга . Производительность рендеринга зависит от следующих двух факторов:

  • Частота кадров: как часто прорисовывается кадр.
  • Настройки качества графики: уровень точности представления кадра, включая точность моделирования и графики.

Для игр хорошая производительность рендеринга определяется следующим образом:

  • Обеспечение стабильной и постоянной частоты кадров (т. е. процента кадров, отображаемых с желаемой частотой).
  • Рендеринг кадров с максимально возможной частотой при сохранении стабильности, обычно 30 или 60 кадров в секунду в зависимости от типа игры.
  • Максимизация уровня детализации для пользователя с учетом размера и плотности его экрана при сохранении желаемой стабильной частоты кадров.

Библиотека Android Frame Pacing ограничивает большую часть изменений во времени кадра, обеспечивая стабильную частоту кадров в играх. Остальные различия во времени кадра обусловлены уровнем детализации, отображаемой в определенных сценах игрового процесса, и графическими возможностями устройства. Используя Android Performance Tuner, вы можете определить моменты во время игры, когда время кадра медленнее или быстрее целевого, и сопоставить эти проблемы и возможности, чтобы:

  • Особые настройки качества
  • Конкретные сцены в вашей игре
  • Конкретные модели устройств или характеристики устройств

Запись и загрузка данных

Библиотека Tuning Fork использует одну из своих тиковых функций, вызываемую в каждом кадре библиотекой Android Frame Pacing (или движком Unity для более старых версий Unity, где библиотека Frame Pacing отсутствует). В библиотеке эта информация о тиках объединяется в гистограммы, которые затем периодически загружаются в Google Play через конечную точку HTTP. Каждый тик записывается как связанный с ключом инструмента и аннотацией . Вы определяете аннотации с помощью плагина Unity.

Клавиши прибора

Ключ инструмента указывает, откуда в кадре берется тик, и представляет собой целое число, которое необходимо передавать при каждом вызове функции тика. Это делается автоматически плагином Unity. Если в настройках Unity вашей игры включена опция «Оптимизированная частота кадров» (доступна в версии Unity 2019.3.14 или более поздней), Android Performance Tuner будет использовать информацию из библиотеки Android Frame Pacing для составления отчета об улучшенных показателях.

Аннотации

Аннотации предоставляют контекстную информацию о том, что делает ваша игра, когда записывается тик. Например, аннотация может идентифицировать любое из следующего:

  • Текущий уровень игры
  • Загружается конкретная сцена
  • На экране «большой босс»
  • Любая другая соответствующая информация о состоянии игры.

Аннотации определяются в диалоговом окне, предоставляемом плагином Unity.

Внутри библиотека Tuning Fork использует формат буфера протокола Google для хранения аннотаций и параметров точности. Это четко определенный многоязычный протокол для расширяемых структурированных данных. Дополнительную информацию см. в документации по протокольным буферам .

Параметры точности

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

Нагрузка на память и процессор

Вся память, используемая библиотекой Tuning Fork, выделяется при инициализации, чтобы избежать неожиданностей во время игры. Размер данных зависит от количества ключей инструмента, количества возможных аннотаций и количества сегментов в каждой гистограмме; это кратно всем этим четырем байтам для каждого сегмента. Также имеются две копии всех гистограмм, что позволяет отправлять их в режиме двойной буферизации.

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

При вызове тиковой функции не требуется больших затрат на обработку: она просто вычисляет индекс в массиве сегментов гистограммы и увеличивает число целых чисел.

Веб-запросы

Библиотека отправляет два типа запросов к конечной точке сервера:

  • generateTuningParameters при инициализации
  • Периодически во время игры возникает запрос uploadTelemetry для отправки данных на сервер.

Оффлайн игроки

Если при инициализации доступное соединение отсутствует, запрос повторяется несколько раз с увеличением времени задержки. Если при загрузке нет соединения, загрузка кэшируется. Загрузки сохраняются в виде файлов во временном хранилище.

Требования

Чтобы использовать плагин в своей игре, используйте поддерживаемую версию Unity:

  • Unity версии 2017.4 или новее и .NET версии 4.6.
  • Для использования файлов расширения APK требуется Unity 2018.2.
  • Для улучшенной частоты кадров и измерений графического процессора требуется Unity версии 2019.3.14 или новее.
  • Для поддержки сцен Addressables требуются Unity 2019.3 или новее и пакет Addressables 1.19.4 или новее.

Интегрируйте Android Performance Tuner в Unity

Информацию об интеграции Android Performance Tuner в Unity см. в разделе Включение API .

,

В этом руководстве описывается, как использовать плагин Unity для записи и загрузки данных о времени кадра из Unity 2017.4 или более поздней версии .

Для игровых движков, использующих C или C++, см. руководство по собственным игровым движкам .

Фон

Ключевым компонентом игрового процесса является производительность рендеринга . Производительность рендеринга зависит от следующих двух факторов:

  • Частота кадров: как часто прорисовывается кадр.
  • Настройки качества графики: уровень точности представления кадра, включая точность моделирования и графики.

Для игр хорошая производительность рендеринга определяется следующим образом:

  • Обеспечение стабильной и постоянной частоты кадров (т. е. процента кадров, отображаемых с желаемой частотой).
  • Рендеринг кадров с максимально возможной частотой при сохранении стабильности, обычно 30 или 60 кадров в секунду в зависимости от типа игры.
  • Максимизация уровня детализации для пользователя с учетом размера и плотности его экрана при сохранении желаемой стабильной частоты кадров.

Библиотека Android Frame Pacing ограничивает большую часть изменений во времени кадра, обеспечивая стабильную частоту кадров в играх. Остальные различия во времени кадра обусловлены уровнем детализации, отображаемой в определенных сценах игрового процесса, и графическими возможностями устройства. Используя Android Performance Tuner, вы можете определить моменты во время игры, когда время кадра медленнее или быстрее целевого, и сопоставить эти проблемы и возможности, чтобы:

  • Особые настройки качества
  • Конкретные сцены в вашей игре
  • Конкретные модели устройств или характеристики устройств

Запись и загрузка данных

Библиотека Tuning Fork использует одну из своих тиковых функций, вызываемую в каждом кадре библиотекой Android Frame Pacing (или движком Unity для более старых версий Unity, где библиотека Frame Pacing отсутствует). В библиотеке эта информация о тиках объединяется в гистограммы, которые затем периодически загружаются в Google Play через конечную точку HTTP. Каждый тик записывается как связанный с ключом инструмента и аннотацией . Вы определяете аннотации с помощью плагина Unity.

Клавиши прибора

Ключ инструмента указывает, откуда в кадре берется тик, и представляет собой целое число, которое необходимо передавать при каждом вызове функции тика. Это делается автоматически плагином Unity. Если в настройках Unity вашей игры включена опция «Оптимизированная частота кадров» (доступна в версии Unity 2019.3.14 или более поздней), Android Performance Tuner будет использовать информацию из библиотеки Android Frame Pacing для составления отчета об улучшенных показателях.

Аннотации

Аннотации предоставляют контекстную информацию о том, что делает ваша игра, когда записывается тик. Например, аннотация может идентифицировать любое из следующего:

  • Текущий уровень игры
  • Загружается конкретная сцена
  • На экране «большой босс»
  • Любая другая соответствующая информация о состоянии игры.

Аннотации определяются в диалоговом окне, предоставляемом плагином Unity.

Внутри библиотека Tuning Fork использует формат буфера протокола Google для хранения аннотаций и параметров точности. Это четко определенный многоязычный протокол для расширяемых структурированных данных. Дополнительную информацию см. в документации по протокольным буферам .

Параметры точности

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

Нагрузка на память и процессор

Вся память, используемая библиотекой Tuning Fork, выделяется при инициализации, чтобы избежать неожиданностей во время игры. Размер данных зависит от количества ключей инструмента, количества возможных аннотаций и количества сегментов в каждой гистограмме; это кратно всем этим четырем байтам для каждого сегмента. Также имеются две копии всех гистограмм, позволяющие отправлять их в режиме двойной буферизации.

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

При вызове тиковой функции не требуется больших затрат на обработку: она просто вычисляет индекс в массиве сегментов гистограммы и увеличивает число целых чисел.

Веб-запросы

Библиотека выполняет два типа запросов к конечной точке сервера:

  • generateTuningParameters при инициализации
  • Периодически во время игры возникает запрос uploadTelemetry для отправки данных на сервер.

Оффлайн игроки

Если при инициализации доступное соединение отсутствует, запрос повторяется несколько раз с увеличением времени задержки. Если при загрузке нет соединения, загрузка кэшируется. Загрузки сохраняются в виде файлов во временном хранилище.

Требования

Чтобы использовать плагин в своей игре, используйте поддерживаемую версию Unity:

  • Unity версии 2017.4 или новее и .NET версии 4.6.
  • Для использования файлов расширения APK требуется Unity 2018.2.
  • Для улучшенной частоты кадров и измерений графического процессора требуется Unity версии 2019.3.14 или новее.
  • Для поддержки сцен Addressables требуются Unity 2019.3 или новее и пакет Addressables 1.19.4 или новее.

Интегрируйте Android Performance Tuner в Unity

Информацию об интеграции Android Performance Tuner в Unity см. в разделе Включение API .

,

В этом руководстве описывается, как использовать плагин Unity для записи и загрузки данных о времени кадра из Unity 2017.4 или более поздней версии .

Для игровых движков, использующих C или C++, см. руководство по собственным игровым движкам .

Фон

Ключевым компонентом игрового процесса является производительность рендеринга . Производительность рендеринга зависит от следующих двух факторов:

  • Частота кадров: как часто прорисовывается кадр.
  • Настройки качества графики: уровень точности представления кадра, включая точность моделирования и графики.

Для игр хорошая производительность рендеринга определяется следующим образом:

  • Обеспечение стабильной и постоянной частоты кадров (т. е. процента кадров, отображаемых с желаемой частотой).
  • Рендеринг кадров с максимально возможной частотой при сохранении стабильности, обычно 30 или 60 кадров в секунду в зависимости от типа игры.
  • Максимизация уровня детализации для пользователя с учетом размера и плотности его экрана при сохранении желаемой стабильной частоты кадров.

Библиотека Android Frame Pacing ограничивает большую часть изменений во времени кадра, обеспечивая стабильную частоту кадров в играх. Остальные различия во времени кадра обусловлены уровнем детализации, отображаемой в определенных сценах игрового процесса, и графическими возможностями устройства. Используя Android Performance Tuner, вы можете определить моменты во время игры, когда время кадра медленнее или быстрее целевого, и сопоставить эти проблемы и возможности, чтобы:

  • Особые настройки качества
  • Конкретные сцены в вашей игре
  • Конкретные модели устройств или характеристики устройств

Запись и загрузка данных

Библиотека Tuning Fork использует одну из своих тиковых функций, вызываемую в каждом кадре библиотекой Android Frame Pacing (или движком Unity для более старых версий Unity, где библиотека Frame Pacing отсутствует). В библиотеке эта информация о тиках объединяется в гистограммы, которые затем периодически загружаются в Google Play через конечную точку HTTP. Каждый тик записывается как связанный с ключом инструмента и аннотацией . Вы определяете аннотации с помощью плагина Unity.

Клавиши прибора

Ключ инструмента указывает, откуда в кадре берется тик, и представляет собой целое число, которое необходимо передавать при каждом вызове функции тика. Это делается автоматически плагином Unity. Если в настройках Unity вашей игры включена опция «Оптимизированная частота кадров» (доступна в версии Unity 2019.3.14 или более поздней), Android Performance Tuner будет использовать информацию из библиотеки Android Frame Pacing для составления отчета об улучшенных показателях.

Аннотации

Аннотации предоставляют контекстную информацию о том, что делает ваша игра, когда записывается тик. Например, аннотация может идентифицировать любое из следующего:

  • Текущий уровень игры
  • Загружается конкретная сцена
  • На экране «большой босс»
  • Любая другая соответствующая информация о состоянии игры.

Аннотации определяются в диалоговом окне, предоставляемом плагином Unity.

Внутри библиотека Tuning Fork использует формат буфера протокола Google для хранения аннотаций и параметров точности. Это четко определенный многоязычный протокол для расширяемых структурированных данных. Дополнительную информацию см. в документации по протокольным буферам .

Параметры точности

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

Нагрузка на память и процессор

Вся память, используемая библиотекой Tuning Fork, выделяется при инициализации, чтобы избежать неожиданностей во время игры. Размер данных зависит от количества ключей инструмента, количества возможных аннотаций и количества сегментов в каждой гистограмме; это кратно всем этим четырем байтам для каждого сегмента. Также имеются две копии всех гистограмм, что позволяет отправлять их в режиме двойной буферизации.

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

Вызов тиковой функции требует небольших затрат на обработку: она просто вычисляет индекс в массиве сегментов гистограммы и увеличивает число целых чисел.

Веб-запросы

Библиотека отправляет два типа запросов к конечной точке сервера:

  • generateTuningParameters при инициализации
  • Периодически во время игры возникает запрос uploadTelemetry для отправки данных на сервер.

Оффлайн игроки

Если при инициализации доступное соединение отсутствует, запрос повторяется несколько раз с увеличением времени задержки. Если при загрузке нет соединения, загрузка кэшируется. Загрузки сохраняются в виде файлов во временном хранилище.

Требования

Чтобы использовать плагин в своей игре, используйте поддерживаемую версию Unity:

  • Unity версии 2017.4 или новее и .NET версии 4.6.
  • Для использования файлов расширения APK требуется Unity 2018.2.
  • Для улучшенной частоты кадров и измерений графического процессора требуется Unity версии 2019.3.14 или новее.
  • Для поддержки сцен Addressables требуются Unity 2019.3 или новее и пакет Addressables 1.19.4 или новее.

Интегрируйте Android Performance Tuner в Unity

Информацию об интеграции Android Performance Tuner в Unity см. в разделе Включение API .