- 목차
개요
- Unity용 ARCore SDK : 구버전 프로젝트 (2020 미만), Unitypackage 형태로 제공
DOC : Android 빠른 시작문서가 삭제되었다… - AR Foundation (+ ARCore XR 플러그인, ARCore 확장 프로그램) (2019.4.3.f1 이상), 플러그인 형태로 제공
DOC : AR Foundation 시작하기
두 버전 서로간 호환이 되지 않는다. Unity용 ARCore SDK 이전 가이드 이 문서도 날라감…
소프트웨어 요구사항
Arcore Depth Lab Sample (GitHub) 에서 요구하는 조건을 기준으로 한다.
(오른쪽 상단 “Code” 버튼을 눌러 zip 형태로 소스코드를 다운로드 한다.)
- Unity 2019.4.36f
- 안드로이드 빌드 지원 모듈이 설치되어 있어야함.
- 경우에 따라서 Gradle 5.6.4 버전을 수동 설치해야 될 수 있다.
- Package
- ARCore SDK for Unity v1.25.0
- Plugin
- Multiplayer HLAPI 1.0.8+
- XR Lagacy Input Helpers 2.1.7+
- 안드로이드 빌드 지원 모듈이 설치되어 있어야함.
패키지 설치
- 다운로드 받은 압축파일을 푼 다음, Unity Editor로 해당 프로젝트를 연다.
- Windows → Package Manager 에서 Multiplayer HLAPI와 XR Lagacy Input Helpers 플러그인을 설치한다.
패키지 설치 (ARCore SDK for Unity)
- GitHub 페이지에서 "arcore-unity-sdk-1.25.0.unitypackage"를 다운로드 받는다.
- Assets → Import Package → Custom Package 누른 후, 다운로드 받은 unitypackage 파일을 선택한다.
- 대화상자에서 모든 항목이 체크되었는지 확인하고 “Import” 버튼을 클릭한다.
기능 On/Off
ARCore 활성화
- Edit → Project Settings → Google ARCore 에서 아래와 같이 설정한다.
- ARCore Required 체크
- Instant Preview Enabled 체크 해제
- Edit → Project Settings → Player → Android 아이콘 → Other Settings → Identification 부분에 있는 Minimum API Level을 "Android 7.0 ‘Nougat’ (API level 24) 이상으로 선택
ARCore SDK 내의 Plugin 비활성화
- Assets → GoogleARCore → SDK → Plugins로 이동
- “arcore_client”, “arcore_unity” 를 비활성화
- 선택하면 아래 이미지 처럼 오른쪽 “Inspector” 창이 뜨게된다. 여기서 “Android” 부분에 있는 **체크를 해제**한다.
Build And Run
ARCore가 지원되는 안드로이드 단말기를 연결한 후, Build And Run을 실행하자. (개발자 모드, USB 디버깅을 활성화 하는 것 잊지 말자!)
안드로이드 빌드 설정
보통은 그냥 "Build And Run"을 해도 잘 되지만, 기본 제공되는 Gradle을 인식하지 못하거나, 일부 Android 11 (API 30) 이상의 단말에 대해 빌드를 하기 위해서는 추가적인 설정이 필요하다.
Gradle 경로설정
※ Gradle이 없다면, “Gradle 빌드 도구” 에서 찾아보자. “binary-only” 또는 “complete” 둘 중 아무거나 선택해도된다.
만일 안드로이드 스튜디오를 설치했을 경우, Gradle은 아래와 같은 경로에 설치될 것이다.
C:\Users"사용자이름".gradle\wrapper\dists\
여기서 5.6.4 버전 이상의 Gradle의 lib 폴더가 있는 경로까지 복사한다.
C:\Users"사용자이름".gradle\wrapper\dists\gradle-5.6.4-all"문자여러개"\gradle-5.6.4
Edit → Preferences → External Tools → Android → Gradle 부분에서 체크를 해제하고 복사한 경로를 붙여 넣는다.
Gradle 파일 수정
Edit → Project Settings → Player → Android 아이콘 → Publishing Settings → Build 부분에서 “Custom Main Gradle Template”, “Custom Launcher Gradle Template” 두 부분을 체크한다.
아래의 두 파일을 편집해야된다.
- Assets/Plugins/Android/mainTemplate.gradle
- Assets/Plugins/Android/launcherTemplate.gradle
파일 상단에서 아래 코멘트는 삭제 (이미 없다면 안해도 된다.)
// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN
파일 상단에 아래 코드 추가 (이미 있다면 추가 안해도된다.)
buildscript {
repositories {
google()
jcenter()
}
dependencies {
// Must be Android Gradle Plugin 3.6.0 or later. For a list of
// compatible Gradle versions refer to:
// https://developer.android.com/studio/releases/gradle-plugin
classpath 'com.android.tools.build:gradle:3.6.0'
}
}
allprojects {
repositories {
google()
jcenter()
flatDir {
dirs 'libs'
}
}
}
※ 추가사항
Unity Editor 설치시 "Android Build Support"를 이용하여 내장 JDK, SDK, NDK 들이 인식되지 않는 경우가 있다면 아래와 같이 수동으로 경로를 설정해야한다 …
(1) 경로 오른쪽에 “Copy Path” 버튼 클릭
(2) “(JDK 또는 SDK 또는 NDK) Installed with Unity (recommended)” 의 체크박스 해제
(3) 복사한 경로 붙여 넣기 또는 “Browse” 버튼을 눌러서 폴더 찾기
※ 수동으로 경로를 지정해도 안된다면… 경로 부분에 있는 체크박스들을 체크 해제한 후, 다시 체크 해보자. 여러 버전의 유니티 에디터가 하나의 Preferences를 공유하기 때문에 값이 반영이되지 않는 경우가 있기 때문이다.
참고 : Document 복원
기존 document가 없어져 버리는 바람에… 예전에 copy 해둔 것을 다시 붙여넣는다.
소프트웨어
- Unity 2017.4.40 부터 2020 : Android 빌드 지원 모듈 설치
- Unity용 ARCore SDK 1.25.0 이상
- Android Studio SDK Manager를 이용하여 Android SDK 4.0 (API 14) 이상
프로젝트 준비
- “새 3D 프로젝트” 생성
- Unity 버전 별로 패키지 설치
- 2017, 2018 : 추가 패키지 불필요
- 2019 : Windows -> Package Manager를 이용하여 패키지 설치
- 멀티플레이어 HLAPI (Cloud Anchors 샘플에 필요)
- XR 레거시 입력 도우미 (인스턴트 미리보기에 필요, TrackedPoseDriver 사용)
- 2020 : Windows -> Package Manager를 이용하여 패키지 설치
- 멀티플레이어 HLAPI (Cloud Anchors 샘플에 필요)
- XR 플러그인 관리(TrackedPoseDriver를 사용하는 인스턴트 미리보기에 필요)
- Unity용 ARCore SDK를 가져옴
- Assets > Import Package > Custom Package를 선택합니다.
- 다운로드한 arcore-unity-sdk-1.25.0.unitypackage을 선택합니다.
- Import Package 대화상자에서 모든 패키지 옵션이 선택되었는지 확인하고 Import를 클릭합니다.
프로젝트 설정
- Build Settings에서 Android로 플랫폼 교체
- Player Settings 에서 Android 설정 탭에서 다음 설정을 구성
섹션 | 설정 | 구성 |
---|---|---|
기타 설정 | 렌더링 | Auto Graphics API를 선택 해제합니다. Vulkan API에 Vulkan이 표시되면 삭제하세요. |
멀티스레드 렌더링 | 멀티스레드 렌더링을 사용하려면 이 옵션을 선택하세요참고 :
|
|
패키지 이름 | 자바 패키지 이름 형식을 사용하여 고유한 앱 ID를 만듭니다.예를 들어 com.example.helloAR를 사용합니다. | |
최소 API 수준 | Android 7.0 ‘Nougat’ (API 수준 24) 이상을 선택합니다.AR 선택사항 앱의 경우 최소 API 수준은 14입니다. | |
백엔드 백엔드 스크립트 | 64비트 기기를 위해 빌드할 때 스크립팅 백엔드를 IL2CPP로 설정합니다.자세한 내용은 ARCore 64비트 요구사항을 참고하세요. | |
대상 아키텍처 | 64비트 기기를 위해 빌드할 때 ARM64를 선택합니다(백엔드 백엔드 스크립팅 필요).IL2CPP에 관한 자세한 내용은 ARCore 64비트 요구사항을 참고하세요. | |
XR 설정 | ARCore 지원 | 이 옵션을 사용 설정합니다. |
Gradle
Unity version | Gradle version | Android gradle Plug-in version |
---|---|---|
2023.1, 2023.2 | 7.6 | 7.3.1 |
2022.2 | 7.2 | 7.1.2 |
2022.12021.32021.22021.1 starting from 2021.1.16f12020.3 starting from 2020.3.15f1 | 6.1.1 | 4.0.1 |
2021.1 up to and including 2021.1.15f12020.1, 2020.2, 2020.3 up to and including 2020.3.14f1 | 5.6.4 | 4.0.1 |
2019.4 | 5.1.1 | 3.4.0 |
댓글
댓글 쓰기