다음을 통해 공유


입력 시뮬레이션 서비스 - MRTK2

MRTK 입력 시뮬레이션

MRTK의 입력 시뮬레이션을 사용하면 디바이스를 빌드하고 배포하지 않고도 Unity 편집기에서 다양한 유형의 상호 작용을 테스트할 수 있습니다. 이를 통해 설계 및 개발 프로세스에서 아이디어를 빠르게 반복할 수 있습니다. 키보드와 마우스 조합을 사용하여 시뮬레이션된 입력을 제어합니다.

입력 시뮬레이션 서비스는 Unity 편집기에서 사용할 수 없는 디바이스 및 플랫폼의 동작을 에뮬레이트합니다. 예제는 다음과 같습니다.

  • HoloLens 또는 VR 디바이스 헤드 추적
  • HoloLens 손 제스처
  • HoloLens 2 연결된 손 추적
  • HoloLens 2 시선 추적
  • VR 디바이스 컨트롤러

경고

Unity의 XR 홀로그램 에뮬레이션 에뮬레이션 > 모드 = "편집기에서 시뮬레이션"을 사용할 때는 작동하지 않습니다. Unity의 편집기 내 시뮬레이션은 MRTK의 입력 시뮬레이션에서 제어합니다. MRTK 입력 시뮬레이션 서비스를 사용하려면 XR 홀로그램 에뮬레이션을 에뮬레이션 모드 = "없음"으로 설정해야 합니다.

MRTK 입력 시뮬레이션을 사용하는 방법

입력 시뮬레이션은 MRTK와 함께 제공되는 프로필에서 기본적으로 사용하도록 설정됩니다. 재생 단추를 클릭하면 입력 시뮬레이션이 지원된 장면을 실행할 수 있습니다.

  • W, A, S, D, Q, E 키를 눌러 카메라를 이동합니다.
  • 마우스 오른쪽 단추를 누른 채 마우스를 움직여 주위를 둘러봅니다.
  • 시뮬레이션된 손을 들어 가져오려면 스페이스 바(오른손) 또는 왼쪽 Shift 키(왼손) 를 누릅니다.
  • 시뮬레이션된 손을 뷰에 유지하려면 T 또는 Y 키를 누릅니다.
  • 시뮬레이션된 손을 회전하려면 Ctrl 키를 길게 누르고 마우스를 이동합니다.

편집기 입력 시뮬레이션 치트 시트에서

HandInteractionExamples 장면에서 왼쪽 Ctrl + H 를 눌러 입력 시뮬레이션 컨트롤이 있는 치트 시트를 표시합니다.

MRTK 입력 시뮬레이션 치트 시트

입력 시뮬레이션 서비스 사용

입력 시스템 데이터 공급자 구성에서 입력 시뮬레이션 서비스는 다음과 같이 구성할 수 있습니다.

  • 형식Microsoft.MixedReality.Toolkit.Input > InputSimulationService여야 합니다.
  • 기본적으로 지원되는 플랫폼 에는 서비스가 키보드 및 마우스 입력을 사용하기 때문에 모든 편집기 플랫폼이 포함됩니다.

참고

원하는 대상을 포함하도록 지원되는 플랫폼 속성을 변경하여 독립 실행형과 같은 다른 플랫폼 엔드포인트에서 입력 시뮬레이션 서비스를 사용할 수 있습니다.
입력 시뮬레이션 지원 플랫폼

카메라 컨트롤

헤드 이동은 입력 시뮬레이션 서비스에서 에뮬레이트할 수 있습니다.

카메라 회전

  1. 뷰포트 편집기 창 위로 마우스를 가져옵니다. 단추 누름이 작동하지 않는 경우 창을 클릭하여 입력 포커스를 지정해야 할 수 있습니다.
  2. 마우스 모양 단추를 길게 누릅니다(기본값: 마우스 오른쪽 단추).
  3. 뷰포트 창에서 마우스를 이동하여 카메라를 회전합니다.
  4. 스크롤 휠을 사용하여 카메라를 보기 방향으로 굴려 보세요.

