Android XR용 Unreal Engine으로 개발

적용 가능한 XR 기기
이 가이드는 이러한 유형의 XR 기기를 위한 환경을 빌드하는 데 도움이 됩니다.
XR 헤드셋
유선 XR 글라스

XR 개발을 위한 Unreal Engine 지원은 OpenXR 표준을 기반으로 빌드되므로 Android XR에서 지원되는 OpenXR 기능이 Unreal에서 기본적으로 지원됩니다.

이 가이드를 따라 다음 사항을 알아보세요.

  • Android XR용 Unreal Engine 지원
    • Unreal Engine XR 기본사항
    • Android XR용 앱 개발 및 게시
    • Android XR용 Unreal Engine 플러그인
    • 지원 받기
  • 입력 및 상호작용
  • 지원되는 확장 프로그램

Android XR용 Unreal Engine 지원

Android XR용 Unreal 앱을 빌드할 때 최신 버전의 Unreal Engine 5의 공간 컴퓨팅 기능을 활용할 수 있습니다. Unreal Engine 5는 핵심 OpenXR 사양을 지원하며, Unreal용 Android XR 확장 프로그램은 Android XR 및 기타 특정 확장 프로그램을 지원하여 빠르게 시작할 수 있도록 도와줍니다.

Unreal Engine XR 기본사항

Unreal 또는 XR 개발을 처음 사용하는 경우 Unreal의 XR 개발 문서를 참고하여 기본 개념과 워크플로를 이해할 수 있습니다. 살펴볼 만한 몇 가지 주요 영역은 다음과 같습니다.

Android 앱 개발 및 게시

Unreal Engine은 Android용 개발, 빌드, 게시에 관한 포괄적인 문서를 제공합니다. 이 문서에서는 엔진 내에서 Android 권한을 관리하고, Android 빌드 설정을 구성하고(프로젝트 설정 > 플랫폼 > Android를 통해), Unreal Automation Tool (UAT)을 사용하는 방법을 설명합니다.

또한 Google Play 스토어에 배포되는 공간 앱에 적용되는 구체적인 요구사항은 Android XR용 앱 패키징 및 배포 문서를 참고하세요. Android XR에서 일관되고 편안한 사용자 환경을 제공하려면 앱이 몰입형 환경 품질 가이드라인도 준수해야 합니다.

Android XR용 Unreal Engine 플러그인

Android XR용 Unreal 앱 빌드를 지원하는 두 가지 핵심 플러그인이 있습니다. 이러한 플러그인은 플러그인 메뉴 (수정 > 플러그인)를 통해 관리됩니다.

Android XR OpenXR 플러그인

Android XR OpenXR 플러그인은 Unreal에 Android XR 지원을 추가하는 기본 엔진 인터페이스입니다. 공간 추적, 환경 이해, 인식에 필요한 OpenXR 확장 프로그램을 구현합니다. 이 플러그인을 추가하고 구성하는 방법을 알아보려면 Unreal Engine OpenXR 문서를 참고하세요.

Unreal용 Android XR 확장 프로그램

Unreal용 Android XR 확장 프로그램 (v1.1.0, Unreal Engine 5.6.x 및 5.8.x 지원)은 기본 OpenXR 지원을 보완하며, 공간 엔티티, 공간 및 깊이 레이캐스팅, 표시 영역 페더링, 조명 추정 큐브맵, 고급 손 메시 데이터, 특정 하드웨어 최적화와 같은 몰입형 환경을 빌드하는 데 도움이 되는 추가 기능을 포함합니다. 이 패키지를 가져오고 구성하는 방법을 알아보려면 Android XR 확장 프로그램 빠른 시작을 따르거나 Unreal용 Android XR 확장 프로그램 API 참조를 살펴보세요.

지원 받기

문제가 발생하면 지원 페이지의 Unreal Engine 지원 섹션에서 도움을 받으세요.

입력 및 상호작용

상호작용형 공간 환경을 만들려면 실제 움직임을 디지털 작업에 매핑해야 합니다. Unreal Engine은 OpenXR과 결합된 Enhanced Input 시스템을 사용하여 모션 컨트롤러와 핸드 트래킹을 모두 처리합니다. 입력 작업과 입력 매핑 컨텍스트를 설정하면 다양한 Android XR 입력 방식에서 원활하게 작동하는 유연한 상호작용(예: 잡기, 가리키기, UI 탐색)을 만들 수 있습니다.

이러한 메커니즘을 빌드하는 방법에 관한 포괄적인 가이드는 양방향 XR 환경 만들기에 관한 Unreal Engine 문서를 참고하세요.

Android XR은 Unreal Engine 내에서 다음과 같은 특정 상호작용 메서드를 지원합니다.

상호작용 프로필

OpenXR 섹션의 프로젝트 설정에서 상호작용 프로필을 구성할 수 있습니다. 이렇게 하면 앱이 다양한 컨트롤러와 추적 방법에서 일관된 입력 매핑을 유지할 수 있습니다.

손 상호작용

손 상호작용은 OpenXR 핸드 트래킹 확장 프로그램을 통해 제공됩니다. Blueprints 또는 C++의 XR 추적 구성요소를 통해 손 관절 데이터와 포즈에 액세스할 수 있습니다.

시선 상호작용

