RemoteFX를 사용하여 RDP를 통해 3D 게임에서 이상한 마우스 움직임


11

RDP에 연결할 때 기본 마우스 드라이버가 3D 게임과 같은 특정 응용 프로그램에서 제대로 작동하지 않는 것 같습니다.

내 설정 :

  • Hyper-V 및 강력한 그래픽 카드가 포함 된 Windows 2012 R2
  • Windows 8.1 Enterprise, RemoteFX 및 vGPU가 구성된 VM
  • 빠른 링크를 통해 RDP와 연결

RemoteFX / vGPU 덕분에 3D 비디오 성능이 뛰어납니다. RDP를 통해 게임을 플레이 할 수 있습니다 (마우스 용이 아닌 경우).

문제는 게임에있을 때 마우스가 매우 열광적으로 반응하지만 3D 환경 밖에서는 완전히 정상이라는 것입니다. (예를 들어 게임 메뉴에서 마우스는 괜찮습니다).

실험과 온라인 검색을 통해 가장 많은 것을 알 수 있습니다 (다른 사람들은 같은 문제가 있지만 해결책을 찾지 못했습니다)-마우스 드라이버가 움직임 대신 상대 위치를 전송하는 것 같습니다.
이 "이론"은 마우스 포인터가 RDP 창으로 들어오고 나가는 방법에 대한 설명과 밀접하게 관련되어 있습니다 (예 : 왼쪽 창에서 오른쪽으로 다시 이동). 즉, 위치 기반 마우스 및 모션 기반이 아님) 및 게임 내 동작과 함께-예를 들어 마우스를 왼쪽으로 무리로 움직이면보기가 왼쪽으로 크게 점프합니다. 그런 다음 오른쪽으로 조금 움직이지만 여전히 중심으로 돌아 가지 않습니다 (즉, 마우스가 여전히 중심의 왼쪽에 있지만 오른쪽으로 이동하면) 계속 왼쪽으로 이동합니다. (즉, 여전히 "오른쪽으로 이동"대신 "중앙에서 왼쪽으로"위치를보고하는 것 같습니다).

나는 이것에 대한 어떤 종류의 해결책을 찾고자합니다. 아이디어가 있습니까?


흠. 더 게임 중심의 원격 액세스 플랫폼을 실험하는 것이 옵션입니까? 엔비디아 스트리밍 및 스팀 스트리밍은 나를 위해 잘 작동합니다 (기가비트 이상). 또한 상대 위치는 태블릿 스타일 마우스를 상기시킵니다.
Journeyman Geek

