MRTK 패키지 - MRTK2

MRTK(Mixed Reality Toolkit)는 Mixed Reality 하드웨어 및 플랫폼에 대한 지원을 제공하여 플랫폼 간 Mixed Reality 애플리케이션 개발을 가능하게 하는 패키지 모음입니다.

MRTK는 자산 (.unitypackage) 패키지 및 Unity 패키지 관리자를 통해 사용할 수 있습니다.

자산 패키지

MRTK 자산(.unitypackage)은 GitHub에서 다운로드할 수 있습니다.

자산 패키지를 사용할 때의 이점은 다음과 같습니다.

  • Unity 2018.4 이상에서 사용 가능
  • MRTK를 쉽게 변경할 수 있습니다.
    • MRTK가 Assets 폴더에 있습니다.

다음은 몇 가지 문제입니다.

  • MRTK는 프로젝트의 Assets 폴더에 속하므로
    • 대규모 프로젝트
    • 컴파일 시간 느리기
  • 종속성 관리 없음
    • 고객은 패키지 종속성을 수동으로 resolve 합니다.
  • 수동 업데이트 프로세스
    • 여러 단계
    • 대용량(3000개 이상의 파일) 소스 제어 업데이트
    • MRTK 변경 내용 손실 위험
  • 예제 패키지를 가져오는 것은 일반적으로 모든 예제를 포함하는 것을 의미합니다.

사용 가능한 패키지는 다음과 같습니다.

이러한 패키지는 GitHub의 소스 코드에서 Microsoft에서 릴리스 및 지원됩니다.

파운데이션 패키지

Mixed Reality Toolkit Foundation은 애플리케이션이 Mixed Reality 플랫폼에서 공통 기능을 활용할 수 있도록 하는 코드 집합입니다.

Pakage FoundationMRTK Foundation 패키지

MRTK Foundation 패키지에는 다음이 포함됩니다.

폴더 구성 요소 Description
MRTK/Core 인터페이스 및 형식 정의, 기본 클래스, 표준 셰이더.
MRTK/코어/공급자 플랫폼 독립적 데이터 공급자
손 추적을 위한 기본 클래스 지원 및 서비스입니다.
InputAnimation 헤드 이동 및 손 추적 데이터 기록을 지원합니다.
InputSimulation 손 및 눈 입력의 편집기 내 시뮬레이션을 지원합니다.
ObjectMeshObserver 3D 모델을 데이터로 사용하는 공간 인식 관찰자입니다.
UnityInput Unity의 입력 API를 통해 구현된 일반적인 입력 디바이스(조이스틱, 마우스 등).
MRTK/공급자 플랫폼별 데이터 공급자
LeapMotion UltraLeap Leap Motion 컨트롤러에 대한 지원.
OpenVR OpenVR 디바이스에 대한 지원.
Oculus 퀘스트와 같은 Oculus 디바이스에 대한 지원.
UnityAR (실험적) 모바일 AR 디바이스에서 MRTK 사용을 사용하도록 설정하는 카메라 설정 공급자입니다.
WindowsMixedReality Microsoft HoloLens 및 몰입형 헤드셋을 포함한 Windows Mixed Reality 디바이스 지원
Windows 음성 및 받아쓰기와 같은 Microsoft Windows 특정 API에 대한 지원.
XR SDK (실험적) Unity 2019.3 이상에서 Unity 의 새로운 XR 프레임워크 를 지원합니다.
MRTK/SDK
실험적 셰이더, 사용자 인터페이스 컨트롤 및 개별 시스템 관리자를 비롯한 실험적 기능
기능 Foundation 패키지를 기반으로 하는 기능입니다.
Profiles Microsoft Mixed Reality 도구 키트 시스템 및 서비스의 기본 프로필입니다.
StandardAssets 공통 자산; 모델, 텍스처, 재질 등
MRTK/SceneSystemResources 장면 시스템에서 사용하는 자산 및 리소스
MRTK/서비스
BoundarySystem VR 경계 지원을 구현하는 시스템입니다.
CameraSystem 카메라 구성 및 관리를 구현하는 시스템입니다.
DiagnosticsSystem 애플리케이션 진단 구현하는 시스템(예: 시각적 프로파일러).
InputSystem 사용자 입력 액세스 및 처리에 대한 지원을 제공하는 시스템입니다.
SceneSystem 다중 장면 애플리케이션 지원을 제공하는 시스템입니다.
SpatialAwarenessSystem 사용자 환경에 대한 인식을 지원하는 시스템입니다.
TeleportSystem 원격 전송에 대한 지원을 제공하는 시스템(점프 환경 이동).
MRTK/StandardAssets MRTK 표준 셰이더, 기본 자료 및 혼합 현실 환경을 위한 기타 표준 자산

