728x90

Unity 52

[Unity] Image와 RawImage 비교

Unity에서 UI를 만들 때 Image와 RawImage는 자주 사용되는 컴포넌트입니다. 이 두 가지는 비슷해 보이지만 용도와 기능에서 차이가 있습니다. 기본 개념ImageImage는 Unity의 UI에서 제공하는 컴포넌트로 Sprite를 사용하여 UI 이미지를 보여줍니다. Image컴포넌트는 상호작용할 수 있는 기능을 가지고 있습니다. 주요 특징Sprite 이미지를 사용이미지의 크기와 비율을 조정하는 기능 제공다양한 Fill 방식 지원. (채우기 비율, 방향)  RawImageRawImage는 Texture를 렌더링하기 위해 사용됩니다. 보통 비디오, 동적 텍스처 또는 일반 Sprite로 처리할 수 없는 렌더 텍스처(Render Texture)와 같은 동적인 요소를 렌더링할 때 활용됩니다.  주요 특..

Unity/정보 2025.01.16

[Unity] 사운드 매니저 구현 (Sound Manager)

게임에서 사운드는 플레이어의 몰입감을 높이는 중요한 요소입니다. 효과음, 배경음악 등을 효율적으로 관리하려면 사운드 매니저가 필요합니다. 이 글에선 String과 Enum을 이용하여 원하는 소리클립을 찾아 출력시키는 사운드 매니저를 알아보겠습니다. 1. 사운드 매니저 소개사운드 매니저는 게임 내 사운드를 관리하기 위해 사용하는 스크립트입니다.배경음악(BGM) 및 효과음(SFX) 관리성능 최적화를 위한 오디오 소스 재사용개발 편의성을 위한 인터페이스 제공2. string을 사용하는 사운드 매니저사운드를 이름으로 찾고 재생하는 방식은 직관적이며 간단합니다. 그러나 오타 가능성이 있고, 사운드 이름이 많아질수록 관리가 어려울 수 있습니다.아래 코드에선 오디오클립 파일이름이 저장, 검색에 쓰입니다. string..

Unity/정보 2025.01.13

[Unity] 2D 무한 배경 구현하기

2D 게임을 개발할 때 배경을 자연스럽게 반복시키는 무한 배경이 필요할때가 있습니다.이번 글에서는 다양한 방법으로 2D 무한 배경을 구현하는 방법을 소개하겠습니다. 크게 UI, Sprite, Quad를 이용한 방법으로 나누어 설명합니다. UI를 이용한 뒷배경 처리 방법이 방법은 배경 이미지를 직접 이동시켜 움직이는 것처럼 보이도록 처리하는 방식입니다. 하지만 이미지가 이동할 때, 빈 공간이 생기는 것을 방지하기 위해 추가 이미지를 생성하여 연결해야 합니다.따라서 배경 이미지를 1개 더 복제하여 원본 이미지 옆에 붙이고, 두 이미지를 반복적으로 이동시켜 자연스러운 배경 스크롤 효과를 연출할 수 있습니다. Hierarchy 구조는 다음과 같이 설정합니다. Group_Background 객체를 부모로 하고, ..

Unity/정보 2025.01.12

[Unity] unity6의 웹 배포 빌드 방식

WebGL 빌드 설정Unity에서 WebGL 빌드는 기본적으로 제공되지 않기 때문에 먼저 필요한 것들을 설치해야 합니다. 이를 위해 Unity Hub에서 WebGL Build Support 모듈을 추가하고 프로젝트를 WebGL로 빌드합니다.WebGL Build 모듈 설치 방법:Unity Hub를 열고, 설치 탭으로 이동합니다.설치된 에디터의 환경설정 (톱니바퀴) 버튼을 클릭한 후, 모듈 추가를 선택합니다.WebGL Build Support를 선택하고 설치 버튼을 클릭하여 설치를 시작합니다.설치가 완료되면 Unity 에디터를 재시작하고 프로젝트를 엽니다.WebGL 빌드 프로파일 설정File > Build Profile로 이동하여, Web Profile을 선택하고 Switch Platform을 클릭하여 We..

Unity/정보 2025.01.05

[Unity] Unity6 픽셀 아트 2D 라이팅 튜토리얼 (2)

포스트 프로세싱으로 효과 강조하기1. 포스트 프로세싱 소개1) 포스트 프로세싱이란?포스트 프로세싱(Post-Processing)은 카메라가 촬영한 장면의 결과물에 추가 효과를 적용하여 그래픽을 더욱 화려하고 풍부하게 만드는 과정입니다.2) Universial RP와 포스트 프로세싱Universial RP(URP) 템플릿은 포스트 프로세싱 작업을 쉽게 할 수 있도록 설계되어 있습니다.이를 위해 Volume 컴포넌트와 Volume Profile 에셋을 제공합니다.Volume 컴포넌트: 포스트 프로세싱 효과를 적용할 영역을 정의합니다.Volume Profile 에셋: 다양한 포스트 프로세싱 설정(효과)을 저장하고 관리합니다. 2. 포스트 프로세싱 준비하기1) 2D 프로젝트에서 포스트 프로세싱 설정 필요Univ..

Unity/정보 2025.01.05

[Unity] Unity6 픽셀 아트 2D 라이팅 튜토리얼 (1)

튜토리얼용 샘플 프로젝트 소개1. 샘플 프로젝트 다운로드유니티에서 샘플 프로젝트를 제공하고 있습니다. 아래의 Git으로 샘플 프로젝트를 다운로드하여 유니티 허브로 열어줍시다.https://github.com/Goldmetal/Unity.PixelArtLight2D GitHub - Goldmetal/Unity.PixelArtLight2D: Unity 2D Basic Lighting ExampleUnity 2D Basic Lighting Example. Contribute to Goldmetal/Unity.PixelArtLight2D development by creating an account on GitHub.github.com  2. 샘플 프로젝트 구성우선 Scenes 폴더의 Basic 씬을 열어봅시다..

Unity/정보 2025.01.05

[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/정보 2025.01.04

[Unity] Unity 6 Challenge

https://play.unity.com/en/games/be94f481-b23b-4eb8-8895-a5fea8785348/kimchirun KimchiRun on Unity PlayKeep Runningplay.unity.com 기존 그대로 따라하기는 허전해서 이전에 튜토리얼로 배운 2D 라이트 기능을 조금 추가해서 만들어 보았습니다.     https://www.unitysquare.co.kr/event/communityevent/view?id=77&utm_source=youtube&utm_medium=social&utm_campaign=kr_unity6_challenge_event_start_cardnewsStart" data-og-description=" " data-og-host="unitysq..

Unity 2025.01.02

[Unity] UniTask 유니티 비동기 프로그래밍

UniTask란?UniTask는 유니티 환경에 특화된 경량 비동기 라이브러리입니다. Task와 비슷한 기능을 제공하면서도 유니티 게임 개발에 적합한 최적화와 기능을 포함하고 있습니다. 특히 다음과 같은 장점을 가지고 있습니다:메모리 할당 최소화: Task는 비동기 작업을 수행할 때 메모리를 많이 사용하지만, UniTask는 GC(가비지 컬렉션) 부담을 줄여줍니다.유니티 API 제공: await UniTask.Delay()나 await UniTask.NextFrame()처럼 유니티 개발에 특화된 메서드를 지원합니다. UniTask의 기본 사용법UniTask를 사용하려면 UniTask GitHub에서 패키지를 설치해야 합니다. https://github.com/Cysharp/UniTask#upm-packag..

Unity/정보 2024.12.19

[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
728x90