Можно ли использовать телефон как руль для компьютера
Андроид можно использовать как джойстик для игр. Вы можете играть в любимые гонки, авиасимуляторы, шутеры, используя свой андроид девайс как полноценный беспроводной джойстик, по совместительству и пульт управления компьютером!
Установка необходимого ПО
Проделывать все мы будем с помощью приложения PC Remote. Гениальнейшее приложение с большими возможностями китайского происхождения. Итак, сначала нужно скачать приложение и установить на компьютер.
Мы будем рассматривать установку и настройку с помощью Wi-Fi – это максимально удобно и нет проводов (можно подключиться еще по Usb, но тогда основная задумка – удобство – теряется).
Само приложение и ПК клиент вы можете скачать тут:
- Установите программу на Андроид смартфон
- Установите Reciever клиент программы на свой ПК
- Подключите смартфон и пк к одному и тому же роутеру
Запуск и настройка
- Запускаем оба клиента программы на Пк и Андроиде
- На андроид смартфоне в самом низу нажимаем на поле
Поздравляю, устройства связаны и готовы к использованию, теперь остается выбрать режим джойстика и приступать к игре. Программа предлагает много вариантов управления:
- андроид как [b]руль для гонок (с поддержкой G-сенсора – то есть управление с помощью наклона телефона)
- телефон как джойстик с 2-мя стиками для управления и 12 программируемыми кнопками
- андроид телефон как геймпад для шутеров (стикер для поворота и ходьбы, программируемые кнопки и поворот экрана в пустом поле)
- планшет или телефон как джойстик для авиасимуляторов.
Настройка управления в игре
Запускаем любимую игру и заходим в настройки управления. Многие современные игры предлагают сразу выбрать управление клавиатурой и мышкой или джойстиком. В таком варианте выбираем джойстик и, если есть варианты, выбираем Monect. После этого нужно настроить под себя каждую кнопку джойстика на выполнение определенных действий. В каждой игре это индивидуально, поэтому останавливаться на этом не будем.
Если игра не предусматривает управление геймпадом, то можно попробовать в настройках клавиатуры задать наклоны и кнопки для каждого действия. Также есть дополнительные сервисы, которые преобразуют действия джойстика на соответствующие кнопки клавиатуры.
В этой статье мы узнали, что андроид можно использовать как джойстик для игр. Вы можете играть в любимые гонки, авиасимуляторы, шутеры,используя свой телефон или планшет на андроид как джойстик, руль или геймпад.
Если статья для вас была интересной, нажимайте на кнопочки социальных сетей, для того, чтоб рассказать о ней своим друзьям.
Ваш смартфон стал умнее. С правильным инструментом, вы можете использовать свой смартфон (Android,iOS или Windows Phone) в качестве средства для управления компьютером путем преобразования его в клавиатуру или сенсорную панель (мышь).
Геймеры могут также радоваться, так как они могут использовать свои смартфоны и планшеты в качестве геймпада или даже в качестве игрового руля, который они всегда хотели для гоночных серий.
Все это может быть сделано с удивительным пакетом приложений под названием Monect. Следуйте приведенным ниже инструкциям, чтобы использовать ваш смартфон в качестве клавиатуры, сенсорной панели или джойстика.
Как использовать Monect в качестве игрового руля, джойстика или клавиатуры
Чтобы начать работу, необходимо скачать приложение Monect на смартфон и хост-программу(Host) на ваш компьютер. Убедитесь в том, что правильно установили приложение, подходящее для вашего смартфона. После того, как Monect запущен и работает на вашем компьютере, то таким будет его интерфейс.
Подробности состояния соединения будут доступны, как только ваш смартфон подключается к компьютеру через приложение Monect. На другом конце, приложение загруженное в смартфон будет иметь следующий интерфейс.
Как вы можете видеть, приложение автоматически обнаружит компьютер, подключенный через хост Monect в той же самой сети. Обратите внимание, обязательное условие для работы системы - мобильное устройство и компьютер должны быть в одной сети. Для подключения смартфона к компьютеру просто выберите имя найденного устройства из отсканированного списка устройств. Как только вы сделаете это, Monect даст вам ряд вариантов, в которых ваш смартфон или планшет может быть использован - такие как режим Race, режим проектора, геймпад и тачпад (мышь) и еще несколько режимов.
Например, выбор режима Race превратит ваш смартфон в сенсор рулевого управления, как показано ниже. Даже акселератор может быть включен/выключен, чтобы работать через датчики.
Сенсорная панель можно использовать в качестве пульта дистанционного управления мышью компьютера.
С помощью инструмента Text Transfer вы можете набирать текст на вашем смартфоне и непосредственно вставлять его в свой компьютер.
Настройки приложения доступны через главный экран, где у вас есть варианты - настройки качества видео, удаленного рабочего стола и режим экрана проектора. Но почти все варианты являются расширяемыми настройками и могут быть использованы только в платной версии приложения (VIP-версия).
Наоборот, настройки вашего программного обеспечения хост-компьютера можно изменить с помощью опции настроек в главном меню. Вы можете задать условия для разрешения определенным устройствам подключаться через меню настроек и блокировать любое другое устройство, которое не находится в «списке разрешенных». Кроме того, могут быть установлены пароли в целях повышения безопасности.
Вывод
Это бесплатная версия приложения. Вы должны рассмотреть вопрос о покупке платной версии, если хотите расширенных возможностей настройки, которые включают контроль чувствительности руля в режиме Race и курсор в режиме сенсорной панели. Имея такой инструмент, всегда удобно использовать его в качестве дополнительных периферийных устройств. В то же время это чертовски круто.
Всем привет! В данной статье я хочу рассказать о том, как можно сделать из своего Adndroid смартфона игровой контроллер (в простонародье — джойстик) для обычного ПК, а именно руль.
Описание задачи
Поведение руля будет эмулироваться с помощью акселерометра. Для этого ведется непрерывное сканирование пространственных координат и эмпирическим путем подбираются границы для каждого направления движения. Исходя из этих данных в реальном времени генерируются сочетания игровых клавиш. Например: W — вперед, WA — вперед и влево и т. д.
Для доставки этих данных на ПК должен быть запущен сервер, который принимает входящие команды и эмулирует нажатия соответствующих клавиш. Сервер можно сделать однопоточным, чтобы подключался только один смартфон. Соединение будет осуществляться по Wi-Fi.
А теперь самое интересное…
Сервер
- while ( true )
- std::cout << "Wait for connection. \n" ;
- try
- socket = server.Accept();
- > catch ( const char *error )
- std::cout << error << std:: 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" ;
- >
- void pressKeys( char key1, char key2 )
- // отжать предыдущие клавиши
- for ( std::map<char, int>::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 );
- >
Клиент
Задача клиента — подключится к серверу и посылать комбинации клавиш для нажатия. Для этого используется акселерометр. Наша задача — получить пространственные координаты телефона. Это делается так:
- 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 делается следующее:
- @Override
- protected void onResume()
- super.onResume();
- sensorManager.registerListener( this , accelerometer, SENSOR_DELAY_NORMAL);
- >
- @Override
- protected void onPause()
- super.onPause();
- sensorManager.unregisterListener( this );
- >
Код для генерации клавиш очень прост. Все границы определялись экспериментальным путем.
- 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. По ощущениям, конечно, не как настоящий руль, но играть можно.К сожалению, видео снять не получилось — в доме одна камера, и то на испытуемом телефоне. В ближайшее время обязательно выложу. Вот как это выглядит на ПК и на смартфоне:
Заключение
Пока главный недостаток в сервере — это глобальное нажатие клавиш, не зависящее от приложения. В дальнейшем будет чем заняться. Еще одна проблема с которой я столкнулся — постоянный разрыв соединения. Не нашел лучшего решения, чем постоянный реконнект при обрыве связи.
Андроид можно использовать как джойстик для игр. Вы можете играть в любимые гонки, авиасимуляторы, шутеры, используя свой андроид девайс как полноценный беспроводной джойстик, по совместительству и пульт управления компьютером!
Установка необходимого ПО
Проделывать все мы будем с помощью приложения PC Remote. Гениальнейшее приложение с большими возможностями китайского происхождения. Итак, сначала нужно скачать приложение и установить на компьютер.
Мы будем рассматривать установку и настройку с помощью Wi-Fi – это максимально удобно и нет проводов (можно подключиться еще по Usb, но тогда основная задумка – удобство – теряется).
Само приложение и ПК клиент вы можете скачать тут:
- Установите программу на Андроид смартфон
- Установите Reciever клиент программы на свой ПК
- Подключите смартфон и пк к одному и тому же роутеру
Запуск и настройка
- Запускаем оба клиента программы на Пк и Андроиде
- На андроид смартфоне в самом низу нажимаем на поле
Поздравляю, устройства связаны и готовы к использованию, теперь остается выбрать режим джойстика и приступать к игре. Программа предлагает много вариантов управления:
- андроид как [b]руль для гонок (с поддержкой G-сенсора – то есть управление с помощью наклона телефона)
- телефон как джойстик с 2-мя стиками для управления и 12 программируемыми кнопками
- андроид телефон как геймпад для шутеров (стикер для поворота и ходьбы, программируемые кнопки и поворот экрана в пустом поле)
- планшет или телефон как джойстик для авиасимуляторов.
Настройка управления в игре
Запускаем любимую игру и заходим в настройки управления. Многие современные игры предлагают сразу выбрать управление клавиатурой и мышкой или джойстиком. В таком варианте выбираем джойстик и, если есть варианты, выбираем Monect. После этого нужно настроить под себя каждую кнопку джойстика на выполнение определенных действий. В каждой игре это индивидуально, поэтому останавливаться на этом не будем.
Если игра не предусматривает управление геймпадом, то можно попробовать в настройках клавиатуры задать наклоны и кнопки для каждого действия. Также есть дополнительные сервисы, которые преобразуют действия джойстика на соответствующие кнопки клавиатуры.
В этой статье мы узнали, что андроид можно использовать как джойстик для игр. Вы можете играть в любимые гонки, авиасимуляторы, шутеры,используя свой телефон или планшет на андроид как джойстик, руль или геймпад.
Если статья для вас была интересной, нажимайте на кнопочки социальных сетей, для того, чтоб рассказать о ней своим друзьям.
Читайте также: