전체 글 43

[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는 게임 로직을 서버에서 관리하게 해줍니다. 이를 통해 클라이언트에서 조작하기 어려운 보안이 필요한 작업을 안전하게 처리할 수 있습니다. 예..

[Unity] UGS - Cloud Save

Cloud Save란?Cloud Save는 플레이어의 게임 진행 상태, 게임 설정, 인벤토리 등의 작은 데이터를 클라우드에 저장하고 불러올 수 있는 기능입니다. 이를 통해 플레이어가 여러 디바이스에서 동일한 게임 데이터를 사용할 수 있어 데이터를 안전하게 보존할 수 있습니다. 주요 기능크로스 디바이스 동기화: 플레이어는 다른 기기에서도 같은 데이터로 게임을 이어서 할 수 있습니다.데이터 보안: 로컬 저장소에 의존하지 않고 클라우드에 데이터를 백업함으로써 데이터 손실을 방지합니다. Cloud Save 대시보드의 주요 탭들1. 인덱스 설정 (Index Configuration)설명: Cloud Save에서 인덱스는 데이터를 빠르게 검색하고 접근할 수 있도록 만들어줍니다. 인덱스를 설정하면 대량의 데이터 중에..

[Unity] UGS - Remote Config

Remote Config란?Remote Config는 실시간으로 게임 내 설정을 변경할 수 있는 기능을 제공합니다. 이를 통해 코드를 다시 빌드하거나 앱 스토어에 업데이트하지 않고도 게임 내의 다양한 설정값을 쉽게 수정할 수 있습니다. 예를 들어, 게임 속 아이템 가격, 레벨 난이도, 광고 빈도 등을 실시간으로 변경할 수 있습니다. 왜 Remote Config를 사용해야 할까?게임 개발 중 또는 출시 후, 플레이어 피드백이나 데이터 분석에 따라 게임을 즉각적으로 수정하고 싶은 경우가 많습니다. Remote Config는 이럴때 유용하게 쓰입니다. 개발자들이 앱을 다시 빌드하거나 배포하는 데 시간을 낭비하지 않고, 실시간으로 변경 사항을 적용할 수 있는 것이 큰 장점입니다. 설정 방법1. Unity 프로젝..

[Unity] UGS - Player Authentication

사용자 인증이란?사용자 인증은 애플리케이션이나 게임에서 사용자의 신원을 확인하고, 특정 기능이나 서비스를 이용할 수 있도록 하는 과정입니다. Unity UGS에서는 사용자가 안전하게 로그인하고, 세션을 관리할 수 있도록 돕는 다양한 인증 방식을 제공합니다. 익명 로그인, 이메일 및 비밀번호 인증 등이 포함됩니다. Unity 서비스 활성화하기Unity Dashboard에 로그인한 후, 원하는 프로젝트를 선택합니다.Services 메뉴에서 Player Authentication을 활성화합니다.  패키지 설치하기Window 메뉴에서 Package Manager를 선택합니다.Add package from git URL을 클릭한 후, com.unity.services.authentication을 입력하여 설치합니..

[Unity] Resources.UnloadUnusedAssets() : 메모리 관리

Resources.UnloadUnusedAssets()란?Resources.UnloadUnusedAssets()는 사용되지 않는 자원을 메모리에서 해제하는 기능입니다. 동적으로 텍스처, 오디오 파일 또는 모델을 로드할 때 Unity는 해당 자원을 메모리에 유지합니다. 이 함수는 사용되지 않는 자원을 수동으로 해제하여 메모리를 확보할 수 있게 해줍니다. 작동 방식미사용 자원 확인: Resources.UnloadUnusedAssets()를 사용하면 Unity는 현재 씬이나 코드에서 사용되지 않는 모든 자원을 찾아 메모리에서 해제합니다.가비지 컬렉션과의 차이: Unity의 가비지 컬렉션은 주로 관리되는 객체(C#)에 적용됩니다. 이 함수는 텍스처나 메쉬와 같은 비관리 자원을 정리하는 데 도움을 줍니다. 사용 ..

Unity 2024.09.28

[Unity] 비등방성 필터링(Anisotropic filtering)과 Mipmap

비등방성 필터링이란?비등방성 필터링(Anisotropic Filtering, AF)은 3D 그래픽스에서 텍스처의 품질을 향상시키기 위한 기술입니다. 이 기술은 관찰자의 시점에 따라 텍스처의 세부 사항이 어떻게 보이는지를 개선하여, 특히 경사진 표면에서 더 선명한 결과를 제공합니다. 비등방성 필터링은 다방향으로의 샘플링을 통해 텍스처의 시각적 품질을 높입니다.Mipmap이란?Mipmap은 텍스처의 다양한 크기를 미리 계산하여 저장하는 기술입니다. 게임에서는 카메라와의 거리에 따라 적절한 해상도의 텍스처를 사용하여 성능을 향상시키고, 텍스처의 품질을 유지하는 데 도움을 줍니다.  예를 들어 가까운 객체에는 고해상도 텍스처를, 멀리 있는 객체에는 저해상도 텍스처를 사용하는 방식입니다. 이렇게 하면 성능을 향상..

Unity/정보 2024.09.22

[Unity] 안티앨리어싱(Anti-Aliasing)

안티앨리어싱(AA) 소개안티앨리어싱(Anti-Aliasing, AA)은 게임 그래픽 가장자리에서 발생하는 계단 현상을 완화하는 방법입니다. 낮은 해상도에서 픽셀로 표현된 직선이나 곡선이 매끄럽지 않게 보이는데, 안티앨리어싱은 픽셀의 색상과 주위 색상을 혼합하여 더 부드럽고 자연스러운 이미지를 보여줍니다. 이를 통해 게임의 그래픽 퀄리티를 향상시킬 수 있습니다.안티앨리어싱의 원리안티앨리어싱은 객체의 가장자리에서 색상 값을 혼합하여 픽셀의 경계가 부드럽게 보이도록 하는 방식으로 동작합니다. 특히, 픽셀의 색상을 주변 픽셀과 섞어 계단 현상을 줄이거나, 화면 전체에서 샘플링을 더 많이 하는 방식으로 처리하여 시각적 부드러움을 제공합니다.안티앨리어싱 종류와 비교1) MSAA (Multi-Sample Anti-A..

Unity/정보 2024.09.21

[Unity] 유니티의 가비지 콜렉터 (G.C)

가비지 콜렉터란?가비지 콜렉터(GC)는 프로그램에서 더 이상 필요하지 않은 메모리(가비지)를 자동으로 회수하여 메모리 누수를 방지하고 메모리를 관리하는 시스템입니다. 유니티는 C#을 사용하여 스크립트를 작동하며 .NET의 가비지 콜렉터를 기반으로 메모리를 관리합니다.   작동 방식 가비지 콜렉션은 주로 C#에서 관리되는 힙 메모리에서 이루어집니다. Unity는 생성된 객체가 더 이상 사용되지 않을 때 자동으로 메모리에서 해제하는데, 메모리에서 해제되는 시점을 완벽하게 제어하기는 어렵습니다. 그리고 GC는 메모리를 세대별로 나누어 오래된 객체와 최근에 생성된 객체를 구분해서 관리합니다.0세대 (Gen 0): 가장 최근에 생성된 객체들이 위치하며, 수명이 짧은 객체가 많습니다. 이 세대는 빠르게 메모리에서 ..

Unity/정보 2024.09.16