Хаотичное движение мыши в 3D играх по RDP с RemoteFX

кажется, что драйвер мыши по умолчанию при подключении к RDP не работает с некоторыми приложениями, такими как 3D-игры.

Мои настройки:

  • Windows 2012 R2 с Hyper-V и сильной видеокартой
  • VM с Windows 8.1 корпоративная, RemoteFX и vGPU настроен
  • соединение с RDP по быстрой ссылке.

производительность 3D видео велика, благодаря RemoteFX / vGPU. Это определенно позволяет играм быть очень воспроизводится через RDP (если бы не мышь).

проблема в том, что мышь реагирует довольно безумно, когда в игре, но совершенно нормально за пределами 3D-среды. (Например. в меню игры мышь просто прекрасна).

ближайший я мог сказать, как от экспериментов, так и от большого поиска в интернете (у многих других людей была такая же проблема, но решение не найдено) - кажется, что драйвер мыши передает свое относительное местоположение, а не движение.


Этот "теория" хорошо коррелирует с некоторыми пояснениями о том, как курсор прыгает в окно РДП (например, переместить его из окна слева, сзади справа - и он ведет себя прекрасно, т. е. основанные на местоположении мышкой, а не на основе анализа движения), а также с игрового поведения - например, если я переместите мышь в кучу слева, Вид безумно прыгает влево; если я затем переместите его немного вправо, но еще не все пути назад к центру (т. е. мышь по-прежнему слева от центра, но перемещение вправо) продолжает прыгать влево. (I. e. кажется, он все еще сообщает, что это местоположение "слева от центра" вместо "перемещения вправо").

Я надеюсь найти какое-либо решение этого. Идеи кто-нибудь?

18
задан AviD
16.01.2023 2:52 Количество просмотров материала 2412
Распечатать страницу

3 ответа

Ничего себе, после тонны исследований и неудачных попыток, я на самом деле решил это!

Ну,в основном решил-функционально, но не без недостатков.

благодаря ответу @JourneymanGeek, и в частности сообщению, с которым он связался, я смог следовать примеру и в конечном итоге обнаружил, что среди многих интерфейсов, реализованных ActiveX клиента удаленного рабочего стола, один из них поддерживает RelativeMouseMode собственность! Что похоже, именно то, что мне нужно, это заставит RDP поддерживать относительные движения мыши!

однако, я сделал примечание на это MSDN форум сообщение что "RelativeMouseMode не поддерживается в сценариях RDP RDSH/RDVH и не должен использоваться", но я решил, что это не реальная производственная среда, и я был в порядке, используя функцию, которая не поддерживается. Это тоже было плохо задокументировано, но казалось, что у меня есть то, что нужно - этот вопрос на StackOverflow также дал мне надежду, что это выполнимо.

Итак, я приступил к работе по реализации простого приложения WinForms для размещения элемента управления ActiveX с помощью "...Небезопасный " набор свойств интерфейса.


кроме того, что, как оказалось, под "неподдерживаемый", на этот раз Microsoft имел в виду"не работает".

Ну, если бы это было так, это был бы вопрос SO, извините, что привел вас (но я думаю, что хорошо, чтобы он был где-то задокументирован...)


однако, не все было напрасно, во время всего этого копания в протоколе RDP, я посмотрел на перенаправление USB RemoteFX - и это выглядело как тупик, так как основные устройства ввода (такие как мышь, клавиатура, принтер) явно заблокированы от механизма перенаправления USB:

по умолчанию устройства из вышеупомянутых категорий доступны в удаленном сеансе с помощью высокоуровневых методов перенаправления устройств. Эти методы перенаправление обеспечивает оптимальную производительность и обратную совместимость устройства в большинстве пользовательских сценариев. Следовательно, эти устройства не предлагаются через перенаправление USB RemoteFX.

ну, окончательный ответ, как оказалось, заключается в том, что в этом блоке есть механизм переопределения.


Шаг 1. Включите перенаправление USB RemoteFX

Здесь есть хорошая разработка: http://windowsitpro.com/virtualization/q-how-do-i-enable-remotefx-usb-redirection . В основном на клиентском компьютере для установки RemoteFX USB Device Redirection to Enable, и разрешить пользователям (или только администраторам) права. Тогда gpupdate /force и перезагрузка.

Шаг 2: Включите переопределение перенаправления для мыши.

