Форум программистов, компьютерный форум CyberForum.ru

Game порт. или не Game порт - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Четырёхгранник
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 5
28.05.2013, 12:04     Game порт. или не Game порт #1
Добрый день!
Конструирую свой игровой девайс (корабельный штурвал). Суть - вращаемый вал, непосредственно над ним лазерная мышь. С помощью JMouse мышь эмулируется как стандартный джойстик.
Проблема: Необходимо адаптировать "руль" к игре его не поддерживающую, то есть программа эмулирует нажатия клавиш управления клавиатуры с частотой пропорциональной углу поворота штурвала. Готовых решения способных на это не нашёл.
Вопрос: подскажите, пожалуйста, куда рыть? Насколько я понимаю JMouse эмулирует джойстик подключённый к Game порту, можно ли получить с него данные о положении джойстика?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2013, 12:04     Game порт. или не Game порт
Посмотрите здесь:

C++ USB порт
C++ Game Develop
C++ 2D Game
Game "Угадай число" как зделать запрет на "букви" ???? C++
C++ com порт
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
stima
429 / 284 / 16
Регистрация: 22.03.2011
Сообщений: 923
Завершенные тесты: 1
28.05.2013, 13:39     Game порт. или не Game порт #2
Цитата Сообщение от Четырёхгранник Посмотреть сообщение
нажатия клавиш управления клавиатуры
Не думаю что это можно решить с помощью JMOUSE.

Но есть идея.
1. Вообще думаю game порт лучше заменить на usb. Как библиотеку взаимосвязи использовать opensource http://www.libusb.org/
2. Независимо от порта Вам нужен будет свой протокол передачи, чтобы "руль запаковывал" данные, а "программа на компе распаковывала".
3. После запуска игры запускается ваша программа. "Садитесь слушать" usb порт. Когда с порта придет пакет, расшифровывайте его и симулируете нажатие (можно попробовать обычным postом на дескриптор окна игры или каким-то более низкоуровневым потипу keybd_event, SendInput и т.д.).
Четырёхгранник
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 5
28.05.2013, 14:17  [ТС]     Game порт. или не Game порт #3
Цитата Сообщение от stima Посмотреть сообщение
Не думаю что это можно решить с помощью JMOUSE.
То ли я Вас не понял, то ли Вы меня. JMOUSE и не решает этой проблемы, JMOUSE лишь создаёт для меня джойстик из мыши. А я хочу написать программу которая будет "нажимать" кнопки управления. Проблема в том как программе получить данные о состоянии джойстика (нужно то всего одно значение). Джойстик определяется как HID устройство, функционирует, калибруется.

Вторая (видимо основная) проблема - я далеко не программист(хотя интересуюсь), и написать полновесный драйвер для меня крутовато. Вместе с тем, мне кажется я в шаге до финала - JMOUSE делает главное - создаёт для меня джойстик из дополнительной мыши, которая не мешает основной(со всеми драйверами и тд.). Мне нужно лишь откуда-то вытащить значение этой оси.
stima
429 / 284 / 16
Регистрация: 22.03.2011
Сообщений: 923
Завершенные тесты: 1
28.05.2013, 14:27     Game порт. или не Game порт #4
Я думаю. Вам вообще не стоит ничего писать). Погуглите ppmouse & ppjoy. Я глазом глянул, должно хватить под ваши нужды.
Четырёхгранник
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 5
28.05.2013, 14:28  [ТС]     Game порт. или не Game порт #5
http://habrahabr.ru/post/124851/ нашёл такой вариант. Программа отображает название джойстика, но данных нет. Может ли ли это быть связано с тем что(на сколько я понимаю) JMouse использует Game порт?
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
28.05.2013, 14:34     Game порт. или не Game порт #6
в unity я где-то видел скрипты для подключения к игре различных устройств. всё в открытом виде, но зачастую на шарпе или на яве.
но суть в том, что этот скрипт, который будет перехватывать любые данные с устройства(вашей якобы мышки) и эмулировать нажатия клавиш(действияв игре). минус - будет работать только в игре на самом этом движке.
и второй минус - я не помню ни где я это видел, ни названия этих скриптов. но это проплывало у меня где-то перед глазами
Четырёхгранник
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 5
28.05.2013, 16:16  [ТС]     Game порт. или не Game порт #7
Цитата Сообщение от stima Посмотреть сообщение
Я думаю. Вам вообще не стоит ничего писать). Погуглите ppmouse & ppjoy. Я глазом глянул, должно хватить под ваши нужды.
сейчас внимательнее посмотрю

Добавлено через 1 час 36 минут
Цитата Сообщение от stima Посмотреть сообщение
Я думаю. Вам вообще не стоит ничего писать). Погуглите ppmouse & ppjoy. Я глазом глянул, должно хватить под ваши нужды.
Ну как и в первый раз я не нашёл того что нужно. Смотрел ppjoy, пробовал joy to key. Они эмулируют джойстик через нажатия клавиатуры, но не умеют делать это дифференцированно. То есть возможны только 2 варианта - или джойстик вертикально и клавиши управления отжаты, или джойстик наклонён(вне зависимости от угла) - клавиши управления зажаты. Исчезает вся чуть рулевого управления. Я же хочу сделать чтобы клавиши управления были зажаты только в крайних положениях джойстика, а в промежуточных нажимались с паузами различной длительности.
stima
429 / 284 / 16
Регистрация: 22.03.2011
Сообщений: 923
Завершенные тесты: 1
28.05.2013, 16:42     Game порт. или не Game порт #8
Насколько я понял (хотя не буду утверждать)
An analog value read from a joystick with the direction reversed. ('A xx rev' in the drop-down list.)
Это то что Вам надо.

п.с. Иначе остается велосипедить)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2013, 17:37     Game порт. или не Game порт
Еще ссылки по теме:

C++ Game developing на C++
C++ Com-порт в Turbo C++ 3.0
Параллельное пограммирование MPI (Game of Life ) C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Четырёхгранник
0 / 0 / 0
Регистрация: 28.05.2013
Сообщений: 5
28.05.2013, 17:37  [ТС]     Game порт. или не Game порт #9
Цитата Сообщение от stima Посмотреть сообщение
Насколько я понял (хотя не буду утверждать)

Это то что Вам надо.

п.с. Иначе остается велосипедить)
Насколько я понимаю из контекста, тут речь идёт об настройке сигнала который будет восприниматься от джойстика системой. То есть это настройка между реальным джойстиком и PPjoy. У меня это уже настроено - я вижу в системе аналоговый джойстик. Но игра его не поддерживает и не воспринимает. А клавиатура, как известно, исключительно дискретное устройство. По-этому мне нужен буквально программный АЦП. И единственное чего мне для него не хватает - это способ узнать угол отклонения руля.
Yandex
Объявления
28.05.2013, 17:37     Game порт. или не Game порт
Ответ Создать тему
Опции темы

Текущее время: 14:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru