Unity AR

Unity 공부일지 : AR Foundation, AR Subsystems, AR Session, AR Session Origin, AR Manager, AR Practice

나만두 2023. 6. 29. 01:24

다시 Unity공부 시작

AR Foundation

 

Unity플랫폼에서 AR개발을 위한 개발 프레임워크이다. 

 

AR Subsystems

AR을 지원하기 위한 핵심 기능을 제공하는 인터페이스와 클래스의 집합. 카메라 관리, 트래킹, 환경인식, 앵커관리, 인식 및 추적 이벤트 등 AR구현을 위한 기능들이 포함되어 있다.

 

Graphics API

Vulkan- window에서 사용

metal-ios에서 사용

opengles3-안드로이드에서 사용

 

AR session, AR session origin

-AR foundation에서 필수적으로 사용하는 오브젝트

-AR session:ar구축을 위한 주요 프로젝트를 관리하는 객체, 하드 디바이스에서 

이미지 데이터와 모션 데이터를 받아와서 이미지 분석과 여러 가지 알고리즘을 수행 

이 결과물을 실제 존재하는 real world와 ar콘텐츠 모델링하는 virtual world사이 연결 구축

글로벌 객체라 따로 설정할 건 없음

-AR session origin: virtual world에서 랜더링 된 ar 컨텐츠들을 real world 

좌표 공간에 매팽하기 위한 객체 ar 객체들의 스케일을 조정하거나 오프셋을 적용시킬 수 있다. 

하위에 ar카메라를 가지고 있다.

 

AR camera Manager에서

facing direction-user은 셀프 카메라 모드, world는 후면 카메라 모드이다.

 

AR Plane Manager//지면인식

-Detection Mode Horiziontal은 수평면 인식

-Detection Mode Vertical은 수직면 인식

-plane prefab에 ar default plane을 넣으면 지면 인식이 가능하다.

 

AR Point cloud manager // 특징점 인식

-point cloud prefab에 ar default point cloud을 넣으면 특징점이 인식된다.

 

AR Tracked Image Manager

-특정 이미지를 인식하고 이미지 위에 3d오브젝트를 올려주는 컴포넌트

 

AR Human body manager

-사람 바디를 인식하고 위치를 추적해 주는 컴포넌트

 

 

실행

butterfly AR 구현

0) ios build window- package manager에서 ar foundation, ar kit , build setting에서 ar kit plugin, support ar kit, ios version확인.

1) build and run할 시 나비 사진에 오류 발생->advanced read/write, compression(압축)을 none으로 변경함.

2) XR reference image library를 이용해 나비 사진을 추가하고 사이즈 넣음

2) butterfly Demo scene에 있는 butterfly객체를 새 폴더를 만들어 에셋에 프리팹화 한 뒤 AR tracked image manager에 넣음

 

Earth tracking mv구현

1) butterfly와 동일하지만 video player를 직접 구현 3d object를 만들어서 뮤비 삽입 후

image tracked manager에 넣어 구현

2) 가로로 된 동영상이 세로로 나오거나 뒤집어져 나오는 변수

3) 동영상 inspector에서 transcode-filp Horizontally(좌우반전), flip vertically(상하반전) 통해 해결