반응형

Unity 30

A* Search Path 알고리즘 (A star 경로 탐색 알고리즘)

A*(A-star) 경로 탐색 알고리즘은 최적의 경로를 찾기 위한 휴리스틱 기반의 알고리즘으로 게임이나 로봇, 내비게이션 시스템 등에서 목적지까지의 최단 경로를 효율적으로 찾는 데 자주 사용함 A-star 알고리즘은 아래의 공식을 기반으로 작동f(n) = g(n) + h(n)n: 현재 노드g(n): 시작점에서 현재 노드까지의 실제 비용h(n): 현재 노드에서 목표까지의 추정 비용(휴리스틱)f(n): 총 예상 비용 하나의 셀을 위와 같이 간단히 표현직선으로 이동시엔 10 cost, 대각선으로 이동시엔 14cost라 할때(cost는 꼭 10, 14일 필요는 없음 대각선이동 cost를 직선보다 더 많이 주기만 하면 됨) 이동별 cost를 시각화 하면 위의 그림과 같다. 직선으로 이동시엔 10cost, 대각선..

Unity 2025.07.28

event, EventHandler 란?

c#에서 event와 EventHandler는 이벤트 기반 프로그래밍에서 사용되는 핵심 개념으로 주로 객체 간의 통신에서 사용되며 하나의 객체에서 어떤 일이 발생했을 때 다른 객체가 이를 감지하고 반응할 수 있게 해줌 event 란?어떤 객체가 발생시키는 동작 또는 상황으로 그 동작이나 상황을 다른 클래스나 객체에 알리고자 하는 용도로 사용ex] 버튼을 클릭했을 때 EventHandler 란?이벤트가 발생될때마다 이벤트를 처리하기 위해 호출되는 메서드로 event 발생시 실행되는 함수C#에서 자주 사용하는 이벤트 델리게이트(delegate) 형식 EventHandler 기본형태public delegate void EventHandler(object sender, EventArgs e);- sender..

Unity 2025.07.28

Basic GridSystem 만들어보기

GridSystem?GridSystem이란 2차원 혹은 3차원 공간을 격자 형태로 나누어 객체나 요소의 위치를 정렬하거나 관리하는 시스템을 말합니다. 공간을 일정한 간격의 격자(Grid)로 나누어 오브젝트나 요소를 체계적으로 배치하거나 조작할 수 있는 구조를 말하는데요 게임개발에선 건물을 건설하는 게임에서 건물을 1x1, 2x2 등의 타일 단위로 설치하기 위해 사용하거나 전략 시뮬레이션 게임에서 유닛 이동이나 공격 범위를 격자 단위로 제한하기 위해서 사용합니다. GridSystem을 사용해 개발하면 정확한 위치 관리 혹은 건설/이동 시스템 개발에 용이함이 있어 많이들 사용하게 됩니다. 이번 글에서는 Unity에서 이 GridSystem을 간단히 만들어 보는 방법을 설명하도록 하겠습니다. 간단히 Grid를..

Unity 2025.07.22

Final Depth copy attachment 0 was created with 4 samples but 8 samples were requested

안녕하세요 유니티에서 무료 캐릭터 에셋을 다운로드해서 사용하는데 갑자기 아래와 같은 에러를 만났습니다. Error: Final Depth copy attachment 0 was created with 4 samples but 8 samples were requested 찾아보니 RenderTexture에서 antialising 값이 8로 되어 있는데 이를 4로 바꿔야 한다는 것을 알게되었습니다. _renderTexture = new RenderTexture(300, 300, 30, RenderTextureFormat.ARGB32){ antiAliasing = 4};antiAlising 값을 8이 아닌 4로 수정하니 해당 이슈가 더 이상 발생하지 않았습니다.

Unity 2025.02.21

Cinemachine 3인칭 Follow Camera 사용하는 방법

유니티에서 카메라를 사용할때 Cinemachine을 많이들 사용하실겁니다.Cinemachine은 카메라 관련 여러가지 기능들을 코드 없이 사용할 수 있게 해주는 유니티 패키지입니다.이번 포스팅에서는 그 중 3인칭 시점의 카메라를 노코드로 간단히 사용할 수 있는 방법에 대해 알아 보도록 하겠습니다. GameObject > Cinemachine > Targeted Cameras > Follow Camera를 클릭하면 내 캐릭터를 따라 다니는 카메라를 손쉽게 만들수 있습니다.저의 경우 제 게임 캐릭터를 카메라가 따라다니길 바라기 때문에 저의 게임 캐릭터에 따라다닐 Target GameObject를 하나 만들어 줬고 이름은 CameraTarget 이라고 지었습니다. 해당 게임 오브젝트를 카메라가 따라다니게 할건..