입력 시뮬레이션 프로필에서 마우스 모양 속도 설정을 변경하여 카메라 회전 속도를 구성할 수 있습니다.

또는 Look Horizontal/Look Vertical 축을 사용하여 카메라를 회전합니다(기본값: 게임 컨트롤러 오른쪽 엄지스틱).

카메라 이동

가로 이동 세로/ 축 사용하여 카메라를 이동합니다(기본값: WASD 키 또는 게임 컨트롤러 왼쪽 엄지스틱).

카메라 위치 및 회전 각도는 도구 창에서도 명시적으로 설정할 수 있습니다. 다시 설정 단추를 사용하여 카메라를 기본값으로 다시 설정할 수 있습니다.

컨트롤러 시뮬레이션

입력 시뮬레이션은 에뮬레이트된 컨트롤러 디바이스(예: 모션 컨트롤러 및 손)를 지원합니다. 이러한 가상 컨트롤러는 단추 또는 잡기 가능한 개체와 같은 일반 컨트롤러를 지원하는 모든 개체와 상호 작용할 수 있습니다.

컨트롤러 시뮬레이션 모드

입력 시뮬레이션 도구 창에서 기본 컨트롤러 시뮬레이션 모드 설정은 세 가지 고유 입력 모델 간에 전환됩니다. 이 기본 모드는 입력 시뮬레이션 프로필에서도 설정할 수 있습니다.

  • 관절형 손: 관절 위치 데이터를 사용하여 완전히 관절이 있는 손 디바이스를 시뮬레이션합니다.

    HoloLens 2 상호 작용 모델을 에뮬레이트합니다.

    손의 정확한 위치를 기반으로 하거나 터치를 사용하는 상호 작용은 이 모드에서 시뮬레이션할 수 있습니다.

  • 손 제스처: 에어 탭 및 기본 제스처를 사용하여 간소화된 손 모델을 시뮬레이션합니다.

    HoloLens 상호 작용 모델을 에뮬레이트합니다.

    포커스는 응시 포인터를 사용하여 제어됩니다. 에어 탭 제스처는 단추와 상호 작용하는 데 사용됩니다.

  • 모션 컨트롤러: 굴절된 손과의 먼 상호 작용과 유사하게 작동하는 VR 헤드셋과 함께 사용되는 모션 컨트롤러를 시뮬레이션합니다.

    컨트롤러 상호 작용 모델을 사용하여 VR 헤드셋을 에뮬레이트합니다.

    트리거, 잡기 및 메뉴 키는 키보드 및 마우스 입력을 통해 시뮬레이션됩니다.

컨트롤러 이동 시뮬레이션

왼쪽/오른쪽 컨트롤러 조작 키(기본값: 왼쪽 컨트롤러의 경우 왼쪽 Shift, 오른쪽 컨트롤러의 경우 공간)를 길게 눌러 두 컨트롤러를 제어합니다. 조작 키를 누르면 컨트롤러가 뷰포트에 표시됩니다. 조작 키가 해제되면 짧은 컨트롤러 숨기기 시간 제한 후에 컨트롤러가 사라집니다.

입력 시뮬레이션 도구 창에서 카메라를 기준으로 또는 왼쪽/오른쪽 컨트롤러 키 토글(기본값: 왼쪽의 경우 T, 오른쪽은 Y)을 눌러 컨트롤러를 켜고 고정할 수 있습니다. 토글 키를 다시 눌러 컨트롤러를 다시 숨깁니다. 컨트롤러를 조작하려면 왼쪽/오른쪽 컨트롤러 조작 키를 보유해야 합니다. 왼쪽/오른쪽 컨트롤러 조작 키를 두 번 탭하면 컨트롤러를 켜고 끌 수도 있습니다.

마우스 이동은 보기 평면에서 컨트롤러를 이동합니다. 컨트롤러는 마우스 휠을 사용하여 카메라로 더 이동하거나 더 가깝게 이동할 수 있습니다.

