Beatchoi's Blog

List of Postings

유니티 터치 드래그
유니티 터치 드래그

모바일 터치 입력

이전 포스팅을 기반으로 오브젝트를 터치하여 드래그로 이동시켜 보도록 합니다.

스크립트 작성

Touch02스크립트를 생성하여 아래와 같이 작성합니다.

```ruby using System.Collections; using System.Collections.Generic; using UnityEngine;

유니티 터치 기초
유니티 터치 기초

모바일 터치 입력

스마트폰이나 터치 디바이스 등 스크린 터치가 가능한 디바이스에서 실행 가능한 터치를 구현합니다.
Input.Touch를 활용하면 유니티 게임 창에서 마우스를 활용한 클릭은 구현되지 않습니다.
하지만 GetMouseButton를 활용하여 터치를 구현했을 때와는 다르게 다양한 기능들을 활용할 수 있습니다.
따라서 드래그, 멀티터치 등의 복잡한 터치를 구현하기 위해서는 Input.Touch를 활용하는 것이 좋습니다.

스크립트 작성

```ruby using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;

ARFoundation - Multiple Image Tracking
ARFoundation - Multiple Image Tracking

ARFoundation을 활용한 다중 이미지 트래킹 콘텐츠 개발하기

이전 실습에 이어서 여러장의미지에 각기 다르 오브젝트를 증강할 수 있는 콘텐츠르 개발해 봅니다.

유니티3D 에디터에서

ARFoundation - Image Tracking
ARFoundation - Image Tracking

ARFoundation을 활용한 이미지 트래킹 콘텐츠 개발하기

ARFoundation을 활용하여 이미지를 인식하고 인식한 이미지에 가상의 오보젝트를 증강시켜 봅니다.

유니티3D 에디터에서

ARFoundation의 환경설정을 진행합니다.
AR Session OriginAR Session 오브젝트를 추가합니다.

Project 청에서 마우스 우 클릭, Create -> XR -> Reference Image Library를 선택하여 추가합니다.


<01. Reference Image Library 추가>

인식할 이미지 파일을 Project창으로 옮겨 프로젝트에 추가합니다.
인식할 이미지의 형태에 따라 인식률에 차이가 있으며 인식이 불가능한 이미지의 경우 빌드가 되지 않습니다.
아래 이미지를 활용해 봅니다.


<02. Image Target>

생성된 Reference Image Library를 선택하고 우측 인스펙터 창을 확인합니다.
Add Image 버튼을 클릭하여 인식될 이미지를 추가할 항목을 생성합니다.
이어서 프로젝트 창에 있는 인식할 이미지를 드래그하여 Texture 2D항목에 끌어 놓습니다.
Specify Size항목을 체크하고 생기는 하단 항목의 Physical Size항목의 X 값을 1로 설정합니다.


<03. Reference Image 추가>

이어서 AR Session Origin 오브젝트를 선택하고 Inspector창에서 AR Tracked Image Manager 컴포넌트르 추가합니다.
AR Tracked Image Manager컴포넌트의 Serialized Library 항목에 Reference Image Library파일을 끌어다 놓습니다.


<04. AR Tracked Image Library Manager 추가>

이제 이미지를 인식하면 생성이 될 3D 오브젝트를 생성합니다. Cube오브젝트를 생성하고 본 오브젝트를 Prefab으로 만들어 줍니다.


<05. Cube 오브젝트 생성>


<06. Cube 오브젝트 Prefab 생성>

마지막으로 AR Session Origin오브젝트의 AR Tracked Image Manager컴포넌트의 Tracked Image Prefab 항목에 Cube 프리펩을 연결합니다.
Hierarchy창의 Cube 오브젝트는 제거합니다.


<07. Cube Prefab 연결>

테스트 해보기

ARFoundation - Settings<2022-04-14>
ARFoundation - Settings<2022-04-14>

Unity3D 2021.3 및 안드로이드 버전 12 가능 <2022-04-14>

ARFoundation을 활용한 증강현실 프로젝트 설정하기

ARFoundation을 활용하여 증강현실 콘텐츠를 만들 수 있는 준비를 해봅니다.

유니티3D 에디터에서