Unity 2025.02.20

RectTransformUtility.ScreenPointToLocalPointInRectangle

RectTransformUtility.ScreenPointToLocalPointInRectangle ScreenPoint(스크린 좌표)를 RectTransform 좌표계의 Local Point로 변환시켜주는 함수이다. public static bool ScreenPointToLocalPointInRectangle(RectTransform rect, Vector2 screenPoint, Camera cam, out Vector2 localPoint);파라미터를 살펴보면 첫번째 파라미터는 변환 기준 좌표계의 Canvas RectTransform두번째 파라미터는 출력하고자 하는 스크린 좌표세번째 파라미터는 스크린좌표와 연관된 카메라네번째 파라미터는 변환된 좌표를 저장할 변수 이다 예시를 잠깐 보면public ..

Unity 2025.02.11

New InputSystem을 사용해 캐릭터 이동 구현 방법

이번 포스팅에서는 Unity의 New InputSystem을 사용하여 플레이어를 이동하는 방법을 소개해보도록 하겠습니다아래 영상은 구현했을때의 모습입니다. New Inputsystem을 사용해 플레이어를 이동하는 코드를 만들어 보겠습니다 우선 New InputSystem 구조입니다.Actions Properties에 Move 변수를 만들고 Action Type을 Value로 Control Type은 Vector2로 구성.해당 Action Properties에 WASD라는 Binding Properties를 생성, Composite Type은 2D Vector, Mode는 Digital로 구성합니다.그리고 그 아래로 W, A, S, D 변수들을 바인딩합니다. InputSystem에서 Generate C# ..

Unity 2025.02.11

iOS-Unity UAAL iOS와 Unity 사이 데이터 주고 받는 방법(feat swift)

iOS에서 Unity를 라이브러리로 사용하는 uaal을 쓰게되면 당연하게도 ios project와 unity3d 사이에 데이터를 주고 받아야 하는 상황이 발생한다.이럴 경우 어떻게 데이터를 주고 받을수 있는지 알아보도록 하겠습니다 이전에 uaal 을 어떻게 만드는지는 이전 저의 글을 보면 간단히 설정하실수 있습니다https://hankyo-dev.tistory.com/entry/iOS%EC%97%90%EC%84%9C-uaal%EB%A1%9C-unity%EB%A5%BC-library%EB%A1%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0 iOS에서 uaal로 unity를 library로 사용하기iOS에서 3D 물리엔진등을 구현하기는 힘들다.3D 물리엔진은 유니티나 언리얼이 사용하..

Unity 2025.02.04

iOS에서 uaal로 unity를 library로 사용하기

iOS에서 3D 물리엔진등을 구현하기는 힘들다.3D 물리엔진은 유니티나 언리얼이 사용하야 구현이 쉬운데 이럴경우 ios native app이면서 3d 물리엔진이 필요한 경우에는 unity를 사용하는 방법이 있다UAAL(Unity As A Library) 라는 방식이다 uaal을 사용해 ios native 앱에서 유니티를 라이브러리로 불러 사용하는 방법에 대해 알아보도록 하겠다 1. workspace 생성우선 Xcode workspace부터 생성한다Xcode > File > New > WorkSpace 를 클릭해 workspace를 생성한다 2. ios native app 프로젝트 생성다음으로 ios native app을 생성한다 원래 만들던 방식과 동일하되 앞서 만든 workspace에 연결한다 3. U..

Unity 2025.01.27

[Unity] TextMeshPro 사용시 한글 깨짐

Unity에서 Text 쓰려하면 이제 어느순간 TextMeshPro가 기본이 되어 있다기존 사용하던 Text를 쓰려면 Legacy로 들어가야 하는데 안타까운건 TextMeshPro를 그냥 쓰면 영어는 괜찮지만 한글은 깨진다는 것이다 (한글을 깨트릴거면 폰트 좀 바꿔줘라!!)알다시피 문제는 폰트때문이다.TextMeshPro에서 한글을 쓰기 위해선 폰트를 바꿔주어야 한다 기본 폰트인 LibersSans는 한글이 깨지니 새로운 폰트를 구해야 한다필자의 경우 찾아보다 넥슨 메이플스토리 서체가 있길래 그걸 사용했다https://maplestory.nexon.com/Media/Font 서체 | 미디어 | 메이플스토리 maplestory.nexon.com메이플스토리 서체는 개인 및 기업 사용자를 포함한 모든 사용자에..

Unity 2025.01.17