테스트 씬 생성 및 빌드

Tutorial

intermediate

+10XP

25 mins

(10)

Unity Technologies

테스트 씬 생성 및 빌드

이 튜토리얼에서는 Unity Mars를 사용해 테스트 씬을 생성하고 빌드해 보겠습니다.

Languages available:

1. 개요

Unity Mars를 설치하고 사용자 인터페이스를 살펴보았으니 이제 콘텐츠를 만들어 보겠습니다. 이 튜토리얼에서는 실제 표면에 AR 구체를 배치하는 기본적인 앱을 만드는 과정을 알려 드리겠습니다. 이 과정에서 Unity Mars의 핵심 개념을 학습하게 될 것입니다.

이 튜토리얼에서는 앱을 만들기 전에 테스트 씬부터 만들어 보겠습니다.

2. 프록시란?

프록시는 AR 앱이 감지하여 사용할 수 있는 실제 오브젝트를 대신하는 게임 오브젝트를 가리킵니다. 예를 들어 프록시는 소셜 미디어 동영상 필터에서 사용자의 얼굴, 앱에서 구체가 표시될 테이블 등을 대신할 수 있습니다.

AR 앱을 제작할 때는 디지털 콘텐츠를 실제 오브젝트나 위치와 연결하는 것이 굉장히 중요합니다. 프록시를 실제 환경과 앱의 디지털 콘텐츠를 연결하는 플레이스홀더라고 생각해도 됩니다.

3. 기본적인 애플리케이션 만들기

Unity Mars를 사용하면 다양하고도 멋진 AR 경험을 제작할 수 있지만 먼저 간단한 것부터 만들어 봅시다.

아래 설명에 따라 실제 환경의 수평면에 구체를 표시하는 애플리케이션을 만들어 보세요.

1. 메인 메뉴에서 File > New Scene으로 이동하여 Basic (Built-in) 템플릿을 선택합니다.

2. 새로운 씬을 저장하고 "Sample Scene"으로 이름을 지정합니다.

3. 계층(Hierarchy) 창에서 Add (+)를 선택하고 MARS > Presets > Horizontal Plane을 선택합니다. 이 게임 오브젝트는 실제로 존재하는 수평면의 프록시입니다.

참고: MARS Panel의 계층 구조(Hierarchy) 섹션이 아닌 일반적인 계층 창을 사용하세요.

4. 계층 창에서 Horizontal Plane 게임 오브젝트를 오른쪽 클릭하고 3D Object > Sphere를 선택해 자식 게임 오브젝트를 새로 만듭니다.

5. Sphere 게임 오브젝트를 선택합니다. 인스펙터(Inspector)에서 Scale 값을 0.1, 0.1, 0.1로 조정하여 구체를 대략 10세제곱센티미터의 스케일로 만듭니다.


6.
계층 창에서 Add (+)를 선택하고 MARS > Data Visualizers > Plane Visualizer를 선택합니다. 이렇게 하면 Planes Visualizer 게임 오브젝트와 MARS Session 게임 오브젝트가 모두 계층 창에 추가됩니다.

스캔한 표면을 이 씬에서 빌드할 앱으로 확인할 수 있습니다. 앱이 수평면을 감지하면 그 위에 구체를 배치할 것입니다.

4. 빌드 플랫폼 선택하기

프로젝트를 위한 플랫폼 전용 설정을 설정하기 전에 먼저 기기에 알맞은 플랫폼을 선택해야 합니다.

다음 과정을 따라 플랫폼을 선택하세요.

1. 메인 메뉴에서 File > Build Settings…로 이동합니다.

2. Platform 섹션에서 Android 또는 iOS를 선택합니다.

3. Switch Platform을 선택합니다.

5. Android: 프로젝트 설정 설정하기

ARCore는 증강 현실 경험을 빌드하는 데 사용되는 Google 프레임워크입니다. 아래 설명을 따라 ARCore를 위한 프로젝트 설정을 설정하세요.

1. 메인 메뉴에서 Edit > Project Settings…로 이동합니다.

2. 창의 왼쪽에 있는 내비게이션 패널에서 Player를 선택합니다. Android 탭을 아직 선택하지 않았다면 지금 선택합니다.

3. Other Settings 섹션을 찾고 해당 폴드아웃이 닫혀 있다면 펼칩니다.

4. Rendering 섹션에서 Auto Graphics API 프로퍼티를 찾아 비활성화합니다.

참고: 2022.2 LTS 이전 버전의 Unity를 사용하신다면 Graphics API 목록이 이미 나타나 있을 것입니다.

5. 이제 표시된 Graphics API 목록에서 Vulkan을 선택하고 Remove (-)를 선택합니다. 이때 프로젝트가 다시 임포트될 수 있습니다.

7. Configuration 섹션에서 Scripting BackendIL2CPP로 설정합니다.

8. Configuration 섹션 아래에서 Target Architectures 프로퍼티를 찾습니다. ARM64를 활성화합니다.

이제 앱을 빌드할 준비를 마쳤습니다. 다음 단계는 건너뛰고 필요한 단계로 바로 이동하세요.

6. iOS: 프로젝트 설정 설정하기

ARKit는 증강 현실 경험을 빌드하는 데 사용되는 Apple 프레임워크입니다. 아래 설명을 따라 ARKit를 위한 프로젝트 설정을 설정하세요.

프로젝트 설정을 다음과 같이 설정하세요.

1. 메인 메뉴에서 Edit > Project Settings...로 이동합니다.

2. 창의 왼쪽에 있는 내비게이션 패널에서 Player를 선택합니다.

