Гипотеза: производительность графики влияет на пользовательский опыт (За и Против)

Перевод статьи Graphics Performance Makes User Experience (Good or Bad) с любезного согласия Ville-Veikko Helppi

Хорошие показатели очень тесно связаны с хорошим пользовательским опытом (UX). Пользователь хочет видеть постоянный прогресс в игре, иметь гладкую игровую картинку, производительности графики должна быть на должном уровне и стабильно работать на всех мобильных устройствах (телефонах, планшетах и т. д.).

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

Мобильные игры для Android требуют тщательного тестирования производительности до момента публикации на рынке. Какой тип тестирования производительности необходим - зависит от природы игры, графики, геймплея, мультиплеера, функциональных возможностей и многих других аспектов. Наиболее типичные тесты производительности для мобильных игр - это общие тесты производительности, которые позволят определить, как игра ведет себя в плане оперативности, стабильности и частоты обновления экрана при определенных объемах нагрузки или взаимодействия с пользовательскими шаблонами.

Использование ресурсов - важная метрика в случае с мобильными играми, поскольку мощность CPU процессора и графического процессора, размер памяти устройства - существенно отличаются на различных устройствах. Высокопроизводительные устройства более приспособлены под нагрузку, в то время как устройства начального уровня не смогут даже запустить игру. Это не исключительная ситуация, когда игра, "заточенная" под быстрые смартфоны и планшеты, опубликована - и затем она получает тысячи жалоб и гневных отзывов от пользователей.

Важно! Используйте автоматизированное тестировании, и вы получите оптимизированную производительность. Выполняя тестирование вручную, вы не получите понимание о том, что происходит в пользовательском интерфейсе/ в управлении. Вот отличный пример (с видео),как использовать передовые методы автоматизированного тестирования.

Читать по теме: Тестирование HDD в программе HDD Regenerator

Различные методы тестирования производительности

Тест производительности - это основной тип тестирования производительности, который предоставляет информацию о том, с какой скоростью что-то выполняется, насколько процесс может масштабироваться (в плане графики или соединений/интеграций). Также тест дает результаты о стабильности производительности в целом. Типичные метрики теста - загрузка процессора, потребление памяти и количество кадров в секунду (fps). На основе этих данных разработчики игр должны и дальше совершенствовать игру, чтобы либо уменьшить определенные функциональные возможности, оптимизировать графику или что-то еще, чтобы гарантировать работу игры на маломощных устройствах. 

Нагрузочное тестирование - наиболее простая форма тестирования производительности. При определенной нагрузке тестируется игра и инфраструктуры. Разработчик получает понимание того, где возможные узкие места и какие части игры нуждаются в оптимизации. Во время нагрузочного тестирования разработчики, как правило, получают лучшее понимание параллелизма, связанного с игрой, и возможные пути оптимизации. Например, если ваша игра должна загружать что-то ссервера, и вдруг 300+ устройств сделают это в той же WiFi сети, вы можете получить очень ценную информацию о поведении вашей игры в подобной ситуации. Кроме того, нагрузочное тестирование позволит разработчику понять, насколько игра должна 'идти на компромисс' в случае, если некоторые операции не могут быть обработаны. 

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

Одна из подкатегорий для стресс-тестирование - тестирование на устойчивость. Он также известен как испытание на выносливость, и используется, чтобы понять, если игра и инфраструктура сможет поддерживать определенную постоянную нагрузку на него. Когда замочите тестирование проводится, как правило, процессора, памяти, а также fps и другие важные показатели контролируются на наличие возможных утечек и проблем. Цель замочить тестирование, чтобы узнать, как система ведет себя при длительном использовании. Некоторые отраслевые стандарты можно рассматривать как замачивать тесты, тем не менее, пользователи должны быть осведомлены о характере. Другой тип стресс-теста называется спайк тестирование, которое выполняется вдруг увеличения нагрузки, генерируемой очень большое число пользователей, данных, входы, или любой другой тип раздражителей. Это не зам, но периодические и надо выяснить, если резкое изменение нагрузки вызовет какие-либо ошибки или вопросы по игре и ее инфраструктуры. Гол со спайком тестирование, чтобы определить, если производительность будет страдать, инфраструктура не удастся, или как те ошибки государства обрабатываться в случае резкого изменения входов.

