Здравствуйте! Хочу поделиться опытом проведения небольшого исследования по теме факторов игрового опыта. Проект выполнялся в сжатые сроки в рамках школьного проекта, что повлияло на объём и качество проделанной работы. Знание результатов может быть полезно начинающим разработчикам игр для расстановки приоритетов во время работы. В любом случае считаю интересными результаты, полученные в ходе исследования.
Основной целью проекта являлось упорядочение факторов игрового опыта по уровню их значимости для игрока. Но какие существуют факторы, влияющие на опыт игрока в принципе? Давайте разбираться.
Стив Свинк в своей книге «Game Feel: A Game Designer's Guide to Virtual Sensation» выделяет три условия, необходимых для формирования игрового опыта:
Наличие Смоделированного пространства - среды в которой будут происходить события, ограниченной некоторыми правилами.
Полировка или же детальность - визуальный и аудиальный отклик на действия игрока в условиях смоделированного пространства.
Интерактивность, к форме которой можно отнести контроль внутриигровым персонажем или же аватаром в реальном времени.
Также можно добавить технические ограничения накладываемые из-за особенностей восприятия человеком окружающего мира:
Максимальная задержка ввода (input lag) в 240 мс
Минимальная частота изменения изображения на мониторе в 10 Гц.
О причинах таких ограничений можно узнать в статье С. Карда, Т. Морана и А. Ньювеля «The Model Human Processor an Engineering Model of Human Performance» или же в её пересказе, представленном в книге С. Свинка.
Добавим ещё один такой немаловажный фактор, формирующий игровой опыт, как наличие источников фана. О значимости источников фана упоминается в книге Джесси Шелла «Искусство Геймдизайна…», и это достаточно легко объясняется. Так как опыт от прохождения компьютерной игры — это частный случай развлекательного опыта, то и источники фана необходимы для любой игры.
В итоге имеем список факторов игрового опыта, включающий:
среду, в которой происходят события игры;
правила, согласно которым существует среда;
аватара, с которым может ассоциировать себя игрок;
детальность среды, добавляющую больший реализм миру;
интерактивность среды, где происходят события игры;
перемещение и контроль аватара в реальном времени;
частоту изменения изображения на дисплее выше 10 Гц,
задержку ввода ниже 240 мс,
наличие источников фана.
Для упорядочения факторов по значимости воспользуемся простой идеей: создадим тестовую сцену, где будет возможно изменение качества реализации каждого из факторов и проведем анкетирование, по результатам которого и определим значимость каждого из факторов.
Для создания такой тестовой сцены я использовал игровой движок Unity и наборы моделей, находящихся в открытом доступе для использования в некоммерческих проектах.
Первые два проявления факторов игрового опыта: саму сцену и правила согласно которой она существует, отключить невозможно, так как в случае их отсутствия игрок будет просто находиться в пустоте, без возможности сделать что-либо
Игрок управляет аватаром от первого лица, что сделано ради более простой ориентации и взаимодействия с окружением, и упрощения разработки, потому что при использовании вида от первого лица нет необходимости использовать модель игрока, а также анимации его передвижения.
Ограничение частоты кадров регулируется в среде разработки Unity с помощью параметра Application.targetFrameRate, чьё значение устанавливается при запуске сцены.
Для управления персонажем было написано два сценария контроллера: хорошая и плохая версии. Второй контроллер прежде всего отличает фиксированные значения углов поворота камеры и расстояний, на которые может переместиться аватар. Подсказки с кнопками управления персонажем указаны в окне, которое используется для выхода в главное меню (в устанавливаемом приложении кнопка ESС, в браузерной версии кнопка q).
Регулируемая задержка ввода была реализована с помощью создания сопрограмм из функций действий персонажа. Особенностью сопрограмм является возможность их асинхронного, отложенного выполнения. Использование такой особенности было необходимо в данном случае.
Для создания интерактивного окружения, в контроллер персонажа была добавлена корутина обработки взаимодействий с отмеченными объектами. В сцене расположены интерактивные объекты, такие как:
камни для бросков. Они располагаются на тропинке или у водоёма у камня;
![](https://habrastorage.org/getpro/habr/upload_files/af0/cfe/9c9/af0cfe9c938f98fcc8bb7bdfd669c977.png)
небольшие ограды и тыква, которые изначально не являются интерактивными, но при попадании в них камнем, их перемещение становится возможным;
![](https://habrastorage.org/getpro/habr/upload_files/a22/d8b/52e/a22d8b52ef329a614c57d422068326f2.png)
![](https://habrastorage.org/getpro/habr/upload_files/5d6/c62/f40/5d6c62f4059c78d5769b6e81bb352bd3.png)
топор, который возможно «метнуть» в любое дерево;
![](https://habrastorage.org/getpro/habr/upload_files/d9e/577/41b/d9e57741b0c3e4591bb9b8759eb2d8cc.png)
растения и грибы, объекты которых можно удалить с карты, «собрав» их;
![](https://habrastorage.org/getpro/habr/upload_files/5d5/e05/6a1/5d5e056a1aedaea827cabde23d74e47a.png)
![](https://habrastorage.org/getpro/habr/upload_files/dc0/cde/063/dc0cde06345109be51ada32545086068.png)
свиток, который несёт в себе информацию, добавляющую контекст событиям (можно открыть, нажав на E);
![](https://habrastorage.org/getpro/habr/upload_files/703/8c9/b02/7038c9b02b182d26dc6fa0c932bac243.png)
меч в камне, необходимый для прохождения тестовой сцены;
![](https://habrastorage.org/getpro/habr/upload_files/3ed/9b1/48e/3ed9b148e0e55fc1542cca1b9d42065f.png)
камни у костра, на которые можно присесть.
![](https://habrastorage.org/getpro/habr/upload_files/340/98f/9a8/34098f9a88a9ff0dbbce6070ea801077.png)
Также существует большой список объектов, добавляющих детальность миру. Они пропадают при отключении настройки “Детали” в параметрах тестовой сцены. Помимо этих объектов при отключении деталей пропадает увеличение угла обзора при беге аватара и становятся невозможными броски камней.
В качестве источника фана в тестовую сцену был добавлен небольшой секрет, намёк на который будет указан в анкете. Его возможно активировать, если навести курсор на лягушку, находящуюся на кувшинке рядом с точкой появления персонажа, а также зажать кнопку взаимодействия на клавиатуре. После нажатия, аватар будет перемещён в комнату, где текстурой стен является неожиданное и смешное изображение.
![Лягушка, открывающая доступ к секретной комнате Лягушка, открывающая доступ к секретной комнате](https://habrastorage.org/getpro/habr/upload_files/1c4/919/56a/1c491956a3122798e601b7ec0b244a14.png)
![Секретная комната Секретная комната](https://habrastorage.org/getpro/habr/upload_files/81e/ff5/333/81eff533371315d078f800464a623f04.png)
Саму тестовую сцену можно пощупать в браузере с компьютера по ссылке.
Или же скачать установщик и запустить её непосредственно на ПК.
Она не несёт особого смысла отдельно от анкеты, с вопросами которой можно ознакомиться по ссылке.
В опросе приняло участие 72 человека от 14 до 24 лет. Результаты опроса отражены в диаграмме.
![](https://habrastorage.org/getpro/habr/upload_files/9d3/316/53a/9d331653a79e8e42b1280eb92f258d2e.png)
В числовой форме (значимость в у.е.):
Низкая задержка ввода - 334
Хороший контроллер персонажа - 330
Интерактивность - 308
Наличие источника/источников фана - 294
Высокая детальность окружения - 291
Высокая частота кадров - 262
Наличие звуковых эффектов - 254
Наличие истории - 231
По результатам опроса, в среднем каждый игрок уделяет низкой задержке ввода на 30% больше внимания, чем наличию звуковых эффектов. Наиболее велика разница между значимостью детализации окружения и высокой частотой кадров: она равна приблизительно 10%. В среднем же, разница между соседними факторами в иерархии составляет примерно 3,76%, что является достаточно значительным результатом.
Данная иерархия может быть принята во внимание во время проведение тестирования на ранних этапах разработки игровых проектов: когда давят сроки и необходимо получить максимально качественный для игрока результат за минимальное время.
В дальнейшем возможно проведение более большого анкетирования, затрагивающего большее число людей или же в целом проведение повторного анкетирования, но уже с другой тестовой сценой, для выявления связи значимости факторов игрового опыта для игрока и их реализации в конкретном проекте. Могу предположить, что в общих чертах порядок расположения факторов в иерархии должен оставаться постоянным.
Zara6502
это опрос между игроками дота2? это актуальная тема только для киберспорта или среди тех кто любит жить в онлайне, для остальных игр задержки всегда +- одинаковые в пределах 20-50мс. При этом странно что люди хотят играть без звука вовсе. Хотя для игрока в доту2 по идее звук ничего не несёт, его легко можно убрать без ущерба.
На таком размере выборки - это погрешность.
detroitme
звук в дота2 такая же информация ты можешь услышать звук способности который не попадает в твой экран