확장 패키지

선택적 Microsoft.MixedRealityToolkit.Unity.Extensions 패키지에는 Microsoft Mixed Reality 도구 키트의 기능을 확장하는 추가 서비스가 포함되어 있습니다.

참고

확장 패키지에는 Microsoft.MixedRealityToolkit.Unity.Foundation이 필요합니다.

폴더 구성 요소 Description
MRTK/확장
HandPhysicsService 관절 손에 물리학 지원을 추가하는 서비스입니다.
LostTrackingService Microsoft HoloLens 디바이스에서 추적 손실 처리를 간소화하는 서비스입니다.
SceneTransitionService 부드러운 장면 전환을 간단하게 추가하는 서비스입니다.

도구 패키지

선택적 Microsoft.MixedRealityToolkit.Unity.Tools 패키지에는 Microsoft Mixed Reality 도구 키트를 사용하여 혼합 현실 개발 환경을 향상시키는 유용한 도구가 포함되어 있습니다. 이러한 도구는 Unity 편집기에서 Mixed Reality 도구 키트 > 유틸리티 메뉴에 있습니다.

참고

도구 패키지에는 Microsoft.MixedRealityToolkit.Unity.Foundation이 필요합니다.

폴더 구성 요소 Description
MRTK/도구
BuildWindow UWP 애플리케이션을 빌드하고 배포하는 프로세스를 간소화하는 데 도움이 되는 도구입니다.
DependencyWindow 프로젝트에 자산의 종속성 그래프 만드는 도구입니다.
ExtensionServiceCreator 확장 서비스 만들기를 지원하는 마법사입니다.
MigrationWindow 사용되지 않는 MRTK 구성 요소를 사용하는 코드를 업데이트하는 데 도움이 되는 도구입니다.
OptimizeWindow Unity에서 최상의 성능을 위해 혼합 현실 프로젝트 구성을 자동화하는 데 도움이 되는 유틸리티입니다.
ReserializeAssetsUtility 특정 Unity 파일의 재직렬화를 지원합니다.
RuntimeTools/Tools/ControllerMappingTool 유틸리티를 사용하면 개발자가 하드웨어 컨트롤러에 대한 Unity 매핑을 신속하게 확인할 수 있습니다.
ScreenshotUtility Unity 편집기에서 애플리케이션 이미지를 캡처할 수 있습니다.
TextureCombinerWindow 그래픽 텍스처를 결합하는 유틸리티입니다.
도구 상자 MRTK UX 구성 요소를 쉽게 검색하고 사용할 수 있는 UI입니다.

유틸리티 패키지 테스트

선택적 Microsoft.MixedRealityToolkit.TestUtilities 패키지는 개발자가 플레이 모드 테스트를 쉽게 만들 수 있도록 하는 도우미 스크립트 컬렉션입니다. 이러한 유틸리티는 MRTK 구성 요소를 만드는 개발자에게 특히 유용합니다.

폴더 구성 요소 Description
MRTK/테스트
TestUtilities 손 시뮬레이션 유틸리티를 포함하여 플레이 모드 테스트 만들기를 간소화하는 방법입니다.

예제 패키지

예제 패키지에는 기본 패키지에서 기능을 연습하는 데모, 샘플 스크립트 및 샘플 장면이 포함되어 있습니다. 이 패키지에는 다양한 유형의 손 입력(관절 및 비음식)에 응답하는 샘플 개체가 포함된 HandInteractionExample 장면 (아래 사진)이 포함되어 있습니다.

HandInteractionExample 장면

이 패키지에는 여기에 설명된 시선 추적 데모도 포함되어 있습니다.

일반적으로 MRTK의 모든 새 기능에는 예제 패키지에 해당하는 예제가 포함되어야 하며, 대략 동일한 폴더 구조와 위치를 따라야 합니다.

참고

예제 패키지에는 Microsoft.MixedRealityToolkit.Unity.Foundation이 필요합니다.

폴더 구성 요소 Description
MRTK/예제
데모 하나 또는 두 개의 관련 기능을 보여 주는 간단한 장면입니다.
실험적 실험적 기능을 보여 주는 데모 장면입니다.
StandardAssets 여러 데모 장면에서 공유하는 공통 자산입니다.

Unity 패키지 관리자

Unity 2019.4 이상에서 만드는 환경의 경우 UNITY 패키지 관리자를 통해 MRTK를 사용할 수 있습니다.

자산 패키지를 사용할 때의 이점은 다음과 같습니다.

  • 더 작은 프로젝트
    • 더 깨끗한 Visual Studio 솔루션
    • 에서 검사 파일 수가 줄어듭니다(MRTK는 파일의 Packages/manifest.json 간단한 참조임).
  • 더 빠른 컴파일
    • Unity는 빌드하는 동안 MRTK를 다시 컴파일할 필요가 없습니다.
  • 종속성 확인
    • 필수 MRTK 패키지는 종속성이 있는 패키지를 지정할 때 자동으로 설치됩니다.
  • 새 MRTK 버전으로 간편하게 업데이트
    • 파일의 버전 Packages/manifest.json 변경

다음은 몇 가지 문제입니다.

  • MRTK는 변경할 수 없습니다.
    • 패키지 확인 중에 제거할 수 없으면 변경할 수 없습니다.
  • MRTK는 Unity 2018.4에서 UPM 패키지를 지원하지 않습니다.

파운데이션 패키지

기본 패키지(com.microsoft.mixedreality.toolkit.foundation)는 Mixed Reality 도구 키트의 기초를 형성합니다.

폴더 구성 요소 Description
MRTK/Core 인터페이스 및 형식 정의, 기본 클래스, 표준 셰이더.
MRTK/코어/공급자 플랫폼 독립적 데이터 공급자
손 추적을 위한 기본 클래스 지원 및 서비스입니다.
InputAnimation 헤드 이동 및 손 추적 데이터 기록을 지원합니다.
InputSimulation 손 및 눈 입력의 편집기 내 시뮬레이션을 지원합니다.
ObjectMeshObserver 3D 모델을 데이터로 사용하는 공간 인식 관찰자입니다.
UnityInput Unity의 입력 API를 통해 구현된 일반적인 입력 디바이스(조이스틱, 마우스 등).
MRTK/공급자 플랫폼별 데이터 공급자
LeapMotion UltraLeap Leap Motion 컨트롤러에 대한 지원.
OpenVR OpenVR 디바이스에 대한 지원.
Oculus 퀘스트와 같은 Oculus 디바이스에 대한 지원.
UnityAR (실험적) 모바일 AR 디바이스에서 MRTK 사용을 사용하도록 설정하는 카메라 설정 공급자입니다.
WindowsMixedReality Microsoft HoloLens 및 몰입형 헤드셋을 포함한 Windows Mixed Reality 디바이스 지원
Windows 음성 및 받아쓰기와 같은 Microsoft Windows 특정 API에 대한 지원.
XR SDK (실험적) Unity 2019.3 이상에서 Unity 의 새로운 XR 프레임워크 를 지원합니다.
MRTK/SDK
실험적 셰이더, 사용자 인터페이스 컨트롤 및 개별 시스템 관리자를 비롯한 실험적 기능
기능 Foundation 패키지를 기반으로 하는 기능입니다.
Profiles Microsoft Mixed Reality 도구 키트 시스템 및 서비스의 기본 프로필입니다.
StandardAssets 공통 자산; 모델, 텍스처, 재질 등
MRTK/서비스
BoundarySystem VR 경계 지원을 구현하는 시스템입니다.
CameraSystem 카메라 구성 및 관리를 구현하는 시스템입니다.
DiagnosticsSystem 애플리케이션 진단 구현하는 시스템(예: 시각적 프로파일러).
InputSystem 사용자 입력 액세스 및 처리에 대한 지원을 제공하는 시스템입니다.
SceneSystem 다중 장면 애플리케이션 지원을 제공하는 시스템입니다.
SpatialAwarenessSystem 사용자 환경에 대한 인식을 지원하는 시스템입니다.
TeleportSystem 원격 전송에 대한 지원을 제공하는 시스템(점프 환경 이동).

종속성:

  • 표준 자산(com.microsoft.mixedreality.toolkit.standardassets)

표준 자산

표준 자산 패키지(com.microsoft.mixedreality.toolkit.standardassets) 는 다음을 포함하여 모든 혼합 현실 환경에 권장되는 구성 요소의 컬렉션입니다.

  • MRTK 표준 셰이더
  • MRTK 표준 셰이더를 사용하는 기본 재질
  • 오디오 파일
  • Fonts
  • 질감
  • 아이콘

참고

어셈블리 정의에 따라 호환성이 손상되는 변경을 방지하기 위해 MRTK 표준 셰이더의 일부 기능을 제어하는 데 사용되는 스크립트는 표준 자산 패키지에 포함되지 않습니다. 이러한 스크립트는 폴더의 기본 패키지에서 MRTK/Core/Utilities/StandardShader 찾을 수 있습니다.

종속성: 없음

확장 패키지

선택적 확장 패키지(com.microsoft.mixedreality.toolkit.extensions) 에는 MRTK의 기능을 확장하는 추가 구성 요소가 포함되어 있습니다.

폴더 구성 요소 Description
MRTK/확장
HandPhysicsService 관절 손에 물리학 지원을 추가하는 서비스입니다.
LostTrackingService Microsoft HoloLens 디바이스에서 추적 손실의 전달을 간소화하는 서비스입니다.
SceneTransitionService 부드러운 장면 전환을 간단하게 추가하는 서비스입니다.
샘플~ 샘플 장면 및 자산이 포함된 숨겨진(Unity 편집기) 폴더입니다.

예제 프로젝트가 포함된 패키지를 사용하는 프로세스에 대한 자세한 내용은 Mixed Reality 도구 키트 및 Unity 패키지 관리자 문서에서 확인할 수 있습니다.

종속성:

  • Foundation(com.microsoft.mixedreality.toolkit.foundation)

도구 패키지

선택적 도구 패키지(com.microsoft.mixedreality.toolkit.tools) 에는 혼합 현실 환경을 만드는 데 유용한 도구가 포함되어 있습니다. 일반적으로 이러한 도구는 편집기 구성 요소이며 해당 코드는 애플리케이션의 일부로 제공되지 않습니다.

폴더 구성 요소 Description
MRTK/도구
BuildWindow UWP 애플리케이션을 빌드하고 배포하는 프로세스를 간소화하는 데 도움이 되는 도구입니다.
DependencyWindow 프로젝트에 자산의 종속성 그래프 만드는 도구입니다.
ExtensionServiceCreator 확장 서비스 만들기를 지원하는 마법사입니다.
MigrationWindow 사용되지 않는 MRTK 구성 요소를 사용하는 코드를 업데이트하는 데 도움이 되는 도구입니다.
OptimizeWindow Unity에서 최상의 성능을 위해 혼합 현실 프로젝트 구성을 자동화하는 데 도움이 되는 유틸리티입니다.
ReserializeAssetsUtility 특정 Unity 파일의 재직렬화를 지원합니다.
RuntimeTools/Tools/ControllerMappingTool 유틸리티를 사용하면 개발자가 하드웨어 컨트롤러에 대한 Unity 매핑을 신속하게 확인할 수 있습니다.
ScreenshotUtility Unity 편집기에서 애플리케이션 이미지를 캡처할 수 있습니다.
TextureCombinerWindow 그래픽 텍스처를 결합하는 유틸리티입니다.
도구 상자 MRTK UX 구성 요소를 쉽게 검색하고 사용할 수 있는 UI입니다.

종속성:

  • Foundation(com.microsoft.mixedreality.toolkit.foundation)

유틸리티 패키지 테스트

선택적 테스트 유틸리티 패키지(com.microsoft.mixedreality.toolkit.testutilities)에는 개발자가 플레이 모드 테스트를 쉽게 만들 수 있는 도우미 스크립트 컬렉션이 포함되어 있습니다. 이러한 유틸리티는 MRTK 구성 요소를 만드는 개발자에게 특히 유용합니다.

폴더 구성 요소 Description
MRTK/테스트
TestUtilities 손 시뮬레이션 유틸리티를 포함하여 플레이 모드 테스트 만들기를 간소화하는 방법입니다.

종속성:

  • Foundation(com.microsoft.mixedreality.toolkit.foundation)

예제 패키지

예제 패키지(com.microsoft.mixedreality.toolkit.examples)는 개발자가 관심 있는 예제만 가져올 수 있도록 구조화됩니다.

예제 프로젝트가 포함된 패키지를 사용하는 프로세스에 대한 자세한 내용은 Mixed Reality 도구 키트 및 Unity 패키지 관리자 문서에서 확인할 수 있습니다.

폴더 구성 요소 Description
MRTK/예제
샘플~ 샘플 장면 및 자산이 포함된 숨겨진(Unity 편집기) 폴더입니다.
StandardAssets 여러 데모 장면에서 공유하는 공통 자산입니다.

종속성:

  • Foundation(com.microsoft.mixedreality.toolkit.foundation)
  • 확장 기능(com.microsoft.mixedreality.toolkit.extensions)

참고 항목