Простые шаги к тесту на производительность

  1. написать и провести тесты производительности в любые типы тестов лучше всего использовать для вашей игры. Убедитесь, что у вас стресс сама игра, но и всей инфраструктуры, связанной с ней, а также. Это значит, что внутренние серверы, интеграции с социальными медиа, и любой другой третьей стороне или внешней сущности. Все эти вещи влияют на производительность игры и через исполнение его пользовательский опыт. Вы можете даже использовать подход записи-воспроизведения, чтобы создать ваш упрощенные тесты производительности!
  2. вход на все журналы! Это очень важно и поможет вам в дальнейшем разобраться, что происходит в вашей игре - даже ты бы его мониторить в реальном времени во время тестирования. Журналы будут поддерживать всю эту информацию и вы можете легко сравнить их позже - даже строить-по-строить - посмотреть, как дела у регрессировали при строительстве новой версии игры.
  3. использование только реальных мобильных устройств - и как можно больше. Вы получите быстро понять, как в игре выполняет, когда вы начинаете выполнение основных дыма тестирование на сотнях различных устройств. При запущенной игре на тех реальных устройствах, проверить по крайней мере эти вещи:
  • Графика игры и пользовательского интерфейса - есть ли в игре дисплей/экран показывают правильно (и аналогично) на всех этих устройствах?
  • Сделать интерфейс и макет и других графических элементов (панелей инструментов, кнопок, значков и т. д.) дисплей корректно (и одинаково) на всех устройствах?
  • Это удобство элементов управления (кнопок, меню, шкатулки, какие) идентичны во всех устройствах? Некоторые версии ОС имеют разные GUI вид и контролирует это так важно проверить во всех возможных устройств там.
  • Это навигационных / игровой прогресс течет достаточно плавно? Сколько задержек между "этапы игры"? Опять же, попробовать с высокого класса и низким уровнем конца устройства, чтобы понять разницу/разрыв между топ и не исполняющих устройств.
  • Анимация - это те, течет хорошо? Это изменится с Android L для "родных" приложений, но никак не влияет на мобильных играх. Помните! Анимации требуют определенную производительность от устройства. Важно проверить это в условиях низких конечных устройств.
  • Шрифты - сделать устройство, где ваша игра будет выполнена на которых эти шрифты вы имели в виду, чтобы быть - или нет?
  • Разрешение экрана - один старый первопричину для фрагментации. Попробуйте поддержка всех возможных разрешений экрана и прошедших тестирование на реальных устройствах. Резолюций "не идентичны" когда версия ОС отличается, как например Операционная система обрабатывает пользовательский интерфейс дублирования уведомлений иначе, чем желе, мороженое сэндвич или пряник.
  • Ориентация экрана - что происходит - если что - когда пользователь поворачивает экран? Ваша игра должна быть поворотный?

Сейчас - мобильная игра готова (и оптимизирована) для сотен миллионов пользователей?

Не нашли ответ на свой вопрос? Возможно, вы найдете решение проблемы на нашем канале в Youtube! Здесь мы собрали небольшие, но эффективные инструкции. Смотрите и подписывайтесь на наш youtube-канал!

Смотреть на Youtube

Руководства и обзоры

1 Что нужно восстановить?

Видео

MP4, AVI и HD видео хранятся на телефоне и / или по ошибке удаляются вместе с фотографиями и другими медиафайлами.

Контакты

Номера телефонов друзей и знакомых из приложения «Контакты Android», журналы вызовов; Восстановление SIM-карты.

Фото

Удалены файлы JPG / PNG из Галереи Android; фото, загруженные на мобильный, файлы повреждены после восстановления.

Смс и сообщения

Чаты WhatsApp и Facebook, текстовые сообщения в соцсетях, информация на сим-карте

2 Где пропали файлы?

На sd-карте

Фотографии и документы хранятся на SD-картах. Часто на них случайно удаляются файлы

На телефоне

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

На USB флешке

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

На HDD или SSD

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