유니티로 안드로이드 게임을 개발하다 보면, 디버깅을 위해 로그를 확인해야 할 때가 많다. 이때 안드로이드 로그캣(Android Logcat)을 활용하면 실시간 로그를 확인하고 문제를 빠르게 파악할 수 있다.1. 로그캣이란?로그캣(Logcat)은 안드로이드에서 발생하는 다양한 로그를 출력해주는 도구다. 시스템 로그, 앱 로그, 에러 로그 등을 확인할 수 있어 디버깅에 매우 유용하다. 2. 유니티에서 로그캣을 사용하는 이유유니티 Debug.Log() 호출 결과도 로그캣을 통해 확인할 수 있다.앱 실행 중 크래시나 ANR 발생 원인을 추적할 수 있다.adb logcat보다 직관적인 인터페이스와 필터링 기능을 제공한다.유니티 에디터 내에서 바로 로그를 확인할 수 있다. 3. Android Logcat 설치 방법..
Unity
Unity에서 버튼 클릭 등을 통해 외부 링크를 여는 방법을 정리한다. 이 방법을 사용하면 게임 내에서 유저가 특정 웹 페이지로 이동하도록 만들 수 있다.1. 외부 링크 열기public void OpenLink(){ Application.OpenURL("https://elpoco.tistory.com/");}

유니티에서 GetComponent 계열 메서드는 게임 오브젝트에서 특정 타입의 컴포넌트를 찾을 때 매우 유용하다.그러나 이 메서드들은 성능에 영향을 줄 수 있기 때문에, 올바르게 사용하는 것이 중요하다.이번 글에서는 GetComponent 메서드의 종류와 최적화 방법에 대해 자세히 알아보겠다. GetComponent 메서드의 종류유니티에서는 다양한 GetComponent 메서드가 있다. GetComponent()GetComponent() 메서드는 현재 게임 오브젝트에서 타입 T의 컴포넌트를 찾는다.찾으면 해당 컴포넌트를 반환하고, 없으면 null을 반환한다.var animator = GetComponent(); GetComponents()GetComponents() 메서드는 현재 게임 오브젝트에서 타입 ..

유니티는 주로 두 가지 방식을 사용하는 거 같다.카멜 표기법과, 파스칼 표기법 카멜 표기법 (Camel Case)주로 private 변수명에 사용한다.private int testValue;private float damage;private float moveSpeed; 파스칼 표기법 (Pascal Case)public, 열거형, 클래스, 메서드에 사용한다.public enum WeaponType{ Sword, Gun}public class BaseController{ public int PlayerDamage; public string PlayerName; private float speed; public void Spawn() { // ....

Dictionary란?Dictionary는 제네릭 컬렉션으로, 키와 값의 쌍으로 데이터를 저장한다.각 키는 유일하며, 값을 빠르게 검색할 수 있다. 장점빠른 검색: 해시 테이블 기반으로, 키를 이용한 빠른 검색이 가능하다.타입 안전성: 제네릭을 사용하여 컴파일 타임에 타입 검사를 제공한다.유연성: 다양한 타입의 키와 값을 사용할 수 있다.단점메모리 사용: 메모리 사용량이 비교적 크다.복잡성: 초기화와 사용법이 다소 복잡할 수 있다.using System.Collections.Generic;using UnityEngine;public class DictionaryExample : MonoBehaviour{ void Start() { Dictionary myDictionary = ne..

Serializable이란?Serializable은 C#의 특성(Attribute) 중 하나로, 특정 클래스나 구조체를 직렬화할 수 있도록 만든다.직렬화(Serialization)는 객체를 저장하거나 전송할 수 있는 형식으로 변환하는 과정이다.Unity에서는 이 과정을 통해 게임 데이터를 저장하거나 인스펙터에서 편집할 수 있게 된다. 왜 Serializable을 사용하는가?Unity 에디터의 인스펙터 창에서 직렬화된 데이터는 사용자 친화적인 방식으로 편집할 수 있다. Serializable 예제Serializable이 어떤 역할을 하는지 알아보자.우선 클래스를 하나 만든다 예제는 ItemInfo로 사용public class TestScript : MonoBehaviour{ public ItemInf..