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

Я создаю приложение на Android для Google картона Виртуальная реальность (VR) в движке Unity3d. Так как производительность VR имеет большое значение для лучшего опыта. Я использовал Simplygon (из магазина Assert), чтобы объединить все текстуры в моем приложении.

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

Я что-то упустил, Что может быть причиной этого?

Есть ли у них варианты снижения производительности в мобильной сборке? Статистика окна профиля редактора Unity:

Перед использованием Simplygon: (FPS составляет около 60)

После использования Simplygon: (Пройдено 250 FPS), но количество трисов и вертов значительно увеличилось.

Статистика окна профиля мобильного Android:

До оптимизации:

После оптимизации:

2 ответа

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

В вашем случае, рост числа полигонов был, по-видимому, просто более болезненным, чем выигрыш от текстур, для вашего конкретного телефона. Хотя, если честно, могут быть и некоторые простые настройки для исправления - у кого-то еще могут быть предложения там.

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

Есть ли у них варианты снижения производительности в мобильной сборке?

Предположительно, вы имели в виду, можно ли улучшить производительность?

Вы также сказали, что сравнили с редактором. Это не очень хорошая идея - для начала - какой рендерер для единства вы используете? OpenGL больше похож на Android, чем на DirectX.

Вам нужно измерить больше. Затем измерьте более конкретно (у Unity есть несколько хороших помощников по регистрации производительности), прежде чем вносить полезные изменения.

Другие вопросы по тегам