OpenXR로 개발

적용 가능한 XR 기기
이 가이드에서는 이러한 유형의 XR 기기를 위한 환경을 빌드하는 방법을 설명합니다.
XR 헤드셋
유선 XR 안경

 

OpenXR 텍스트 로고

Android XR은 OpenXR로 빌드된 앱을 OpenXR 1.1 사양 및 일부 공급업체 확장 프로그램 지원을 통해 지원합니다. OpenXR은 다양한 XR 기기에서 공통 API 집합을 사용하여 몰입형 대화형 환경을 만들 수 있는 개방형 표준입니다.

기능

Android XR은 OpenXR을 사용하여 XR 기기의 고유한 기능을 최대한 활용하는 앱을 빌드할 수 있는 기능을 지원합니다. 이러한 기능은 다음과 같습니다.

공간 항목 프레임워크
장면 이해 및 공간 추론을 위한 통합 기반입니다. 애플리케이션이 환경에서 실제 공간 항목을 검색, 쿼리, 추적하고, 항목에 연결된 공간 앵커를 만들고, 공간 항목 광선 투사를 실행하고, 애플리케이션 세션 전반에서 공간 항목을 유지할 수 있습니다.
추적 가능 항목
환경 내에서 평면 표면을 식별하고 추적하는 기능인 평면 감지를 지원하여 실제 세계와 관련된 가상 객체를 배치할 수 있으며, 사용자가 이동하더라도 가상 콘텐츠가 정확하게 배치되고 방향이 지정되도록 실제 객체 또는 위치에 연결할 수 있는 가상 참조 지점인 앵커를 지원합니다.
광선 투사
가상 광선과 장면의 객체 간 교차점을 결정하는 데 사용되는 기법으로, 가상 요소 선택 및 조작과 같은 상호작용을 용이하게 합니다.
앵커 지속성
여러 세션에서 앵커를 저장하고 복원하는 기능으로, 환경 내에서 가상 콘텐츠를 지속적이고 일관되게 배치할 수 있습니다.
객체 추적
실제 세계에서 마우스, 키보드 및 기타 객체를 추적하는 기능입니다.
QR 코드 추적
실제 환경에서 QR 코드를 추적하고 데이터를 디코딩하는 기능입니다.
심도 텍스처
카메라와 장면의 객체 간 거리에 관한 정보를 제공하는 심도 지도를 생성하여 더 현실적인 오클루전 및 상호작용 효과를 지원합니다.
패스 스루
실제 카메라 영상과 가상 콘텐츠를 혼합하여 실제 세계와 디지털 세계를 매끄럽게 결합하는 혼합 현실 환경을 만드는 기능입니다.
장면 메시
물리, 오클루전, 기타 세계 인식 상호작용에 사용할 수 있는 환경의 3D 메시를 가져오는 기능입니다.
컴포지션 레이어 패스 스루
다각형 패스 스루 컴포지션 레이어 잘라내기를 허용하며, 실제 객체를 장면에 가져오는 데 사용할 수 있습니다.
얼굴 추적
사용자 얼굴의 특징을 추적하여 더 현실적이고 표현력이 풍부한 아바타와 가상 캐릭터를 만들 수 있는 기능입니다.
눈 추적
사용자 눈의 위치와 방향을 제공하며, 아바타의 눈 자세를 더 현실적으로 만들도록 설계되었습니다.
핸드 트래킹
사용자 손의 위치와 움직임을 추적하는 기능입니다.
손 메시
사용자의 손을 로우 폴리 메시로 정확하게 표현합니다. 가능한 최고의 성능을 얻을 수 있도록 플랫폼-애플리케이션 전송에 최적화되어 있습니다. 이는 바인드 포즈와 블렌드 가중치를 사용하는 다른 확장 프로그램의 대안입니다.
조명 추정
사용자의 실제 조명 조건과 일치하도록 조명 모델에 사용됩니다.

지원되는 입력 기기

Android XR은 다음 입력 기기도 지원합니다.

손 상호작용
손가락으로 꼬집기, 스와이프, 가리키기와 같은 특정 손동작을 인식하여 사용자가 동작과 손 움직임을 사용하여 가상 객체와 상호작용할 수 있도록 합니다.
시선 상호작용
사용자의 눈 움직임을 추적하여 시선을 사용하여 가상 객체를 선택하고 상호작용할 수 있도록 합니다.
6DoF 모션 컨트롤러
컨트롤러의 위치와 움직임을 추적하고 앱 내에서 작업 또는 호버 이벤트를 트리거하기 위한 방향 패드 및 버튼 바인딩을 추적하는 기능입니다.
마우스 상호작용
사용자가 3D 공간에서 마우스 포인터를 통해 객체와 상호작용할 수 있는 기능입니다.

지원되는 성능 기능

Android XR은 다음과 같은 성능 관련 기능을 지원합니다.

눈 추적 포비에이션
앱이 눈의 초점 지점에서만 더 높은 해상도 콘텐츠를 렌더링할 수 있도록 합니다.
공간 워프
속도 벡터와 심도 텍스처 정보를 사용하여 트윈 프레임을 생성하여 사용자가 환경에 몰입하는 데 필요한 프레임 속도를 효과적으로 높입니다.
프레임 합성
애플리케이션에서 제공하는 모션 벡터와 프레임 데이터를 사용하여 중간 프레임을 합성하여 시각적 부드러움과 프레임 속도를 개선합니다.
성능 측정항목
현재 XR 기기, 컴포지터, XR 앱의 런타임에 Android XR 성능 측정항목을 제공합니다. 여기에는 CPU 프레임 시간, GPU 프레임 시간, GPU 사용률, CPU 주파수, 초당 프레임 수 등이 포함됩니다.

지원되는 기능 및 확장 프로그램의 전체 목록은 OpenXR 기능 개요를 참고하세요.

지원되는 엔진

Android XR을 사용한 OpenXR 개발에는 다음 엔진이 지원됩니다.

Unity

OpenXR을 기반으로 빌드된 Android XR의 Unity 지원을 통해 개발자는 Unity 6을 사용하여 환경을 만들 수 있습니다. Unity 개요에서 Unity를 사용하여 XR 앱을 빌드하는 방법을 자세히 알아보세요.


OpenXR™ 및 OpenXR 로고는 The Khronos Group Inc. 의 상표이며 중국, 유럽연합, 일본, 영국에서 상표로 등록되어 있습니다.