Показываю, как делаю интерфейсы

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

Несколько слов про интерфейсы

Интерфейс - это комплексная тема. Не только иконки, размазанные по краям экрана. Интерфейс - это набор инструментов, которыми игрок и игра взаимодействуют друг с другом. Это:

  • аудио-визуальное представление
  • подсказки
  • ввод пользователя
  • обратная связь от игры

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

Эффективность интерфейса определяется скоростью выполнения задач игроком.

Обращу внимание на частую ошибку "минимум кликов". Скорость выполнения задачи измеряется не только в кликах, но и во времени, которое игрок тратит на восприятие этой задачи. Насколько просто ему считать подсказки, понять требуемые действия.

Показываю, как делаю интерфейсы

Игрок быстрее справится с несколькими маленькими окошками и небольшим описанием, чем с огромной конструкцией с кучей кнопок и текста. Он совершит больше кликов, но справится быстрее. Я покажу это на практике.

Сокращать количество кликов любят только маркетологи =)

Чтобы сделать эффективный интерфейс, нужно проделать много работы по двум направлениям:

  • Анализ сценариев использования
  • Управление вниманием

Я строю интерфейс, исходя из сценариев использования. Только так можно создать удобное и эффективное взаимодействие игрока с игрой. Чтобы управлять вниманием, нужно понимать целевую аудиторию и владеть практиками эффективного UX-дизайна.

Этот пост не про практики UX-дизайна. Мне важно показать анализ сценариев использования, и как это отражается в интерфейсе. Я покажу вам эффективный интерфейс.

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

Исследование. Игрок перемещается по карте. Он принимает решение о каждом следующем действии, руководствуясь: окружением и состоянием персонажа. Окружение - это игровой мир: леса, горы, вода, противники, клад. Состояние персонажа - здоровье, бонусы + их длительность.

Показываю, как делаю интерфейсы

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

Внизу экрана подсказки по возможным действиям:

  • Свободно двигаться по карте
  • Атаковать
  • Смотреть инвентарь
  • Будет опциональный блок-шоткат для подбора предметов с земли

Пока что я работал только над инвентарём - там много задач.

Инвентарь, экипировка. Самая частая задача - это посмотреть "что у меня есть". Игроку интересно сколько каких предметов есть, как можно использовать каждый из них.

Показываю, как делаю интерфейсы

В моей игре инвентарь состоит ровно из 8 ячеек. В каждой лежит только один предмет. Никаких пачек. Справа я показываю информацию о предмете и предлагаю возможное действие. Если действие займёт ход игры - показываю это.

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

Игра предлагает три типа предметов: еда, снаряжение, материалы.

Еда даёт бонус здоровья на ограниченное количество ходов и регенерацию здоровья. Это всё, что игроку нужно знать о еде. И я показал это на мокапе выше. Теперь про оружие.

Показываю, как делаю интерфейсы

Оружие можно взять в руки. А можно убрать. У оружия важно каким уроном оно атакует и на сколько. У противников могут быть уязвимости к конкретному типу атаки- тогда оружие наносит им х2 урона. Оружие имеет прочность. Она тратится не только при атаках, но и при создании предметов. Например, для создания копья нужны палка и нож. При этом нож потратит часть своей прочности.

Я не люблю цифры. У игрока здоровье дискретно - поэтому я могу показать его количеством сердечек. То же самое касается урона и бонусов. Единственное место, где я не могу этого избежать - длительность бонусов для еды. Здесь мне важно показать, что еда длится долго. Игроку не придётся её часто менеджить.

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

О материалах игроку нужно знать немного. Только количество и название.

Показываю, как делаю интерфейсы

Внизу экрана вы могли заметить набор иконок. Это режимы инвентаря, выполненные в виде страниц/вкладок. Каждый режим отвечает за отдельный сценарий взаимодействия с инвентарём. Переключается кнопками Q и W.

Все кнопки выполнены заливками со светлыми буквами. Так я отделяю их от всего остального, делаю более заметными. Потому что каждая кнопка - это полезное действие в игре. Игрок должен это видеть сразу.

Я мог бы объединить все три режима в один интерфейс. Сделать на каждый предмет несколько опций. Но! Это как раз тот случай, когда лучше сложную задачу разделить на несколько простых. Тогда получится эффективный интерфейс. То, о чём я писал выше.

Пока что я описал только сценарий экипировки. Как игрок напрямую взаимодействует с предметами в инвентаре.