마우스를 사용하여 컨트롤러를 회전하려면 왼쪽/오른쪽 컨트롤러 조작 키 (왼쪽 시프트 또는 공간) 컨트롤러 회전 단추 (기본값: 왼쪽 Ctrl 단추)를 모두 누른 다음 마우스를 이동하여 컨트롤러를 회전합니다. 컨트롤러 회전 속도는 입력 시뮬레이션 프로필에서 마우스 컨트롤러 회전 속도 설정을 변경하여 구성할 수 있습니다.

입력 시뮬레이션 도구 창에서 손을 기본값으로 다시 설정하는 등 모든 손 배치를 변경할 수도 있습니다.

추가 프로필 설정

  • 컨트롤러 깊이 승수 는 마우스 스크롤 휠 깊이 이동의 민감도를 제어합니다. 숫자가 클수록 컨트롤러 확대/축소 속도가 빨라질 수 있습니다.
  • 기본 컨트롤러 거리는 카메라에서 컨트롤러의 초기 거리입니다. 다시 설정 단추 컨트롤러를 클릭하면 컨트롤러도 이 거리에 배치됩니다.
  • 컨트롤러 지터 양은 컨트롤러에 임의의 동작을 추가합니다. 이 기능을 사용하여 디바이스에서 부정확한 컨트롤러 추적을 시뮬레이션하고 노이즈 입력과 상호 작용이 제대로 작동하는지 확인할 수 있습니다.

손 제스처

손가락 모으기, 잡기, 찌르는 등의 손 제스처 를 시뮬레이션할 수도 있습니다.

  1. 왼쪽/오른쪽 컨트롤러 조작 키(왼쪽 시프트 또는 공간)를 사용하여 손 컨트롤 사용

  2. 조작하는 동안 마우스 단추를 길게 눌러 손 제스처를 수행합니다.

각 마우스 단추를 매핑하여 왼쪽/가운데/오른쪽 마우스 손 제스처 설정을 사용하여 손 모양을 다른 제스처로 변환할 수 있습니다. 기본 손 제스처는 단추를 누르지 않을 때 손 모양입니다.

참고

손가락 모으기 제스처는 이 시점에서 "선택" 작업을 수행하는 유일한 제스처입니다.

일회용 조작

  1. 왼쪽/오른쪽 컨트롤러 조작 키(왼쪽 시프트 또는 공간)를 길게 누릅니다.
  2. Point at 개체
  3. 마우스 단추를 길게 눌러 꼬집기
  4. 마우스를 사용하여 개체 이동
  5. 마우스 단추를 놓아 상호 작용 중지

양손 조작

두 손으로 동시에 개체를 조작하려면 영구 손 모드를 사용하는 것이 좋습니다.

  1. 토글 키(T/Y)를 눌러 양손을 전환합니다.
  2. 한 번에 한 손 조작:
    1. 스페이스바를 잡고 오른손을 제어합니다.
    2. 개체를 잡을 위치로 손 이동
    3. 마우스 왼쪽 단추를 눌러 손가락 모으기 제스처를 활성화합니다.
    4. 오른손 제어를 중지하려면 공간을 놓습니다. 손은 제자리에 고정되고 더 이상 조작되지 않으므로 손가락 모으기 제스처에 잠깁니다.
  3. 다른 손으로 프로세스를 반복하여 동일한 개체를 두 번째 지점에서 잡습니다.
  4. 이제 양손이 동일한 개체를 잡고 있으므로 두 손 조작을 수행하도록 둘 중 하나를 이동할 수 있습니다.

GGV(응시, 제스처 및 음성) 상호 작용

기본적으로 GGV 상호 작용은 편집기에서 사용하도록 설정되어 있지만 장면에 관절이 있는 손은 없습니다.

  1. 카메라를 회전하여 상호 작용 가능한 개체(마우스 오른쪽 단추)에서 응시 커서를 가리킵니다.
  2. 마우스 왼쪽 단추를 클릭하고 길게 눌러 상호 작용
  3. 카메라를 다시 회전하여 개체 조작

