Table of Contents

EasyAR 프로젝트에서 AR Foundation 활성화

EasyAR의 AR Foundation 지원을 활성화하거나 AR Foundation의 다른 기능을 사용해야 한다면 AR Foundation을 올바르게 설치하고 설정해야 합니다. 아래 내용은 이러한 작업을 완료하는 방법을 소개합니다.

시작하기 전에

AR Foundation 버전 호환성

EasyAR는 AR Foundation 5 또는 이후 버전을 지원합니다.

중요

AR Foundation 지원은 custom camera를 통해 구현됩니다.

사용자 지정 카메라 또는 헤드셋에서 평가판 제품(Personal Edition license, 평가판 XR license 또는 평가판 Mega 서비스 등)을 사용할 때 EasyAR Sense는 시작할 때마다 100초 후 응답을 중지합니다(Mega 사용자는 승인 후 EasyAR Business를 통해 시간을 조정할 수 있습니다). 유료 버전의 EasyAR Sense와 유료 EasyAR Mega 서비스에는 이 제한이 없습니다.

AR Foundation 설치

AR Foundation 설치는 AR Foundation 공식 문서를 참고하는 것을 권장합니다. 읽기 전에 해당 문서 버전을 선택해야 합니다.

Unity 2022 및 이후 버전

project에 XR 관련 plugin을 설치한 적이 없다면 Project Settings > XR Plug-in Management에서 Install XR Plugin Management 버튼을 클릭해 XR Plug-in Management를 설치하고 완료될 때까지 기다립니다.

alt text

Android platform에서 AR Foundation을 사용해야 한다면 Android 탭에서 Google ARCore를 체크하고 설치가 완료될 때까지 기다립니다.

alt text

iOS platform에서 AR Foundation을 사용해야 한다면 iOS 탭에서 Apple ARKit을 체크하고 설치가 완료될 때까지 기다립니다.

alt text

visionOS platform에서 AR Foundation을 사용해야 한다면 Vision Pro project 설정을 읽으십시오.

AR Foundation이 기본 시점에 초기화될 수 있도록 Initialize XR On Startup을 체크 상태로 유지하는 것을 권장합니다.

설치가 완료되면 Package Manager 창을 엽니다. 설치된 package 목록에서 AR Foundation 및 대응 platform plugin을 볼 수 있습니다. 이 package들의 버전 번호는 완전히 일치해야 합니다.

alt text

중요

AR Foundation을 설치하거나 업데이트할 때 Google ARCore XR PluginApple ARKit XR Plugin 버전이 AR Foundation 버전과 완전히 일치하는지 확인해야 합니다. 버전 불일치는 runtime error 또는 기능 이상을 일으킬 수 있습니다.

Unity 2021

Unity 2021 버전에서는 버전을 지정하기 위해 Packages/manifest.json 파일을 수동으로 편집해야 합니다. 공식 문서를 참고하십시오.

예를 들어 AR Foundation 5.2.0 버전을 설치하고 Android 및 iOS platform에서 사용해야 한다면 Packages/manifest.json 파일에 다음 내용이 포함되어 있는지 확인합니다:

{
  "dependencies": {
    ...
    "com.unity.xr.arcore": "5.2.0",
    "com.unity.xr.arfoundation": "5.2.0",
    "com.unity.xr.arkit": "5.2.0",
    ...
  }
}

XR Plug-in 설정

EasyAR를 사용할 때 일반적으로 ARCore의 존재는 필수적이지 않습니다. 따라서 ARCore를 optional로 설정하여 ARCore를 지원하지 않는 디바이스에서 앱이 정상적으로 실행되지 못하는 일을 피해야 합니다.

Project Settings > XR Plug-in Management > ARCore에서 RequirementDepth를 모두 Optional로 설정합니다.

alt text

주의

RequirementRequired로 설정하고 ARCore를 지원하지 않는 디바이스에 패키징된 앱을 설치하면, 디바이스는 ARCore가 사용 가능하다고 잘못 보고하고 ARCore로 실행합니다. 이로 인해 해당 디바이스가 ARCore를 실행 중이며 정상적으로 동작하지 않는 것처럼 보이는 착각(검은 화면 또는 기타 이상 상황)이 생기지만, 이는 잘못된 것입니다.

이 현상은 Google Play Store가 ARCore 필수로 표시된 앱을 지원되지 않는 디바이스에 설치하지 못하게 하기 때문에, 이러한 앱이 항상 지원되는 디바이스에서 실행 중이라고 가정하기 때문에 발생합니다.

정상 설정에서는 이러한 디바이스가 session assembly 시 ARCore가 지원되지 않는다고 판단하고 EasyAR 기능을 사용합니다.

필요하다면 아래 공식 문서를 참고해 ARCore와 ARKit을 추가로 설정할 수도 있습니다. 읽기 전에 해당 문서 버전을 선택해야 합니다.

Universal Render Pipeline 설정

현재 project가 URP를 사용한다면 URP asset을 설정해야 합니다. 올바르게 설정하지 않으면 AR Foundation의 camera background image가 제대로 render되지 않을 수 있습니다.

먼저 EasyAR의 URP Renderer Feature가 올바르게 설정되어 있는지 확인합니다. EasyAR의 Universal Render Pipeline 설정을 참고하십시오.

그런 다음 Renderer Features 목록에 ARBackgroundRendererFeature를 추가합니다.

alt text

EasyAR의 URP Renderer Feature 설정과 마찬가지로 Project Settings > Quality에서 각 platform의 설정을 확인하고, AR Foundation을 사용해야 하는 모든 platform에서 ARBackgroundRendererFeature가 올바르게 설정된 URP asset이 사용되도록 해야 합니다.

또한 AR Foundation 공식 URP 설정 문서를 참고해 설정할 수도 있습니다. 읽기 전에 해당 문서 버전을 선택해야 합니다.

참고

EasyAR의 Universal Render Pipeline 설정은 여전히 필요합니다. 그래야 AR Foundation을 지원하지 않는 디바이스에서도 EasyAR interface 관련 기능의 rendering이 정상적으로 동작합니다.

EasyAR AR Foundation 지원 활성화

Project Settings > EasyAR > Sense에서 Unity XR > AR Foundation Support option이 활성화되어 있는지 확인합니다. 이 option은 기본적으로 켜져 있습니다.

alt text

이 option을 수정하면 script 재컴파일이 트리거됩니다. script compile이 완료될 때까지 기다려야 수정이 적용됩니다. Unity가 어떤 이유로 정상적으로 compile을 트리거하지 않는다면 Unity를 닫고 Library/ScriptAssemblies folder를 삭제하여 Unity가 script를 강제로 다시 compile하도록 할 수 있습니다.

project의 AR Foundation과 EasyAR가 호환되지 않으며 EasyAR와 AR Foundation을 동시에 사용할 필요가 없다면 이 option을 끌 수 있습니다.

다음 단계

관련 주제