패키지 설치 :: Package Manager

상단 메뉴에서 Window탭의 Package Manager를 선택합니다.


<01. 패키지 매니저 - 01>

패키지 매니저 창에서 Packages항목을 아래와 같이 Unity Registry로 변경합니다.


<02. 패키지 매니저 - 02>

Package Manager창에서 ARFoundation패키지를 설치합니다. 우측 하단 Install 버튼을 클릭합니다.


<03. ARFoundation 패키지 설치>

Package Manager창에서 ARCore XR Plugin패키지를 설치합니다. 우측 하단 Install 버튼을 클릭합니다.


<04. ARCore XR Plugin 패키지 설치>

플랫폼 세팅

프로젝트를 생성하고 Build Settings창에서 플랫폼을 Android로 변경합니다.


<05. 개발 플렛폼 변경>

Player Settings -> Other Settings항목에서 Rendering항목을 찾습니다. Auto Graphics API항목을 체크 해제합니다.
OpenGLES3Vulcan의 상단으로 갈 수 있도록 마우스로 클릭, 드래그하여 끌어줍니다.


<06. Graphic API Level 변경>

Player Settings -> Other Settings항목에서 Identification항목의 Minimum API LevelAndroid 10.0 (API Level 29)으로 변경합니다.


<07. Android API Level 변경>

본인의 안드로이드 디바이스의 버전이 10 이상일 경우 구글 어플리케이션 정책에 의해 64비트의 어플리케이션만 실행이 가능하기 때문에 아래 항목을 진행합니다.
Other Settings항목의 Configuration항목을 찾습니다.
Scripting Backend항목을 Mono에서 IL2CPP로 바꿔줍니다.
또한 Target Architectures항목의 ARM64 항목을 체크해줍니다.


<08. 64비트 안드로이드 어플리케이션 설정>

Project Settings창에서 좌측 하단 XR Plug-in Managerment항목을 찾아 클릭합니다.
XR Plug-in Managerment창에서 안드로이드 탭으로 설정이 되어있는지 확인하고 ARCore항목을 체크하여 설정합니다.


<09. XR Plug-in Managerment 설정>

계층구조창에서

계층구조창에서 마우스 오른쪽 클릭 XR항목에서 AR Session Origin버튼을 클릭합니다.


<10. AR Session Origin 오브젝트 생성>

계층구조창에서 마우스 오른쪽 클릭 XR항목에서 AR Session버튼을 클릭합니다.


<12. AR Session 오브젝트 생성>

계층구조창에서 Main Camera오브젝트를 제거합니다.


<13. Main Camera 오브젝트 제거>

Latest Posts

LightshipAR SDK 활용하기 - Maps SDK의 활용
LightshipAR SDK 활용하기 - Maps SDK의 활용

ARDK Maps SDK

Lightship의 geofencing 기능을 구현할 수 있는 Maps SDK 활용법을 알아봅니다.

콘텐츠 개발

프로젝트 세팅

본 포스팅은 ARDK 3.9 버전, Maps SDK 0.4 버전을 기준으로 작성합니다. 이전 포스팅을 참조하여 SDK를 임포트 합니다.

Top Down Map

  1. 네이버 지도같은 일반적인 탑-다운 맵을 구현해 봅니다.

Unity3D에서의 UI - Rect Transform
Unity3D에서의 UI - Rect Transform

Unity UI RectTransform :: 개요

UI 객체들의 위치, 크기, 기준점 등등을 담당하는 Rect Transform에 대하여 알아봅니다.

Unity3D에서의 UI - UI의 구성
Unity3D에서의 UI - UI의 구성

Unity UI :: 개요

Unity UI는 게임 및 애플리케이션용 사용자 인터페이스를 개발하는 데 쓰이는 간단한 UI 툴킷입니다. Unity UI는 게임 오브젝트 기반 UI 시스템으로, 컴포넌트와 게임 뷰를 사용하여 사용자 인터페이스를 배열하고 위치와 스타일을 지정합니다. Unity UI는 Unity 에디터 내 사용자 인터페이스에 대해 사용할 수 없습니다.https://docs.unity3d.com/kr/2019.1/Manual/UIToolkits.html