Unity/Unity 리서치 103

모바일 더블 터치(Mobile Double Touch) 구현

간단히 구현해 보았음. Code using UnityEngine.UI; using UnityEngine; public class TouchInput : MonoBehaviour { public Text text1; public Text text2; public Text text3; public Text text4; private float lastTouchTime; private const float doubleTouchDelay = 0.5f; void Start() { lastTouchTime = Time.time; } void Update() { if(Input.touchCount == 1) { Touch touch = Input.GetTouch(0); switch (touch.phase) { cas..

Mobile에서 터치 드래그 구현

드래그를 하면 카메라가 이동하는 코드. RTS게임의 Top View에서 땅을 잡아 끌면 화면이 이동하는 효과를 위해 구현 ① TouchCount : 모바일 디바이스 디스플레이에 손꾸락이 몇개 올려져 있는가? ② Input.Touch(2) : 이거면 3번째로 올라온 손가락을 의미 예제 코드 using UnityEngine.UI; using UnityEngine; public class TouchInput : MonoBehaviour { private float Speed = 0.25f; private Vector2 nowPos, prePos; private Vector3 movePos; public Transform player; public Text text1; public Text text2; publ..

에셋 번들 (Asset bundle) & 어드레서블(Addressables)

Google Play console을 거치지 않고, 파일들을 업데이트 할 수 있는 방법 = Asset Bundle ① 에셋번들은 쪼개서 관리해야 빌드도 빠르고 다운로드도 빠르고 관리도 편함 ② 에셋번들을 개선한 어드레서블(Addressables) 이라는 것이 새로 나옴. 이걸 쓰자 어드레서블 에셋 시스템 - 개념: 등장 배경, vs 에셋번들 샘플 프로젝트 https://github.com/Unity-Technologies/Addressables-Sample bit.ly/AddressablesAssets 등장 배경 어드레서블은 에셋번들을 토대로 설계된 시스템이다. 완전히 새롭게 만들어진 것이 아니라 에셋.. planek.tistory.com 어드레서블 에셋 시스템 | Unity Blog 어드레서블의 주된 ..

[RTS Engine] Unit Attack 공격 딜레이

Unit Attack (유닛에 넣는 컴포넌트)의 Range Use Reload: 재장전 허용할건가? Reload Time: 공격 스킬 쿨타임(1이 되어야 의미가 있음) http://soumidelrio.com/docs/unity-rts-engine/attack-behavior/unit-attack-range/ Unit Attack Range The Unit Attack Range is a field that allows different attack range parameters for an attack unit. This field can be found on the following components: Unit/Building Stopping Distance: When moving towards a..

UnityEvent 클래스

UnityEvent C#의 Delegate인데 Unity용으로 만든 것. MonoBehaviour를 상속받는 모든 클래스에서 사용할 수 있고, UnityEvent 변수를 선언하면 인스펙터에 표시되고 영구적 콜백을 추가할 수 있다. - 영구적 콜백(Persistant Callback)은 인스펙터(Inspector)에서 등록해준 콜백으로, 런타임에서는 수정(등록/제거)할 수 없다. - 비영구적 콜백은 코드에서 등록해준 것이며 런타임 중에 수정이 가능. using UnityEngine; using UnityEngine.Events; public class UnityEventTest : MonoBehaviour { public UnityEvent unityEvent; void Start() { // Callba..

[RTS Engine] 유닛의 Select 범위

유닛이 너무 작거나 하여 선택하는게 잘 안될경우 SelectionObj -> BoxColider의 범위를 넓혀준다. UnitTargetPos 오브젝트의 역할 그룹 이동시 유닛들의 움직임을 정의할때 사용됨. 문서에서 못찾겠어서 인터넷에서 찾았더니 제작자가 남긴 글을 찾음. 문서에 있다는디 문서에 없는거같은데? Target Position Collider: A Collider Component that is attached to an empty object, child of the main unit object. The Collider must have "Is Trigger" enabled and its size must approximate the area that the unit occupies on t..

리플렉션 프로브(Reflection Probe)

설명1 : 리플렉션 프로브 : 해당 오브젝트를 배치하여 구역 내에 주변 static오브젝트들을 캡처하여 큐브 맵 데이터로 활용하는 기능. 설명2 : 리플렉션 프로브(Reflection Probe)는 둘러싼 모든 방향의 구면 표시를 캡처하는 카메라와 같은 것으로 보면 됩니다. 캡처된 이미지는 Cubemap로 저장되어, 반사 재질을 가지는 객체에서 사용할 수 있습니다. [UNITY] 리플렉션 Reflection Reflection 반사를 구현하기 위해서는 여러 방법들이 있다. 큐브 맵을 쓴다거나 포스트 프로세싱을 쓴다거나 리플렉션 프로브를 쓴다거나 등등 이 방식들은 모두 실시간 반사가 아닌 그럴듯하게 bornsoul.tistory.com 유니티 - 매뉴얼: 리플렉션 프로브 리플렉션 프로브 A 리플렉션 프로브..

상용 Unity 모바일 게임 출시를 위해 해야 할 일

순수한 목적으로 게임만 구현하고자 하면 상관없지만, 수익성 및 유저관리를 위해서는 유니티 내부 구현과 별개로 아래와 같은 작업이 필요하다 (Android 기준) 예전에 게임을 출시할 때 아래 과정들 때문에 많은 리소스가 소모되었던 기억이 있어, 먼저 이것들부터 처리하고 게임개발을 시작. ① Google PlayStore에 앱 등록 및 출시 스토어에 테스트 버전으로라도 출시등록이 되어있어나 라이선스 키 등을 받을 수 있음. ② Google Play Game Service 연동 유저 개인을 특정하기 위해서 필요. ③ Firebase(Auth, Firestore) 연동 로컬에 저장해버려도 되지만, 유료게임이라면 최소한 유저의 정보는 서버에 저장되어 있어야 할 필요가 있다. Firebase말고 별개로 AWS나 ..

Unity IAP 연동

예전에 해봤던 것과는 다르게 Editor에서 Codeless로 하게끔 되어있다. 아래 블로그글 참조하여 중간 과정에서 나는 오류들을 적절히 처리해가며 구현. https://devparklibrary.tistory.com/27 [Unity] 유니티 IAP 사용하기(인앱결제 설정) 사용 유니티 버전 : 2019.2.18f1 유니티에서 IAP (인앱결제)를 적용하는 방법입니다. 예전에는 인앱결제를 만들려면 해당 코드를 작성해야 했지만 지금은 코드리스 IAP라는 것이 생겨서 손쉽게 IAP를 devparklibrary.tistory.com Codeless 구현 Code를 통해 IAP 조작하고 싶은경우 void Start() { Button button = GetComponent(); if (buttonType =..

Unity Admob 연동하기

Reference https://scvtwo.tistory.com/33 [Unity] 유니티 구글 애드몹 광고 넣기(Google AdMob)(전면 광고) 안녕하세요. 힘들게 만든 게임에서 수익을 얻으려면 게임 내에 광고를 붙여야 합니다. 그래야 보람도 있고, 살림살이도 나아지고.. 다음 게임도 제작할 수 있기 때문이죠... 그래서 오늘은 유니 scvtwo.tistory.com https://inyongs.tistory.com/36 [Unity 이론] Admob 연동 Admob 연동 광고에는 여러가지 종류가 있는데, 이 글에서 알아볼 것은 두가지입니다. 1. 배너 광고 2. 리워드 광고 0. Admob 기본 세팅 일단 유니티에 Admob 플러그인을 Import 하겠습니다. Github에서 최 inyongs..

Unity와 Firebase Firestore 데이터 연동

Reference https://firebase.google.com/docs/firestore/quickstart?hl=ko Cloud Firestore 시작하기 | Firebase 이 빠른 시작에서는 Cloud Firestore를 설정하고 데이터를 추가한 후 Firebase Console에서 방금 추가한 데이터를 확인하는 방법을 볼 수 있습니다. Cloud Firestore 데이터베이스 만들기 Firebase 프로젝트를 firebase.google.com using UnityEngine; using Firebase.Firestore; using Firebase.Extensions; using System.Collections.Generic; using System; public class Firebas..

Unity Firebase 연동

Firebase SDK import 이거 3개 import ① FirebabseAuth ② FirebaseAnalytics ③ FirebaseFirestore Autentication Oauth2.0 등 Google 연동은 이미 완료된 상태 OAuth2.0클라이언트 ID에 Web client 가 생성되어 있어야 함. 디지털 지문을 추가 (SHA1, SHA256) 서비스용, 테스트용 총 4개 넣음 using System.Collections; using UnityEngine; using GooglePlayGames; using GooglePlayGames.BasicApi; using UnityEngine.UI; using Firebase.Auth; public class AuthTest : MonoBeha..

Unity 구글로그인 - (2)

참고: onionisdelicious.tistory.com/69?category=808633 [Unity/Theory] 구글 플레이와 연동하여 기능을 구현하자! (로그인) !!! NOTICE !!! 이 글은 유니티의 이론을 다루고 있습니다! 학습한 정보를 제가 기억하고 추후에도 사용해두기 위해 기록해둔 내용입니다! 이 점 유의하고 봐주세요! 지난 글에서는 유니티 프로젝트 onionisdelicious.tistory.com github.com/playgameservices/play-games-plugin-for-unity/tree/master/current-build playgameservices/play-games-plugin-for-unity Google Play Games plugin for Unit..