iOS를 타겟팅하는 Unity (AR Foundation) 앱에 Geospatial API 사용 설정

Geospatial API를 사용할 수 있도록 앱 설정을 구성합니다.

기본 요건

기본 AR 개념을 이해합니다. ARCore 세션을 구성하는 방법을 알아보세요.

자세한 내용은 자세한 내용은 Geospatial API 소개를 참조하세요. Geospatial API에 대한 정보

ARCore로 개발하는 것이 처음인 경우 시작하기를 참고하세요. 소프트웨어 및 하드웨어 요구 사항, 기본 요건 및 기타 정보를 수집해야 합니다.

ARCore Geospatial API를 사용하려면 프로젝트에서 AR 기초AR Foundation용 ARCore 확장 프로그램에 관해 알아봤습니다.

ARCore API 사용 설정

앱에서 VPS (Visual Positioning System)를 사용하려면 먼저 다음 작업을 완료해야 합니다. ARCore API를 사용 설정합니다. 새 Google Cloud 프로젝트에서 생성할 수 있습니다 이 서비스는 지리 공간 앵커를 호스팅, 저장, 확인

키 없는 승인을 사용하는 것이 좋지만 API 키 승인도 지원됩니다.

앱에 필수 라이브러리 추가

앱이 ARCore API를 호출하도록 승인한 후에는 앱에서 지리정보 기능 사용 설정

  1. 수정으로 이동합니다. 프로젝트 설정 > XR 플러그인 관리 > ARCore 확장 프로그램. iOS Support Enabled(iOS 지원 사용 설정됨)가 선택되어 있는지 확인합니다.
  2. 선택적 지형지물에서 지리정보를 선택합니다.

세션 구성에서 지리정보 기능 사용 설정

앱에서 지리정보 기능이 사용 설정되면 ARCore API와 통신할 수 있도록 앱의 AR 세션 구성에서 지리정보 기능을 사용 설정합니다.

  1. 프로젝트 Assets 폴더에 ARCoreExtensionsConfig 스크립트 가능 객체가 포함되어 있는지 확인합니다. 애셋을 만들려면 애셋 창에서 마우스 오른쪽 버튼을 클릭하고 만들기 > XR ARCore 확장 프로그램 구성.
  2. Assets 폴더에서 ARCoreExtensionsConfig 스크립트 가능 객체를 선택하고 Geospatial ModeEnabled로 설정합니다.

  3. ARCoreExtensionsConfig 구성을 사용하도록 ARCore Extensions 게임 객체를 구성합니다. Hierarchy(계층 구조) 창에서 처음 ARCore 확장 프로그램을 설정할 때 만든 ARCore Extensions 게임 객체를 찾은 다음 ARCore Extensions Config 필드를 Assets 폴더의 ARCoreExtensionsConfig 스크립트 가능 객체에 연결합니다.

사용자에게 기기 데이터 사용을 허용하라는 메시지 표시

ARCore Geospatial API를 사용하는 앱은 사용자에게 사용자의 기기에서 데이터를 사용하고 사용하도록 허용할 수 있습니다. 자세한 내용은 자세한 내용은 사용자 개인 정보 보호 요구사항을 참고하세요 확인할 수 있습니다

기기 호환성 확인

ARCore를 지원하는 모든 기기가 Geospatial API를 지원하는 것은 아닙니다. 확인 방법 사용자 기기의 호환성을 위해 AREarthManager.IsGeospatialModeSupported() FeatureSupported.Unsupported가 반환되면 세션입니다.

런타임 시 사용자에게 위치 정보 액세스 권한 요청

런타임을 트리거하는 스크립트에서 Unity의 위치 서비스 사용 설정 권한 요청을 하려면 다음을 실행하세요.

  1. Project Settings > iOS > Other Settings > Location Usage Description 후 권한을 요청하는 앱의 이름을 입력합니다.

  2. Unity의 위치 서비스를 사용 설정하여 런타임 트리거 권한을 요청합니다.

    public void OnEnable()
    {
        Input.location.Start();
    }
    
    public void OnDisable()
    {
        Input.location.Stop();
    }
    

    Unity의 LocationService 드림 문서를 참조하세요.

기기의 현재 위치에서 Geospatial 사용 가능 여부 확인

Geospatial API는 VPS 및 GPS의 조합을 사용하여 지리정보 포즈를 결정하므로 기기가 위치를 확인할 수 있는 한 API를 사용할 수 있습니다. 실내 공간 및 밀집한 도시 환경과 같이 GPS 정확도가 낮은 지역에서는 API가 VPS 범위를 사용하여 높은 정확성 포즈를 생성합니다. 일반적인 조건에서 VPS는 위치 정확도는 약 5m, 회전 정확도는 5도입니다. AREarthManager.CheckVpsAvailability()를 사용하여 특정 위치에 VPS 적용 범위가 있는지 확인합니다.

Geospatial API는 VPS 범위가 없는 영역에서도 사용할 수 있습니다. 오버헤드 장애물이 거의 또는 전혀 없는 야외 환경에서는 GPS만 사용해도 높은 정확도로 자세를 취할 수 있습니다.

다음 단계