전체 글 50

[Unity] 유니티에서 Task 사용하기

Task의 기본 개념Task는 비동기 작업을 수행하기 위해 사용됩니다. 비동기 작업은 메인 스레드의 실행을 차단하지 않고, 병렬로 작업을 수행하거나 기다릴 수 있는 기능입니다. 이를 통해 작업이 완료될 때까지 기다리거나, 작업 완료 후의 동작을 할 수 있습니다. Task의 주요 특징비동기 작업의 결과를 반환할 수 있습니다.병렬 처리를 지원합니다.await를 통해 작업이 완료될 때까지 기다릴 수 있습니다. Task의 기본 사용법using System.Threading.Tasks;using UnityEngine;public class TaskExample : MonoBehaviour{ async void Start() { Debug.Log("작업 시작"); int resu..

Unity/정보 01:44:05

[C#] 객체지향 프로그래밍 핵심 개념

1. 클래스(Class)와 객체(Object)정의:클래스는 객체를 만들기 위한 설계도입니다.객체는 클래스의 인스턴스로, 실제 메모리 공간에 할당된 데이터입니다.예시 코드:public class Car{ public string Brand; public void Drive() { Debug.Log(Brand + " is driving."); }}public class Test{ void Start() { Car myCar = new Car(); // 객체 생성 myCar.Brand = "Toyota"; myCar.Drive(); // 출력: Toyota is driving. }} 왜 필요한가?클래스를 사용하면 코드를 재..

언어/C# 2024.12.18

[디자인패턴] 싱글톤 패턴 (Singleton Pattern)

싱글톤 패턴의 개념싱글톤(Singleton)은 오직 하나의 인스턴스만 존재하도록하고 어디에서든 이를 접근할 수 있도록 하는 디자인 패턴입니다.유니티에서 특히 게임 매니저, 오디오 매니저, 데이터 관리 클래스 등을 구현할 때 많이 사용됩니다. 싱글톤 패턴의 핵심 특징1. 전역 접근 가능성: 싱글톤은 전역적으로 접근 가능하며, 어느 스크립트에서든 동일한 인스턴스에 접근할 수 있습니다. 2. 인스턴스의 유일성: 싱글톤은 하나의 클래스에 오직 하나의 인스턴스만 존재하도록 해야합니다.3. 씬 간 데이터 유지: DontDestroyOnLoad를 활용해 싱글톤 오브젝트를 특정 씬에서 파괴되지 않도록 하여 이를 통해 게임 매니저, 플레이어 정보, 설정 데이터 등이 씬 전환 시에도 유지됩니다.4. 간단한 상태 관리: 전..

디자인패턴 2024.12.16

[디자인패턴] 디자인 패턴의 기초, SOLID (솔리드) 원칙

SOLID 원칙: 객체 지향 설계의 기초소프트웨어 개발에서 효율적이고 유지보수가 용이한 코드를 작성하기 위해서는 객체 지향 설계를 잘 이해하고 적용하는 것이 매우 중요합니다. 그 중에서 SOLID 원칙은 객체 지향 설계의 핵심을 이루는 다섯 가지 중요한 원칙으로, 이를 통해 개발자는 더 좋은 코드를 작성할 수 있습니다. 이 원칙들은 각기 다른 측면에서 코드의 확장성, 유연성, 유지보수성을 향상시킵니다.  1. 단일 책임 원칙 (Single Responsibility Principle, SRP)정의단일 책임 원칙(SRP)은 하나의 클래스가 하나의 책임만 가져야 한다는 원칙입니다. 즉, 클래스가 수행하는 기능은 하나의 작업으로 집중되어야 하며, 해당 작업과 관련된 변경만 있을 때 클래스가 수정되어야 합니다...

카테고리 없음 2024.12.16

Icons8 - 투명한 배경 아이콘 이미지

https://icons8.com/icons/set/cube Cube Icons, Logos, Symbols – Free Download PNG, SVG icons8.com1. Icons8Icons8은 수많은 고품질 아이콘을 제공하며, 아이콘들은 투명 배경으로 되어 있어 어떤 배경에서도 쉽게 사용할 수 있습니다. 로그인을 따로 할 필요없이 필요한 키워드를 검색하면 관련 아이콘을 신속하게 찾아볼 수 있고 이미지 별로 무료 다운로드가 가능한 옵션이 있습니다. 2. 검색 기능과 카테고리검색 방법은 위쪽의 검색창을 사용하여 이용자가 원하는 키워드로 쉽게 검색할 수 있습니다. 또한 왼쪽의 세로로된 메뉴들을 살펴보면 카테고리별로 아이콘을 둘러볼 수 있어 아이콘 탐색이 훨씬 수월합니다. 3. 다운로드 방법원하는 이미..

유용한 사이트 2024.11.10

[Unity] 로컬 알림 기능 (Android)

로컬 알림이란?로컬 알림은 네트워크 요청 없이 기기 내부에서 직접 생성되는 알림입니다. 주로 아래와 같은 목적으로 사용됩니다:앱 리마인더특정 시간에 알림 표시사용자 액션 트리거 Unity Package 설치 고려 사항 (1) Android 13 이상에서 알림 권한 요청 if (Application.platform == RuntimePlatform.Android && 33    (2) API 레벨 26 이상에서 알림 채널 설정 if (apiLevel >= 26) { var channel = new AndroidNotificationChannel() { Id = "default_channel", Name = "pubSdk", Importanc..

Unity/정보 2024.11.10

[Unity] UGS - Push Notifications

Push Notifications 란?Push Notifications는 로컬 알림과 달리 게임 개발자가 사용자를 대상으로 푸시 알림을 보내 게임 내 이벤트나 업데이트 등 서버에서 비정기적으로 알림을 보내고자할때 사용되는 푸시 알림 기능입니다. 이를 통해 게임 이용률을 높이고, 중요한 게임 소식을 즉시 전달할 수 있습니다.Push Notifications의 주요 사용처 및 장점유저 재접속률 증가푸시 알림을 통해 유저가 게임으로 다시 돌아오도록 유도할 수 있습니다. 예를 들어, 새로운 이벤트 알림, 업데이트 알림, 또는 게임 내 보상 알림을 통해 사용자의 관심을 끌 수 있습니다.실시간 소식 전달이벤트나 긴급 업데이트 상황에서 유저들에게 즉각적인 소식을 전달할 수 있습니다.맞춤화된 메세지 전달특정 사용자 그..

[Unity] UGS - Leaderboards

리더보드란?리더보드(Leaderboard)는 게임 내에서 플레이어의 점수나 순위 등을 표시하는 시스템입니다. 일반적으로 게임의 점수판이나 랭킹 화면에서 볼 수 있으며, 특정 목표나 성취도에 따라 플레이어가 다른 유저와 비교하여 어떤 위치에 있는지를 보여줍니다. 이는 게임 플레이의 몰입도를 높이고 플레이어가 목표 달성 후 보상을 얻거나 순위를 올리기 위해 계속해서 게임을 즐기게 하는 중요한 요소입니다. 리더보드 사용처 및 장점경쟁과 성취감 제공리더보드는 경쟁을 자극하여 플레이어가 더 높은 점수를 얻기 위해 노력하게 만들고, 게임의 반복성을 높여줍니다. 성취감을 통해 플레이어는 더 오래 게임에 몰입하게 되고, 이는 게임의 유저의 전반적인 플레이 시간을 향상시키는 데 큰 도움을 줍니다.게임 지속성 유지일정한 ..

[Unity] UGS - Asset Manager

Asset Manager란?UGS(유니티 게임 서비스)의 Asset Manager는 게임 리소스(에셋)를 클라우드에 저장하고 관리하는 기능을 제공합니다. 이를 통해 게임 개발자는 다양한 에셋(텍스처, 오디오, 모델 등)을 프로젝트 협업툴을 사용하지 않고 에셋을 개별적으로 버전관리를하여 협업 개발에 용이하게 사용될 수 있습니다. 주요 기능리소스 업데이트: Asset Manager를 통해 게임 리소스를 클라우드에서 수정하고 업데이트할 수 있습니다.에셋 버전 관리: 여러 버전의 에셋을 저장하고 필요에 따라 최신 버전이나 특정 버전을 로드할 수 있습니다. 설정 방법1. 프로젝트 준비 및 설정Unity 프로젝트 생성: UGS와 연동할 새로운 Unity 프로젝트를 생성합니다.Asset Manager 패키지 설치: ..

[Unity] UGS - Cloud Code

Cloud Code란?Cloud Code는 Unity 클라우드 서비스 중 하나로, 게임 서버 없이도 서버 측 코드의 로직을 클라우드에서 실행할 수 있게 해주는 서비스입니다. 이를 통해 클라이언트와 서버 간의 데이터 전달이나 계산을 원활하게 수행하고, 민감한 게임 로직을 서버 측에서 처리할 수 있습니다. 주로 랭킹 시스템, 보상 계산, 이벤트 타이머 등 여러 게임 기능에 활용됩니다. 클라우드 기반으로 실행되어 게임 클라이언트 업데이트 없이도 빠르게 게임의 주요 설정과 로직을 변경할 수 있는 유연성을 제공합니다. 왜 Cloud Code를 사용해야 할까?Cloud Code는 게임 로직을 서버에서 관리하게 해줍니다. 이를 통해 클라이언트에서 조작하기 어려운 보안이 필요한 작업을 안전하게 처리할 수 있습니다. 예..