Слияние контроллеров в игру
Игровые контроллеры обеспечивают новые пути к проигрывателям для взаимодействия с игрой. При разработке игры Вам решать чтобы решить, является ли контроллер надлежащим и, если так, как это используется в игре. Когда проигрыватель имеет контроллер, Вы могли бы сделать его монопольным источником входных данных к Вашей игре, или это может быть только один из многих источников входных данных. В последнем случае его средства управления используются вместе с данными от других датчиков, таких как сенсорный экран и датчики движения, для создания опыта, полагающегося на отдельные сильные места каждого входного типа. Поэтому для создания большого пользовательского опыта в игре необходимо понять контроллеры, виды входных данных, которые они предоставляют, и как проигрыватель использует средства управления. Только тогда можете Вы видеть, как контроллер может лучше всего использоваться в Вашей игре.
В этой главе Вы будете учиться:
Как средства управления на игровом контроллере выдерживают сравнение с другими видами ввода
Характеристики игровых контроллеров поддерживаются программой Made-for-iPhone/iPod/iPad (MFi)
Требования Apple для игр та поддержка игрового контроллера реализации
Как отобразить действия Вашей игры на средства управления на контроллере
Как обратиться к определенным средствам управления на контроллере
Определенные меры, которые можно принять, чтобы гарантировать, чтобы игровые контроллеры добавили к опыту игры
Предоставление вводов к игре
Интерактивность является критической и необходимой частью геймплея. Проигрыватели постоянно интерпретируют сенсорную информацию (графика, аудио) предоставленный игрой. От этих данных проигрыватели выбирают который действия взять. Затем проигрыватели предоставляют входные данные игре для предписания их планов. Этот цикл решения (наблюдают, ориентация, решает, действие) происходит постоянно, пока игра не завершается. В экшн-игре этот цикл решения происходит очень быстро, потому что игра не приостанавливается, в то время как проигрыватели решают, как действовать. В других играх, куда время не передает автоматически, проигрыватели могут быть в состоянии действовать более сознательно. Но во всех играх, проигрыватели решают, что сделать и затем попытаться сделать это.
При разработке игры это - хорошая идея оценить различные пути, которыми проигрыватель мог бы управлять игрой и затем выбрать методы ввода, которые являются надлежащими. Средства управления игры должны чувствовать себя естественными для проигрывателей. Несмотря на то, что проигрыватель должен чувствовать себя оспариваемым Вашей игрой, он или она не должен чувствовать себя оспариваемым или расстроенным средствами управления Вашей игры. Игровые контроллеры добавляют к входным типам, доступным Вам. Помимо контроллеров, существуют другие источники входных доступных данных к Вашей игре. Например:
Сенсорный интерфейс. Экран устройства на iOS получает сенсорные вводы от пальцев проигрывателя. Сенсорный ввод является естественным путем к проигрывателям для управления вещами на экране, но может часто быть неточным; проигрыватель может выбрать несколько небольшую площадь быстро, но не может выбрать область размера пикселя точно. Кроме того, потому что нет никакой осязательной обратной связи, предусмотрел затрагиваемые объекты, трудно управлять объектами, не просматривающимися непосредственно. Например, в прошлом игры iOS моделировали thumbsticks путем рисования изображения thumbstick на экране. Эти виртуальные средства управления не работают, а также фактический thumbstick, потому что проигрыватель не может обратить пристальное внимание одновременно на thumbstick и другие элементы на экране.
Движение. Проигрыватель управляет всем устройством, и системы акселерометра и гироскопа предоставляют входные данные Вашей игре. Как с сенсорным интерфейсом, средства управления движением могут быть очень интуитивными. Но потому что экранные перемещения с устройством, экранные изображения постоянно находятся в движении.
Мышь. Проигрыватель управляет мышью или сенсорной панелью, заставляя курсор переместиться. Также движение мыши может интерпретироваться как дельты и использоваться, чтобы повернуть или переместить камеру в игру. Даже при том, что основанные на мыши интерфейсы являются косвенными, они могут обеспечить точность пиксельного уровня.
Клавиатура. Клавиатура обеспечивает дискретные ключевые вводы, которые могут быть отображены непосредственно на действиях в игре. Клавиатуры обеспечивают отличные области управления и осязательную обратную связь.
Игровые контроллеры, что поддержки Apple предоставляют две дополнительных возможности:
Аналоговые кнопки и триггеры. Кнопки и триггеры обеспечивают осязательные средства управления, которые могут быть отображены на определенных игровых действиях. Когда проигрыватель нажимает кнопку, действие инициировано. Все кнопки и включают игровые контроллеры MFi, чувствительное давление. После того, как определенная сумма давления была применена для активации кнопки, кнопка измеряет сумму силы, применяющейся к кнопке. Таким образом Ваша игра может или определить, нажимается ли кнопка (дискретные средства управления), или определите, сколько давления было оказано к кнопке (аналог).
Аналог thumbsticks и аналоговые геймпады. Thumbsticks и геймпады обеспечивают две оси движения относительно нейтральной, позиции по умолчанию. Как с кнопками, thumbsticks и геймпадами являются аналоговыми средствами управления, измеряясь, как далеко управление было перемещено от нейтральной позиции. Когда проигрыватель выпускает thumbstick или геймпад, он хватает назад к этой нейтральной позиции. Любые вычисления мертвой зоны автоматически выполняются платформой Игрового контроллера, таким образом, Ваша игра не должна выполнять эту работу.
Понимание контроллеров, поддерживаемых Apple
Apple создал спецификации для отличных видов игровых контроллеров MFi. Несмотря на то, что определенные контроллеры варьируются, много общих характеристик должны быть реализованы строго согласно спецификации.
Контроллеры имеют стандарт или расширенное расположение органов управления
Все контроллеры используют или стандартное расположение органов управления или расширенное расположение органов управления. Стандартное расположение органов управления обеспечивает следующие средства управления:
Четыре аналоговых кнопки поверхности расположили в ромбе на правой стороне контроллера (маркировал A, B, X, и Y),
Аналоговый геймпад на левой стороне контроллера
Две аналоговых кнопки плеча (маркировал L и R),
Кнопка, чтобы приостановиться и возобновить геймплей
Расширенное расположение органов управления является строгим надмножеством стандартного расположения органов управления.
Четыре аналоговых кнопки поверхности расположили в ромбе на правой стороне контроллера (маркировал A, B, X, и Y),
Аналоговый геймпад на левой стороне контроллера
Два аналога thumbsticks на левых и правых сторонах контроллера
Две аналоговых кнопки плеча (маркировал L1 и R1),
Два аналоговых триггера (маркировал L2 и R2),
Кнопка, чтобы приостановиться и возобновить геймплей
Контроллеры являются или автономными или облегающими
Автономный контроллер является отдельным устройством от Mac или устройством на iOS. Когда проигрыватель играет в игру с автономным контроллером, контроллер является единственным устройством, которым может легко управлять проигрыватель. Другие средства управления не обычно доступны.
Облегающий контроллер разработан для работы только с устройствами на iOS (и каждый обычно разрабатывается для работы с определенным устройством или диапазоном аналогичных устройств). Устройство на iOS всегда помещается в контроллере в альбомной ориентации. Сенсорный экран и средства управления движением остаются доступными проигрывателю.
Контроллеры связываются с помощью беспроводных технологий или подключены непосредственно
Беспроводной контроллер не видим к устройству, пока это не было явно соединено с устройством. Обычно, проигрыватель делает это путем движения в настройки Bluetooth и обнаружения контроллера. Однако Ваша игра может также предоставить эту поддержку непосредственно; посмотрите Обнаруживающие Беспроводные Контроллеры.
Контроллеры, подключенные непосредственно к устройству на iOS с помощью коннектора молнии, обнаружены автоматически, как только они соединяются.
Определенные Apple контроллеры
Apple определил три отличных категории контроллеров: облегающий стандартный контроллер, облегающий расширенный контроллер и автономный расширенный контроллер.
Облегающий Стандарт Контроллер iOS
Облегающий стандартный контроллер поддерживает стандартное расположение органов управления. Рисунок 1-2 показывает расположение органов управления для стандартного контроллера, присоединенного к iPhone.
Облегающий Расширенный Контроллер iOS
Облегающий расширенный контроллер поддерживает расширенное расположение органов управления. Рисунок 1-2 показывает расположение органов управления для стандартного контроллера, присоединенного к iPhone.
Автономный расширенный контроллер
Автономный расширенный контроллер поддерживает расширенное расположение органов управления. Рисунок 1-3 показывает изображение такого контроллера.
Требования для игр та поддержка игровые контроллеры
Apple создал определенные требования, за которыми необходимо следовать для любой игры, поддерживающей игровые контроллеры. Эти требования разработаны, чтобы удостовериться, что игры всегда играемы.
Необходимо поддерживать опцию неконтроллера. Ваша игра может не потребовать использования контроллера. Если проигрыватель не имеет контроллера, Ваша игра должна обеспечить интерфейс нейтрализации. Например, игра iOS могла бы использовать основанные на движении датчики или виртуальные средства управления, появляющиеся только, когда контроллер не доступен.
игры iOS, поддерживающие контроллеры, должны поддерживать стандартное расположение органов управления. Вы не можете потребовать использования расширенного расположения органов управления в игре iOS, несмотря на то, что можно поддерживать его, если это доступно. Когда в игру играют с помощью стандартного контроллера, необходимо обеспечить некоторый другой способ получить доступ к тем игровым действиям. Например, потому что все стандартные контроллеры, как гарантируют, будут облегающими, Вы могли бы использовать датчики движения для предоставления информации перемещения.
Поскольку игры Mac не поддерживают облегающие контроллеры, игры Mac не требуются, чтобы поддерживать стандартное расположение органов управления.
Игры должны быть играемыми автономными контроллерами использования. При поддержке расширенного контроллера возможно, что контроллер физически не подключен к устройству. Это означает, что проигрыватель не может легко взаимодействовать с устройством и контроллером одновременно. Ваш основной геймплей должен быть абсолютно доступным от контроллера. Необходимо также попытаться сделать другие интерфейсы, такие как меню, доступные от контроллера.
Необходимо поддерживать кнопку паузы. Все контроллеры включают кнопку паузы. Когда геймплей активен, нажимание кнопки паузы должно переключиться между приостановкой и возобновлением геймплея. Когда в игру не играют (такой как тогда, когда Вы в экране меню), кнопка паузы должна быть проигнорирована.
Отображение игровых действий к средствам управления
Часть Вашего игрового дизайна решает, какие средства управления полезны для Вашей игры так, чтобы можно было отобразить их на различные меры, которые может принять проигрыватель. Рассмотрите не только проект своей игры, но также и физическое расположение средств управления. Руки проигрывателя не будут на всех средствах управления одновременно, таким образом, необходимо рассмотреть, как проигрыватель взаимодействует со средствами управления, поскольку играют игру. Это означает создавать и тестировать Ваши расположения органов управления на фактических аппаратных контроллерах, чтобы гарантировать, чтобы они работали на практике.
Используйте A и кнопки B для общих действий
Кнопки A и B на ромбе просты для проигрывателя к доступу, таким образом, общие действия должны часто помещаться в них. Условно, кнопка используется, чтобы включить или активировать действия, и кнопка B отменяет или инвертирует те действия. Например, для реализации поддержки игровых меню используйте геймпад для выбора элемента и кнопка для выполнения действия, связанного с тем элементом. Кнопка B отменяет выбор (или возможно перемещает фокус в более раннее меню, если проигрыватель перешел через иерархию опций).
Используйте кнопки триггера или плеча для основных действий
Триггер и кнопки плеча являются естественными средствами управления для использования для важных действий, потому что проигрыватели могут активировать те средства управления указательными пальцами при использовании своих ползунков для управления thumbsticks, геймпадом и ромбовидными кнопками.
Используйте геймпад или левый Thumbstick для управления перемещением
При использовании левого thumbstick для управления перемещением, проигрыватель может легко управлять всеми аспектами перемещения с левым ползунком при оставлении других пальцев доступными для управления другими средствами управления. Несмотря на то, что геймпад может использоваться для управления перемещением, он также имеет различное осязательное чувство. На расширенном контроллере используйте thumbstick для управления перемещением и геймпадом для выполнения других действий.
Будьте осторожны при присвоении действий обеим осям thumbstick или геймпада. Действия, связанные с теми осями, должны или быть тесно связаны друг с другом или быть действиями, выбранными дискретно. Избегите помещать дискретные действия с осью, если другая ось должна использоваться одновременно для управления другими действиями; это делает средства управления напрасно трудными. Например:
Действительно используйте обе оси, если связаны действия перемещения. Например, первоклассные игры часто используют вертикальную ось для продвижения или назад, и горизонтальная ось для превращения левыми или правыми. Точно так же для управления самолетом вертикальная ось используется для управления подачей и горизонтальной осью для банковского дела самолета. В обоих случаях то же действие — перемещение — выполняется, таким образом, средства управления являются легкими для понимания.
Действительно используйте обе оси геймпада, если оси используются для выбора дискретных действий. Используйте кардинальные направления (вверх, вниз, влево и вправо) для создания четырех дискретных действий. Можно также объединить значения кнопки от этих двух осей и использовать их для действий по созданию на диагоналях (верхний левый, верхний правый, нижний левый, нижний правый).
Не включайте держащееся поведение на горизонтальной оси и ускорение на вертикальной оси, потому что те способы поведения так отличаются. Вместо этого переместите ускорение и повреждающийся к кнопкам плеча или триггерам.
Не используйте одну ось для управления перемещением и другой осью для управления дискретными действиями (такими как переход или приседание).
Используйте правильный Thumbstick для дополнительных действий
Право thumbstick может быть сложным для использования одновременно с ромбовидными кнопками. Поэтому право thumbstick должно обычно подключаться к действиям, разрешающим проигрывателю брать руку от thumbstick. Например, средство моделирования рейса могло бы использовать право thumbstick, чтобы позволить проигрывателю озираться; если проигрыватель кратко должен использовать другие средства управления, защелки thumbstick назад так, чтобы средство просмотра выглядело прямо вперед.
Не перегружайте проигрыватель
Проигрыватели не могут управлять всеми элементами управления на контроллере одновременно, таким образом разработать разметки, упрощающие для проигрывателя интуитивно переключаться между элементами доступного элемента управления. Лучший способ разработать хорошие расположения органов управления состоит в том, чтобы протестировать Ваши расположения органов управления с проигрывателями с помощью фактических аппаратных средств. Если проигрыватели не могут легко и интуитивно управлять игрой, необходимо изменить расположение органов управления. Рассмотрите следующие общие руководящие принципы при тестировании расположения органов управления:
Смотрите как игровые движения его или ее пальцы для управления средствами управления. Средствами управления, которые должны быть применимыми одновременно, должны почти всегда управлять различные пальцы.
A, B, X, и кнопки Y могут быть нажаты в комбинации для создания новых, отличных действий. Например, Вы могли бы объединить A и B, X и y, или даже все четыре кнопки одновременно. Однако нажатие трех кнопок одновременно является трудным. Можно также рассмотреть объединение кнопок поверхности с одной из кнопок плеча или триггеров, потому что теми средствами управления обычно управляют с различными пальцами.
Нажатие кнопки плеча и надевание триггера на той же стороне контроллера одновременно могут быть трудными.
Если Ваша игра смешивает средства управления с сенсорным экраном с вводами контроллера, проигрыватель, возможно, должен переместить ползунок или пальцы от контроллера для касания экрана. Избегите последовательностей действий, где проигрыватель должен быстро переключиться между касанием экрана и использованием контроллера.
Используйте расположения органов управления, с которыми проигрыватели знакомы
Вот три стандартных расположения органов управления, которые Вы могли бы рассмотреть для своей игры. Если Ваша игра является средством моделирования рейса, игрой платформы или мчащейся игрой, необходимо придерживаться максимально близко этих расположений органов управления, потому что проигрыватели уже знакомы с ними.
Таблица 1-2 показывает средства управления для средства моделирования рейса, с помощью левой руки для полета самолетом и правой рукой для инициирования большинства других действий.
Управление | Действие |
---|---|
Оставленный Thumbstick или геймпад | Средства управления рейсом |
Кнопка | Дожигатели |
B кнопка | Тормоза скорости |
Правильный триггер (R2) | Оружие огня |
Оставленный триггер (L2) | Ракета огня |
Таблица 1-2 показывает средства управления для игры платформы.
Управление | Действие |
---|---|
Оставленный Thumbstick или геймпад | Перемещение |
A или кнопка B | Переход |
X или кнопка Y | Выполненный или элемент использования |
Левое или правое плечо | Наклон |
Таблица 1-3 показывает типичное расположение органов управления для мчащейся игры. В этом примере многократные средства управления присваиваются тому же действию, позволяющие проигрыватели выбирают, какие средства управления они предпочитают. Это расположение также препятствует Вам добавлять запутывающие средства управления к вертикальной оси геймпада.
Управление | Действие |
---|---|
Оставленный Thumbstick или Геймпад (горизонтальная ось) | Держаться |
Кнопка | Ускориться |
X или кнопка B | Повреждение |
Правильный триггер (R2) или плечо | Ускориться |
Оставленный триггер или плечо | Повреждение |
Y кнопка | Используйте элемент |
Идентификация средств управления в игре
Поскольку Вы реализуете поддержку контроллера в своей игре, удостоверьтесь, что Вы описываете те средства управления к проигрывателю. Проигрыватель должен всегда быть в состоянии изучить то, для чего используется управление. Например, Вы могли бы хотеть реализовать учебное руководство для обучения проигрывателей, как играть игру, или Вы могли бы включать экран содержания, описывающего средства управления. Каждый контроллер имеет непротиворечивую маркировку на основе того, поддерживает ли это стандартное или расширенное расположение органов управления. Используйте эту терминологию последовательно для обращения к средствам управления так, чтобы проигрыватели всегда видели те же имена элементов управления независимо от игры, в которую они играют.
Таблица 1-4 обеспечивает имена для средств управления на стандартном контроллере.
Имя элемента управления | Сокращение |
---|---|
Кнопка | A |
Кнопка B | B |
X кнопок | X |
Кнопка Y | Y |
Геймпад | Геймпад |
Оставленная кнопка плеча | L |
Кнопка правого плеча | R |
Таблица 1-5 обеспечивает имена элементов управления на расширенном контроллере.
Имя элемента управления | Сокращение |
---|---|
Кнопка | A |
Кнопка B | B |
X кнопок | X |
Кнопка Y | Y |
Геймпад | Геймпад |
Оставленная кнопка плеча | L1 |
Кнопка правого плеча | R1 |
Оставленный триггер | L2 |
Правильный триггер | R2 |
Оставленный thumbstick | L thumbstick |
Право thumbstick | R thumbstick |
Создание большого пользовательского опыта с контроллерами
Когда реализовано хорошо, контроллеры обеспечивают большой пользовательский опыт, потому что они подробно останавливаются на опциях, доступных проигрывателю, и оставляют больше пространства на экране, который будет использоваться для геймплея, а не для элементов управления. Однако, необходимо выполнить некоторую работу, чтобы гарантировать, что игра играет хорошо с контроллерами. Создание большого расположения органов управления является запуском этого процесса. Рассмотрите эти другие инструкции и подсказки при полировке игры:
Облегающие контроллеры всегда содержат устройство на iOS в альбомной ориентации. Когда устройство на iOS установлено в облегающем контроллере, изменения ориентации являются неловкими. Ваша игра должна играть в альбомной ориентации и не потребовать портретной ориентации.
Удалите избыточные средства управления из экрана, когда контроллер будет подключен к устройству. Если Ваша игра создает средства управления на экране, такие как кнопки или виртуальный thumbsticks, скройте эти средства управления, когда подключен контроллер. Они не необходимы, и они могли бы быть недовольными к проигрывателю.
Если Ваша игра не требует взаимодействия с экраном, удостоверьтесь, что не засыпает экран. В приложении для iOS используйте
UIApplication
объектidleTimerDisabled
свойство, чтобы препятствовать тому, чтобы заснул экран.Поддерживайте кнопку паузы. Кнопка паузы должна всегда поддерживаться. Если проигрыватель имеет автономный контроллер, кнопка паузы является наиболее удобным способом для того проигрывателя, чтобы приостановить и возобновить геймплей. Когда кнопка паузы нажимается, Ваша игра должна переключить игру между активным и приостановленным состоянием.
Поскольку платформа Игрового контроллера визуально не указывает, что кнопка паузы была нажата, Вам решать чтобы указать, что геймплей приостановился при помощи визуального индикатора, аудио сигнала или обоих. Пока игра не возобновляется, предоставьте экранную информацию, указывающую, что игра приостанавливается и может быть возобновлена путем нажатия кнопки паузы. Можно также принять решение показать своего рода вторичное, поведение негеймплея. Например, Вы могли бы показать экранное меню который, позвольте нам, проигрыватель выбирает другое действие в Вашей игре. По существу приостановка останавливает нормальный геймплей и переводит в рабочее состояние любое вторичное поведение, которое Вы хотите показать проигрывателям. Ваше приложение (и даже все вводы контроллера) остается активным. Проигрыватели должны быть в состоянии использовать контроллер для навигации через это вторичное поведение.
Когда Вы не можете полностью приостановить геймплей, такой как в многопользовательской игре, пауза, что Вы можете и позволять остальным продолжать выполнять. Даже при том, что геймплей работает, вводы контроллера должны быть проигнорированы в Вашем геймплее. Вводы должны или управлять экранными меню или быть проигнорированы.
Обязательно скоординируйте паузу и поведение резюме с другими событиями в Вашем приложении. Например, когда Ваша игра перемещена в фон, геймплей обычно приостанавливается. Когда игра позже попятилась к переднему плану, геймплей остается приостановленным, пока проигрыватель не принимает решение возобновить его. Однако путем интеграции этого поведения с контроллером, кнопка паузы может возобновить игру, даже при том, что это не использовалось первоначально для приостановки игры.
Реагируйте, когда контроллер будет подключен или разъединен. Выберите подход, который интуитивен к проигрывателю. Например, если в Вашу игру играют, и контроллер подключен к игре, предположите, что проигрыватель хочет использовать контроллер и переключиться на те средства управления. Точно так же, если два контроллера подключены, одобряют облегающий контроллер по автономному контроллеру.
Будьте консервативны, когда проигрыватель разъединит контроллер. Предположите, что это было разъединено случайно и геймплей паузы сразу. Если проигрыватель возобновляет игру от устройства, переключателя к расположению органов управления, не использующему игровой контроллер.
Поддержка как можно больше использование контроллера. Если проигрыватель использует автономный контроллер, предположите, что проигрыватель не может коснуться экрана, потому что экран мог бы быть вне досягаемости. Гарантируйте, что меню и другие игровые действия могут быть активированы с помощью игрового контроллера.
Когда необходимо, потребуйте, чтобы проигрыватель отпустил кнопку прежде, чем нажать его снова. Иногда Вам нужен проигрыватель для отпускания кнопки прежде, чем принять кнопку, как нажимаемую. Например, если Вы реализуете поддержку меню с помощью контроллера, и Вы используете ту же кнопку (A) для всех действий, тогда проигрыватель может непреднамеренно выбрать многократные меню, прежде чем они смогут отпустить кнопку. Вместо этого потребуйте, чтобы проигрыватель отпустил кнопку после того, как будет инициировано каждое действие. (Если Ваша игра выводит на экран меню, в то время как в игру играют, проигрыватель может уже удерживать кнопку, когда появляется меню.)