- Используйте Android как джойстик или рулевое колесо на вашем компьютере
- Использование телефона Android в качестве ПК GamePad или рулевого колеса
- Используйте устройство Android в качестве руля ПК
- Используйте устройство Android как геймпад для ПК
- Игровой контроллер для ПК на Android
- Описание задачи
- Сервер
- Клиент
- Как это все работает
- Заключение
- Используйте Android как джойстик или рулевое колесо на вашем компьютере
Используйте Android как джойстик или рулевое колесо на вашем компьютере
Если вы любите играть на компьютере, у вас уже, наверное, есть джойстик для игры или рулевое колесо для гонок. Некоторые энтузиасты даже подключили WiiMote к компьютеру и используют его для игр.
Мы расскажем вам о новом способе, который еще лучше и доступнее: использовать ваш телефон в качестве джойстика, рулевого колеса и, основанные на гироскопе, FPS навигацию/режим стрельбы.
Monect позволяет вам дистанционно управлять вашим компьютером и играть в игры, используя Android устройство через Wi-Fi или Bluetooth. С Monect ваше Android устройство становится джойстиком, рулевым колесом, работающим на акселерометре и даже устройством, позволяющим прицеливаться в 3D FPS шутере, работающем на гироскопе.
Monect превращает ваш телефон/планшет/фаблет в клавиатуру/мышь/джойстик все в одном. Android устройство может также выступать в качестве беспроводной мышки или клавиатуры, как и большинство других приложений подобного рода. Лучшей частью этого приложения является то, что оно может использоваться в качестве контроллера для различных типов игр, таких как гонки, FPS, RPG и другие. Приложение использует все датчики Android (акселерометр, G-сенсор, гироскоп и другие), чтобы обеспечить полноценную, без задержек игру. Например, FPS режим позволяет осуществлять датчик гироскоп, в процессе прицеливания, или в гоночном режиме используется G-сенсор для включения руля.
RaceMode — играйте в гонки на компьютере, такие как NFS и управляйте рулевым колесом с помощью телефона, использующим G-сенсор
Джойстик — имитация джойстика, так что вы сможете играть в приключенческие игры, такие как Street fighter, Prince of persia и т.д.
FPS mode — использование гироскопа для прицеливания, прямо как настоящее оружие в руках, превосходная поддержка для Call of Duty!
TouchPad — симулятор сенсорной панели на вашем телефоне с поддержкой жестов, как на трекпад от Apple
My Computer — изучайте компьютерные файлы на вашем телефоне
Keyboards — симулятор буквенной и цифровой клавиатуры, функциональных клавиш
Text transfer — наберите текст на телефоне и передайте его на компьютер с помощью одного нажатия
PPT mode — когда вы должны присутствовать на лекции или совещании, данный режим поможет вам осуществить это
Browser, Media Control — легко управляйте браузером и медиа-плеером
Monect можно бесплатно скачать из Google маркета, а клиент Windows сервера для компьютера нужно поискать.
Из этой статьи вы узнаете еще один способ, как превратить телефон в джойстик или мышь.
Источник
Использование телефона Android в качестве ПК GamePad или рулевого колеса
Некоторые компьютерные игры лучше всего подходят для геймпада, например файтинги и платформеры, а играть в гоночные игры с клавиатурой просто ужасно. Может быть, вы много путешествуете со своим игровым ноутбуком, а геймпад просто занимает дополнительное место в вашей сумке — не говоря уже о целом рулевом колесе.
В этой статье я собираюсь показать вам, как настроить свой телефон Android в качестве геймпада или руля для игр на ПК.
Используйте устройство Android в качестве руля ПК
Большинство современных устройств Android имеют встроенные гироскопы и акселерометры, что в основном означает, что они точно обнаруживают наклон направления. Таким образом, использование телефона в качестве руля для гоночных игр вполне возможно, с минимальными настройками. Ваш телефон Android и ваш компьютер должны быть подключены к одной сети Wi-Fi или через Bluetooth.
Существует множество приложений для этого, и мы перечислим несколько, но для целей данного руководства мы будем использовать Touch Racer, который вы можете получить. Вот в Google Play. Touch Racer очень прост в настройке, к сожалению, он предлагает только кнопки ускорения и торможения, но другие приложения могут предлагать дополнительные кнопки для переключения, просмотра камеры и т. Д.
- После установки Touch Racer на телефон Android также необходимо загрузить клиент для ПК.
- Запустите Touch Racer на своем телефоне Android, а также откройте его на своем ПК. Если ваш телефон и ПК подключены к одной и той же сети Wi-Fi или подключены по Bluetooth, клиент ПК должен автоматически определить ваше устройство и изменить статус подключения на «подключен» без дополнительных действий.
- В приложении Touch Racer на телефоне перейдите в «Настройки». Различные настройки полностью на ваше усмотрение, но они в основном имеют дело с чувствительностью рулевого управления. Чувствительность рулевого управления не требует пояснений, в то время как чувствительность акселератора и тормоза указывает, сколько вам нужно провести пальцем по экрану вверх или вниз для достижения максимального ускорения / торможения.
- Одной настройкой, которую вы можете изменить, является датчик рулевого управления — измените его с «Просто акселерометр» на «Акселерометр + гироскоп». Приложение утверждает, что это дает более точное управление за счет задержки, но я не заметил никакой задержки.
- После того, как вы настроили приложение, просто нажмите «Начать игру», а затем запустите гоночные игры по вашему выбору на вашем ПК. В опциях игры вам может потребоваться настроить элементы управления на «рулевом колесе».
Кроме того, если вы заметили, что ваш автомобиль поворачивается без наклона телефона, проверьте, есть ли в вашей игре опция «Перекалибровать рулевое колесо», и нажмите ее, удерживая телефон в идеальном горизонтальном положении, как если бы вы держали фактический руль в мертвой точке.
Используйте устройство Android как геймпад для ПК
Существует множество различных приложений для управления устройством на вашем Android-устройстве, в том числе в качестве геймпада, но мы хотим иметь приложение с настраиваемой раскладкой кнопок, эмуляцией большого пальца и хорошим временем отклика.
- Для этого мы будем использовать DroidJoy, поскольку он поддерживает как XInput, так и DInput, но есть и другие подобные приложения, если вы просматриваете Play Store.
- Установите приложение DroidJoy на свое устройство, а также DroidJoy настольный клиент,
- Запустите настольный клиент на своем ПК и убедитесь, что ваше Android-устройство и ПК подключены к одной и той же сети Wi-Fi или используют соединение Bluetooth.
- Запустите приложение DroidJoy на вашем Android-устройстве и нажмите «Поисковый сервер» в окне «Подключиться». Затем просто подключитесь к клиенту ПК, и все готово.
- В меню «Настройки» приложения Android вы можете настроить макет кнопки по своему вкусу или выбрать предварительно настроенный макет в раскрывающемся меню.
Источник
Игровой контроллер для ПК на Android
Всем привет! В данной статье я хочу рассказать о том, как можно сделать из своего Adndroid смартфона игровой контроллер (в простонародье — джойстик) для обычного ПК, а именно руль.
Описание задачи
Поведение руля будет эмулироваться с помощью акселерометра. Для этого ведется непрерывное сканирование пространственных координат и эмпирическим путем подбираются границы для каждого направления движения. Исходя из этих данных в реальном времени генерируются сочетания игровых клавиш. Например: W — вперед, WA — вперед и влево и т. д.
Для доставки этих данных на ПК должен быть запущен сервер, который принимает входящие команды и эмулирует нажатия соответствующих клавиш. Сервер можно сделать однопоточным, чтобы подключался только один смартфон. Соединение будет осуществляться по Wi-Fi.
А теперь самое интересное…
Сервер
Сервер реализован на C++ под Windows. Основная его задача — непрерывно принимать входящие сообщения и нажимать клавиши. Ниже приведен основной и простой код для данной задачи:
Copy Source | Copy HTML
- while ( true ) <
- std::cout «Wait for connection. \n» ;
- try <
- socket = server.Accept();
- > catch ( const char *error ) <
- std::cout endl ;
- exit( 0 );
- >
- bool keepAlive = true;
- int timeout = 10000 ;
- setsockopt( server.getSocket( ), SOL_SOCKET, SO_KEEPALIVE, ( char* )&keepAlive, size of( bool ));
- setsockopt( server.getSocket( ), SOL_SOCKET, SO_RCVTIMEO, ( char* )&timeout, size of( int ));
- std::cout «Connected!\n» ;
- while ( true ) <
- std: :string msg = socket->ReceiveLine();
- if ( msg.empty( ))
- break;
- processKeys( msg.c_str( ));
- >
- std::cout «Disconnected.\n\n\n» ;
- >
Copy Source | Copy HTML
- void pressKeys( char key1, char key2 ) <
- // отжать предыдущие клавиши
- for ( std::map ::iterator it = scanCodes.begin( ) ; it != scanCodes.end(); it++ ) <
- char curKey = it->first;
- if ( curKey != key1 && curKey != key2 )
- upKey( curKey );
- >
- downKey( key1 );
- downKey( key2 );
- >
- void downKey( char key ) <
- keybd_event( VkKeyScan(key ), scanCodesРуль для смартфона андроид, 0 , 0 );
- >
- void upKey( char key ) <
- keybd_event( VkKeyScan(key ), scanCodesРуль для смартфона андроид, KEYEVENTF_KEYUP, 0 );
- >
Клиент
Copy Source | Copy HTML
- public class MainActivity extends Activity implements SensorEventListener <
- @Override
- public void onCreate(Bundle savedInstanceState) <
- // .
- sensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
- accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
- //.
- >
- @Override
- public void onSensorChanged(SensorEvent event ) <
- if ( event .sensor.getType() == Sensor.TYPE_ACCELEROMETER) <
- long curTime = System.currentTimeMillis();
- // считывание данных раз в 100 мс, иначе телефон загнется от сборщика мусора
- if (lastUpdate == — 1 || (curTime — lastUpdate) > 100 ) <
- lastUpdate = curTime;
- x = event .values[DATA_X];
- y = event .values[DATA_Y];
- z = event .values[DATA_Z];
- xLabel.setText(String.format( «X: %+2.5f» , x));
- yLabel.setText(String.format( «Y: %+2.5f» , y));
- zLabel.setText(String.format( «Z: %+2.5f» , z));
- try <
- sendKeys(); // анализ координат для отправки клавиш на сервер
- > catch (Exception e) <
- e.printStackTrace();
- >
- >
- >
- >
- >
Важный момент — считывать данные с акселерометра надо с определенным интервалом, иначе ваша программа моментально подвесится от непрерывных запросов к сенсору. Также при сворачивании надо отвязывать listener от акселерометра, чтобы ресурсы системы и батареи не тратились зря. Для этого в методах onResume и onPause делается следующее:
Copy Source | Copy HTML
- @Override
- protected void onResume() <
- super.onResume();
- sensorManager.registerListener( this , accelerometer, SENSOR_DELAY_NORMAL);
- >
- @Override
- protected void onPause() <
- super.onPause();
- sensorManager.unregisterListener( this );
- >
Код для генерации клавиш очень прост. Все границы определялись экспериментальным путем.
Copy Source | Copy HTML
- private String getKeys() <
- String keys = «» ;
- if (z > 7 . 5 )
- keys += «W» ;
- else
- keys += «S» ;
- if (y 3 )
- keys += «A» ;
- else if (y > 3 )
- keys += «D» ;
- return keys;
- >
Как это все работает
Испытывал я это все на Need For Speed Most Wanted. По ощущениям, конечно, не как настоящий руль, но играть можно.К сожалению, видео снять не получилось — в доме одна камера, и то на испытуемом телефоне. В ближайшее время обязательно выложу. Вот как это выглядит на ПК и на смартфоне:
Заключение
Пока главный недостаток в сервере — это глобальное нажатие клавиш, не зависящее от приложения. В дальнейшем будет чем заняться. Еще одна проблема с которой я столкнулся — постоянный разрыв соединения. Не нашел лучшего решения, чем постоянный реконнект при обрыве связи.
Источник
Используйте Android как джойстик или рулевое колесо на вашем компьютере
Если вы любите играть на компьютере, у вас уже, наверное, есть джойстик для игры или рулевое колесо для гонок. Некоторые энтузиасты даже подключили WiiMote к компьютеру и используют его для игр.
Мы расскажем вам о новом способе, который еще лучше и доступнее: использовать ваш телефон в качестве джойстика, рулевого колеса и, основанные на гироскопе, FPS навигацию/режим стрельбы.
Monect позволяет вам дистанционно управлять вашим компьютером и играть в игры, используя Android устройство через Wi-Fi или Bluetooth. С Monect ваше Android устройство становится джойстиком, рулевым колесом, работающим на акселерометре и даже устройством, позволяющим прицеливаться в 3D FPS шутере, работающем на гироскопе.
Monect превращает ваш телефон/планшет/фаблет в клавиатуру/мышь/джойстик все в одном. Android устройство может также выступать в качестве беспроводной мышки или клавиатуры, как и большинство других приложений подобного рода. Лучшей частью этого приложения является то, что оно может использоваться в качестве контроллера для различных типов игр, таких как гонки, FPS, RPG и другие. Приложение использует все датчики Android (акселерометр, G-сенсор, гироскоп и другие), чтобы обеспечить полноценную, без задержек игру. Например, FPS режим позволяет осуществлять датчик гироскоп, в процессе прицеливания, или в гоночном режиме используется G-сенсор для включения руля.
RaceMode — играйте в гонки на компьютере, такие как NFS и управляйте рулевым колесом с помощью телефона, использующим G-сенсор
Джойстик — имитация джойстика, так что вы сможете играть в приключенческие игры, такие как Street fighter, Prince of persia и т.д.
FPS mode — использование гироскопа для прицеливания, прямо как настоящее оружие в руках, превосходная поддержка для Call of Duty!
TouchPad — симулятор сенсорной панели на вашем телефоне с поддержкой жестов, как на трекпад от Apple
My Computer — изучайте компьютерные файлы на вашем телефоне
Keyboards — симулятор буквенной и цифровой клавиатуры, функциональных клавиш
Text transfer — наберите текст на телефоне и передайте его на компьютер с помощью одного нажатия
PPT mode — когда вы должны присутствовать на лекции или совещании, данный режим поможет вам осуществить это
Browser, Media Control — легко управляйте браузером и медиа-плеером
Monect можно бесплатно скачать из Google маркета, а клиент Windows сервера для компьютера нужно поискать.
Из этой статьи вы узнаете еще один способ, как превратить телефон в джойстик или мышь.
Источник