Beatchoi's Blog

List of Postings

유니티 UI 길게 누르기 구현 - UI Longpress
유니티 UI 길게 누르기 구현 - UI Longpress

유니티에서의 UI Longpress

유니티에서 UI 길게 누르기를 구현해 봅니다.

유니티3D 에디터에서

스크립트 작성

프로젝트창에서 ButtonLongPressListener.cs스크립트를 생성합니다.

ButtonLongPressListener 스크립트를 열어서 다음과 같이 작성합니다.

Oculus Quest2 - XR Interaction Toolkit Locomotion
Oculus Quest2 - XR Interaction Toolkit Locomotion

XR Interaction Toolkit Locomotion

XR Interaction Toolkit의 Locomotion 기능을 활용하여 이동 및 회전을 구현해 봅니다.

유니티3D 에디터에서

XR Interaction Toolkit 세팅

이전 포스팅을 참조하여 XR Interaction Toolkit 패키지를 임포트 및 빌트세팅을 한 후 진행합니다.

LightshipAR SDK 활용하기 - LightshipAR 프로젝트 세팅
LightshipAR SDK 활용하기 - LightshipAR 프로젝트 세팅

LightshipAR SDK

포켓몬고의 개발사로 잘 알려진 Niantic에서 제공하는 증강현실 SDK 입니다.
기본적으로 포켓몬고에 적용되는 기능들을 구현할 수 있으며 기본적인 지면인식, 공간인식을 포함하여
지오펜싱을 활용한 GPS기반 위치인식, 환경 세그멘테이션 등의 기능들을 활용할 수 있습니다.

이번 강좌에서는 화면을 터치하여 공을 던져보도록 하겠습니다.

콘텐츠 개발

프로젝트 세팅

이전 포스팅인 LightshipAR 프로젝트 세팅를 참조하여 세팅합니다.

씬 세팅

기본 LightshipAR SDK 세팅이 끝났으면 씬으로 돌아와서 계층구조창에 Sphere오브젝트를 하나 생성합니다.
해당 오브젝트의 크기를 0.5,0.5,0.5 로 변경합니다.


<01. Sphere 생성 >

Sphere 오브젝트에 Rigidbody 컴포넌트를 추가합니다.


<02. Rigidbody 생성 >

Sphere 오브젝트를 프로젝트 창으로 끌어 내려서 프리펩으로 만들어 줍니다.


<03. Sphere Prefab 생성 >

LightshipAR SDK 활용하기 - LightshipAR 프로젝트 세팅
LightshipAR SDK 활용하기 - LightshipAR 프로젝트 세팅

LightshipAR SDK

포켓몬고의 개발사로 잘 알려진 Niantic에서 제공하는 증강현실 SDK 입니다.
기본적으로 포켓몬고에 적용되는 기능들을 구현할 수 있으며 기본적인 지면인식, 공간인식을 포함하여
지오펜싱을 활용한 GPS기반 위치인식, 환경 세그멘테이션 등의 기능들을 활용할 수 있습니다.

LightshipAR SDK 다운로드

LightshipAR SDK
Niantic의 LightshipAR SDK 다운로드 페이지에 접근합니다.
가입을 진행하고 다음 페이지에서 Download ARDK를 클릭하여 다운로드 합니다.


<01. Download LightshipAR SDK >

다운로드 받은 유니티 패키지 파일을 유니티 프로젝트에 풀어줍니다.


<02. Import LightshipAR SDK >

LightshipAR SDK 시작

라이선스 키 생성 및

프로젝트를 진행하기에 앞서 제일 먼저 해야할 것은 Dashboard에서 프로젝트를 생성하고 라이선스 키를 생성하는 것입니다.
다음 페이지로 이동합니다.
LightshipAR SDK Dashboard

좌측 Projects항목을 클릭하고 중앙의 New Project버튼을 클릭합니다.
상단 Untitled항목을 클릭하여 프로젝트의 이름을 수정하고
하단 +Create New Key버튼을 클릭하여 라이선스 키를 생성합니다.


<03. LightshipAR SDK Dashboard >

****모양 옆의 복사 버튼을 눌러 라이선스 키를 복사합니다.


<04. Create License Key >

유니티로 돌아가서 프로젝트 창에 Resources/ARDK 의 경로로 폴더를 생성합니다.
Resources폴더를 생성 후 그 안에 ARDK폴더를 생성하면 됩니다.


<05. Resources/ARDK 폴더 생성 >

해당 폴더 안에 ArdkAuthConfig라는 파일을 생성합니다.
프로젝트 창에서 마우스 우클릭, Create -> ARDK -> ArdkAuthConfig순으로 접근하면 됩니다.


<06. ArdkAuthConfig 생성 >

ArdkAuthConfig 파일을 선택하고 우측 인스펙터 창을 확인합니다.
Api Key항목에 전에 복사했던 라이선스 키를 붙여넣습니다.


<07. 라이선스 키 추가 >

프로젝트 설정 - 안드로이드

안드로이드 기기에 빌드하기 위한 설정을 진행해 봅니다.

유니티에서 Azure PlayFab 활용하기 - PlayFab Multiplay
유니티에서 Azure PlayFab 활용하기 - PlayFab Multiplay

Azure Playfab

이번 포스팅에서는 중앙서버를 활용한 멀티플레이를 구현해 봅니다.
이전 네트워크 포스팅 중 Mirror Network를 활용합니다.

Setting

이전 포스팅을 참고하여 Playfab for UnitySDK를 새로 생성한 프로젝트에 적용시킵니다.

로컬 네트워크 상에서의 멀티플레이가 아닌 Azure Playfab을 중앙서버로 두는 멀티플레이를 구현하기 위해 몇가지 설정을 해줍니다.
먼저
GSDK for Unity
위 깃허브 링크에서 GSDK를 다운로드 해줍니다.


<01. GSDK 다운로드 >

다운로드 받은 파일의 압축을 풀고 UnityGsdk -> Assets -> PlayFabSdk에 있는 MultiplayerAgent 폴더를 통채로 유니티 프로젝트 창의 PlayFabSDK 폴더로 복사합니다.


<02. GSDK 임포트 >

Player Settings창에서 Scripting Define Symbols항목을 찾아 ENABLE_PLAYFABSERVER_API을 추가해줍니다.


<03. ENABLE_PLAYFABSERVER_API >

Latest Posts

Unity3D DOTS 개요 - DOTS 알아보기 2. World에 Entity 만들기
Unity3D DOTS 개요 - DOTS 알아보기 2. World에 Entity 만들기

Unity3D DOTS 개요 - DOTS 알아보기 1. ECS
Unity3D DOTS 개요 - DOTS 알아보기 1. ECS

DOTS 개요

DOTS는 Data Oriented Tech Stack의 약자로서 기본 상태에서 최적의 성능을 확보할 수 있는 전혀 다른 방식의 코드 작성 방법입니다. DOTS 방식으로 코드를 짠다면 멀티스레드 성능을 통해 더 많은 개체, 더 많은 이펙트, 더 나은 비주얼을 가진 복잡한 콘텐츠를 만들 수 있습니다.
DOTS는 Entity Component System, C# Job System, Burst Compiler 세 가지 요소로 이루어져 있습니다. 본 포스팅에서는 ECS에 대해서 알아봅니다.

유니티3D 설치
유니티3D 설치

유니티3D를 설치해봅니다.