시선 데이터를 표준 입력 포즈로 가져와 UI 포커스 또는 소셜 참여 기능을 구동할 수 있습니다. 그러려면 android.permission.EYE_TRACKING_FINE 권한이 필요합니다.

얼굴 추적

실시간 표정 데이터에 액세스하여 아바타에 애니메이션을 적용하거나 소셜 상호작용을 유도합니다. XR_ANDROID_face_tracking 확장 프로그램을 사용합니다.

지원되는 확장 프로그램

Unreal에서 Android XR용으로 개발할 때는 다음 OpenXR 확장 프로그램이 지원됩니다.

특징 또는 기능 OpenXR 확장 프로그램 문자열 제공:

기기 앵커 지속성

XR_ANDROID_device_anchor_persistence

Unreal용 Android XR 확장 프로그램 (v1.0.0)

Raycast

XR_ANDROID_raycast

Unreal용 Android XR 확장 프로그램 (v1.0.0)

추적 가능 항목 (평면/깊이)

XR_ANDROID_trackables

Unreal용 Android XR 확장 프로그램 (v1.0.0)

객체 추적

XR_ANDROID_trackables_object

Unreal용 Android XR 확장 프로그램 (v1.0.0)

장면 메시

XR_ANDROID_scene_meshing

Unreal용 Android XR 확장 프로그램 (v1.0.0)

얼굴 추적

XR_ANDROID_face_tracking

Unreal용 Android XR 확장 프로그램 (v1.0.0)

눈 추적

XR_ANDROID_eye_tracking

Unreal용 Android XR 확장 프로그램 (v1.0.0)

패스스루 카메라 상태

XR_ANDROID_passthrough_camera_state

Unreal용 Android XR 확장 프로그램 (v1.0.0)

패스 스루 메시 레이어

XR_ANDROID_composition_layer_passthrough_mesh

Unreal용 Android XR 확장 프로그램 (v1.0.0)

깊이 텍스처

XR_ANDROID_depth_texture

Unreal용 Android XR 확장 프로그램 (v1.0.0)

조명 추정

XR_ANDROID_light_estimation

Unreal용 Android XR 확장 프로그램 (v1.0.0)

빛 추정 큐브맵

XR_ANDROID_light_estimation_cubemap

Unreal용 Android XR 확장 프로그램 (v1.1.0)

실적 측정항목

XR_ANDROID_performance_metrics

Unreal용 Android XR 확장 프로그램 (v1.0.0)

권장 해결 방법

XR_ANDROID_recommended_resolution

Unreal용 Android XR 확장 프로그램 (v1.0.0)

손 상호작용

XR_EXT_hand_interaction

Unreal용 Android XR 확장 프로그램 (v1.0.0)

디버그 유틸리티

XR_EXT_debug_utils

Unreal Native OpenXR

성능 설정

XR_EXT_performance_settings

Unreal Native OpenXR

디스플레이 화면 재생 빈도

XR_FB_display_refresh_rate

Unreal Native OpenXR

핸드 트래킹 메시

XR_FB_hand_tracking_mesh

Unreal용 Android XR 확장 프로그램 (v1.0.0)

Space Warp

XR_FB_space_warp

Unreal Native OpenXR

Equirect2 컴포지션 레이어

XR_KHR_composition_layer_equirect2

Unreal Native OpenXR

Android 스레드 설정

XR_KHR_android_thread_settings

Unreal Native OpenXR

전역 패스 스루 어둡게 하기

XR_ANDROID_global_passthrough_dimming

Unreal용 Android XR 확장 프로그램 (v1.0.0)

시스템 확장 프로그램 속성

XR_ANDROID_enumerate_system_extension_properties

Unreal용 Android XR 확장 프로그램 (v1.0.0)

공간 항목

XR_EXT_spatial_entity

Unreal용 Android XR 확장 프로그램 (v1.0.0)

공간 평면 추적

XR_EXT_spatial_plane_tracking

Unreal용 Android XR 확장 프로그램 (v1.0.0)

공간 마커 추적

XR_EXT_spatial_marker_tracking

Unreal용 Android XR 확장 프로그램 (v1.0.0)

공간 앵커 및 지속성

XR_EXT_spatial_anchor, XR_EXT_spatial_persistence

Unreal용 Android XR 확장 프로그램 (v1.0.0)

표시 영역 페더링

XR_ANDROID_viewport_feathering

Unreal용 Android XR 확장 프로그램 (v1.1.0)

공간 탐색 및 깊이 레이캐스트

XR_ANDROID_spatial_discovery_raycast

Unreal용 Android XR 확장 프로그램 (v1.1.0)

확장 프로그램은 다음 소스 중 하나에서 제공됩니다.

  • Unreal용 Android XR 확장 프로그램: Android XR 플랫폼용으로 개발된 Google 전용 확장 프로그램(ANDROID) 및 공간 엔티티 확장 프로그램 (EXT)입니다. 이러한 공간 기능을 활용하려면 .uproject에 Android XR Extensions 플러그인을 설치하고 사용 설정하고 Blueprint 및 C++ 사용에 관한 Unreal용 Android XR Extensions API 참조를 확인하세요.
  • Unreal Native OpenXR: 이러한 기능은 Unreal Engine의 핵심 OpenXR 플러그인 내에서 이미 직접 통합되고 유지관리되는 Khronos (KHR), 확장 프로그램 (EXT), Meta (FB) 표준 확장 프로그램을 활용합니다.