Геймдизайн. Рецепты успеха лучших компьютерных игр от Super Mario и Doom до Assassin’s Creed и дальше - [99]

Шрифт
Интервал

МАППИНГ (англ. mapping – нанесение на карту, отображение) – это соотношение между физическими элементами интерфейса и действиями, которыми они управляют.

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

Цель маппинга – создать сходство между физическим управлением и его внутриигровым эффектом. Если маппинг на хорошем уровне, это сходство служит как встроенный мнемонический код, который помогает игрокам вспомнить, как использовать элемент управления. Классическим примером маппинга является кухонная плита с конфорками, которая выглядит следующим образом:



Плите не нужны наклейки со знаками. Люди интуитивно понимают, как объекты соотносятся друг с другом.

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

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

Маппинг облегчает обучение. Он избавляет игроков от необходимости запоминать абстрактные взаимосвязи между символами кнопок и внутриигровыми действиями. Это особенно важно для менее опытных игроков, поэтому игры, ориентированные на новичков, иногда доходят до крайности. Контроллер движения Wii, система распознавания положения тела Kinect и огромный контроллер Rock Band в форме гитары – все это примеры дорогих физических интерфейсов, которые привлекают случайных игроков, создавая новые виды чрезвычайно детального маппинга.

ОГРАНИЧЕННОЕ УПРАВЛЕНИЕ – это физическое соотношение между различными элементами управления и тем, как они могут использоваться вместе.

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

Игра должна преобразовывать ограниченные элементы управления в действия, которые являются эксклюзивными в игре. Например, контроллер Xbox 360 позволяет размещать указательный палец либо на кнопке-бампере, либо на триггере. Это сделано для того, чтобы их нельзя было нажать одновременно. В BioShock кнопка-бампер используется для выбора оружия, а кнопка-триггер – для стрельбы из него. В этом есть смысл, потому что в сюжете и механике невозможно менять оружие и стрелять одновременно. Физические элементы управления ограничены, и они отражают ограниченные игровые действия, поэтому здесь нет конфликта. Более того, ограниченность физического контроля подчеркивает и естественным образом учит ограниченности внутриигровой механики.

Если ограниченные элементы управления отражают неограниченные действия, это приводит к разочарованию и неловким ситуациям. Вспомните любую игру, в которой выбор инструмента осуществляется на D-Pad Xbox 360, а движение – на левом стике. Для управления обоими элементами нужен свободный большой палец левой руки, а это значит, что игроки должны прекратить движение, чтобы поменять инструменты. Лучшим дизайном будет либо найти другой элемент управления для смены инструмента, либо добавить ограничение в игру, которое отразит ограничение физических элементов управления.


Чувствительность механизма управления

ЧУВСТВИТЕЛЬНОСТЬ МЕХАНИЗМА УПРАВЛЕНИЯ – это мгновенный опыт проецирования намерения через интерфейс.

Еще в 1985 году Сигэру Миямото создал прототип всех платформенных игр, Super Mario Bros. Марио – это усатый итальянский сантехник низенького роста, который спасает принцесс, бегает по трубам и ест грибы. И прыгает – много прыгает. На протяжении всей игры он прыгает постоянно, снова и снова, тысячи раз. Фактически поначалу, в 1981 году, Марио назывался Джампмен.

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

Важно то, как долго вы жмете на кнопку. Быстрое нажатие заставляет Марио сделать короткий прыжок. Если вы удержите ее, Марио опишет высокую дугу в воздухе. Это происходит потому, что Марио движется вверх, пока вы удерживаете кнопку A, в пределах его максимальной и минимальной высоты прыжка.

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


Рекомендуем почитать
Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


Фундаментальные алгоритмы и структуры данных в Delphi

Книга "Фундаментальные алгоритмы и структуры данных в Delphi" представляет собой уникальное учебное и справочное пособие по наиболее распространенным алгоритмам манипулирования данными, которые зарекомендовали себя как надежные и проверенные многими поколениями программистов. По данным журнала "Delphi Informant" за 2002 год, эта книга была признана сообществом разработчиков прикладных приложений на Delphi как «самая лучшая книга по практическому применению всех версий Delphi».В книге подробно рассматриваются базовые понятия алгоритмов и основополагающие структуры данных, алгоритмы сортировки, поиска, хеширования, синтаксического разбора, сжатия данных, а также многие другие темы, тесно связанные с прикладным программированием.


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.


Как пасти котов. Наставление для программистов, руководящих другими программистами

«Как пасти котов» – это книга о лидерстве и руководстве, о том, как первое совмещать со вторым. Это, если хотите, словарь трудных случаев управления IT-проектами. Программист подобен кошке, которая гуляет сама по себе. Так уж исторически сложилось. Именно поэтому так непросто быть руководителем команды разработчиков. Даже если вы еще месяц назад были блестящим и дисциплинированным программистом и вдруг оказались в роли менеджера, вряд ли вы знаете, с чего надо начать, какой выбрать стиль руководства, как нанимать и увольнять сотрудников, проводить совещания, добиваться своевременного выполнения задач.