Joker_a78 Опубликовано: 22 февраля 2018 Опубликовано: 22 февраля 2018 Может кто подскажет прогу, которая может меня меня кнопки. Хочу SHIFT поменять на пробел или кнопку мыши (для обзора). А ещё если такое возможно, при отпуске клавиши мыши или клавы, чтобы взгляд центровался.
NIRBIS Опубликовано: 11 марта 2018 Опубликовано: 11 марта 2018 On 22.02.2018 at 7:22 PM, Joker_a78 said: Может кто подскажет прогу, которая может меня меня кнопки. Хочу SHIFT поменять на пробел или кнопку мыши (для обзора). Для клавиатуры использую https://archive.codeplex.com/?p=sharpkeys. Для джоя есть https://joytokey.net/en/ On 22.02.2018 at 7:22 PM, Joker_a78 said: А ещё если такое возможно, при отпуске клавиши мыши или клавы, чтобы взгляд центровался. Тут либо покурить настройку видов в самой игре, там вроде есть возврат к центру. Либо использовать стороннюю прогу. Пользуюсь вот этим: http://andersmalmgren.github.io/FreePIE/, но надобно чутка разбираться в программировании( там Python). Прога умеет изображать джойстик или фритрек. Можно при нажатии на клавишу мыши запоминать ее(мыши) положение - это будет центр. Относительный сдвиг при зажатой клавише пересчитывать в координаты фритрека. При отжатии возвращать координаты фритрека в ноль. Минусы: 1) Не понял как в ней правильно инициализировать протокол фритрека для бзх. В тундре цепляется и работает сразу, в бзх нужно начала запустить opentrack. 2) Документации практически нет. Примеры только на форуме и далеко не все есть.
NIRBIS Опубликовано: 11 марта 2018 Опубликовано: 11 марта 2018 (изменено) Собственно все оказалось намного проще. Ставите OpenTrack, и FreePie. В OpenTrack выставляете: Spoiler FreePie скармливаете скрипт: Spoiler import socketimport struct if starting: opentrack_UDPsender = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) global scaleX, scaleY scaleX = 0.2 scaleY = 0.2 global yaw, pitch, roll, x, y, z x , y , z , yaw , pitch , roll = 0,0,0,0,0,0 # если нажали левую кнопку мыши - начинаем крутить головой, если отжали - сброс в центрif(mouse.leftButton) : yaw += mouse.deltaX * scaleX pitch += mouse.deltaY * scaleYelse: yaw = 0 pitch = 0# отсылка всех осей пакетом UDP на порт который слушает Opentrack opentrack_UDPsender.sendto(struct.pack("dddddd",x,y,z,yaw,pitch,roll), ("127.0.0.1", 6666))# для осылки в FaceTrackNoir нужно заменить на struct.pack("ddddddl",x,y,z,yaw,pitch,roll,1)# выводим диагностику в окно Watch diagnostics.watch(yaw) diagnostics.watch(pitch) diagnostics.watch(roll) diagnostics.watch(x) diagnostics.watch(y) diagnostics.watch(z) Жмякаете кнопку "запустить" в OpenTrack. Жмякаете кнопку F5 в FreePie(скрипт станет серым). Теперь, по нажатию левой кнопки мыши , вы начнете управлять взглядом (начнет двигаться осьминожка). Как только кнопку отпустите - произойдет возврат в центр. Естественно кнопка активации может быть любой. Переделаю себе схожим образом, чтобы не мучиться с инициализацией фритрека. Изменено 11 марта 2018 пользователем NIRBIS
Joker_a78 Опубликовано: 23 апреля 2020 Автор Опубликовано: 23 апреля 2020 11.03.2018 в 23:15, NIRBIS сказал: Собственно все оказалось намного проще. Ставите OpenTrack, и FreePie. В OpenTrack выставляете: Показать содержимое FreePie скармливаете скрипт: Показать содержимое import socketimport struct if starting: opentrack_UDPsender = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) global scaleX, scaleY scaleX = 0.2 scaleY = 0.2 global yaw, pitch, roll, x, y, z x , y , z , yaw , pitch , roll = 0,0,0,0,0,0 # если нажали левую кнопку мыши - начинаем крутить головой, если отжали - сброс в центрif(mouse.leftButton) : yaw += mouse.deltaX * scaleX pitch += mouse.deltaY * scaleYelse: yaw = 0 pitch = 0# отсылка всех осей пакетом UDP на порт который слушает Opentrack opentrack_UDPsender.sendto(struct.pack("dddddd",x,y,z,yaw,pitch,roll), ("127.0.0.1", 6666))# для осылки в FaceTrackNoir нужно заменить на struct.pack("ddddddl",x,y,z,yaw,pitch,roll,1)# выводим диагностику в окно Watch diagnostics.watch(yaw) diagnostics.watch(pitch) diagnostics.watch(roll) diagnostics.watch(x) diagnostics.watch(y) diagnostics.watch(z) Жмякаете кнопку "запустить" в OpenTrack. Жмякаете кнопку F5 в FreePie(скрипт станет серым). Теперь, по нажатию левой кнопки мыши , вы начнете управлять взглядом (начнет двигаться осьминожка). Как только кнопку отпустите - произойдет возврат в центр. Естественно кнопка активации может быть любой. Переделаю себе схожим образом, чтобы не мучиться с инициализацией фритрека. Спасибо. На тот момент надоело воевать с игрой и я тупо вернулся в Тундру) сейчас попробую
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти сейчас