Геймпады для андроид

Мы вплотную приблизились к тому моменту, когда наши карманные устройства по производительности не сильно уступают настольным, а крупные издательские компании делают уникальные для мобильных платформ релизы игр. Да, игры на iOS и — это уже не просто «змейка». Для хорошей игры не помешает хороший игровой контроллер. TechNews подобрали несколько лучших, совместимых с Android-смартфонами и планшетами.

MAD CATZ L.Y.N.X 9


Этот модульный игровой контроллер был представлен в рамках CES 2015. Он предназначен для работы с Android-устройствами и комфортней всего будет владельцам устройств с диагональю экрана до 7 дюймов, ведь именно для них рассчитаны крепления. Специальное приложение поможет детально настроить аксессуар, который, кстати, при желании может быть использован и с компьютером под управлением Windows. Сейчас L.Y.N.X 9 доступен для предзаказа на по цене в 299 долларов.


Этот аксессуар выглядит совсем не так агрессивно, как предыдущий. Он компактный, и, возможно, кто-то даже назовет его несерьезным, но точно не его владелец. Качество сборки и материалов этого игрового контроллера способно удивить инженеров Sony. Он совместим с Android, iOS, Windows, Mac и Linux, при стоимости в 50 долларов. Первое впечатление обманчиво.

iCADE 8-BITTY


Этот игровой контроллер создан для того, чтобы вернуть вас в прошлое. Он компактный, беспроводной, работает на батарейках AAA, стоит всего 30 долларов и дарит непередаваемые ностальгические чувства.

MOGA


Этот игровой контроллер превратит ваш смартфон в продвинутый GameBoy. Он подходит для работы с Android-смартфонами любого размера и класса. Необходимое для его работы ПО поддерживает все версии Android, начиная с 2.3. Аксессуар также работает на двух батарейках AAA, а стоит всего 45 долларов.


Это потрясающее решение. Компактный, легкий, невероятно удобный контроллер с аналоговым джойстиком и тремя идеально расположенными клавишами, работающий по Bluetooth, питающийся от AAA-батареек, по цене в 13 долларов. Разве возможно отказаться от этого удовольствия? К сожалению, у устройства проблемы с поддержкой разработчиками.

iDROID


Если же вы вдруг считаете, что контроллер для мобильного устройства должен соответствовать стандартам, заданным консолями, тогда этот аксессуар для вас. Он отлично ляжет в ваши руки после контроллеров от PlayStation или Xbox, он работает на аккумуляторе, он совместим как с Android, так и с iOS, и обойдется в 40 долларов.

Решили выбрать себе мобильный игровой контроллер, но теряетесь в догадках от изобилия предложений на рынке? Мы опробовали многие, и выбрали 5 на наш взгляд лучших геймпадов, как для iOs, так и для Android. Любой из этих устройств будет удачной покупкой, но предлагаем вам еще немного потратить времени, и выбрать лучший контроллер и пройти наконец Modern Combat 5 .

Logitech PowerShell

Logitech PowerShell - MFi-контроллер, который работает с iPhone 5, iPhone 5S или iPod touch пятого поколения. Его отличают тонкий и лёгкий корпус (вес этого гаджета – всего 120 грамм), удобный эргономичный дизайн с обтекаемыми прорезиненными углами и продуманные элементы управления, в число которых вошли D-pad, боковые триггеры и блок кнопок, причём расположены они таким образом, что ваши пальцы не будут заслонять экран. Этот контроллер способен заряжать ваше iOS-устройство благодаря наличию встроенного аккумулятора ёмкостью 1500 mAh с индикатором заряда. Конструкция крепления PowerShell такова, что он не помешает вам полноценно пользоваться вашим устройством - делать снимки, регулировать громкость, звонить и слушать музыку.

MOGA Pro

Moga Pro – очень удачный и весьма эргономичный контроллер для мобильных Android-устройств. Он способен работать с любыми устройствами - от смартфонов до планшетов, на которых установлена операционная система Android версии 2.3 и выше. Крепление контроллера продумано таким образом, что оно способно удерживать гаджеты любого размера, даже с большим экраном. Подключение происходит по Bluetooth, но для эффективной работы требуется скачивание специального приложения. Элементы управления в Moga Pro включают в себя d-pad, кнопки, триггеры и целых два джойстика. Этот контроллер оснащён аккумулятором на 2000 mAh, что позволяет ему неплохо выдерживать интенсивные сеансы гейминга.