Инвентарь и земля. Предметы можно сбрасывать и подбирать. Для этого я сделал отдельный режим инвентаря.

Показываю, как делаю интерфейсы

Игрок видит, что находится на земле. Может посмотреть эти предметы как и свои в инвентаре. Но он не может в этом режиме эти предметы использовать. Только поднять. Инвентаря это тоже касается. В этом режиме предметы из инвентаря можно только сбросить.

Показываю, как делаю интерфейсы

Я вынес это взаимодействие в отдельный функционал по двум причинам:

  • Сброс и подбор предметов тратит ход игрока. Я хочу, чтобы игрок это понимал и не делал лишних действий. Ведь каждый ход игры тратится бонус, двигаются и атакуют противники.
  • Когнитивная разгрузка. Это позволило мне избежать выбора "что сделать с этим предметом". На один предмет только одно возможное действие. В режиме просмотра только использование. В режиме подбора только выбросить или подобрать.

Инвентарь, создание предметов. Пока что я остановился здесь. Решение сырое и требует тщательного продумывания. Но общую суть вы сможете уловить.

Показываю, как делаю интерфейсы

Слева появляется панель с рецептами. Для игрока важно уметь фильтровать и сортировать рецепты, в зависимости от задачи. Их три:

  • Что я могу сделать вообще?
  • Что я могу сделать из того, что у меня есть?
  • Что я могу сделать из конкретного предмета, которым я располагаю?

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

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

Показываю, как делаю интерфейсы

Так я полностью закрыл третью задачу из списка выше. Чтобы решить первые две задачи, игрок нажимает кнопку X и сразу переходит в список рецептов. Только теперь он видит все рецепты. В самом верху списка будут те, которые он может сделать прямо сейчас. На которые у него есть ингредиенты в инвентаре.

В создании предметов я пока что плохо проработал блок с ингредиентами. Мне нужно показать игроку какие предметы для рецепта у него есть, а каких - нету. Нужно убрать кнопку создания, если чего-то не хватает. Очень желательно показать предметы, которые останутся в инвентаре. Например, при создании копья нужны: нож и ветка. Но нож при этом останется. За исключением случая, когда у ножа кончается прочность и он ломается.

Подсказки на закрытие инвентаря ещё нету, но будет. Думаю над местом расположения этой подсказки. Она должна быть одинаковой для всех действий, в т.ч. и для боевой системы.

Я рассмотрел большинство сценариев использования инвентаря в своей игре. За кадром остались граничные и вырожденные случаи.

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

Несколько ссылок для тех, кого зацепил проект:

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

9191
62 комментария

Как UX-ер со стажем, я стараюсь не использовать рамки..
На картинке выше я показываю фигурной рамкой..

Да и слева это что за список? И что за шрифт? почему, он цветом сливается с фоном, 3 позиция. Связка? Cвязка чего? Ну даже если допустим это вязанка дров, а не три гавна, даже так не влезет, а на немецком будет уже примерно как Bündel Brennholz, как это все у тебя влезет сюда?

Так что дело ты проделал конечно большое, но вот так заявлять, что будет вам чему поучится в заголовке, слишком громкие слова. КГ/АМ. Переделывай.

15
Ответить

Переделаю =)

Ведь я там писал:
Решение сырое и требует тщательного продумывания. Но общую суть вы сможете уловить.

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

но вот так заявлять, что будет вам чему поучится в заголовке, слишком громкие слова

У всех есть чему поучиться у других. Кому-то у меня. Мне у кого-то другого. У меня не было цели показать какой я гениальный дизайнер. Моя цель была показать как сценарии влияют на проектирование интерфейса.

P.S. Через неделю покажу как этот интерфейс выглядит в игре. Билд тоже приложу чтобы можно было пощупать.

11
Ответить

Комментарий недоступен

7
Ответить

Это мокапы. Будет ещё лучше в финале =)

2
Ответить

Показываю, как делаю интерфейсы

Раз уж ты в разделе "геймдев" то не интерфейсы, а UI. Заголовок вводит в заблуждение.

Тем более "интерфейсы" во множественном числе.

Применительно к графике, так это вообще не по-русски, тогда уж "интерфейс".

1
Ответить

Но ведь UI - это User Interface...

15
Ответить

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

Вот и вы так и подумали, даже не прочитав пост.

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

7
Ответить