В этой главе мы:
1. Улучшили навык программирования и работы с осями X и Y.
2. Познакомились с реализацией направленного движения в Unity.
3. Научились создавать тайловые карты.
4. Поработали с коллизиями в 2D-пространстве.
Завершив последний практический урок, перейдем к заключительным главам, в которых изучим значение HUD и UI в гейм-дизайне и узнаем, как создавать эти компоненты. Таким образом, мы научимся добавлять в игру меню и настройки доступности, а также продумаем, как игроку эффективнее всего использовать меню во время геймплея.
Глава 9. HUD и UI. Что это такое?
Эти компоненты нам знакомы (UI – user interface, пользовательский интерфейс; HUD – heads-up display, экран на стекле шлема), и мы даже потренировались в их использовании. В ходе игры мы следим за шкалой выносливости или здоровья персонажа, чтобы понимать его состояние во время боя или исследования мира. HUD-дисплей – самый эффективный способ сообщить эту информацию игроку. При разработке HUD главное – не загромождать его информацией, чтобы ее было легко разобрать. Но прежде чем приступить к изучению процесса разработки, разберем, что обычно отображается на экране во время игры:
• шкала здоровья;
• индикатор боеприпасов;
• мини-карта или радар;
• шкала выносливости;
• прицел;
• индикатор повышения уровня;
• инвентарь.
Прицел
Этот элемент может оставаться незаметным до начала боя, но прицел в играх жанра FPS находится в самом центре экрана. Такие простые его варианты, как точка или перекрестие, помогают игроку определить направление движения персонажа или прицелиться. Но этот элемент должен быть простым. Он не должен занимать много места на экране или отвлекать игрока. При том что в жанре FPS прицел обычно виден на экране в течение всего геймплея, он может появляться в играх от третьего лица, когда игрок прицеливается. Выбирая цвет для прицела, имейте в виду, что он должен быть всегда заметен. Если действие игры разворачивается среди снегов, не делайте прицел белым, чтобы он не сливался с окружающей средой. Хорошо, если по цвету прицела игрок будет понимать, кто перед ним находится – враг или друг. В FPS-играх при наведении на дружественных персонажей или гражданских прицел обычно становится синим или зеленым, а при наведении на врагов – красным. В некоторых шутерах от первого лица игрок может использовать функциональность aim assist, ускоряющую наведение оружия на противников в бою. Встречаются даже игры с самонаведением прицела. При этом игрок может выбрать, будет ли он использовать эту функцию. Например, в Marvel’s Avengers, когда вы играете за Капитана Америку, у вас есть возможность бросать щит во врагов или решать с его помощью некоторые головоломки. В процессе боя игрок может с помощью прицела распределять урон по нескольким врагам. Кто бы мог подумать, что простая точка или кружок в центре экрана могут быть такими полезными!
Индикатор боеприпасов
Обычно для указания количества боеприпасов используется два вида индикации: числовая или изображающая снаряды. Какой из этих вариантов лучше подойдет игре, будет зависеть от ее стиля. Поскольку этот элемент – один из самых важных, он должен быть прост и понятен. В серии Halo используются оба этих вида индикации в зависимости от оружия. К примеру, заряд энергетического оружия указывается в процентах, как будто оно питается от батарей. У некоторых видов автоматического оружия индикатор боеприпасов находится на корпусе и почти в центре экрана, чтобы игроку было легко за ним следить. Если вы планируете использовать стандартный индикатор патронов, можете взять за основу пример Call of Duty, где индикатор находится в нижней части экрана справа. При этом разработчики обычно передают остаток снарядов как картинкой, так и числом.
Запас гранат и других особых предметов также должен быть четко виден рядом с индикатором боеприпасов. Если игроку доступно несколько предметов, дайте ему возможность открывать их меню и выбирать подходящий. В Halo: Infinite игрок может переключать гранаты и выбирать способность, например захват или развертываемый щит.
Шкала здоровья
Шкала здоровья показывает остаток жизненной силы персонажа и помогает отслеживать его состояние или количество жизней. Выражаясь более серьезным языком, эта шкала показывает, насколько близок персонаж к смерти.
Дизайн этого элемента может быть самым креативным среди всех компонентов HUD, так как шкалу здоровья можно представить в виде сердец, собственно шкалы, процентов или же менять ее цвет в зависимости от оставшегося у персонажа здоровья. Кроме того, ее можно использовать наоборот. То есть вместо шкалы здоровья можно отображать шкалу урона, и, если она заполнится, персонаж умрет. В первом случае цель игрока – не позволить шкале опуститься до нуля, а во втором – достичь максимума.
В некоторых играх здоровье выражается иначе, например в виде регенерируемого щита. Например, в серии Halo у Мастера Чифа есть щит, который служит его шкалой здоровья. Если ресурс щита заканчивается, персонаж становится уязвим для атак, которые могут в итоге его убить. Однако щит восстанавливается, как только персонаж оказывается в укрытии и ему некоторое время не наносят урон. В последние годы этот способ показать остаток здоровья становится все популярнее и используется в таких играх, как Uncharted, Ghost of Tsushima и Call of Duty. В одних играх здоровье персонажа отражается с помощью шкалы, в других – с помощью цвета. При использовании цвета экран становится черно-белым, если персонаж оказывается близок к смерти, а углы экрана могут окрашиваться красным. Но, к примеру, в Halo здоровье персонажа восстанавливается, если ему какое-то время не наносят урон.
Мини-карта/радар
Чем больше я играю в игры, тем полезнее мне кажется этот элемент. Мини-карта очень помогает заранее обнаруживать врагов и находить скрытые сокровища. В некоторых играх она направляет игрока по маршруту квестов. На ней также может указываться расстояние, чтобы игрок понимал, сколько ему осталось до цели. Главное – следить, чтобы изображения на карте были четкими и понятными. Весь смысл в приставке «мини». Хотя игрок может открыть меню паузы и посмотреть полную карту мира, все локации и предметы на мини-карте должны быть видны четко. В Red Dead Redemption 2 у игрока есть возможность изменять размер мини-карты, чтобы расширить обзор. Однако вам необходимо решить, что именно показывать на этой карте.
В качестве альтернативы можно использовать радар. На нем окружающий мир показан в упрощенном виде, и это подталкивает игрока к его исследованию. В серии Halo используется именно такая система, когда враги на карте показаны красными точками. Радиус действия этого радара – 25 метров. Иногда враги появляются на карте, только если начинают шуметь или перезаряжают оружие, раскрывая свое местоположение.
Независимо от того, что вы выберете, игрок должен получать удовольствие от геймплея, даже если этих элементов нет. Оба этих инструмента лучше всего неприметно размещать в нижних углах экрана, но так, чтобы за ними было удобно наблюдать в ходе игры. Если вы создаете несколько локаций, обязательно добавьте к ним легенду, к которой игрок сможет обращаться. Не оставляйте игрока без пояснений, что это за локации: он в итоге потеряется и не поймет, куда идет или что перед ним находится. Нелишним будет позволить игроку отмечать произвольные локации. В мире могут быть места, куда игрок захочет вернуться, поэтому ему нужно дать возможность обозначить их на карте.
Мини-карта также может показывать много другой полезной информации, например индикатор высоты, идеально подходящий на случай низких полетов. В Grand Theft Auto V этот индикатор появляется, когда персонаж садится в летательный аппарат. Если же персонаж садится за штурвал подводной лодки, этот индикатор начинает отражать глубину погружения. Если опуститься слишком глубоко, подлодка начнет ломаться и в конечном итоге разрушится, что приведет к гибели персонажа. Грустно, я знаю. Но мини-карта или радар помогают сделать игру иммерсивной и расширить геймплей.
Выносливость
По аналогии со шкалой здоровья, шкала выносливости показывает, сколько сил есть у персонажа для выполнения определенных действий. В серии The Elder Scrolls внизу экрана присутствуют три шкалы: здоровья, маны и выносливости. Выносливость убывает, когда персонаж бежит, сражается или плывет. Однако эту характеристику можно улучшить, что даст персонажу больше энергии для участия в бою или исследования.
Важно, чтобы игрок видел, что у персонажа кончается запас выносливости. Если персонаж теряет ее во время боя, он может начать двигаться медленнее или выглядеть уставшим, и игроку придется ждать некоторое время, пока силы восстановятся. Усталость персонажа можно выразить с помощью тяжелого дыхания. Придумывайте интересные способы показать игроку, что персонажу требуется отдых.
Различные зелья или определенное время для отдыха персонажа могут быстро восстановить выносливость или здоровье. Но эти возможности должны появляться в подходящий момент. Будет странно, если персонаж усядется отдыхать прямо посреди боя.