SteelSeries Stratus и Stratus XL

Компания SteelSeries предлагает фанатам мобильного гейминга сразу два контроллера – более компактный SteelSeries Stratus и более мощный SteelSeries Stratus XL. Они работают с устройствами, поддерживающими iOS 7 и iOS 8, а также Apple TV, подключаясь к ним через Bluetooth. Управляющие элементы в обоих контроллерах довольно стандартны – D-pad, два аналоговых джойстика и кнопки действия. Версия Stratus XL оснащена также четырьмя боковыми кнопками. Разработчики утверждают, что эти контроллеры способны выдержать до 10 часов непрерывной работы благодаря встроенным аккумуляторам, а подзаряжаются всего за два часа.

IPEGA PG-9017 – хороший пример универсального беспроводного контроллера для мобильных iOS- и Android-устройств. Он порадует набольшими размерами и совершенно доступной ценой. Этот гаджет соединяется с мобильными устройствами через Bluetooth и не требует установки дополнительного программного обеспечения. IPEGA оснащён аккумулятором, работает не только со смартфонами, но и с планшетными устройствами, а за счёт расположения крепления и кнопок идеально подходит для любителей гонок.

Samsung GamePad

Samsung GamePad – неплохая модель игрового контролера, но рассчитана она только на Android-смартфоны линейки Galaxy. Подключение происходит через Bluetooth (или NFC в более новой версии) а кроме того, есть возможность вывести картинку геймплея на экран телевизора через кабель HDMI. GamePad оснащён D-Pad, четырьмя классическими кнопками действия, двумя триггерами и двумя аналоговыми стиками. К плюсам данного контролера можно отнести широкий выбор адаптированных игр.

Геймпад для Андроид уже давно превратился из дополнительного аксессуара в обязательный атрибут всех любителей мобильных игр. Современные смартфоны и планшеты стали настолько мощными, что разработчики приложений все больше уделяют внимания технологически сложным играм с красивой графикой. Играть на сенсорном экране удобно только в игры типа Фруктового ниндзя и Angry Birds. А игры в стиле RPG, шутеры от первого лица или гонки подарят Вам гораздо больше положительных эмоций, если вы будете использовать джойстик для Android.

Как работает джойстик для Андроид

Наиболее распространенным и удобным вариантом считается подключение по технологии Bluetooth. Рабочий диапазон блютуз джойстика составляет 6-8 метров, что очень актуально для телевизоров на ОС Android. Для подключения контроллера по технологии Bluetooth, геймпад должен войти в режим «сопряжения» с вашим мобильным устройством. Этот процесс может проходить не совсем гладко и зависеть напрямую от производителя игрового контроллера и версии ОС.

Крупнейшие производители манипуляторов позаботились об официальных приложениях для Андроид, которые доступны для скачивания бесплатно в on-line магазине. Программы представляют из себя набор драйверов, с помощью которых просто и быстро определится и «подцепится» устройством Ваш блютуз геймпад. Также эти приложения содержат каталог игр, которые официально поддерживает производитель, давая гарантию, что Ваш контроллер для Андроид будет с ними работать.

Зачем покупать блютуз джойстик для Андроид

  • комфортный игровой процесс «на ходу»: в транспорте, на отдыхе, в поезде, самолете и тп.;
  • контроллер для Андроид имеет специальное крепление для телефона, есть модели с креплениями для планшетов. В результате у вас в руках оказывается мини-приставка, настоящий полноценный игровой центр, в котором надежно будет размещен экран;
  • купить совсем не сложно. Цены на хорошие манипуляторы для Андроид вполне демократичны, а разнообразие моделей и набор функций удовлетворит даже самого требовательного геймера.

Наш компания, работая напрямую с производителями, застрахована от подделок и активно способствует в части обеспечения гарантийных обязательств. В интернет магазине VHS Вы сможете купить по оптимальным ценам джойстики для планшетов и смартфонов таких мировых брендов как Moga, iPega, 8bitdo, Wamo, Mad Catz, Mocute, Phonejoy, GameSir. В наличии также есть небольшие универсальные беспроводные VR контроллеры – самые простые и доступные из всех имеющихся вариантов.