몇 년 후 미쳤지 만 여전히 수정되지 않았습니다. :(
Apache

답변:


8

와, 수많은 연구와 실패한 시도 후에, 나는 이것을 실제로 해결했다!
글쎄, 대부분 해결했습니다. 기능적이지만 단점이 없습니다.

@JourneymanGeek의 답변, 특히 그가 연결 한 게시물 덕분에 리드를 따를 수 있었고 결국 원격 데스크톱 클라이언트 ActiveX에 의해 구현 된 많은 인터페이스 중에서 그 중 하나가 RelativeMouseMode 속성을 지원한다는 것을 알았습니다 ! 정확히 내가 필요한 것과 비슷하게 들리면 RDP가 상대적 마우스 움직임을 지원하게됩니다!

그러나이 MSDN 포럼 게시물 에서 "RelativeMouseMode는 RDP RDSH / RDVH 시나리오에서 지원되지 않으며 사용해서는 안됩니다"라고 언급했지만 실제로는 실제 프로덕션 환경이 아니며 사용하기에 좋았습니다. 지원되지 않는 기능입니다. 또한 문서화가 잘되지 않았지만 필요한 것이있는 것 같습니다 .StackOverflow에 대한이 질문 도 가능하다는 희망을주었습니다.

따라서 "... 안전하지 않은"인터페이스 속성을 설정하여 ActiveX 컨트롤을 호스팅하는 간단한 WinForms 앱을 구현하도록 설정했습니다.


"지원되지 않음"으로 밝혀졌지만 이번에는 Microsoft가 "작동하지 않습니다"라는 의미였습니다.
글쎄, 그렇다면, 이것은 SO 질문 일 것입니다. 미안하지만 (어딘가에 문서화하는 것이 좋다고 생각합니다 ...)


그러나 RDP 프로토콜을 파헤치는 동안 RemoteFX USB 리디렉션을 살펴 보았습니다. 마우스, 키보드, 프린터와 같은 기본 입력 장치가 명시 적으로 차단 되었기 때문에 막 다른 골목처럼 보였습니다. USB 리디렉션 메커니즘에서 :

기본적으로 위에서 언급 한 범주의 장치는 고급 장치 리디렉션 방법을 사용하여 원격 세션에서 액세스 할 수 있습니다. 이러한 리디렉션 방법을 사용하면 대부분의 사용자 시나리오에서 최적의 성능과 장치의 이전 버전과의 호환성이 가능합니다. 따라서 이러한 장치는 RemoteFX USB 리디렉션을 통해 제공되지 않습니다.

결과적으로이 블록에 대한 재정의 메커니즘이 있다는 것이 최종 답변입니다.


1 단계 : RemoteFX USB 리디렉션 활성화 http://windowsitpro.com/virtualization/q-how-do-i-enable-remotefx-usb-redirection에 대한 자세한
설명이 있습니다 . 기본적으로 클라이언트 컴퓨터에서 로컬 정책 또는 그룹 정책을 사용 하여 로 설정 하고 사용자 (또는 관리자)에게 권한을 허용합니다. 그런 다음 재부팅하십시오.RemoteFX USB Device RedirectionEnablegpupdate /force

2 단계 : 마우스의 리디렉션 무시를 활성화합니다.
MS KB 기사에서 설명하는 것처럼 USB 리디렉션에 특정 장치 (또는 장치 클래스)를 사용하도록 레지스트리 키를 설정할 수 있습니다.

다시 클라이언트에서

HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows NT \ Terminal Services \ Client \ UsbSelectDeviceByInterfaces

장치 식별자를 사용하여 문자열 값을 추가 할 수 있습니다.
예를 들어이 키 아래에 다음 문자열 값을 추가했습니다.

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

마우스에 따라 다른 식별자 (YMMV)가 필요할 수 있습니다. 그러나 그것부터 시작하십시오.

3 단계 : 마우스를 리디렉션하도록 RDP 클라이언트를 설정합니다.
1 단계의 기사에서 언급했듯이 :

활성화되면 로컬 리소스 탭에 액세스하고 로컬 장치 및 리소스에서 추가를 클릭하면 새로운 기타 지원 RemoteFX USB 장치 설정이 표시됩니다. 이 설정을 사용하면 아래와 같이 바닐라 RDP USB 리디렉션으로 할 수 없었던 여러 유형의 USB 하드웨어를 통해 매핑 할 수 있습니다.

그 아래에 마우스 항목이 표시됩니다. 다음과 같이 약간 모호 할 수 있습니다.

다른 장치 리디렉션

마우스 또는 다른 적절한 항목을 선택하십시오.

그게 다야! 이제 하드웨어 마우스가 VM에 "직접"연결되어 3D 게임이 마우스 드라이버에서 직접 상대적 마우스 움직임을 끌어낼 수 있습니다 (-ish ..)


그러나 언급 한 바와 같이 몇 가지 단점이 있습니다.

  1. 마우스는 RemoteFX의 VM으로 리디렉션됩니다. 즉, 적어도 원격 데스크톱 세션이 열려있는 동안 클라이언트 컴퓨터 에는 더 이상 마우스가 없습니다 .
    가능한 해결책은 두 번째 마우스를 연결하고 그 중 하나만 리디렉션하는 것입니다. (아직 시도하지는 않았지만 정상적으로 작동합니다).

  2. 어떤 이유로 리디렉션 될 때 마우스가 원격 세션에서 커서를 직접 표시하지 않습니다. 여전히 작동하지만 마우스가 가리키는 것을 조준하는 것이 약간 혼란 스럽습니다.
    간단한 해결책은 길이를 줄인 마우스 트레일을 켜는 것입니다. 마우스 트레일
    마우스 위치가 표시되지만 약간 느립니다.

  3. 전반적 으로이 솔루션은 잘 작동하지만 마우스는 여전히 느리고 느립니다.
    당신은 마우스 속도, 포인터 정확도와 놀이를 켤 수 있습니다 (때로는이 도움 실제로 것 OFF 전환), 심지어에서 마우스 가속 레지스트리 설정을 만지작 거릴 HKEY_CURRENT_USER\Control Panel\Mouse( Mouse Speed, MouseThreshold1, 및 MouseThreshold2각각).
    이렇게하면 문제를 완화 할 수 있지만 실제로 해결되지는 않습니다.

따라서 전반적으로 3D 게임도 캐주얼 게임용으로 재생성이 뛰어나지 만 불행히도 트 위치 게임에는 적합하지 않습니다. (필요한 경우 금속을 VHD에 바로 부팅하고 두 옵션을 모두 사용할 수 있습니다.)


다행스럽게도 누군가 가이 정보를 다른 곳에서도 사용할 수 있기를 바랍니다.
나는 말한다 Reinstate Monica

Microsoft Remote DesktopMacBook Pro에서 사용 하고 있습니다. Mac에 대한 재정의 메커니즘이 있습니까?
Brian

@Brian 나는 가장 안개가 낀 적이 없다 :-) 클라이언트 앱이 같은 방식으로 작동합니까? 같은 설정을 찾아보십시오 ...
AviD

3

분명히 remotefx 는 태블릿 스타일의 '절대'입력 모드 만 수행하며 이는 문제의 원인입니다. 변경에 대한 문서를 찾을 수 없습니다.

다른 원격 액세스 모드를 고려해야 할 수도 있습니다-스팀은 나에게 잘 작동합니다 ( 'host'의 nvidia GPU와 다른 쪽의 작은 작은 베이 트레일 상자 사용). 엔비디아는 카드 옵션을 가지고 있지만 실제로 시도하지는 않았습니다.

요컨대, 게임에서 remotefx가 사용하는 입력 모드를 사용하도록 설정할 수 없다면 remotefx로이 문제를 해결할 수있는 확실한 방법은 없습니다.


2

원격 데스크톱은 클라이언트에서 서버로 전송해야하는 마우스 이동 패킷 수를 줄이는 방법으로 절대 마우스 이동을 전송합니다. 이 배열은 대부분의 Windows 응용 프로그램 (이메일, 웹 브라우징 등)에 적합합니다. 많은 2D 게임도 이것으로 충분합니다. 그러나 FPS 게임은 일반적으로 원격 데스크톱이 전송하지 않는 마우스 모양을 제어하기 위해 상대적 마우스 움직임이 필요합니다. 상대적인 마우스 움직임 데이터가 손실되면 게임이 뷰포트를 예기치 않게 회전시킵니다. 이 게임 시나리오를 작동 시키려면 Microsoft가 원격 데스크톱을 수정해야합니다. 그러나 USB 리디렉션이있는 PC 용 XBOX 컨트롤러를 사용하는 것이 대안 일 수 있습니다.


고마워, 나는 일종의 알고, 또한 @Journeyman의 대답을 반복합니다 ...하지만 컨트롤러는 좋은 솔루션입니다 (나를 도와
주지는 않지만
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.