3. Other Settings 섹션을 찾고 해당 폴드아웃이 닫혀 있다면 펼칩니다.

4. Configuration 섹션에서 Camera Usage Description 프로퍼티를 찾습니다. 해당 필드가 자동으로 채워져 있지 않다면 ‘AR 기능에 필요한 카메라 액세스(Camera access required for AR functionality)’라는 설명을 입력합니다.

7. 앱 빌드 및 실행

이제 프로젝트 설정을 완료했으니 Unity Mars 앱을 빌드하고 실행할 준비가 되었습니다.

중요: 선택한 모바일 플랫폼에 알맞은 패키지를 설치하지 않았다면 앱을 빌드할 수 없습니다. 앱을 빌드하는 과정에서 문제가 발생한다면 다음 단계의 문제 해결 가이드를 확인하세요.

아래 설명을 따라 앱을 빌드하고 실행해 보세요.

1. 메인 메뉴에서 File > Build Settings…로 이동합니다.

2. Add Open Scenes를 선택해 샘플 씬을 빌드에 포함시킵니다.

3. Android 또는 iOS 중에 기기에 알맞은 플랫폼을 선택했는지 확인합니다.

4. 아직 모바일 기기를 컴퓨터에 연결하지 않았다면 지금 연결합니다.

5. Build and Run을 선택합니다.

6. 플랫폼 요구 사항에 따라 빌드의 이름을 지정하고 저장합니다.

  • Android라면 .APK 파일의 이름을 지정합니다.
  • iOS에서는 XCode 프로젝트를 위한 폴더의 이름을 지정합니다.

7. 다음을 참고하여 각 플랫폼에 따라 필요한 조치를 취합니다.

테스트 씬 사용해 보기

앱을 실행하면 Unity 스플래시 화면이 표시된 다음 카메라의 비디오 스트림이 나타날 것입니다.

이제 기기를 움직여 주변 공간의 표면을 스캔합니다. 스캔한 표면은 파란색 점 패턴으로 나타날 것입니다. 앞에서 추가한 Plane Visualizer의 기본 효과입니다. 수평면이 감지되면 수평면 프록시의 자식으로 만든 구체가 이미지와 같이 나타날 것입니다.

8. 테스트 씬의 문제 해결하기

앱을 빌드하고 실행하는 과정에서 문제가 발생한다면 이 가이드를 참조해 보세요.

툴: Mars Project Validation

Unity Mars는 씬과 프로젝트에서 일반적인 설정 문제가 발생하는 것을 방지하기 위한 빌트인 Project Validation 툴을 제공합니다. 해당 툴은 프로젝트 설정에서 액세스할 수 있습니다(Edit > Project Settings > MARS > Project Validation).

Project Settings 창에 Project Validation 툴이 열려 있으면 빌드 시점이나 현재 씬에서 실행되는 규칙을 확인합니다.

참고: 일부 문제에 표시되는 Fix 버튼을 눌러 자동으로 오류를 해결할 수 있습니다. 그 외의 문제는 사용자가 직접 해결해야 합니다. 해당 문제에 표시되는 Edit 버튼을 누르면 문제를 해결할 수 있는 UI 영역으로 이동합니다.

문제 : "com.android.build.gradle.internal.tasks.Workers"

(Edit > Project Settings > Player > Android or iOS > Publishing Settings) 에서 Keystore Manager를 눌러 새로운 키를 생성합니다.

아래와 같이 칸을 입력해주시고 Add Key를 클릭합니다.

이 후 설정한 비밀번호를 입력합니다.

문제: 빌드 후 나타나는 검은 화면

프로젝트를 빌드한 후에 검은 화면이 나타난다면 아래의 패키지가 설치되었는지 확인해 보세요.

  • com.unity.mars-ar-foundation-providers
  • com.unity.xr.arfoundation

그리고 다음 중 하나 이상이 설치되어 있어야 합니다.

  • com.unity.xr.arkit
  • com.unity.xr.arcore

여전히 검은 화면이 나타날 경우 Unity Mars 매뉴얼의 FAQ를 참고해 일반적인 원인을 확인하세요.

문제: 컴파일 오류

다수의 컴파일 오류가 발생한다면 ARFoundation, ARCore 또는 ARKit 패키지의 주 버전과 부 버전이 동일한지 확인하세요. 해당 버전의 AR Foundation을 지원하는 Unity 버전을 사용하고 있는지도 확인하세요. 이전의 Unity 2019.4 버전에서 ARFoundation을 사용하면 일부 문제가 발생할 수 있습니다.

빌드를 생성하는 동안 오류가 발생하면 ARCore 또는 ARKit에 지정한 버전이 SDK 버전에서 지원되는지 확인하세요. 버전이 지원되지 않는다면 기기에 빌드할 수 없습니다.

추가 리소스 및 가이드

모바일 플랫폼용 빌드를 위해 Unity를 설정하는 법을 자세히 알고 싶다면 Unity 매뉴얼의 해당 섹션을 확인하세요.

앱 빌드 및 실행과 관련된 문제가 발생할 경우, Create with AR: Face Filters 교육 과정의 입문자용 튜토리얼인 Deploy your project to iOS or Android를 참고하는 것도 좋습니다.

9. 다음 단계

이 튜토리얼에서는 수평면 프록시에 기반한 기본적인 애플리케이션을 위한 테스트 씬을 만들어 봤습니다. 다음에는 이 테스트 씬을 바탕으로 프록시가 실제 환경에 대응되는 방식을 구체적으로 설정해 보겠습니다.

Complete this Tutorial