Sixaxis Controller - приложение, которое позволяет играть в игры с джойстиком на Андроид. Причем Вы сможете подключить, как беспроводной геймпад, так и аналоговый джойстик. Что касается переназначения клавиш, то это не проблема, поскольку в самой программе предусмотрена подобная возможность.


  • Жанр: подключение джойстика
  • Платформа: Android 2.2-5.0
  • Язык интерфейса: русский

Из можно скачать приложение Sixaxis Compatibility Checker для проверки совместимости вашего устройства и Sixaxis Controller. Проверочное приложение - бесплатное.

1. Скачайте и установите SixaxisPairTool. Запустите его и подключите контроллер к компьютеру USB-шнурком. После автоматической установки драйвера высветится MAC-адрес в формате xx:xx:xx:xx:xx:xx
2. Теперь запустите Sixaxis Controller на телефоне.
Нажмите на Start. Программа запросит рут права и внизу вы увидите Local Bluetooth Address, тоже в формате xx:xx:xx:xx:xx:xx - впишите его в SixaxisPairTool на компьютере, в поле Change Master и нажмите Update. Потом отключите контроллер от компьютера.
3. Включите контроллер кнопкой PS (круглая посередине). Если на контроллере горит одна лампочка - все получилось! :clap:
Если пишет Connection Failed - ваше устройство не поддерживается:(
4. Теперь осталось только нажать Change Input Method в программе и выбрать Sixaxis Controller.
Eсли вы хотите джойстик потом снова подключать к приставке, достаточно будет подключить его шнуром к PS3 и включить сначала приставку потом геймпад, они схватятся сами.

Гарантированно работает ТОЛЬКО с оригинальными Sixaxis и Dualshock 3! Другие PS3-геймпады и китайские подделки МОГУТ НЕ РАБОТАТЬ
- Во избежание проблем с геймпадом рекомендуется заряжать ТОЛЬКО от компьютера /ориг. зарядки /ps3
- Работоспособность на стоковых прошивках (особенно с Sense) не гарантируется.
- Программа,начиная с версии 0.7.1 , совместима с процессорами МТК, все ошибки и предложения отправляем автору

DNS AirTab M101w
3Q TS1010c
Acer Iconia 500
Acer Iconia Tab A101 (сток 4.0.3)
Acer Iconia Tab A110
Acer Iconia Tab a211
Acer Iconia Tab A511
Acer Iconia Tab A1-810
Acer Liquid
Asus EEE Pad Transformer
Asus PadFone 2 A68
Asus Memo Pad HD 7
Asus Nexus 7 2013
Asus Nexus 7 2012
Asus tf 300 tg
Ainol Novo 7 Advanced (n7a_4.03_feiyu_mod_(0429) + ICS 4.0.4 (IVI) CyanogemMod 9)
Alcatel OT990 (прошивка Perfomix)
Alcatel OT-5036D POP C5
CECHZC2H
CUBE U30GT
Cube u39gt
DNS m100gw
Dell Streak 7
Docomo F-10D
Explay Golf
Fly 446 magic
Fly IQ441 Radiance
Fly IQ451 Vista
Fujitsu STYLISTIC M532
Fly Flylife Connect 10.1 3G
Fly IQ4404 (Spark) - сток,4.2,sw17
Galaxy Nexus
Gigabyte GSmart G1345
Gigabyte GSmart Aku A1
HTC One S
HTC One(M7) GPE
HTC One e8
HTC One X
HTC Desire HD CM7 или MIUI
HTC Desire S CM7, CM9, Virtuous Quattro, IceColdSandwich 6.1
HTC Desire CM
HTC EVO 3D CyanogenMod (7,9,10)
HTC Explorer
HTC Incredible S MIUI
HTC HD2 CM
HTC Sensation CM7
HP Touchpad CM
Highscreen boost 2
Highscreen Alpha Tab.
Higscreen Explosion
Huawei Honor 2
Huawei Media Pad 4.0.3
Huawei Honor 3C на МТК6582
HYUNDAI ROCK X800
Hyundai T7s
IconBIT NetTAB SPACE II (cток 4.1.1) СЕCHZC2Ua1
Icou Farry 2 (на офф прошивке 4.1 с джойстиком Nitho Neo)
iWing WTD2
Jiayu G2F
Lg G Pro (E988) с CM10
LG Optimus 2X
LG Optimus Black
LG Optimus G
LG Nexus 4
LG Nexus 5
LG E425
LG L90
Lenovo LePhone GW100 + MIUI 2.5.4 или CyanogenMod
Lenovo k1
Lenovo s650
Lenovo a820
lenovo k910 vibe z
Megafon Login
Minix NEO x7 (прошивка 006с)
Minix 8
MegaFon Login+
Motorola Quench XT5
Motorola Milestone CM7 или MIUI
Motorola Milestone 2
Motorola Atrix 4G 2.3.4
Motorola Defy CM7
Motorola Droid 3
Motorola Droid X
Motorola Xoom MZ604 wifi AOSP 1.0.0
Motorola RAZR / DROID RAZR
Motorola Razr M
Motorola Moto G
Motorola Moto X
Newman N2 (Freelander I20)
Nexus One CM7
Nexus S
Oneplus One
Onda 975m
OYSTERS T34
Philips W732
Philips w6610
Philips Xenium w8510
Prestigio pmp 5101D3G 10.1 ОП 4.2
PocketBook SurfPad 3 10.1
Samsung Galaxy S Advance CyanogenMod 10.1
Samsung galaxy s III mini
Samsung Galaxy Ace
Samsung galaxy ace 2 оф 4.1.2
Samsung Galaxy S CM7
Samsung Galaxy S CM10.1
Samsung Galaxy S II CM7 или MIUI или стоковая прошивка с рутом
Samsung GT-I9100G GALAXY S II Cyanogenmod 11, Android 4.4.2
Samsung Galaxy S3
Samsung GT-I9500 Galaxy S IV
Samsung Galaxy s4 (at&t)
Samsung Galaxy S Plus I9001 CyanogenMod 9
Samsung Galaxy Tab CM7
Samsung Galaxy Tab 7.0+
Samsung GT-I9003 KPH
Samsung Galaxy 5 CM7
Samsung Galaxy Note
Samsung Galaxy Note 2
Samsung Galaxy Note 3 n900 (Сток 4.4.2 с рутом)
Samsung Galaxy Note 10.1 android 4.1 jelly bean
Samsung Galaxy Wonder (CM10)
Samsung Galaxy Tab Pro 8.4
Samsung Galaxy 2 10.1
SmartQ W1 Z Watch
SONY Xperia V
Sony Ericsson X8 miniCM
Sony Ericsson X10 2.3.3
Sony Ericsson Xperia Active 4.0.4
Sony Ericsson Xperia Arc S 4.0.4
SONY XPERIA ION 4.1.2
SONY TABLET Z 4.3
Sony Xperia P 4.1.2
Sony XPERIA S 4.0.4
Sony XPERIA Sola 4.1.2
Sony Xperia Z1 Compact
Sony Xperia Z3 Compact
Sony Xperia M2(D2303)
Sony Xperia Z3 Tablet
TV BOX Rikomagic Quad Core MK802IV
TV Box M8 Amlogic S802 прошивка Finless 1.8, на версии 0.8 работает
Tronsmart Vega S89-H (0.8.1)
Ramos W30
Pantech Vega Racer II / Кастом от 9.16
Pegatron Chagall
Pipo M1
Pipo m7
Pipo Max M9
Toshiba AC100 (CyanogenMod_9.0_Android_4.0_beta3_zombah)
Teclast P89 mini S
Teclast p89 mini s
ViewSonic VIEWPAD 10S
Xiaomi Mi-2
Xiaomi Mi2a
Xiaomi MI-3
Xiaomi Red Rice
Xiaomi MiPad
Yuandao Window N101
Zopo C2
МТС 972
ZTE V967s
ZTE Grand X Quad
Texet X-Basic
Cubeboard 3
Prestigio 4500 DUO

Всем привет! В данной статье я хочу рассказать о том, как можно сделать из своего Adndroid смартфона игровой контроллер (в простонародье - джойстик) для обычного ПК, а именно руль .

Описание задачи

Поведение руля будет эмулироваться с помощью акселерометра. Для этого ведется непрерывное сканирование пространственных координат и эмпирическим путем подбираются границы для каждого направления движения. Исходя из этих данных в реальном времени генерируются сочетания игровых клавиш. Например: W - вперед, WA - вперед и влево и т. д.

Для доставки этих данных на ПК должен быть запущен сервер, который принимает входящие команды и эмулирует нажатия соответствующих клавиш. Сервер можно сделать однопоточным, чтобы подключался только один смартфон. Соединение будет осуществляться по Wi-Fi.

А теперь самое интересное…

Сервер

Сервер реализован на C++ под Windows. Основная его задача - непрерывно принимать входящие сообщения и нажимать клавиши. Ниже приведен основной и простой код для данной задачи:
Copy Source | Copy HTML
  1. while (true ) {
  2. std::cout << "Wait for connection...\n" ;
  3. try {
  4. socket = server.Accept();
  5. } catch (const char *error ) {
  6. std::cout << error << std::endl ;
  7. exit( 0 );
  8. bool keepAlive = true;
  9. int timeout = 10000 ;
  10. setsockopt(server.getSocket(), SOL_SOCKET, SO_KEEPALIVE, (char* )&keepAlive, size of(bool ));
  11. setsockopt(server.getSocket(), SOL_SOCKET, SO_RCVTIMEO, (char* )&timeout, size of(int ));
  12. std::cout << "Connected!\n" ;
  13. while (true ) {
  14. std::string msg = socket->ReceiveLine();
  15. if (msg.empty())
  16. break;
  17. processKeys(msg.c_str());
  18. std::cout << "Disconnected.\n\n\n" ;

Нажатие клавиш:

Copy Source | Copy HTML
  1. void pressKeys(char key1, char key2 ) {
  2. // отжать предыдущие клавиши
  3. for (std::map::iterator it = scanCodes.begin() ; it != scanCodes.end(); it++) {
  4. char curKey = it->first;
  5. if (curKey != key1 && curKey != key2 )
  6. upKey(curKey );
  7. downKey(key1 );
  8. downKey(key2 );
  9. void downKey(char key ) {
  10. keybd_event(VkKeyScan(key ), scanCodes, 0 , 0 );
  11. void upKey(char key ) {
  12. keybd_event(VkKeyScan(key ), scanCodes, KEYEVENTF_KEYUP, 0 );

Клиент

Задача клиента - подключится к серверу и посылать комбинации клавиш для нажатия. Для этого используется акселерометр. Наша задача - получить пространственные координаты телефона. Это делается так:
Copy Source | Copy HTML
  1. public class MainActivity extends Activity implements SensorEventListener {
  2. @Override
  3. public void onCreate(Bundle savedInstanceState) {
  4. // ...
  5. sensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
  6. accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
  7. //...
  8. @Override
  9. public void onSensorChanged(SensorEvent event ) {
  10. if (event .sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
  11. long curTime = System.currentTimeMillis();
  12. // считывание данных раз в 100 мс, иначе телефон загнется от сборщика мусора
  13. if (lastUpdate == -1 || (curTime - lastUpdate) > 100 ) {
  14. lastUpdate = curTime;
  15. x = event .values;
  16. y = event .values;
  17. z = event .values;
  18. xLabel.setText(String.format("X: %+2.5f" , x));
  19. yLabel.setText(String.format("Y: %+2.5f" , y));
  20. zLabel.setText(String.format("Z: %+2.5f" , z));
  21. try {
  22. sendKeys(); // анализ координат для отправки клавиш на сервер
  23. } catch (Exception e) {
  24. e.printStackTrace();

Важный момент - считывать данные с акселерометра надо с определенным интервалом, иначе ваша программа моментально подвесится от непрерывных запросов к сенсору. Также при сворачивании надо отвязывать listener от акселерометра, чтобы ресурсы системы и батареи не тратились зря. Для этого в методах onResume и onPause делается следующее:

Copy Source | Copy HTML
  1. @Override
  2. protected void onResume() {
  3. super.onResume();
  4. sensorManager.registerListener(this , accelerometer, SENSOR_DELAY_NORMAL);
  5. @Override
  6. protected void onPause() {
  7. super.onPause();
  8. sensorManager.unregisterListener(this );

Код для генерации клавиш очень прост. Все границы определялись экспериментальным путем.

Copy Source | Copy HTML
  1. private String getKeys() {
  2. String keys = "" ;
  3. if (z > 7 .5 )
  4. keys += "W" ;
  5. else
  6. keys += "S" ;
  7. if (y < -3 )
  8. keys += "A" ;
  9. else if (y > 3 )
  10. keys += "D" ;
  11. return keys;

Как это все работает

Испытывал я это все на Need For Speed Most Wanted. По ощущениям, конечно, не как настоящий руль, но играть можно.К сожалению, видео снять не получилось - в доме одна камера, и то на испытуемом телефоне. В ближайшее время обязательно выложу. Вот как это выглядит на ПК и на смартфоне:

Заключение

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