79829416

Date: 2025-11-25 08:02:19
Score: 1
Natty:
Report link

Unreal Engine(이하 UE)으로 Android 기반 XR(VR/AR) 프로젝트를 시작하려는 시점에서 겪는 혼란은 지극히 정상입니다. Unity는 AR Foundation이나 XR Interaction Toolkit으로 상대적으로 경로가 명확한 반면, Unreal은 최근 1~2년 사이 OpenXR로 대전환을 하면서 문서가 파편화되어 있습니다.

결론부터 말씀드리면, **"Unreal은 Android XR을 공식 지원하지만, '순수 OpenXR'만으로는 부족하며 하드웨어 제조사(Meta, Pico 등)의 플러그인과 함께 사용해야 가장 안정적"**입니다.

질문하신 내용을 바탕으로 실무 관점의 현황과 설정을 정리해 드립니다.


1. Unreal Engine Android XR 빌드 필수 설정 (UE 5.3~5.5 기준)

현재 가장 안정적인 Unreal Engine 5.3~5.4 버전을 기준으로 한 표준 설정입니다. 버전이 맞지 않으면 패키징 오류가 발생할 확률이 매우 높습니다.

구분권장 설정 및 버전비고Engine VersionUE 5.4 (권장) 또는 5.35.4에서 XR 렌더링 성능(Vulkan)이 대폭 개선되었습니다.Android StudioFlamingo 또는 GiraffeUE 버전에 따라 다릅니다. (UE 5.4는 Flamingo/Giraffe 권장)NDKr26b (UE 5.4) / r25b (UE 5.3)프로젝트 설정에서 정확한 경로를 지정해야 합니다.JDKOpenJDK 17JAVA_HOME 환경변수 설정 필수입니다.Build SystemGradleAGP(Android Gradle Plugin) 8.x 대 버전을 사용하게 됩니다.Min SDK29 (Android 10) 이상XR 장비(Quest 3 등)는 보통 최신 OS를 사용하므로 29~32로 설정합니다.Target SDK32 또는 34구글 플레이 스토어 등록 시 최신 버전 요구 사항을 확인해야 합니다.

[필수 플러그인 활성화]

  1. OpenXR: Enabled (필수, 엔진 코어 기능)

  2. OpenXRHandTracking: Enabled (손 추적 필요 시)

  3. Mobile Foveated Rendering: Enabled (성능 최적화 필수)


2. OpenXR 지원 여부: "완벽하지만, 혼자가 아닙니다"

질문하신 **"공급업체 통합 없이 OpenXR만으로 작동하는가?"**에 대한 답은 **"작동은 하지만, 상용화 수준을 위해서는 공급업체 플러그인이 필수"**입니다.


3. ARCore vs. HMD (Head Mounted Display)

이 부분이 문서에서 가장 헷갈리는 지점입니다. 'Android XR'이라는 용어가 두 가지를 혼용합니다.

  1. 핸드헬드 AR (스마트폰/태블릿):

    • 기술: Google ARCore를 사용합니다.

    • 설정: Google ARCore 플러그인을 켜고, 프로젝트 설정에서 Configure Google ARCore를 실행해야 합니다.

    • 현황: Unity의 AR Foundation에 비해 Unreal의 AR 지원은 기능 업데이트가 느린 편입니다. 단순한 AR은 가능하지만, 복잡한 상호작용은 C++ 작업이 필요할 수 있습니다.

  2. HMD VR/MR (Quest, Pico 등 Android 기반):

    • 기술: OpenXR을 사용합니다.

    • 설정: OpenXR + Vendor Plugin 조합을 사용합니다. ARCore는 사용하지 않습니다(Passthrough는 벤더 SDK로 처리).

    • 현황: Unreal 5의 NaniteLumen이 모바일(Android) XR에서 제한적으로 지원되기 시작하면서, 그래픽 퀄리티 면에서는 Unity보다 잠재력이 큽니다.


4. 알려진 제한 사항 및 주의점

Unity 대비 Unreal로 Android XR을 개발할 때 겪게 될 현실적인 장벽입니다.

  1. 초기 설정의 난이도 (Android Setup):

    • Unreal은 SetupAndroid.bat 스크립트를 제공하지만, Java 버전이나 NDK 버전이 조금만 꼬여도 빌드가 실패합니다. Unity 허브처럼 자동으로 관리해주지 않습니다.

    • 해결: 프로젝트 시작 전 "Android Turnkey" 설정을 통해 모든 SDK 경로가 초록색(Valid)인지 확인해야 합니다.

  2. 성능 및 빌드 크기:

    • 빈 프로젝트도 APK 용량이 Unity보다 큽니다 (기본 100MB~).

    • 모바일 GPU에서 Unreal의 렌더링 파이프라인은 무겁습니다. Forward Shading을 켜고, Instanced Stereo Rendering 또는 Mobile Multi-View를 반드시 설정해야 프레임 방어가 가능합니다.

  3. 공식 문서의 부족:

    • Unreal 공식 문서는 최신 내용을 즉각 반영하지 못하는 경우가 많습니다.

    • 팁: Epic Games 문서보다는 Meta의 Unreal 개발자 문서Pico 개발자 문서를 메인으로 참고하는 것이 훨씬 정확합니다.

  4. Google의 새로운 "Android XR":

    • 최근 구글이 삼성과 협력하여 발표 예정인 새로운 'Android XR' 플랫폼은 아직 Unreal에 전용 SDK가 공개되지 않았습니다. 이 경우 표준 OpenXR로 대응하게 될 것입니다.

출처:goole

Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • Contains question mark (0.5):
  • No latin characters (1):
  • Low reputation (1):
Posted by: 박예찬