Как это MS KB статья объясняет, вы можете установить раздел реестра, чтобы включить определенное устройство (или класс устройства) для перенаправления USB.

опять на клиенте, под

политика в HKEY_LOCAL_MACHINE\SOFTWARE\корпорация Майкрософт\Windows в НТ\службы терминалов\клиент\UsbSelectDeviceByInterfaces

можно добавить строковое значение с идентификатором устройства.

Например, под этим ключом я добавил следующее строковое значение:

"GUID_DEVINTERFACE_MOUSE"="{378DE44C-56EF-11D1-BC8C-00A0C91405DD}"

в зависимости от мыши, вам может понадобиться другой идентификатор, так что YMMV. Но начните с этого момента.

Шаг 3: Установите клиент RDP для перенаправления мыши.

Как говорится в статье из Шага 1:

после того, как он включен, перейдите на вкладку локальные ресурсы, нажмите Еще в разделе локальные устройства и ресурсы, и вы увидите новый USB поддерживает RemoteFX настройка устройств. Вы можете использовать этот параметр для сопоставления через многие типы оборудования USB, которые вы не могли с перенаправлением USB vanilla RDP, как показано ниже.

под этим вы должны увидеть запись для мыши; это может быть немного неоднозначно, например:

Other devices redirection

выберите мышь (или другую соответствующую запись).

вот именно! Теперь к виртуальной машине "напрямую" подключена аппаратная мышь, которая позволяет 3D-играм вытяните относительные движения мыши непосредственно из драйвера мыши (- ish..)


однако, как уже говорилось, есть некоторые недостатки.

  1. мышь перенаправлены на RemoteFX, что бы ВМ - другими словами, клиент машину больше нет мышь, по крайней мере, пока открыт сеанс удаленного рабочего стола.

    Возможным решением было бы прикрепить 2-ю мышь и перенаправить только одну из них. (Я еще не пробовал это, но он должен работать просто отлично).

  2. по какой-то причине при перенаправлении мышь непосредственно не показывает курсор в удаленном сеансе. Хотя он все еще работает, это делает его немного запутанным, чтобы прицелиться, на что указывает ваша мышь.

    Простое решение состоит в том, чтобы включить следы мыши, с длиной повернул вниз всю дорогу. Mouse trails

    Это будет иметь место мыши показать, но это немного вялым.

  3. в целом, хотя это решение работает хорошо, мышь все еще немного медленная и вялая.

    Вы можете увеличить скорость мыши, играть с точностью указателя (иногда его отключение действительно поможет в этом), и даже крутить параметры реестра ускорения мыши под HKEY_CURRENT_USER\Control Panel\Mouse (Mouse Speed,MouseThreshold1 и MouseThreshold2 соответственно).

    Это поможет смягчить проблему, но на самом деле не устранит ее.

так что в целом, это может сделать даже 3D-игры очень играть-для казуальных игр, к сожалению, не отлично подходит для дергаться игр. (Хотя, если вам нужно, вы можете просто загрузить metal прямо на этот VHD и иметь оба варианта....)

6
отвечен AviD 2023-01-17 10:40

видимо remotefx делает стиль планшета "абсолютные" режимы ввода единственное, что является источником вашей проблемы. Я не могу найти никакой документации по его изменению.

возможно, Вам придется рассмотреть альтернативный режим удаленного доступа-steam хорошо работает для меня (используя графический процессор nvidia на "хосте" и маленькую коробку с тропой на другом конце). У Nvidia есть возможность для своих карт,но я этого не пробовал.

2
отвечен Journeyman Geek 2023-01-17 12:57

удаленный рабочий стол передает движения мыши, как способ уменьшить количество пакетов движения мыши, которые должны быть отправлены от клиента к серверу. Этот механизм хорошо работает для большинства приложений Windows (электронная почта, просмотр веб-страниц и т. д.). Многие 2D игры также хорошо с этим. Тем не менее, FPS-игры обычно требуют относительных движений мыши для управления mouselook, который, к сожалению, не передает удаленный рабочий стол. Потеря относительных данных движения мыши является причиной того, что игра неожиданно поверните область просмотра. Microsoft нужно будет изменить удаленный рабочий стол для того, чтобы сделать этот игровой сценарий работы. Однако использование геймпада XBOX для ПК с перенаправлением USB может оказаться для вас альтернативным.

1
отвечен XBOX Controller 2023-01-17 15:14

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх