Unity에서 Vuforia 엔진 사용

Vuforia Engine은 환경의 특정 이미지 및 개체에 AR 환경을 연결하는 기능인 HoloLens에 중요한 기능을 제공합니다. 이 기능을 사용하여 산업 기업을 위한 기계 위에 단계별 지침을 오버레이하거나 물리적 제품 또는 게임에 디지털 기능 및 환경을 추가할 수 있습니다.

Vuforia Engine은 AR 개발 프로세스를 보다 유연하게 만들기 위해 광범위한 기능과 목표를 제공합니다. 최신 기능 중 하나인 Vuforia 모델 대상은 상업적 용도와 산업 용도 모두에 대한 핵심 기능입니다. 모델 대상을 사용하면 애플리케이션이 기계, 자동차 또는 장난감과 같은 물리적 개체를 인식하고 CAD 또는 디지털 3D 모델을 기반으로 추적할 수 있습니다. 산업 용도의 경우 이 기능은 조립 작업자 및 서비스 기술자에게 공장 또는 현장에서 AR 작업 지침 및 절차 지침을 제공할 수 있습니다.

휴대폰 및 태블릿용으로 빌드된 기존 Vuforia 엔진 앱은 Unity에서 HoloLens에서 실행되도록 쉽게 구성할 수 있습니다. Vuforia Engine을 사용하여 새 HoloLens 앱을 사용하여 Surface Pro 및 Surface Book 같은 태블릿을 Windows 10 수도 있습니다.

도구 얻기

권장되는 버전의 Visual Studio 및 Unity를 설치한 다음, Visual Studio 및 기본 IDE 및 컴파일러를 사용하도록 Unity를 구성합니다.

Unity를 설치할 때는 "Windows 스토어 IL2CPP 스크립팅 백 엔드"를 설치해야 합니다.

여기에 설명된 대로 Vuforia 엔진 패키지를 추가 합니다.

Vuforia 엔진 시작

Vuforia 엔진 및 HoloLens에 대해 학습하기 위한 가장 좋은 출발점은 Vuforia 엔진 HoloLens 샘플 (Unity 자산 저장소에서 사용 가능)입니다. 이 샘플은 HoloLens에 배포할 수 있는 미리 구성된 장면을 포함하여 전체 HoloLens 프로젝트를 제공합니다.

이 장면에서는 Vuforia 이미지 대상을 사용하여 이미지를 인식하고 HoloLens 환경에서 디지털 콘텐츠로 보강하는 방법을 보여 줍니다. Vuforia 엔진 HoloLens 샘플에는 HoloLens에서 모델 대상 및 VuMarks의 사용을 보여 주는 장면도 포함되어 있습니다. 장면에서 사용자 고유의 콘텐츠를 쉽게 대체하여 Vuforia 엔진을 사용하는 HoloLens 앱 만들기를 실험할 수 있습니다.

HoloLens용 Vuforia 앱 구성

HoloLens용 Vuforia 엔진 앱을 개발하는 것은 다른 디바이스용 Vuforia 엔진 앱을 개발하는 것과 근본적으로 동일합니다. 그런 다음 아래 섹션에 설명된 빌드 설정 및 구성을 적용할 수 있습니다. 이것이 Vuforia 엔진이 HoloLens 공간 매핑 및 위치 추적 시스템과 함께 작동할 수 있도록 하는 데 필요한 전부입니다.

HoloLens용 Vuforia 엔진 샘플 빌드 및 실행

  1. Unity 자산 저장소에서 HoloLens용 Vuforia 엔진 샘플 다운로드
  2. 전원 및 성능에 권장되는 Unity 엔진 옵션 적용
  3. 빌드의 장면 에 샘플 장면을 추가 합니다.
  4. 빌드 설정에서 열린 장면 추가 단추를 클릭하여 빌드 플랫폼을 UWP로 전환합니다. 이미지
  5. 플레이어 설정 단추를 선택합니다.
  • UWP 아이콘을 선택하고 XR 설정 섹션을 확장합니다.
  • Virtual Reality 지원됨이 사용하도록 설정되어 있는지 확인합니다.
  • Virtual Reality SDK에서 다음을 확인합니다.
    • 창 Mixed Reality 목록에 포함되며 깊이 버퍼 공유 사용이 사용하도록 설정됩니다.
    • 깊이 형식16비트 깊이로 설정됩니다.
  • 스테레오 렌더링 모드Single Pass Instanced로 설정되어 있는지 확인합니다.
  1. 게시 설정 섹션을 확장합니다.
  • 기능에서 인터넷 클라이언트, WebCam, 마이크SpatialPerception이 선택되어 있는지 확인합니다.
  • 참고: Surface Observer API를 사용하려는 경우에만 SpatialPerception을 선택해야 합니다.
  • 지원되는 디바이스 패밀리에서홀로그램이 선택되어 있는지 확인합니다.
  1. 해상도 및 프레젠테이션 섹션을 확장합니다.
  • 백그라운드에서 실행을 사용하지 않도록 설정하면 앱이 백그라운드로 전환되면 Vuforia 엔진이 일시 중지되고 앱이 다시 시작될 때 카메라에 다시 액세스할 수 있습니다.
  • 기본 방향 드롭다운에서 왼쪽 가로가 선택되어 있는지 확인합니다.
  1. 빌드 설정 창으로 돌아가 빌드를 선택하여 Visual Studio 프로젝트를 생성합니다.
  2. Visual Studio에서 실행 파일을 빌드하고 HoloLens에 설치합니다.

