[iOS] AR Quick Look을 활용한 증강현실 구현

Updated:

AR Quick Look, meet Object Capture

1

  • AR Quick Look은 iOS에 내장된 3D 모델 AR 뷰어이다.
  • 사파리 브라우저, 메신저, 파일 등에 사용 가능하다.
  • 프로젝트(or 프로덕트) 데모 등에 유용하게 사용될 수 있다.



3D Object 생성

  • 이전에는 AR Quick Look을 사용해 3D 컨텐츠를 만들려면 외부 3D 모델링 소프트웨어를 사용하여야 했다.

2

  • 하지만 21년도에 3D 모델링 소프트웨어 없이 iOS 자체적으로 RealityKit에 내장된 Object Capture 라는 API 를 제공하여 USDZ 파일을 생성하는 단계를 간소화 시켰다.
  • Object Cature API는 실제 사물의 이미지들을 사용하여 높은 수준의 3D 모델을 생성해낸다.
  • 하지만 Object Capture 하는 것은 AR Quick Look에 바로 보여지는 USDZ파일을 생성하기 위한 많은 부하비용을 발생시킨다.

3

  • 상호적인 커스텀 동작을 추가 하고 싶다면 Reality Composer 라는 것을 사용할 수 있다. 예를 들어 Tap 이벤트나 카메라 액션같은 기능을 적용할 수 있다.

4



  • Object Cature를 사용하여 3D 오브젝트를 만드는 과정

    첫째, 우선 실제 사물을 모든 각도에서 찍는다.

    5-1 5-2 5-3


    둘째, 그 후 Object Cautre를 사용하여 USDZ 모델을 생성한다.

    6

    셋째, 위에서 만든 USDZ 모델에다가 Reality Composer를 사용하여 커스텀 이벤트를 생성할 수도 있다.

    7



Exporting USDZ 파일

  • 위에서 만든 3D 모델의 USDZ 파일을 export 할 때 어떤 디지털 설정을 적용할 것인지가 중요하다.

8

  • 대체로 파일사이즈가 작으면 작을 수록 3D 모델의 정교함이 떨어지지만, AR Quick Look을 사용하기 위해서는 작은 파일 사이즈가 권장된다.

9

10

  • Reduced는 적은 비용이기 때문에 여러 개의 애셋을 하나의 scene에 보여줄 때와 웹용으로 사용할 때 적합하다.
  • MediumReduced 보다는 큰 비용이지만 보다 더 정교한 하나의 애셋을 하나의 scene에 보여주고 싶거나 앱용으로 적합하다.
  • ReducedMedium 설정이 적용된 USDZ 파일을 각각 export해서 항상 비교도록 하는 것이 권장된다.
  • 다양한 기기에서 테스트해볼 것을 권장한다.



AR Quick Look을 사용하여 3D 모델 보이기

굉장히 간단한 방법으로 AR Quick Look을 사용하여 웹이나 앱에 3D 모델을 보여줄 수가 있다.

11

  • AR Quick Look을 사용하기 위해서는 Quick Look Framework를 import 한다.
  • QLPreviewController 객체를 생성하여 present 시킨다.
  • QLPreviewControllerDataSource Protocol을 채택하여 몇개의 Preview를 보여줄지와 각 Preview는 어떤 형태를 가지는지 등을 설정한다.


12

  • href=”alarm-clock.usdz” : 로컬에 저장되어 있는 usdz 파일
  • rel=”ar” : 사진에 보이는 AR 뱃지 아이콘
  • allowsContentScaling=0 : 스케일링 설정 disable



AR Quick Look의 활용

이커머스

  • 소비자는 자신이 원하는 상품을 3D로 바로 접할 수 있다.
  • Reality Composer를 사용하여 상품을 터치시에 색이나 모양을 변경하는 이벤트를 추가할 수 있다.

13


박물관 or 전시회

  • 직접 박물관에 가지 않고도 전시품을 관람할 수 있다.
  • Reality Composer를 사용하여 터치시 도슨트의 전시품 설명을 청취할 수 있다.

14

[출처]: WWDC 강연: AR Quick Look, meet Object Capture

Categories: ,

Updated:

Leave a comment