https://www.youtube.com/watch?v=UuoNTYZaT7k&list=PLATff1khpIscTMN2KXxagrTkBCwdzOeol&index=2
프로젝트는 새로 만들어도 되고 만들때마다 용량이 늘어나므로 기존 프로젝트에 New Scene을 하는걸 추천한다. 3D면 된다.
File>Save를 하면 이름을 물어보는데 난 DebugTest로 했다.
Window>Package Manager에 AR Foundation, ARCore가 잘 설치되어 있어야 한다 기타 빌드 설정도 잘되어 있어야하고 핸드폰도 개발자모드로 되어 있어야하고 연결하고 승인도 해줘야한다. 잡일이 많다.
하이라키 +를 누르거나 우클릭후 AR Session, AR Session Orign을 추가하고 Main Camera는 지워준다.
이제 AR Foundation기능을 테스트 해보자 AR Foundation이 지원하는 기능은 다음과 같은데
세션 | 대상 플랫폼에서 AR을 활성화, 비활성화하고 구성합니다. |
장치 추적 | 실제 공간에서 장치의 위치와 회전을 추적합니다. |
카메라 | 장치 카메라에서 이미지를 렌더링하고 조명 추정을 수행합니다. |
비행기 감지 | 평평한 표면을 감지하고 추적합니다. |
이미지 추적 | 2D 이미지를 감지하고 추적합니다. |
객체 추적 | 3D 객체를 감지하고 추적합니다. |
얼굴 추적 | 인간의 얼굴을 감지하고 추적합니다. |
신체 추적 | 인체를 감지하고 추적합니다. |
포인트 클라우드 | 특징점을 감지하고 추적합니다. |
레이캐스트 | 추적된 항목에 광선을 비춥니다. |
앵커 | 공간상의 임의의 지점을 추적합니다. |
메싱 | 환경의 메시를 생성합니다. |
환경 프로브 | 환경의 큐브맵을 생성합니다. |
폐색 | AR 콘텐츠를 물리적 객체로 가리고 인간 세분화를 수행합니다. |
참가자들 | 공유된 AR 세션에서 다른 기기를 추적합니다. |
일단 하이라키위를 우클릭하면 나타나는 것들부터 해보자
AR Default Point Cloud를 추가하자
AR Session Origin을 클릭후 Inspection뷰에서 Add Component를 클릭하고 AR Point라고 검색한후 AR Point Manager를 추가하자. 그럼 Point Cloud Prefab이라는 Item이 생기고 None에 프리팹을 연결해줘야한다..
프로젝트뷰에 Prefab폴더를 만들고 AR Default Point Cloud를 끌어다 놓으면 Prefab이 생성된다. 하이라키의 있는 것들은 GameObject라는 객체인데 이것들을 끌어다 프로젝트에 놓으면 Prefab으로 바뀐다. Prefab은 Class라고 생각하면 된다. 객체에서 클래스를 만드어 주는거다. 보통은 클래스를 만들고 클래스이용 객체를 만드는 것의 반대이다. 객체지향 어려워요. 참 프리팹을 만든후에는 AR Default Point Cloud는 지워주자. 끌어다 놓을때는 이름을 잘보자 프로젝트뷰가 아이콘아 아니라 리스트로 나오는건 우측 삼점을 누르고 One Columb Layout을 선택하면 된다.
이제 빌드를 해보자 File>BuildSetting를 눌러서 Add Open Scenes를 눌러 현재 씬을 추가해줘야한다.
좌측아래 PlayerSettings(Project Setting에서도 접근가능)를 눌 앱이름을 설정하자.
오른쪽아래 빌드앤런을 누르면 파일명을 물어보면 build라는 폴더를 만들고 들어가서 적당히 이름만든다. 클
세이브할꺼냐고 물어보면 Save
이때 부터 핸드폰을 잘봐라 대기화면이면 풀어주자. 프로그레스바에서 device에 copy한다는 메세지가 나와야 한다. 물론 빌드폴더에서 apk를 핸드폰으로 카피해서 깔아도 되지만 이게 편하다.
핸드폰 화면을 대기화면에서 풀고 잘 보면 아래 팝업이 뜬다. 당황하지 말고 확인 위에 세부정보 더보기를 누르고 다시 확인위에 무시하고 설치하기 누른다.
다음 카메라사용 승인해주면 드디어 앱이 뜬다. 포인트가 안 나온다면 좀 기다려 보고 앵글을 움직여 보면 나온다. 포인트는 오브젝트의 엣지부분을 찾는 기능 같다.
다음은 하이라키 뷰위를 우클릭후 AR Default Plane을 추가 하고
프리팹 폴더에 끌어다 프리팹을 만들자. 그럼 파란색으로 변하고
AR Session Origine에 AR Plane Manager 컴포넌트를 추가하고
AR Default Plane 프리팹을 AR Plane Manager컴포넌트의 Prefab 참조에 연결해준다
Detection Mode는 원하는 면을 선택할수 있는데 현재는 그냥 두자
빌드해주자 잘보면 방법이 똑같다 AR Default XXXX를 추가하고 프리팹을 만들고 AR Session Origne에 AR XXXX Manager를 컴포넌트에 추가하고 프리팹을 연결해준다.
빌드해보면 Point와 Plane인식을 할것이다. Plane인식은 약간 시간이 걸리는것 같다. 그리고 정확하지 않은것 같다. 아이폰은 라이더가 내장되어 있어 정확안듯 하
마지막으로 하이라키에 우클릭후 XR>AR Default Face를 추가하고 프리팹폴더에 끌어다 프리팹만들고 지워주자
AR Session Origine에 AR Face Management 컴포넌트를 추가하고 AR Default Face Prefabs를 연결해준다.
Face Detect를 하기 위해 모델이 있다면야 후방으로 해도 되지만 자신으로 테스트하기 위해 전방카메라를 선택해보자. AR Session Orign>AR Camera를 선택해서 Inspector View아래 Face Direction이 있는데 World->User로 바꾸준다. World가 후방이다.
Face Tracking에서는 Point, Plane Manager가 필요 없다고 해서 지우라는데 난 귀찮아서 안지웠는데 잘되었다 지우는것 대신 불필요한 부분을 비활성화 하는 방법도 있을것 같다. 컴포넌트 이름 왼쪽을 언체크하면 된다.
실행화면 내 눈 코 입을 만들어주고 표정까지 트래킹 해준다. 얼굴을 돌려보면 나름 3D로 모델을 만들어서 맵핑해준다. 유튜브는 이빨과 눈동자도 보이는데 버전에 따라 좀 다른듯
'AR > AR Foundation' 카테고리의 다른 글
AR 개발환경구축하기 (0) | 2024.07.02 |
---|---|
소개 (0) | 2024.07.02 |
iOS / Unity 2022.3.5f1 + AR FOUNDATION / ARKit (0) | 2024.06.30 |
유니티 Unity AR Foundation (0) | 2024.06.30 |