Vuforia 개발자 포털

Vuforia 엔진 및 HoloLens를 사용하여 자체 AR 환경을 만들려는 개발자는 developer.vuforia.com Vuforia 개발자 포털에 등록해야 합니다. 포털에서 개발자는 커뮤니티 토론에 참여할 수 있는 Vuforia 엔진 포럼 , 모든 Vuforia 엔진 기능에 대한 심층 설명서가 있는 라이브러리 및 사용자가 고유한 사용자 지정 대상을 만들 수 있는 Vuforia 대상 관리자 에 액세스할 수 있습니다. 개발자는 Vuforia 라이선스 관리자를 사용하여 무료 개발자 라이선스에 등록할 수도 있습니다.

Vuforia를 사용한 디바이스 추적

디바이스 추적 은 대상이 더 이상 보이지 않는 경우에도 추적을 유지 관리합니다. 위치 디바이스 추적기를 사용하도록 설정하면 모든 대상에 대해 자동으로 사용하도록 설정됩니다. HoloLens 애플리케이션의 경우 위치 디바이스 추적기가 Unity에서 자동으로 시작됩니다.

Vuforia Engine은 카메라 추적 및 HoloLens의 공간 추적에서 포즈를 자동으로 융합하여 카메라가 대상을 볼 수 있는지 여부에 관계없이 안정적인 대상 포즈를 제공합니다.

프로세스는 자동으로 처리되므로 개발자가 프로그래밍할 필요가 없습니다.

다음은 프로세스에 대한 대략적인 설명입니다.

  1. Vuforia의 대상 추적기가 대상을 인식합니다.
  2. 그런 다음 대상 추적이 초기화됩니다.
  3. 대상의 위치와 회전을 분석하여 HoloLens에 대한 강력한 포즈 추정값을 제공합니다.
  4. Vuforia 엔진은 대상의 포즈를 HoloLens 공간 매핑 좌표 공간으로 변환합니다.
  5. HoloLens는 대상이 더 이상 보이지 않는 경우 추적을 수행합니다. 대상을 다시 볼 때마다 Vuforia는 이미지와 개체를 계속 정확하게 추적합니다.

검색되었지만 더 이상 보이지 않는 대상은 EXTENDED_TRACKED 보고됩니다. 이러한 경우 모든 대상에서 사용되는 DefaultTrackableEventHandler 스크립트는 계속해서 보강 콘텐츠를 렌더링합니다. 개발자는 사용자 지정 추적 가능한 이벤트 처리기 스크립트를 구현하여 이 동작을 제어할 수 있습니다.

Vuforia 엔진을 사용하여 성능 모드

Vuforia 엔진을 통해 HoloLens의 성능을 관리하여 AR 환경을 확장하고 CPU의 워크로드를 줄일 수 있습니다. Vuforia 엔진은 선택할 수 있는 세 가지 모드인 기본값, 속도 최적화 및 품질 최적화를 제공합니다.

  • MODE_OPTIMIZE_SPEED HoloLens 디바이스의 워크로드를 최소화할 수 있으며 AR 환경을 확장하는 데 적합합니다. 앱이 정적 개체/대상을 추적하는 상황에 권장됩니다.
  • MODE_DEFAULT 대부분의 시나리오에서 사용할 수 있는 표준 모드입니다.
  • MODE_OPTIMIZE_QUALITY 선택할 것으로 예상되는 이동 가능한 대상 또는 모델 대상을 추적하는 데 더 좋습니다.

모드 설정

Unity에서 성능 모드를 변경하려면 ARCamera GameObject의 구성 요소로 있는 Vuforia 구성(Ctrl+Shift+V/ Cmd+Shift+V)으로 이동합니다.

  • 카메라 장치 모드의 드롭다운 메뉴를 선택하고 세 가지 옵션 중 하나를 선택합니다.

참고 항목