이 옵션은 입력 시뮬레이션 프로필 내에서 손 없는 입력 사용 옵션을 전환하여 해제할 수 있습니다.

또한 GGV 상호 작용에 시뮬레이션된 손을 사용할 수 있습니다.

  1. 입력 시뮬레이션 프로필에서 손 시뮬레이션 모드제스처로 전환하여 GGV 시뮬레이션 사용
  2. 카메라를 회전하여 상호 작용 가능한 개체(마우스 오른쪽 단추)에서 응시 커서를 가리킵니다.
  3. 스페이스바를 잡고 오른손을 제어합니다.
  4. 마우스 왼쪽 단추를 클릭하고 길게 눌러 상호 작용
  5. 마우스를 사용하여 개체 이동
  6. 마우스 단추를 놓아 상호 작용 중지

텔레포트 이벤트 발생

입력 시뮬레이션에서 텔레포트 이벤트를 발생하려면 입력 시뮬레이션 프로필에서 손 제스처 설정을 구성하여 하나는 Teleport 시작 제스처를 수행하고 다른 하나는 텔레포트 끝 제스처를 수행하도록 합니다. Teleport 시작 제스처는 텔레포트 포인터를 표시하고, Teleport End 제스처는 텔레포트 작업을 완료하고 사용자를 이동합니다.

결과 텔레포트의 y 위치는 y축을 따라 카메라의 변위에 따라 달라집니다. 편집기에서 기본적으로 0이므로 QE 키를 사용하여 적절한 높이로 조정합니다.

입력 시뮬레이션 텔레포트 설정

모션 컨트롤러 상호 작용

시뮬레이션된 모션 컨트롤러는 관절이 있는 손과 동일한 방식으로 조작할 수 있습니다. 상호 작용 모델은 트리거, 잡기 및 메뉴 키가 각각 왼쪽 마우스 단추, GM 키에 매핑되는 동안 관절식 손의 먼 상호 작용과 유사합니다.

시선 추적

입력 시뮬레이션 프로필에서 눈 위치 시뮬레이션 옵션을 확인하여 시선 추적 시뮬레이션을 사용하도록 설정할 수 있습니다. GGV 또는 모션 컨트롤러 스타일 상호 작용과 함께 사용하면 안 됩니다(따라서 기본 컨트롤러 시뮬레이션 모드명료한 손으로 설정되어 있는지 확인).

입력 시뮬레이션 도구 창

Mixed Reality>도구 키트>유틸리티>입력 시뮬레이션 메뉴에서 입력 시뮬레이션 도구 창을 사용하도록 설정합니다. 이 창은 재생 모드 중에 입력 시뮬레이션의 상태에 대한 액세스를 제공합니다.

뷰포트 단추(선택 사항)

기본 손 배치를 제어하는 편집기 내 단추의 프리팹은 표시기 프리팹 아래의 입력 시뮬레이션 프로필에 지정할 수 있습니다. 이는 선택적 유틸리티이며 입력 시뮬레이션 도구 창에서 동일한 기능에 액세스할 수 있습니다.

참고

뷰포트 표시기가 기본적으로 사용하지 않도록 설정됩니다. 현재 Unity UI 상호 작용을 방해할 수 있는 경우가 있습니다. 문제 #6106을 참조하세요. 사용하도록 설정하려면 InputSimulationIndicators 프리팹을 표시기 프리팹에 추가합니다.

손 아이콘은 시뮬레이션된 손의 상태를 표시합니다.

  • 추적되지 않은 손 아이콘 손이 추적되지 않습니다. 손을 사용하려면 클릭합니다.
  • 추적된 손 아이콘 손은 추적되지만 사용자가 제어하지는 않습니다. 손을 숨기려면 클릭합니다.
  • 제어된 손 아이콘 손은 사용자가 추적하고 제어합니다. 손을 숨기려면 클릭합니다.
  • 손 다시 설정 아이콘 손을 기본 위치로 다시 설정하려면 클릭합니다.

추가 정보