Есть вариант в конфиге поменять, путь к нему простой: MyDocuments -> The Witcher 3, файл input.settings, открывай через блокнот, найди нужное и поставь своё. Если не хочешь париться с этим сам, попроси кого-нибудь знающего.
- пожаловаться
- скопировать ссылку
Pavel0198
Я пробовал чужие импут сеттнингс файлы использовать — что с некусуса — там есть ремапповые моды, но ничего не поменялось .
- пожаловаться
- скопировать ссылку
И кто поставил минус? Выразить прямо свое мнение нельзя никак? Почему я не могу настраивать управление в игре, а должен довольствоваться предложенной разработчиками схемой?
- пожаловаться
- скопировать ссылку
faust666666666
вывод….играй на пк
- пожаловаться
- скопировать ссылку
Vaselinski
А я на чем играю по твоему?
- пожаловаться
- скопировать ссылку
Бог Кузя
Понятно чтоб назначение самих кнопок менять нельзя, или можно но только в эмуляторах, но я же писал, что мне и не нужно менять клавиши целиком. Но не в этом дело — нужен именно мод на изменение управления. Почему тогда я пишу в тему «моды»? А в ведьмаке нет других раскладок управления.
- пожаловаться
- скопировать ссылку
Должен быть файл с настройками ключей
- пожаловаться
- скопировать ссылку
faust666666666
Когда встанет вопрос о замене геймпада, бери Стим контроллер. Там ваще как угодно можно назначать, хоть в комбинацию, хоть через гироскоп.
- пожаловаться
- скопировать ссылку
Капеллиместари
Да ты не понял — даже если в стим контроллере поменять кнопки менстами — в игре они поменяют все функции, которые привязаны на эту кнопку — то есть Кнопкой А происходит выбор вариантов меню, но на ней же висит спринт и взаимодействие, если я их поменяю — поставлю на курок — то все взаимодействия тоже будут через курок. Я могу поменять в DS4 wiondow любые кнопки, я могу также настроить его как и стим контроллер, и гироскоп задействовать и подсветку, вешать макросы на кнопки, но смысл если это будет реализовано через опу? В игре надо менять функции — в игре.
- пожаловаться
- скопировать ссылку
госпади, да в драйвере геймпада проставь.
- пожаловаться
- скопировать ссылку
Renоx
В каком именно? в x-input так сделать нельзя. на дуалшоке, которым я пользуюсь можно — но зачем? Я же писал — ДАЖЕ ЕСЛИ Я ПОМЕНЯЮ В ДРАЙВЕРЕ ДУАЛШОКА КНОПКИ — ПОМЕНЯЮТСЯ ВСЕ ФУНКЦИИ ЭТОЙ КНОПКИ, А МНЕ НУЖНЫ ТОЛЬКО НЕКОТОРЫЕ. Я НЕ ХОЧУ ВЫБИРАТЬ ПУНКТЫ МЕНЮ ЛЕВЫМ КУРКОМ.
Если бы у меня был контроллер xbox — то там вообще ничего нельзя менять.
- пожаловаться
- скопировать ссылку
faust666666666
Пиши в лс если всё ещё нужно решение сего вопроса. Ювелирно опишу что и как.
- пожаловаться
- скопировать ссылку
В некоторых играх стандартная схема управления с геймпада бывает неудобной, а сменить её можно далеко не всегда. Это недоразумение можно исправить с помощью сторонних методов. О них и пойдёт речь в статье.
Способ №1: через приложение «Аксессуары Xbox»
Этот метод распространяется на все игры, из-за чего может быть не столь гибок, как второй вариант, но зато может использоваться и со сторонними проектами.
Шаг 1. Для начала установите приложение «Аксессуары Xbox» из фирменного магазина Microsoft Store.
Шаг 2. Подключите геймпад по USB-кабелю к компьютеру. Программа определит манипулятор и по беспроводному соединению, но настроить его таким образом не даст.
Шаг 3. Зайдите в «Аксессуары Xbox» и нажмите кнопку «Настроить».
Шаг 4. В открывшемся окне выберите «Новый профиль» и дайте название будущему пресету.
Шаг 5. Теперь вы можете поменять местами любые кнопки на геймпаде.
Шаг 6. После успешной настройки вернитесь назад с помощью кнопки в левом верхнем углу.
Шаг 7. Чтобы активировать пресет, поставьте его в «Слот 1» с помощью выпадающего списка.
Шаг 8. Вернуть обратно стандартную схему управления можно, выбрав пункт «Нет слота» для текущей конфигурации.
Способ №2: через приложение Steam
Отмечу, что данный метод работает только с играми, запускаемыми через Steam, но зато переназначение клавиш работает только для конкретной программы.
Шаг 1. Запустите Steam и войдите в режим Big Picture, выбрав его в разделе «Вид», расположенном в верхней части приложения.
Шаг 2. Зайдите в настройки, нажав на иконку шестерни в верхнем правом углу, и в разделе «Настройки контроллера» включите пункты в соответствии со скриншотом.
Шаг 3. Перезагрузите компьютер, если Steam предложит это сделать.
Шаг 4. Снова зайдите в Steam в режиме Big Picture, откройте библиотеку и выберите нужную игру.
Шаг 5. В разделе «Настройки» откройте подпункт «Настройки управления».
Шаг 6. Настройте удобное расположение кнопок и нажмите «Готово». Выйдите из режима Big Picture.
Шаг 8. Теперь кастомная конфигурация будет применяться только к выбранной игре. Режим Big Picture для этого включать необязательно, он нужен лишь для перенастройки клавиш.
- Этот контроллер от Razer превращает смартфон в портативную консоль. Обзор Kishi V2
- Лучшие геймпады для Android
15 декабря 2019
15.12.19
8
118K
В Steam имеется ряд полезных функций, которыми по незнанию далеко не все пользуются. В данном руководстве речь пойдёт о простой настройке DualShock 4 или любого другого геймпада. Steam позволяет играть с геймпадом без стороннего софта, настроить под себя для каждой игры вручную или же воспользоваться уже готовыми решениями от сообщества.
Для начала нужно найти в левом верхнем углу Steam→Настройки, а затем в категории Контроллер нажать Основные настройки контроллера:
В появившемся окне необходимо поставить галочку на Польз. настройки PlayStation, если вы используете геймпад PS4:
Если вы используете другой геймпад, то поставьте галочку на подходящем для вас варианте.
Выбрав ваш контроллер в Обнаруженные контроллеры можно зайти в Настройки:
Здесь можно дать название геймпаду, отк/вкл вибрацию и настроить подсветку DualShock 4:
Если вы что-то изменили, то нажмите Принять. Затем Назад и Ок в настройках Steam.
Теперь перед запуском игр с подключённым геймпадом можно смело нажимать на Настройки контроллера:
В появившемся окне можно настроить все кнопки по вашему усмотрению, в том числе тачпад DualShock 4. Например, использовать правую и левую части тачпада в виде отдельных кнопок, на которые можно назначить даже клавиши клавиатуры, чтобы иметь под рукой быстрое сохранение или что вам угодно. Если же вас не интересует ручная настройка, то жмите на Список настроек:
В Сообщество можно найти готовые настройки, а самые популярные сразу видно по количеству голосов и времени:
Стоит отметить, что большинство игр будет считать DualShock 4 за геймпад Xbox и безукоризненно работать со стандартной раскладкой без необходимости использовать настройки сообщества или ручные. Как правило, интерфейсы игр будут показывать кнопки Xbox, но привыкнуть не составит большого труда.
Руководство посвящается Дауру, который пытался поиграть в Dark Souls Remastered с геймпадом PS4 на стриме «Dark Souls. Перекаты в душе».
1 Предисловие
Одни из наиболее популярных статей на сайте — о том, как «подружить» игровые устройства с играми. Из-за этого мне регулярно задают вопросы, которые условно можно поделить на три группы:
- Почему геймпад XXX не работает в игре YYY?
- Почему работают только несколько кнопок джойстика?
- Как играть в игру ZZZ на геймпаде?
Чтобы не отвечать одно и то же, написал то, что вы сейчас читаете. В статье содержатся абсолютно все мои знания о настройке игровых устройств, не больше и не меньше. Это не пошаговая инструкция и не FAQ о настройке геймпадов, а компиляция различной информации о проблемах, с которыми я встречался, и их возможном решении.
Какой геймпад выбрать?
Если вы пришли сюда за ответом на один конкретный вопрос: «Какое устройство купить для беспроблемной игры?», то статью можете не читать. Ответ прост: купите оригинальный проводной геймпад от Xbox Series или, на худой конец, от более старых версий приставки от Microsoft.
Тем, кто хочет сэкономить, могут подойти геймпады, совместимые одновременно и с Xbox Series S/X, и с ПК. Например, я пользуюсь PDP Rematch и он меня устраивает полностью.
Замечу, что я не сотрудник магазина компьютерных комплектующих и никогда им не был, я не про-геймер и не настолько увлечён играми, как вам может показаться (но Skyrim, Elite Dangerous, RimWorld, The Outer Worlds — не пустые для меня слова). Весь опыт получен как самостоятельно (у меня есть несколько геймпадов), так и в процессе безвозмездной помощи геймерам, которые любезно разрешили подключиться к их ПК через программу TeamViewer и смиренно нажимали кнопки устройства, пока я ковырялся в настройках эмулятора.
В статье ниже вы найдёте информацию о том, почему игры по-разному работают с геймпадами и как поступить, если встретились с неполадками. Она поможет избежать очевидных граблей в процессе выбора и эксплуатации геймпада и, надеюсь, сэкономит вам время, нервы и деньги.
2 Чем отличаются геймпады
Существует большое количество внешне похожих, но совсем по-разному работающих устройств, и частенько их работа оказывается неудовлетворительной.
Следует понять, что игровые манипуляторы — не из тех устройств, которые работают по принципу «включил и работай». У них столько отличий и особенностей, что можно считать чудом корректное распознавание геймпада игрой. Одно из препятствий к «взаимопониманию» — большое разнообразие устройств. У рулей может быть разный набор педалей, у палочек-джойстиков — разный набор кнопок и «крутилок», а у привычных геймпадов — разные наборы кнопок и функций.
Наиболее популярные геймпады — так называемые «классические». Такими привыкли пользоваться владельцы игровых приставок Xbox 360/One/Series, Playstation 3/4/5 и Nintendo Switch.
Для персональных компьютеров выпущено немало подобных манипуляторов, которые могут быть совместимы с приставками. А могут быть и не совместимы. Как говорится, дьявол кроется в мелочах.
Поэтому в первую очередь расскажу о том, в чём именно заключается разнообразие, чтобы вы поняли, как много нюансов встретится вам на пути приобретения и настройки этих безусловно полезных для развлечения человечества устройств.
Протоколы DirectInput и Xinput
Для обмена информацией между игрой, Windows и устройством используются программные интерфейсы. Другими словами — протоколы связи. Старейший и популярнейший — DirectInput. Именно с его помощью ваш любимый Fornite/PUBG/что_угодно получает информацию о нажатиях клавиш клавиатуры и движениях мыши.
Изначально DInput использовался для связи с традиционными средствами управления — клавиатурой и мышью. Позже в протокол добавили функции обратной связи (вибрацию моторчиков) и считывание данных с аналоговых осей, что позволило геймпадам наладить полноценную, унифицированную связь с играми на ПК.
В девяностые и самом начале двухтысячных, в эпоху Windows 95/98/ME, DirectInput был единственным (и неплохим!) способом общения игр и устройств. Рули с обратной отдачей, джойстики-палочки и прочие манипуляторы баловали игроков обилием конфигураций. Устройства отличались количеством кнопок, наличием всяких крутилок-вертелок, а обратная связь была настолько реалистичной, что рули могло буквально «клинить» на виртуальных ухабах. А ещё всё настраивалось как душе угодно: как и мышь с клавиатурой, кнопки геймпадов легко переназначались в меню опций игр.
Ближе к 2005 году, когда на каждом игровом ПК прочно закрепилась операционная система Windows XP от корпорации Microsoft, стал намечаться раздрай в вопросе о том, как игровые устройства должны взаимодействовать с операционной системой и играми. С этого времени, на мой взгляд, и начались проблемы. Уже 15 лет с тех пор прошло, но ситуация не улучшилась — часть игр поддерживают один протокол, часть — другой, и редко когда оба.
Итак, что же начало меняться?
Во-первых, для работы с мышью и клавиатурой Microsoft стала рекомендовать разработчикам использовать так называемый «Message loop» — новый метод захвата нажатий клавиш, тесно интегрированный с графическим интерфейсом системы. Это позволило упростить не только разработку игр, но и сделать отклик клавиш быстрее (в теории, подтверждений не нашёл).
Во-вторых, в 2005 году вышла приставка Xbox 360 и на платформе Windows появился новый программный протокол — XInput. В отличие от DirectInput, где творится полнейший хаос с вариациями устройств, «иксинпут» заточен только под одно устройство: геймпад для Xbox 360, у которого всегда одинаковое количество кнопок и осей, а также один и тот же набор вибромоторов.
Появление XInput позволило улучшить игровой опыт, ибо разработчики смогли сосредоточиться на оптимизации игр под два варианта управления: традиционную клавомышь и геймпад Xbox 360.
То, что многие игры получились мультиплатформенными, действительно в чём-то помогло. Например, сейчас кажется логичным, что при подключении геймпада к ПК игровые подсказки меняются прямо «на лету», а когда-то, до XInput, приходилось настраивать раскладку вручную. Да и не были интерфейсы оптимизированы под управление чего-либо, отличного от клавиатуры с мышью, поэтому в ту же Half-Life играть на геймпаде было, мягко говоря, сложно.
Но есть и обратная сторона медали. Несмотря на обилие аксессуаров для приставки Microsoft — всяким гарнитурам, рулям, прицепливаемым к геймпаду мини-клавиатурам, новый протокол оказался куцым на возможности: обратная отдача практически отсутствует — доступны лишь ограниченные варианты вибрации, аналоговых осей в геймпаде не так уж и много, количество кнопок фиксированное.
Таким образом, рекомендация Microsoft использовать XInput поспособствовала оттачиванию управления в играх, но принесла проблемы с настраиваемостью (далеко не во всех играх можно переназначить кнопки геймпада) и ограничила развитие игровых манипуляторов (на мой сугубо непрофессиональный взгляд оно давно остановилось).
Какой геймпад выбрать — XInput или DirectInput?
Берите с поддержкой XInput!
К сожалению, практически все контроллеры дешевле тысячи рублей работают только по протоколу DirectInput. Задушите свою жабу и купите что-нибудь подороже, где заявлена поддержка XInput. В идеале — совместимые с приставками Xbox Series, у таких проблем меньше всего.
Приемлемым выбором будет универсальный геймпад, умеющий переключаться между протоколами. Это позволит играть во всякие древние, но хорошие, игры. GTA San Andreas, например, или старые гоночные аркады серии Need for Speed. Но тут тоже палка о двух концах: недорогие универсальные могут иметь плохие стики или курки-кнопки, из-за чего играть и в шутеры, и в гоночные симуляторы станет затруднительно.
Такие разные кнопки
Отходя от дел программно-протокольных, следует вспомнить о физическом аспекте. Любой геймпад — это в первую очередь кнопки и аналоговые оси. Что это значит, сейчас объясню. Это необходимо знать, если намереваетесь выбрать и купить нормальный геймпад, а не ширпотреб.
У геймпада всегда есть кнопки. В конце концов, что ещё нажимать? Однако по устройству кнопки бывают разные. У обычных два состояния: «нажата» и «не нажата», без промежуточных значений. Но есть и с промежуточными значениями! Например, у геймпадов для Playstation 4 такие — они позволяют игре понять силу нажатия кнопки. Кстати, как это ощущается на практике, я без понятия — «плойки» у меня никогда не было.
Но кнопки геймпадов DualShock — это скорее исключение. Датчики, регистрирующие промежуточное значение, принято именовать «аналоговыми осями». Таковые задействуются в стиках и триггерах и в следующих главах я про них много чего расскажу.
Что ещё нужно знать об обычных кнопках? Только про их нумерацию в играх.
В DirectInput кнопки нумеруются абы как (например, на моём старом геймпаде «1» — это нажатие на стик, у других это X, Start или что угодно). В протоколе XInput у каждой кнопки, каждого датчика строго заданное имя. Поэтому, подключив к ПК геймпад, работающий только по старому протоколу, придётся потратить время на удобную привязку кнопок к действиям. С XInput таких проблем нет: создатели точно знают, что Y справа вверху, левый стик будет слева, а кнопка Guide — посередине. Это позволяет продумать управление так, чтобы игроку было удобно. Поэтому не удивляйтесь, что у двух одинаковых внешне DInput геймпадов кнопки работают по-разному — их внутренние названия отличаются. С манипуляторами XInput такой проблемы нет.
Стики и их оси
В предыдущей главе я упомянул про аналоговые оси. Именно они (в количестве двух штук) задействованы в стиках.
Стики (мини-джойстики) на классических геймпадах находятся под большими пальцами:
Впрочем, левый стик может быть выше, как на геймпаде от приставки Microsoft, не суть важно. Имеет значение лишь то, что стики можно двигать в стороны и игра это «увидит» (ещё стики можно нажимать, работает как нажатие обычной кнопки).
На примере мини-джойстиков легко объяснить концепцию аналоговых осей и то, какие с ними случаются неприятности. А проблем много: осей бывает несколько, их показания могут сбиваться ввиду несовершенства аппаратной части.
Чтобы игра знала, как сильно отклонил игрок мини-джойстик относительно центральной позиции, игровой манипулятор шлёт значения по двум осям: вертикальной и горизонтальной, X и Y. Оси, а точнее, сами стики, называют аналоговыми, потому что позволяют отслеживать промежуточные значения, не только крайние положения.
Следует знать, что в состоянии «покоя» у осей стиков значение не нулевое, а соответствует ровно середине заданной драйвером геймпада шкалы. Нулевое и максимальные значения шкалы — это отклонения до упора.
Например, если шкала осей имеет 256 значений, то по у стика по центру координаты X=128, Y=128. При отклонении строго влево координаты получатся X=0, Y=128, при отклонении вправо вверх будет X=256, Y=0 и так далее. Если отклонить стик немного в сторону, то получится что-нибудь вроде X=40, Y=198.
И всё было бы классно с этими осями, если бы не ряд особенностей, мешающих геймерам играть. В идеале датчики осей должны чутко реагировать на малейшие отклонения мини-джойстиков, при этом плавные движения пальцев должны плавно перетекать в движения цифровые, т.е. значения шкал должны меняться плавно. На практике с осями случается букет проблем. Чем более некачественно собран геймпад, чем дешевле компоненты в нём, тем больше недостатков.
А) Расхождение реальных показаний датчиков и установок драйвера геймпада. Иногда из-за брака в датчиках или ошибки в драйвере максимальные и/или минимальные значения осей расходятся с ожидаемыми. Тогда камеру будет тянуть в сторону либо персонаж начнёт мееедленно шагать без всякой причины, потому что «точка покоя» не будет ровно посередине шкал. Рекомендую такой геймпад сдать в магазин для ремонта либо замены. Если данное действие невозможно, сделайте калибровку (Параметры — Устройства — Устройства и принтеры — найдите свой геймпад, откройте его свойства, там должна быть заветная кнопка). Суть калибровки сводится к тому, что вы в специальном мастере настройки по очереди наклоняете все стики и Windows запоминает их показания, в дальнейшем корректируя значения (до перезагрузки или переподключения устройства, если драйвер недоработан).
Б) «Дребезг» контактов. Иногда значения шкал выставлены верно, вот только при игре возникает ощущение, что вместо вас играет призрак — персонаж неожиданно дергается, порываясь куда-то пойти, камера сдвигается сама по себе. Никакие калибровки здесь не помогут — периодически замыкающие контакты не чинятся. Такие геймпады лучше менять по гарантии сразу при обнаружении проблемы.
Однако особо рукастые геймеры пытаются с разной степенью успешности починить дребезг. Например, смазывают контакты внутри датчиков осей машинным маслом. Таким образом уменьшается площадь соприкосновения контактов и проблема уходит на некоторое время.
Ещё для таких дел в играх придумали опцию «мёртвая зона» («dead zone»). Её суть в том, что игра игнорирует какие-то небольшие отклонения стика, реагируя лишь на ощутимый сдвиг. Играть при этом становится не очень-то удобно (приходится сильно отклонять стики), но хоть как-то…
В некоторых играх вы встретите настройку с похожим названием: «anti dead zone». Почему-то в одних она отвечает за игнорирование максимальных значений, в других сдвигает «мёртвую зону», делая отклонения стиков чувствительнее.
В) Иногда никаких осей нет. На очень, мягко говоря, недорогих манипуляторах стики не аналоговые… То есть отклонения определяются сразу как максимальные. Если вы с таким встретились, читайте инструкцию к геймпаду — есть шанс, что датчики всё же установлены, просто по умолчанию устройство находится в режиме, более подходящем для игры на эмуляторах старых приставок, где стиков отродясь не было. Как это переключить, меня не спрашивайте: я не телепат, а заветный переключатель может оказаться комбинацией совершенно случайных кнопок, удерживаемых строго заданное количество секунд.
Триггеры
Эти кнопки, находящиеся на задней стороне геймпадов, не так просты, как кажутся на первый взгляд. От их поведения сильно меняется игровой опыт. В игровых подсказках триггеры обозначают сокращениями «LT» и «RT».
Неспроста триггеры формой напоминают педальку: сила нажатия на эти кнопки регистрируется и обрабатывается, как и любая другая ось. Но это в идеале. К сожалению, аналоговыми бывают не всегда. Если на вашем геймпаде триггеры — обычные кнопки, считайте, что удовольствия от игрового процесса не получите. Дело в том, что LT и RT отвечают за скорость ходьбы персонажей и движения авто. Очень, знаете ли, удобно не торопясь разъезжать по Лос-Сантосу, слегка придавливая правый триггер — на клавиатуре так не получится.
С технической точки зрения триггеры на большинстве геймпадов делят ось Z. LT вызывает отклонение шкалы от середины до нуля, RT — от середины до максимума. Это приводит к странным эффектам в играх, работающих по протоколу DirectInput: при одновременном нажатии аналоговых триггеров получается, что ось, будучи способной иметь только одно значение, с точки зрения игры начинает дёргаться туда-сюда. Это мешает давить на виртуальные педали в старых автосимуляторах. Впрочем, вы вряд ли с таким столкнётесь — в современных драйверах это ограничение как-то обошли. Помните одно: аналоговые триггеры — хорошо, триггеры-кнопки — плохо.
У аналоговых триггеров тоже бывают проблемы с датчиками, калибровка спасает. К сожалению, вы редко встретите настройку мёртвой зоны у оси Z — создатели игр почему-то забывают о том, что триггеры устроены так же, как и стики.
Стрелки (D-Pad, крестовина)
Стрéлки могут быть как отдельными кнопками, так и группой кнопок «D-Pad». С аппаратной части это обычные кнопки, срабатывающие при нажатии стрелки в одном из направлений.
Крестовину называют четырёхпозиционной, если срабатывает в одном из четырёх направлений: влево, вправо, вверх, вниз. На мой взгляд, это не лучший вариант, ибо играм нужно больше — ещё со времен 8-битных приставок геймеры привыкли, что в файтингах для комбо задействованы промежуточные позиции (влево-вниз, вправо-вверх и т.д.). Поэтому в некоторых моделях геймпадов D-Pad имеет восемь позиций. Впрочем, даже если вы видите круглую крестовину, как на фотографии выше, вполне возможно, что там на самое деле четыре кнопки, а промежуточные имитируются при одновременном нажатии имеющихся. Поэтому, если любите Mortal Kombat, внимательно смотрите в описании — имеет ли крестовина четыре или восемь позиций.
Независимо от того, как устроен D-Pad, с программной части тоже наличествуют нюансы: у геймпадов, работающих через Direct Input, крестовина может определяться не как D-Pad с осями направлений, а как совершенно разные кнопки. Не знаю, зачем так сделали, но факт остаётся фактом: когда я через TeamViewer помогал настроить эмулятор одному из читателей, нажатия на стороны крестовины его безымянного геймпада определялись как кнопки 2, 6, 7, и 9 (точные цифры другие, не вспомню). Это странно, потому что для D-Pad в Direct Input имеется структура, позволяющая в настройках игр и эмуляторах приставок просто указать D-Pad 1, D-Pad 2 или тому подобную группу кнопок. Правда, такие могут быть повёрнуты относительно реального положения, и тогда с настройками придётся возиться ещё больше…
Бывает и такая экзотика: D-Pad, который определяется как оси X и Y, с точки зрения игр выглядящий как стик без промежуточных значений. Я такие встречал дважды, в обоих случаях у геймпадов не было настоящих аналоговых стиков (манипулятор похож на такой, какой был у PS One).
Обратная отдача
У современных геймпадов обратная отдача сведена к примитивному подрагиванию манипулятора в руках. В рулях наверняка используется более сложная система, но я с ними дела не имел, поэтому расскажу только о геймпадах.
За вибрацию, как правило, отвечают два вибромоторчика: один с левой стороны, другой с правой. Один вибрирует с малой амплитудой, второй — с большой.
К сожалению, в дешёвых геймпадах моторчик один или вовсе отсутствует. На мой взгляд, лучше уж без виброотдачи вовсе, чем с одним, потому что геймпады с «полувибрацией» попросту неприятно держать в руках, ибо ощущается перевес с одной стороны, что напрягает руки. Да и вибрация с одним вибромоторчиком получается так себе (мда, наверняка кто-то напишет в комментариях шутку про месье, знающего толк в вибрациях…).
Моторчики отличаются скоростью реакции: дешёвые на коротких «импульсах» от игры толком не успевают раскрутится и вибрация ощущается лёгким подрагиванием, в то время как в дорогих устройствах, если повезёт, моторчики будут резво реагировать на события в игре, давая какую-никакую обратную связь.
К сожалению, до покупки геймпада сложно выяснить, что у него с обратной отдачей. Отзывы купивших не помогут, ибо иногда доходит до абсурда: в одной партии движки стоят, в другой их нет, модель та же.
Экзотика
В геймпадах для Playstation 3-5 наличествуют гироскопы, акселерометры, лампочки, а часть кнопок — аналоговые. В играх для PC такие безусловно интересные возможности не используются, поэтому про них говорить ничего не буду. Да и нет у меня подобных устройств…
Способ подключения
Итак, вам уже должно быть понятно, что даже такая внешне примитивная штука, как кнопка-триггер, может быть аналоговой или дискретной, что сильно повлияет на игровой опыт. А что насчёт связи геймпада с компьютером? С подключением тоже есть особенности, которые желательно знать до покупки.
Все геймпады можно разделить на три категории по способу подключения.
1. Геймпады проводные, подключаемые к порту USB («wired»). Самый обычный, надёжный вариант. Проблем у таких устройств меньше (разве что с драйверами, но это касается всех устройств).
2. Работающие через адаптер-донгл («wireless» — беспроводные). С точки зрения компьютера такое устройство — проводное. Для связи используется тот же протокол, что и у популярных беспроводных мышей, с радиоканалом на частоте 2,4 Ггц. На мой взгляд, такой вид беспроводных геймпадов лучше совместим с играми, проблем с ними меньше, потому что работают как обычный геймпад Xbox 360.
3. Подключаемые через Bluetooth (тоже «wireless» ). Наиболее проблемная группа. Не рекомендую к покупке. Не имеет значения, DirectInput используют или XInput, далеко не все игры «видят» блютузные манипуляторы.
Какой геймпад лучше — проводной или беспроводной? Однозначного ответа у меня нет. С проводным проблем меньше: не нужно думать о батарейках. Но удобство игры без проводов… Ну, оно ощутимо. Могу лишь посоветовать: если хотите беспроводной — берите не тот, который через Bluetooth, а с персональным донглом-приёмником. И не теряйте его, конечно. Оставьте в ПК и не трогайте лишний раз.
Пожалуй, единственная специфичная проблема с wireless геймпадами, которую я обнаружил, связана с большим количеством беспроводных мышей поблизости. Когда их много, можете столкнуться со спонтанными отключениями оных или геймпадов. Впрочем, достаточно подключить какой-нибудь из донглов через USB-удлинитель, отодвинуть подальше от собратьев, и связь приходит в норму. Да и игры на отключения таких реагируют лучше, ибо попросту не замечают сбоя: многие модели геймпадов постоянно видны в системе как подключенные, даже если радиосвязь прервалась, поэтому в худшем случае пропустите пару нажатий кнопок. С блютузными такое не прокатит: когда связь рвётся, операционная система видит отключение устройства и останавливает драйвер. Из-за этого некоторые игры переключаются на клавиатуру и не видят геймпад, пока не перезапустишь игру.
3 Драйвера
Драйвера отвечают за возможности игровых устройств: наличие вибрации, чувствительность стиков и так далее. К сожалению, производители устройств не допускают тонкую настройку. Приятным исключением является Steam Controller, где можно настроить буквально всё. Но этот геймпад — уникальный продукт, поэтому рассматривать его возможности в рамках данной статьи не буду.
Игровые устройства вы можете найти в Параметрах — Устройствах — Устройствах и принтерах. Помимо мониторов, колонок, жёстких дисков и прочей периферии там будут значки геймпадов и клавиатур.
К настройкам собственно драйверов можно перейти, нажав правой кнопкой мыши на любом из игровых манипуляторов и выбрав пункт «Параметры игровых устройств управления».
Кнопка «Дополнительно» позволяет выбрать приоритетное устройство. То есть это будет как бы манипулятор №1 и игры должны управляться в первую очередь с него. На практике не всегда работает, но заглянуть будет не лишним — иногда там не выбран ни один из геймпадов, поле по умолчанию пустое, тогда некоторые игры (особенно от Electronics Arts) не увидят манипуляторы вообще.
Вторая кнопка «Свойства» вызывает настройки геймпада, строчка которого выбрана в поле выше. Вот так выглядят опции манипулятора от Xbox 360:
Именно там можно глянуть, не тянет ли стик в сторону, именно там можно проверить работу кнопок, именно там можно запустить калибровку осей. Не пренебрегайте такими возможностями, когда геймпад ведёт себя неправильно!
Однако, если бы все проблемы решались калибровкой, эту статью можно было бы сократить до пары абзацев. К сожалению, поведение игр меняется даже от того, какие устройства подключены к компьютеру. Поэтому, чтобы знать, что нужно играм для уверенного распознавания подключённого джойстика, нужно понимать, чем отличаются устройства с точки зрения Windows.
Драйвера XInput геймпадов
Игровые манипуляторы, будь они оригинальными от Microsoft или от любого бренда, поддерживающие протокол XInput, будут называться «Xbox 360 Controller for Windows» либо «Xbox One Controller for Windows». То есть по сути драйверов для XInput манипуляторов раз-два и обчёлся. В коробку с таким устройством не кладут диск с драйверами — он есть в базе операционной системы. Получается, если такой геймпад определяется как «Неизвестное устройство» — проблема в вашей Windows. Особняком стоит драйвер для работы через Bluetooth — то, как он устанавливается, не поддаётся никакой логике. По идее, после сопряжения контроллера с компьютером через «синезуб» в «Устройствах и принтерах» должно появиться соответствующее устройство. В реальности же всё не так и часто требуется поставить дополнительный драйвер. А вот где такой искать — больной вопрос: иногда искомый найдётся на диске вместе с геймпадом, иногда — на сайте производителя.
В чём проблема не оригинальных геймпадов, которые якобы для Xbox 360/One, но таковыми не являются? Драйвер-то используется от Microsoft, сертифицированный и проверенный пять тысяч раз. Вот только устройства имитируют работу оригинального контроллера плохо. То есть переназначить кнопки через приложение «Аксессуары Xbox» нельзя, кнопки XYBA могут оказаться перепутаны местами, оси неправильно повёрнуты… Много чего бывает нехорошего и такие проблемы не всегда удаётся исправить программным путём. Способы есть, о них в разделе про полезные утилиты, но они не всегда работают.
Драйвера DirectInput геймпадов
С ними бардак полный. При подключении контроллера Windows, скорее всего, найдёт какой-нибудь «USB Vibration Gamepad» и геймпад кое-как заработает. Вот только рынок наводнён подделками под оригинальный контроллер, работающими из рук вон плохо.
Обратите внимание на кнопку Guide — на ней нет фирменного логотипа «X».
Путь от ваших пальцев, лежащих на геймпаде, до действий игрового персонажа, далёк и тернист. Сигналу придётся преодолеть немало аппаратных и программных препятствий. И пусть их будет поменьше. Если вам дороги нервы, не берите устройства, работающие только через DirectInput.
Клавиатуры и мыши
«При чём тут они?» — спросите вы. А при том, что они мешают играм опознать геймпад! В протоколе XInput не предусмотрена работа с клавомышью, зато она присутствует в DirectInput. Если игра поддерживает оба протокола, может возникнуть ситуация, когда игра, перебирая устройства, решает, что к ПК подключён геймпад, которого на самом деле нет, и останавливает дальнейший перебор, «не доходя» до настоящего геймпада.
Ситуация, между прочим, частая. Современные мыши и клавиатуры устроены так, что у одного реального устройства может быть несколько виртуальных. Например, как видно на скриншоте «Устройства и драйверы» в предыдущей главе, к моему ПК якобы подключены три клавиатуры. А если заглянуть в Диспетчер устройств, можно поразиться больше:
Устройства HID — это в основном клавиатуры, мыши и геймпады. Почему их так много? Ну, дополнительные кнопки мыши — это отдельное HID устройство. Мультимедийные клавиши клавиатуры — также отдельное устройство. Всякие колёсики прокрутки, регуляторы громкости могут представляться системе отдельными устройствами.
В DirectInput допустимы три вида устройств: мышь, клавиатура, джойстик. И есть функции, позволяющие определить, who is who, но на практике разработчики на это забивают. Например, в Need for Speed 2005 года (той части, где видеовставки с живыми актёрами почти бесшовно совмещены с игровой графикой) не определяется геймпад, когда к ПК подключена мышь A4Tech XL-760H с дополнительными кнопками. А для того, чтобы поиграть в Jedi: Fallen Order, которая никак не видела геймпад, пришлось применить радикальное решение: я отключил все HID устройства, кроме собственно мыши и базовой части клавиатуры:
Так как вы могли читать статью по диагонали и пропустить ценный совет, чтобы не заваливали меня вопросами вида «А почему мой геймпад не работает?», повторю ценное указание абзацем ниже.
Совет: если игра не видит геймпад…
…отключите как можно больше устройств ввода. Если в Диспетчере устройств останется много пунктов в разделе «Устройства HID», отключайте прямо там нажатием правой кнопкой мыши — «Отключить устройство».
Только держите запасную мышь рядом, ибо можете случайно отключить основную.
4 Как игры взаимодействуют с геймпадами
Ещё чуть-чуть и я раскрою вам тайну, отвечающую на вопрос: почему эмулятор геймпада x360ce не работает так, как должно, с играми на одном ПК, хотя на другом всё отлично. Ключевая фраза: сложность пути.
Между игрой и геймпадом находятся два перевалочных пункта: драйверы и программные библиотеки xinput и dinput.
Программные библиотеки — это, упрощённо говоря, наборы функций, которые могут использоваться несколькими программами одновременно. Сама Windows состоит из гигантского количества оных и это удобно — экономится место на диске, упрощается обновление программ. Для работы с протоколами связи с джойстиками в операционной системе есть несколько программных библиотек, которые могут (но не обязаны) использоваться играми.
Взгляните на схему ниже. Она сильно упрощена, за что прошу прощения у игровых разработчиков, но в целом должна правильно передать суть. Если вы знаете что-то, чего не знаю я — напишите в комментариях, дополню статью.
На рисунке я показал, что игра общается с устройствами через программные библиотеки и драйверы. Причём вариантов множество — единого стандарта не существует.
Отсутствие унификации вызывает, пожалуй, самую частую проблему — когда игра не видит геймпад. Чтобы объяснить, почему так происходит, нужно вспомнить — есть ведь несколько видов устройств: геймпады с протоколами XInput, DirectInput, клавиатуры и мыши. Вот только как игре отличить геймпад от колёсика регулировки громкости на мультимедийной клавиатуре?
А никак! Серьёзно. Да, в DirectInput есть классификатор устройств. XInput-у он не нужен — там понятно, что кроме игрового манипулятора ничего через этот протокол не подключится. На практике игры работают, мягко говоря, странно, зачастую определяя доп. клавиши типа пресловутого колёсика громкости геймпадом №1 в системе. Особенно этим грешат игры-порты японских тайтлов с Playstation 3/4 (Street Fighter и т.п.). Выход один — отключать устройства физически и программно, пока в виртуальной очереди первым не окажется настоящий геймпад. Иногда доходит до абсурда — работает всё, кроме стика, и только отключение всех USB устройств позволяет полноценно управлять игрой всеми кнопками.
Кстати, насчёт управления. Каждое нажатие кнопки передаётся сначала в драйвер, после чего сигнал принимает компонент Windows, представленный в виде файла, чьё имя начинается на «xinput…» и/или «dinput…», затем нажатие видит сама игра. Важно понимать, что связь двусторонняя. В качестве обратной связи можно привести пример с виброотдачей: игра отправляет команду устройству и оно «вибрирует» моторчиками. Если на каком-то этапе что-то пошло не так, последствия могут быть непредсказуемые. Например, читатель присылал мне версию драйвера «USB Vibration Joystick», вызывавшую полное зависание операционной системы в момент, когда должна сработать вибрация в геймпаде.
Смена драйвера может помочь
Если у вас неправильно определяются кнопки, не работает виброотдача, то, кроме отключения всех устройств, пробуйте сменить драйвер геймпада. Для этого откройте Диспетчер устройств, жмите правой кнопкой по пункту с вашим геймпадом — «Обновить драйвер» — «Выполнить поиск драйверов на этом компьютере» — «Выбрать драйвер из списка доступных драйверов на компьютере». Если драйвер там только один, не советую ковыряться с ними дальше, ибо несертифицированные драйвера, которые вы можете найти на просторах всемирной сети, с 99,99% вероятности вам не помогут, а вот вирус занесут за милую душу.
Что ещё может пойти не так? Об одной ситуации я уже рассказал в разделе «Клавиатуры и мыши» — игра может принять набор мультимедийных кнопок за геймпад, из-за чего настоящий игровой контроллер работать не будет. О других расскажу в разделах, посвященных программам.
5 Программы
Далее я расскажу о нескольких популярных софтинах для игровых контроллеров. Все они — бесплатные.
Эмулятор x360ce (версии 3.x)
Официальный сайт: www.x360ce.com
Инструкция: «x360ce — подключаем любой джойстик».
Я уже упоминал данную софтину в предыдущей главе. Это, пожалуй, самая известная программа для работы с геймпадами. Она позволяет «превращать» DirectInput геймпад в таковой от Xbox 360, чтобы игры без поддержки DirectInput смогли поддерживать таковые.
Про настройку можете почитать в моей инструкции, сейчас сосредоточусь на последствиях, которые может вызвать применение так называемой «эмуляции», и объяснению того, почему она не всегда работает.
В версиях 3.x, наиболее популярной на данный момент, x360ce работает с помощью подмены программных библиотек xinput1_*.dll (далее буду называть их xinput1_3.dll, так как это самая популярная версия). После определённых манипуляций игра начинает видеть геймпад от Xbox 360, которого в реальности не существовало.
Эмулятор состоит из нескольких компонентов:
- x360ce.exe — программы-конфигуратора, в которой проводилась «привязка» клавиш и стиков настоящего геймпада и «виртуального».
- x360ce.ini — файл, куда сохранялись настройки, сделанные вышеуказанной утилитой.
- xinput1_1.dll, xinput1_2.dll, xinput1_3.dll, xinput1_4.dll и xinput9_1_0.dll — один и тот же по составу файл с разными именами, который и обеспечивал эмуляцию.
К сожалению, x360ce работает не всегда и не у всех. Частично это недоработка эмулятора, частично — вина пользователей, которые не вникают в принцип действия и заваливают однотипными вопросами форумы ngemu и комментарии под моими статьями.
«Ядро» эмулятора — программная библиотека xinput1_3.dll. Как я уже объяснял выше, такие файлы хранят в себе набор функций и работают частью программ. Большинство библиотек, имеющих непосредственное отношение к функционированию Windows, вы найдёте в каталогах c:WindowsSystem32 и c:WindowsSysWOW64. Там же будут и xinput1_*.dll, чтобы любая программа (игра) могла пользоваться системными компонентами для доступа к геймпадам.
Тот файл xinput1_3.dll, что входит в состав x360ce, содержит функции, «перекрывающие» функции оригинальной библиотеки. Новые функции заменяют обращения по протоколу XInput на команды протокола DirectInput. Получается «эмуляция» геймпадов Xbox 360.
Возникает следующая цепочка: игра — xinput1_3.dll — драйвер — геймпад.
К сожалению, чтобы подмена сработала, нужно выполнить достаточно много обязательных условий. Без никак игра не увидит геймпад. Вот вообще никак.
- Игра должна использовать одну из программных библиотек xinput1_*.dll для доступа к игровым устройствам. А ведь это далеко не всегда так! Например, игры, построенные на игровом движке Unity, обходятся своими средствами. Другие используют возможности системных библиотек частично.
- Программная библиотека эмулятора xinput1_3.dll (или с другим именем, нужным игре) должна находиться в каталоге с игрой. Программы в Windows так устроены, что при запуске ищут dll-ки сначала в том каталоге, откуда запущены, затем в системных директориях (внутри C:Windows). По такому принципу, кстати, работает библиотека ReShade для добавления эффектов в игры.
- Игра не должна проверять цифровую подпись .dll файлов. Различные антипиратские защиты не позволяют эмуляции работать даже при соблюдении остальных условий — игра «понимает», где настоящий файл от Microsoft, и использует только его.
- Игра должна позволять переопределение функций. Недостаточно подгрузить xinput1_3.dll — нужно, чтобы сработал один из встроенных в эмулятор методов переназначения оригинальных функций на подменные для работы с DirectInput (для этого в настройках конфигуратора есть группа опций «Hook Mask»).
- Программные библиотеки эмулятора должны быть той же разрядности, что и игра. То есть нельзя подсунуть 32-битную библиотеку 64-битной игре и наоборот.
- Наличие файла x360ce.ini в каталоге с игрой. В одной из версий x360ce 3.x появилось сохранение настроек в каталог C:ProgramDataX360CE, чтобы dll-ка x360ce узнавала необходимые опции из централизованного хранилища независимо от того, в какой игре запущена. Увы, это не всегда работает и нужно «подсовывать» библиотеке ini-файл, который также генерируется утилитой x360ce.exe.
- В системе должны быть установлены наборы библиотек .NET Framework и Visual C++ Redistributable — ссылки на оные указывал в инструкциях, также они присутствуют на официальном сайте утилиты.
- Утилиту конфигурации нужно запускать от имени администратора, чтобы у неё имелось достаточно прав для записи файлов в каталоги с играми.
Часть из этих восьми условий достаточно сложна для понимания. Неудивительно, что люди творят самую разную дичь: от замены xinput1_3.dll в каталоге C:WindowsSystem32 той, что идёт в комплекте с эмулятором, до попыток эмуляции геймпада Xbox 360 для работы… оригинального геймпада 360-го иксбокса! Да-да, почему-то некоторые личности решают, что утилита подходит для переназначения кнопок оригинального геймпада. Усугубляет недопонимание то, что конфигуратор x360ce.exe среди подключённых устройств видит и оригинальные.
Ещё одна ошибка — использование x360ce в играх, поддерживающих геймпады через протокол DirectInput. Утилита не скрывает оригинальное устройство, поэтому игра будет видеть два геймпада с синхронно нажимаемыми клавишами.
Как ни странно, избежать ошибок поможет вдумчивое чтение моих инструкций. Я разжевал все этапы настройки эмулятора настолько подробно, насколько это возможно.
Эмулятор x360ce (версии 4.x)
Где можно скачать: https://github.com/x360ce/x360ce/releases
В четвёртой версии утилиты разработчики решили кардинально сменить подход к методу эмуляции. Теперь не нужно заморачиваться с закидыванием файлов в каталоги с игрой и перебором настроек «Hook Mask». Достаточно привязать действия клавиш реального геймпада к виртуальному и… утилита x360ce.exe создаст этот самый виртуальный геймпад!
То есть в операционной системе, пока запущена утилита, будет висеть устройство «Virtual Xbox 360 Controller», с программной точки зрения ничем не отличающееся от геймпада Xbox 360, подключенного через USB порт компьютера.
Создание виртуального геймпада значительно надёжнее перехвата функций через dll-ку. Это позволяет эмулировать геймпад для тех игр, с которыми версия 3.x не справлялась: на движке Unity и с защитой Denuvo.
Появилась полезнейшая функция — теперь можно с помощью драйвера HidGuardian скрыть мешающие HID-устройства: клавиатуру, мышь, реальные геймпады.
Благодаря скрытию «ненужных» устройств игры будут видеть то, что им нужно — собственно, только виртуальный геймпад и ничего более.
Какие проблемы могут возникнуть? Почти никаких. Драйвер геймпада (используется ViGEmBus) работает адекватно, если, конечно, его не забыть установить по официальной инструкции: https://github.com/x360ce/x360ce/wiki/Beta-Testing
Некоторые трудности случаются на этапах создания виртуального устройства и скрытия существующих — не все антивирусы допускают такие вольности с системой. Впрочем, это легко решается добавлением x360ce.exe во все возможные списки исключений.
XOutput
Официальная страничка: github.com/csutorasa/XOutput
До того, как авторы x360ce дошли до мысли использовать виртуальный геймпад, подобное уже было реализовано в утилите XOutput. Драйвер геймпада, кстати, используется тот же (других и нет).
В софтине заложена масса функций: от создания виртуальных геймпадов до просмотра и тестирования всех установленных устройств ввода (галочка «Показать все устройства ввода»).
Самая большая проблема утилиты — недружелюбный интерфейс. Например, при первом запуске новичку сложно будет понять, что:
1. Для эмуляции геймпада нужно поставить соответствующий драйвер (просьба об установке видна при запуске и в логе главного окна, но зачем это нужно — не объясняется). Также не объясняется, зачем нужен ещё и SCPToolkit. А ведь со всем этим придётся разобраться, если цель — выжать максимум возможностей из геймпада.
2. Нужно запускать XOutput от имени администратора. Утилита никак не проверяет это, поэтому при обычном запуске закрывается при попытке совершить какие-то действия, требующие привилегированного доступа к операционной системе.
3. Для настройки виртуального геймпада нужно не жать «Настроить» напротив существующих устройств в списке, а добавлять новый.
Кому-то XOutput придётся по душе. Если понять, что и как в ней работает, работа с ней станет не в тягость.
Durazno
Домашняя страничка: github.com/KrossX/Durazno
Это — та самая утилита, которую следует использовать для настройки оригинального геймпада от Xbox 360/One. Софтина заточена под настройку устройств, работающих через протокол XInput.
Принцип действия такой же, как у x360ce третьей версии (поэтому нельзя использовать одновременно):
- Закидываются файлы xinput1_*.dll соответствующей разрядности в каталог с игрой.
- Туда же копируется файл Durazno.ini, содержащий настройки, сгенерированные утилитой Durazno.exe.
- Играете с новыми настройками.
Опций не то чтобы много, но должно быть достаточно. Есть переназначение клавиш, включение инверсии, регулировка чувствительности стиков и размер «мёртвой зоны».
Вы должны понимать, что, как и в случае с x360ce, настройки заработают далеко не во всех играх. Утилита давно не развивается, последняя версия вышла в 2013 году, поэтому чудес не ждите. Тем не менее, кому-то она наверняка пригодится.
Steam
Где скачать: store.steampowered.com/about/Steam?l=russian
Почему-то мало кто знает, что в игровом лаунчере Steam тоже можно настроить геймпад. Зайдите в Steam — Настройки — Контроллер.
Кликните в «Основные настройки контроллера» — в открывшемся окне можно переназначить клавиши как XInput («Польз. настройки контроллера Xbox), так и DirectInput геймпадов («Польз. настройки для обычного геймпада»). Ставьте галку на соответствующем пункте, назначайте кнопки и пользуйтесь. DirectInput геймпад будет определяться играми из библиотеки Steam как контроллер Xbox One.
Правда, если я правильно понял, эмуляция будет работать только при запуске игр через режим Big Picture.
AntiMicro/AntiMicroX
(А также Controller Companion, JoyToKey и много других аналогичных софтин.)
Домашняя страничка: https://github.com/AntiMicroX/antimicrox/
Инструкция: «Как играть на геймпаде в любую игру».
Иногда не нужно ничего эмулировать, не нужно ставить виртуальные драйвера. В конце концов, не все игры поддерживают геймпады как класс устройств — им подавай клавиатуру с мышью.
С помощью AntiMicro, наследника AntiMicroX (и других схожих программ, платных и бесплатных) можно «связать» нажатия кнопок геймпада и клавиш клавиатуры и движения мыши. Например, на один стик повесить движение стрелки мыши, на другой — скролл колёсиком, на стрелки — клавиши WASD, триггеры — Ctrl и пробел.
Игры, способные адаптировать управление при подключении геймпада, конечно же, не поймут, что человек играет с игрового контроллера, поэтому управление не адаптируется, т.е. будет не настолько удобным. Зато так можно играть в стратегии и MMO, которые в принципе не поддерживают геймпады.
В AntiMicro можно назначать разные профили программам и играм, поэтому часто копаться в настройках не придётся.
DS4Windows
Домашняя страница: https://github.com/Ryochan7/DS4Windows/releases
Эта утилита предназначена специально для контроллера Dual Shock 4. Оные используются для игровой приставки Playstation 4, но можно подключить и к ПК.
Dual Shock 4 работают по протоколу DirectInput, поэтому список совместимых игр ограничен. Dying Light, The Witcher 3, GTA V и так далее — все, что опознают DirectInput геймпады.
Теоретически, ничего не мешает «превратить» Dual Shock 4 в контроллер от Xbox 360 с помощью x360ce, но лучше используйте DS4Windows. Она заточена под данный геймпад. Эмуляция работает не через подмену файлов, а с помощью создания виртуального устройства, как в x360ce 4-й версии, поэтому совместимость с играми должна быть хорошей.
6 Итоги
Что же нужно для удобной игры? Конечно же, клавиатура с мышью качественный геймпад (на самом деле это не шутка, мои геймпады пылятся большую часть времени).
Чтобы подвести итоги, вернусь к вопросам, заданным в начале статьи.
1. Почему геймпад XXX не работает в игре YYY?
Как вы уже могли понять, сигналы между игрой и манипулятором проходят долгий, запутанный путь. Поэтому универсального ответа не существует.
Причина может быть банальной (у вас DirectInput геймпад, а игре нужен другой протокол), так и запутанной (как в играх от Electronic Arts, когда нужно отключить всё, что только возможно, чтобы игра наконец-то увидела манипулятор).
2. Почему работают только несколько кнопок джойстика?
На этот вопрос дам ответ, который может оказаться слишком упрощённым, но как сформулировать его по другому, я не знаю.
Иногда, в зависимости от таланта разработчиков к косякам, понятия «геймпад» для игры может не существовать. Или существовать лишь частично — как группы кнопок и осей без привязки к драйверу. И если к ПК подключено какое-то устройство, которое с точки зрения игры может являться частью «того самого» геймпада, то игра будет ожидать сигналов не от настоящего геймпада, а непонятно от чего.
3. Как играть в игру ZZZ на геймпаде?
Конечностями. А умение придёт со временем
Как вы уже могли догадаться, 99% проблем можно избежать, купив оригинальный геймпад от Xbox 360/One/Series. Оставшийся 1% решается отключением HID-драйверов в Диспетчере устройств.
Однако это касается только современных игр, заточенных под XInput контроллер. Для старых вам потребуется DirectInput геймпад. В обоих случаях надо внимательно читать описания к покупаемым устройствам, чтобы не нарваться на подделку или некачественное изделие.
Ещё есть авиасимуляторы и иже с ними (Elite Dangerous), которым подавай джойстики с DirectInput — для таких игр дешевить точно нельзя, качественные манипуляторы могут обойтись и в 5, и 15 тысяч рублей.
В любом случае не пытайтесь натянуть сову на глобус. Например, не используйте x360ce для переназначения кнопок XInput устройства. У каждой железки, у каждой софтины — своё предназначение. Чем лучше вы понимаете, что именно вы делаете, тем успешнее будет результат.
Что дальше?
Геймпады — устройства многоликие. Для меня было открытием, что, оказывается, есть такие, которые через провод работают по протоколу XInput, через Bluetooth — DirectInput. О таких вот проявлениях (сомнительной) изобретательности производителей игровых устройств мне рассказывают здесь и через соцсети. Это иногда забавно, но чаще печально — потому что чем мудрёней устройство, тем худший пользовательский опыт оно даёт.
Смело пишите в комментариях вопросы, спрашивайте и делитесь решениями. Только, пожалуйста, если вы просите меня помочь — будьте подробны и обязательно прочтите всю статью от начала до конца. Потому что если не прочтёте, я не смогу вам помочь, так как буду считать, что вы уже перепробовали все советы из текста.
Что случается, когда человек не прочитал мою статью
Когда кто-то пишет комментарии, я по умолчанию считаю, что написавший прочел мою заметку. В конце концов, чтобы добраться до комментариев, нужно промотать текст. Но регулярно случаются ситуации, когда и мне обидно, и люди на посмешище себя выставляют.
К примеру, заглянувший на сайт парень по имени Кирилл в комментариях попросил помочь с геймпадом, но не сообщил ничего. Я выяснил у него модель геймпада, и, предположив, что советы из статьи он читал, добросовестно поискал инструкции, посмотрел видеообзоры его геймпада и пришёл к выводу, что режимы переключаются кнопкой Mode, но XInput работает только по проводу. Дальнейший вопрос «Можете как-то помочь?» ввёл меня в ступор. У меня нет такого устройства, повторить обстоятельства не могу, настроить XOutput для эмуляции XInput устройства — тоже нет, проще и быстрее ему самому сделать.
В то время, когда я впустую тратил время, владелец геймпада обнаружил, что если в Диспетчере устройств отключить виртуальную мышь, которую создаёт геймпад, то всё работает нормально. И всё бы ничего, но Кирилл, как стало очевидно, статью не читал и дошёл до этой мысли сам, что почему-то резко понизило в его глазах статус меня и моей статьи. Он обвинил меня в «не экспертности» и назвал статью бесполезной. При этом в статье об отключении устройств я упоминал дважды.
Также выяснилось, что он хотел настроить эмулятор геймпада x360ce, подключённый зачем-то через Steam, что вообще не имеет смысла. Эмуляция через создание виртуального геймпада работает надёжнее, позволяя задействовать устройство в играх, которые защищены продвинутыми антипиратскими защитами (Denuvo), без плохих последствий в виде бана.
В итоге и мне неприятно, и пользователь ушёл с сайта, уверенный в своей гениальности, хотя по сути стал наглядным примером разгильдяйства. Кому интересно, скриншоты переписки ниже.
Комментарии сохранил в виде скриншота, но с сайта удалил — ибо и так негатива в мире хватает, чтобы получать его от тех, кому лень читать то, над чем я долго трудился.
Обязательно укажите модель геймпада, операционную систему и игры, чтобы сэкономить время на расспросах.
Многие игры для ПК и Mac рассматривают клавиатуру как первоклассный гражданин и плохо поддерживают игровые контроллеры. Вы можете переназначить кнопки контроллера на нажатия клавиш клавиатуры, чтобы обойти это ограничение.
Вы потеряете часть аналогового входа — например, джойстики будут просто работать как клавиши со стрелками, которые включены или выключены без обычного диапазона чувствительности, — но для некоторых игр это не большая проблема.
Если вы просто хотите играть в игры Steam с контроллером, у Steam уже есть отличные встроенные инструменты для переназначения контроллеров в режиме Big Picture, и это будет гораздо более легкое решение, чем все остальное, перечисленное здесь. Для общесистемного использования или в играх, отличных от Steam, вам понадобится стороннее приложение.
Подключите ваш контроллер
Этот шаг очевиден, но с таким большим количеством типов контроллеров на рынке может быть проблемой заставить их работать правильно, особенно в macOS. У нас есть исчерпывающее руководство для большинства основных контроллеров, на которое вы можете ссылаться, если у вас возникнут проблемы, но большинство контроллеров текущего поколения будут подключаться и работать в Windows и macOS. Для контроллеров последнего поколения и более ранних могут потребоваться специальные драйверы и небольшая настройка.
Вы можете убедиться, что контроллер подключен, открыв вкладку «Устройства» в настройках Windows. Зайдите в «Настройки»> «Устройства»> «Bluetooth и другие устройства» и найдите раздел «Другие устройства».
В macOS контроллеры USB обычно можно найти в приложении «Информация о системе» в разделе «USB». Контроллеры Bluetooth должны отображаться в меню Bluetooth в верхней строке меню.
Настройка Windows (и Linux) — AntiMicro
Есть несколько хороших коммерческих вариантов, в первую очередь ПЕРЕПОЛНЕНИЕ, но AntiMicro является бесплатным, с открытым исходным кодом и также хорошо выполняет свою работу. Он также работает в Linux.
Загрузите последнюю версию с Github (или портативную версию, если вы не хотите ее устанавливать) и откройте ее.
Пока ваш контроллер подключен, вы увидите на этом экране все джойстики и кнопки. Вы можете щелкнуть любой из них, чтобы установить соответствие любой клавише клавиатуры или мыши. Если вы нажмете кнопки на вашем контроллере, кнопка в AntiMicro должна загореться, так что вам не придется беспокоиться о том, какая именно «кнопка 14».
Сопоставление джойстика с WASD или клавишами со стрелками превратит его из аналогового входа в цифровой, что может быть менее отзывчивым, но вы можете настроить мертвые зоны и другие параметры, нажав кнопку «L Stick» посередине.
Джойстики также хорошо работают при подключении к мыши, что возвращает некоторое аналоговое управление. Это хорошо для любых игр, требующих прицеливания от первого лица.
В настройках есть несколько дополнительных параметров, таких как поддержка макросов и переключение профиля. Но из коробки AntiMicro отлично подходит для простого переназначения контроллера на клавиши клавиатуры.
Для macOS: Приятным — отличная альтернатива AntiMicro, которая еще проще в использовании. Просто запустите приложение, нажмите кнопку на контроллере, затем нажмите клавишу на клавиатуре и повторите для каждой кнопки, которую хотите сопоставить. После этого нажмите кнопку запуска (она выглядит как «>») в правом верхнем углу, и все должно быть хорошо. Он не отображается в строке меню вашего Mac, поэтому вы должны иметь открытое окно, пока вы хотите использовать свой контроллер.
Enjoyable поддерживает несколько профилей, переключение профилей с помощью кнопок и перемещение мыши. Джойстики могут немного мешать отображению, поскольку они имеют тенденцию переключаться между несколькими осями. Но после некоторых проб и ошибок все должно работать нормально.
- Xpadder
- Pinnacle Game Profiler
- InputMapper
- reWASD
- DS4Windows
- JoyTokey
Когда нужно, чтобы мышь и/или клавиатура вели себя как джойстик, или хочется поиграть в компьютерную игру, рассчитанную под клавиатуру с мышью, при помощи джойстика, на помощь могут прийти специализированные программы для настройки геймпадов. В их основную задачу входит имитация нажатия клавиш или кнопок геймпада в зависимости от того, что конкретно требуется пользователю — заставить игру «думать», что управление осуществляется посредством клавиатуры с мышкой или геймпадом. Рассмотрим популярные программы из этой категории.
Xpadder
Условно-бесплатная программа
Программа Xpadder делает возможным управление любой PC-игрой при использовании имеющегося в распоряжении геймера USB-контроллера — будь то SP/Xbox-джойстик, автомобильный руль с педалями или штурвал. Утилита может работать и в обратном направлении, эмулируя нажатия кнопок джойстика, равно как и использование стиков.
1
Из функциональных возможностей Xpadder отметим:
- Удобное управление благодаря визуализации процесса настройки геймпада (на экране отображается интерактивное изображение выбранного игрового контроллера с подписанными анимированными кнопками).
- Поддержка Force Feedback — тактильной обратной связи игрового контроллера (к примеру, вибрация у джойстика).
- Поддержка беспроводных игровых Bluetooth контроллеров.
- Возможность эмуляции клавиатуры/мыши с 16 игровых устройств одновременно (т.е. поддержка мультиплеерных игр либо управления одной игрой несколькими игроками).
- Возможность создания, сохранения и последующая загрузка неограниченного количества профилей с настройками (сохраненными пресетами можно делиться с друзьями либо, наоборот, использовать скачанные из интернета профили на своем компьютере).
- Возможность создания глобальных горячих кнопок для управления посредством игровых устройств любыми программами, работающими в фоновом режиме.
- Помимо геймпадов, программа Xpadder также поддерживает всевозможные виды ритм-контроллеров (имитаторы музыкальных инструментов — барабаны, гитары и т.п.), танцевальных платформ (дэнспады) других специализированных игровых и развлекательных USB-устройств.
Pinnacle Game Profiler
Условно-бесплатная программа
Pinnacle Game Profiler — программа для управления PC-играми при помощи джойстика или геймпада иного типа (руль, рычаг, педали и т.д.). Основная задача данного приложения — обеспечить возможность использования геймпадов в играх для персонального компьютера, не поддерживающих управление игровыми контроллерами.
Pinnacle Game Profiler позволяет управлять практически любой PC-игрой при помощи имеющегося в распоряжении пользователя джойстика. Отдельно следует отметить, что приложение поддерживает большое количество разных видов игровых контроллеров, включая Xbox 360, PS3 SixAxis, Wiimote и многие другие. Основное требование к контроллеру — он должен поддерживать работу на компьютерах под управлением ОС Windows.
Кроме того, Pinnacle Game Profiler позволяет управлять играми, первоначально созданными под управление игровыми контроллерами, при помощи клавиатуры и мыши. Данная функция может пригодиться, например, при запуске игр от приставок через программный эмулятор, позволяющий запускать их в рабочей среде Windows (вроде RPCS3 для Sony PlayStation 3).
Среди главных особенностей утилиты отметим:
- Перехват нажатий всех имеющихся кнопок игрового контроллера. Если одна и та же кнопка выполняет разные функции при переключении режима управления на джойстике, программа Pinnacle Game Profiler это поймет.
- Приложение позволяет значительно увеличить количество эмулируемых клавиш клавиатуры, несмотря на то, что в джойстике ограниченное число кнопок. Для этого, например, можно задействовать функцию двойного нажатия. Т.е. одна и та же кнопка может выполнять разные действия при условии, что предварительно была нажата другая кнопка-триггер.
- Возможность управления игровым контроллером сторонними приложениями, запущенными параллельно с игрой. Т.е. программа Pinnacle Game Profiler может, к примеру, включать/выключать микрофон или стартовать/останавливать запись видео с экрана монитора путем эмуляции нажатия горячих клавиш, позволяющих управлять соответствующими приложениями.
InputMapper
Бесплатная программа
InputMapper — бесплатное программное обеспечение, предназначенное для сопоставления устройств ввода/вывода с другими устройствами ввода/вывода. Первоначально программа предназначалась для сопоставления кнопок DualShock 4 с виртуальным контроллером Xbox 360, что делало возможным управление играми, поддерживающими только XInput-геймпады. В настоящий момент приложение InputMapper поддерживает множество устройств ввода и сопоставление с многочисленными устройствами вывода.
В сочетании с расширенными макросами и параметрами настройки утилита InputMapper дает пользователям возможность не только выбирать тип устройства, но и способ преобразования и применения входных данных. Все это в совокупности обеспечивает возможность эмуляции одних игровых устройств при использовании других (т.е. не только по схеме «клавиатура > джойстик» или наоборот, но и по схеме «геймпад одного типа > геймпад другого типа»).
На момент написания обзора программа InputMapper поддерживала следующие устройства ввода:
- Sony DualShock 4
- Sony DualShock 4 V2
- Xbox 360 Controller
- Xbox One Controller
- Sony Dualshock 3
- Playstation Move Navigation Controller
- Generic DirectInput Devices
- Generic XInput Devices
Сигналы от этих устройств могут быть преобразованы в сигналы от:
- Xbox 360 controller
- Sony Dualshock 4
- Мышь/клавиатура
Однако программа InputMapper довольно сложна для использования неподготовленными пользователями. Для работы с некоторыми устройствами она требует установки дополнительного программного обеспечения.
reWASD
Условно-бесплатная программа
reWASD — мощная программа для эмуляции клавиатуры и мыши при использовании игровых контроллеров, и в обратном направлении. Также предусмотрен специализированный функционал для переназначения кнопок у самих манипуляторов Xbox Elite.
Разработчики reWASD позиционируют свой программный продукт как единственный, способный предоставить геймеру все преимущества использования клавиатуры с мышью при использовании геймпадов Xbox (360, One, Elite, Elite 2), Dualshock 3, Dualshock 4, Nintendo Switch Pro, Joy-Cons и других. И обусловлено это следующим:
Возможность играть любую компьютерную игру с помощью геймпада, независимо от того, поддерживает ли она контроллеры или нет
Известно, что многие игры просто не поддерживают контроллеры. Однако это легко исправить при помощи программы reWASD, которая может работать в качестве виртуального джойстика. reWASD может назначать кнопки клавиатуры и мыши любым кнопкам контроллера. Когда геймер нажимает кнопку контроллера, утилита воспроизводит нажатие выбранной клавиши клавиатуры.
Специальный режим эмуляции контроллеров Xbox/PS4
eWASD позволяет превратить любой геймпад, клавиатуру или мышь в контроллер DualShock 4 или Xbox 360 и настроить раскладку именно так, как это нужно геймеру. Она позволяет изменить поведение эмулированных джойстиков, настроить, т.н. мертвую зону, добавить тактильную обратную связь для кнопок контроллера и многое другое.
Возможность расширения функциональности джойстиков
Обычный контроллер имеет примерно 17 кнопок, и это не так уж много. С reWASD геймер сможет значительно расширить их количество, хоть и, конечно, виртуально:
- Использование модификаторов. При удержании одной из Shift-кнопок джойстика, все остальные кнопки будут выполнять одну функции, при нажатии другой Shift-кнопки — другую функцию. В reWASD можно создать 4 набора таких комбинаций (по одному на каждую Shift-кнопку).
- Переназначение кнопок при одновременном нажатии заранее заданной комбинации (т.е. кнопки джойстика переназначаются, когда игрок, к примеру, разом нажимает все стрелки).
- Назначение отдельной функции при быстром двойном или тройном нажатии кнопки, а также при ее длительном удержании.
И все это — далеко не все возможности программы reWASD.
DS4Windows
Бесплатная программа
DS4Windows — портативная программа, которая позволяет максимально эффективно использовать DualShock 4 на компьютере, а также имитировать контроллеры Xbox 360. Кроме того, в приложении предусмотрены инструменты для управления при помощи джойстика системой, другими программами или компьютером в целом.
Среди ключевых особенностей программы отметим:
- Простой и понятный интерфейс. Специально для новичков в программе предусмотрен специальный мастер, который поможет пользователю выполнить первоначальные настройки.
- Быстрое переключение между различными настройками контроллера. Геймер может создать несколько профилей с настройками для одной и той же игры или настроить элементы управления только для определенных игр. Переключаться между профилями можно с клавиатуры, или, например, проведя двумя пальцами по сенсорной панели джойстика DualShock 4.
- Помимо переключения профилей вручную, их можно переключать автоматически при запуске определенных программ или при фокусировании на них (это к вопросу об управлении при помощи геймпада другими приложениями).
- Поддержка контроллеров DualShock 4, DualSense, Switch Pro и JoyCon.
- Эмуляция контроллера Xbox 360 для использования DS4 во многих компьютерных играх, которые не поддерживают его напрямую.
- Возможность играть в игры, которые поддерживают ввод только с клавиатуры и мыши, эмулируя их при помощи геймпада.
- Возможность использования модификаторов для расширения функционала геймпадов.
- Использование сенсорной панели DualShock 4 в качестве мыши или сопоставления с другими элементами управления.
- Возможность управление цветом световой панели джойстика, который может изменяться автоматически в зависимости от уровня заряда батареи или выбранного профиля.
JoyTokey
Условно-бесплатная программа
Последняя в нашем обзоре программа — JoyToKey — занимает далеко не последнее место в рейтинге популярности эмуляторов игровых девайсов. Основное ее предназначение — обеспечение возможности управления любыми компьютерными играми, как и компьютером в целом, посредством геймпада. Т.е. JoyToKey позволяет эмулировать нажатие клавиш, клики мышью и перемещение курсора при помощи имеющегося в распоряжении пользователя игрового девайса. Впрочем, функциональных возможностей программы хватает и для обратной эмуляции (имитация геймпада при помощи клавиатуры и мыши) или даже эмуляции одних игровых устройств при использовании других.
Вот основной перечень задач, которые можно решить посредством эмулятора JoyToKey:
- Управление играми, рассчитанными на использование клавиатуры и мыши, при помощи игровых устройств, причем как проводных, так и беспроводных.
- Ввиду способности программы JoyToKey эмулировать мышь и клавиатуру, с ее помощью можно полноценно управлять компьютером (например, можно, не вставая с дивана, управлять браузером при помощи беспроводного джойстика).
- Контроль всевозможными системными параметрами (как, например, громкость звука), запуск программ и выполнение любых команд консоли Windows, эмуляция нажатий горячих клавиш и многое другое.
Понятно, что ни один существующий игровой девайс не имеет в своей конструкции столько же кнопок, сколько имеет стандартная клавиатура. И это еще не считая мыши с дополнительными мультимедийными/игровыми кнопками. Тем не менее, разработчикам JoyToKey удалось преодолеть эту проблему, реализовав в программе следующие функции:
- Возможность автоматического переназначения функций кнопок геймпада при последовательном/одновременном нажатии или удержании заданной комбинации кнопок (речь о создании «карт кнопок», между которыми можно быстро переключаться).
- Расширение функций одних и тех же кнопок путем предварительного нажатия и удержания кнопок-триггеров.
- Привязка действий к удержанию одной или нескольких кнопок геймпада в течение непродолжительного времени.
- Возможность использования стиков, как для перемещения курсора мыши, так и для нажатий клавиш (с предварительным зажатием кнопки-триггера).
Столь же широкие возможности программа JoyToKey показывает и в плане эмуляции игровых девайсов. Управление в таких играх даже можно сделать более удобным, в т.ч. и за счет использования мыши вместо стиков. А выполнение каких-то сложных комбинаций кнопок геймпада можно заменить нажатием всего одной клавиши.