Тестирование альфа-версии игры для ПК: дневник разработчика

Главный инженер-программист Иэн рассказывает о первом этапе тестирования альфа-версии игры для ПК.

Всем привет,
меня зовут Иэн Норрис, я — глава команды инженеров-программистов для Win 10 в игре Sea of Thieves. На прошлой неделе Тед уже немного рассказал о нашей работе в своем видео, а я хотел бы поделиться некоторыми техническими подробностями с теми, кому это может быть интересно.

Моя команда занимается исключительно версией игры для Win 10. Мы занимаемся такими вещами, как настройки видео, настраиваемые раскладки клавиатуры, устранение каких-то конкретных неполадок на вашем компьютере компьютером и оптимизация вашего прекрасного ПК! Все наши усилия направлены на то, чтобы создать лучшую из возможных ПК-версию игры.

Мы одновременно разрабатываем и версию игры для Xbox One, и ПК-версию, так что вся работа, вкладываемая в Xbox-версию, полезна и для ПК-версии. Игра создается таким образом, чтобы работать без потерь на обеих платформах (а скоро к ним добавится еще и Xbox Scorpio), так что все обновления для Xbox-версии подходят и для ПК-версии.

Вы, вероятно, задаётесь вопросом — если обе версии игры разрабатывались одновременно, почему же мы допустили игроков до ПК-версии совсем недавно? На то есть несколько причин:

Стабильность игры

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

В студиях, подобных Rare, обычно создается «однородная» среда разработки, для того, чтобы сам процесс проходил как можно более гладко. Это означает, что у всех наших разработчиков стоят компьютеры одинаковой конфигурации, с одинаковыми процессорами (CPU), GPU (графическое процессорное устройство) и одинаковой версией Windows. Это делается для того, чтобы избежать таких проблем, когда, скажем, художник Боб сталкивается с неполадкой, из-за которой не может продолжать работать, а инженер Дженни не может её воспроизвести на своём компьютере. (Возможно, это их настоящие имена, а может быть и нет, предпочитаем сохранить их личности в тайне).

Для того, чтобы обнаружить проблему, команде ПК-разработчиков требуется немного больше аппаратуры, чем всем остальным командам в студии. У нас есть наши основные ПК «для работы» — такие же, как и у всех остальных, но кроме этого, у нас еще есть дополнительные ПК для проведения тестирований — ноутбуки и ПК, на которых установлена более старая аппаратура. Мы также специально заказываем компьютеры с самой обычной конфигурацией и используем их для проведения постоянных тестирований в наших экспериментальных лабораториях. Кроме того, мы тесно сотрудничаем с лабораторией Microsoft, которая ведет разработку медиаплеера SHIELD (Тед уже рассказывал об этом). С помощью этой лаборатории, мы смогли найти и устранить ряд неполадок, которые в противном случае испортили бы всю игру нашим самым преданным и важным игрокам.

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

Работа игры

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

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

В основном по этой причине мы и не даём до сих пор никакой информации по поводу минимальных требований — мы и сами этого еще не знаем! Мы предполагаем какой-то разумный минимум, а потом тестирование альфа-версии игры с включенной функцией авто-настройки помогает нам уточнить, насколько мы близки к истине и нельзя ли еще понизить требования. Еще несколько усовершенствований — и требования становятся еще ниже, и то, что сегодня считалось «минимальными требованиями», завтра может стать «средними требованиями. Наша работа проходит под девизом: «Как низко мы можем пасть?!»

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

Изначально мы не говорим игрокам, в какую «корзину» мы их определили. Это происходит по двум причинам. Первая — большинству игроков абсолютно безразлично, какие настройки мы выбрали, если предлагаемый уровень графики игры их устраивает. А вторая — те, кому это не безразлично, расстроятся, если узнают, что определили их в категорию «минимальные требования». Когда мы получим тот код, который нас устраивает, в будущих обновлениях игры игроки смогут увидеть значения авто-настроек в настройках видео.

Как же мы узнаем результаты? При помощи телеметрии! Телеметрия даёт нам возможность оценить, как игроки ведут игру. С её помощью мы можем получить такие показатели, как частота кадров и какие настройки видео выбраны у игрока. Объединив эти данные, мы можем понять, соответствует ли частота кадров той, что мы рассчитывали получить на данном оборудовании.

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

Это даёт студии Rare редкую возможность позволить вам взглянуть изнутри на то, как мы исправили реальную проблему в работе игры!

Прежде всего, наша команда тестеров обнаружила неполадку и отправила отчёт об ошибке главе соответствующего отдела, то есть, мне. Вот сам отчёт:

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

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

Существует несколько утилит, которые мы используем для определения сбоев в работе игры. Моим «любимым оружием» в борьбе с этой ошибкой я выбрал Media Experience Analyzer. Вот как выглядит использование данной утилиты (и ряда других):

Мы анализировали данные на протяжении нескольких недель, и в результате выявили 3 отдельные неполадки, из-за которых возникали очень большие паузы в игре. Затем надо было проверить, что предпринятые нами шаги по устранению ошибок сработали на всех компьютерах, не внесли нарушения в работу Xbox-версии и не создали новых проблем! Если наше мнение совпадёт с мнением тестеров, мы сможем объявить ошибку «закрытой». И последний шаг — дать возможность участникам альфа-тестирования поиграть в исправленную версию!

Возможности игры для ПК

Понятно, что проделать всю вышеупомянутую работу — дело само по себе непростое, но не сомневайтесь, что мы исправим все эти ошибки и добавим новые возможности игры для ПК. Мы усиленно работаем над игрой для второго этапа альфа-тестирования!

Одно из требований игроков застало нас врасплох — ввести возможность «подтолкнуть к разговору». Мы и сами думали о таком, но хотели сделать это гораздо позднее. Однако, судя по вопросам на форумах, такая возможность оказалась одной из самых востребованных, так что мы готовы приступить к её разработке гораздо раньше и хотим добавить в игру в следующем обновлении.

Мы знаем, что нашим игрокам очень интересно, как же в конечном счёте будет выглядеть интерфейс настроек видео. Создание пользовательского интерфейса — сложная задача, требующая много времени и усилий, особенно для игры, подобной Sea of Thieves, а мы хотим сделать все правильно с первого раза. Мы изучили множество окон настроек в других играх и в итоге сделали то, что сами считаем лучшим из всего, что вы видели!

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

Спасибо за внимание!

Иэн, главный инженер-программист