AR

    AR Foundation으로 Virtual Ruler 구현하기

    AR Foundation으로 Virtual Ruler 구현하기

    앞선 포스트들과 같이, 작년에 이어서 AR virtual ruler를 개발하는 작업을 진행중이다. 달라진 점이 있다면, AR Core 대신 AR Foundation을 이용했다는 점이다. AR Foundation은 AR Core(Google) + AR Kit(Apple)의 기능을 통합한 SDK이다. 보통 AR앱이 android와 ios 모두에서 작동되도록 하기 위해 AR Foundation을 사용하는 듯 하다. 여기서는 AR Founadtion을 이용하면 AR의 인식 성능이 좋아지지 않을까 싶어서 해본 시도였지만 결과적으로 성능은 AR Core를 이용할 때와 큰 차이는 없는 듯 하다. 하지만 유튜브 등에서 AR Foundation 관련 정보를 쉽게 찾을 수 있고, 추후 ios로 확장할 계획이 있다면 AR ..

    Virtual Ruler 중간정리

    Virtual Ruler 중간정리

    지금까지 작성한 AR Ruler 관련 4개의 포스트를 합쳐서 정리해둔 포스트이다. 이전 4개의 포스트와 내용은 같으므로 앞 포스트들을 봐도 된다. ※하지만 이 글은 2020.12.08 기준 앞의 4개의 포스트를 합친 것이므로, 그 이후의 시점에 혹시 수정사항이 있었다면 이 포스트와 앞의 포스트의 내용이 일치하지 않을수도 있다. 앞 포스트들의 Last Update 날짜를 확인하길 바란다. 이 포스트는 앞의 포스트들과 같이 ARCore를 이용해 Virtual Ruler를 만드는 것을 목적으로 하며, 아래의 순서로 구성되어 있다. 1. 유니티에서 ARCore 시작하기 2. HelloAR 3. AR Ruler① 4. AR Ruler② 5. 레퍼런스 그리고 각각의 순서 안에 3~4개의 하위 내용이 포함되어 있다...

    4. AR Ruler②

    4. AR Ruler②

    이번 포스트에서는 예고한대로 저번 포스트에서 만든 간단한 Virtual Ruler를 개선해보고자 한다. 몇가지 기능을 추가하는거라 어렵지는 않을 것이라고 생각된다. 이번 포스트는 1. 화면 가로 모드로 고정 2. 지우개 기능 추가 3. 점 포커싱 기능 추가 로 이루어져 있다. 1. 화면 가로 모드로 고정 AR을 인식하면서 화면이 흔들려 가끔 화면이 가로, 세로로 움직이는 것이 불편해 화면을 가로모드로 고정해보고자 한다. 이 편이 UI를 배치할 때 세로 모드는 고려하지 않아도 될 것 같기도 했다. 물론 이 부분은 번거로울지 몰라도 아예 불가능한건 아닌 것으로 알고 있다. 평면을 더욱 안정적으로 인식하는 것에도 도움이 될 것이라고 생각되었기에, 일단 화면을 가로로 고정시켜보도록 하겠다. 추후 그럴 필요가 없..

    3. AR Ruler①

    3. AR Ruler①

    이번 포스트에서는 이전 포스트의 HelloAR 예제를 변형해 간단한 Virtual Ruler를 만들어볼 것이다. 평면만 잘 인식된다면 거리를 구하는 코드는 어렵지 않다. 인식한 평면을 기준으로 터치한 위치의 좌표를 뽑아내고, 두 점 사이의 거리를 구하면 된다. 정확도 등을 위해서는 세부적인 조정이 필요할 것으로 보이지만, 일단은 기본적인 ruler부터 구현해 보고자 한다. 이번 포스트는 1. Ruler 코드 - 선언과 초기화 2. Ruler 코드 - Update() 수정: Play버튼으로 볼 수 있게 3. Asset 설정 4. Ruler 코드 - Update() 수정: AR 앱을 실행해서 볼 수 있게 로 이루어져 있다. 이번 포스트는 아래 링크들을 참고하였다. 참고 링크: https://assetstor..

    2. HelloAR

    2. HelloAR

    이번 포스트에서는 저번 포스트에 이어, HelloAR 예제를 공부한 내용을 기록하고자 한다. 따라서 정확도는 떨어질 수 있다. 이번 포스트는 유니티와 C#에 대해 어느정도 알고 있는 편이 좋을 것 같다. (프리팹 등 유니티 용어에 대해서 세세하게 다루지는 않을 예정이다.) 이번포스트는 크게 1. Hierachy 2. HelloARController 3. 빌드 로 이루어져 있다. 이번 포스트는 아래 링크를 많이 참고하였다. (아마 아래 글은 낮은 버전의 AR Core SDK를 기준으로 쓰인 듯 하다. 이 포스트는 arcore-unity-sdk-1.20 이상의 버전을 사용하였으니 본 포스트의 설명과 아래 글의 설명이 완전히 같지 않을 수 있다.) 참고 링크: https://developers.google.c..

    1. 유니티에서 ARCore 시작하기

    1. 유니티에서 ARCore 시작하기

    ARCore는 증강 현실 애플리케이션을 빌드 할 수 있도록 Google에서 개발 한 소프트웨어 개발 키트(SDK)이다. AR을 구현하기 위한 다른 키트로는 ARKit가 있는데, ARKit는 iOS 11을 실행하는 기기를 지원하고, ARCore는 Android Nougat(7.0) 이상을 실행하는 기기를 지원한다고 한다. 이번에는 AR 기술이 들어간 안드로이드 앱을 만드는 것이 목표였기 때문에, ARCore를 사용하였다. 원래는 바로 Android Studio에서 개발하려고 했으나, 무슨 이유에서인지 Android Studio가 노트북에서 잘 작동하지 않아 Unity에서 ARCore를 이용해 개발을 하게 되었다. 이제부터 Unity에서 어떻게 ARCore를 이용할 수 있는지, 특히 AR Ruler(Virt..