유니티3D 7

[Unity] TextMeshPro 사용시 한글 깨짐

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

Unity 2025.01.17

[Unity] AddressableAsset 사용방법

AddressableAsset은 어떻게 언제 Asset들을 로드할지 컨트롤할 수 있게 만들어주는 기능이다Scene에 오브젝트나 리소스들을 다 넣어놓으면 해당 Scene을 로드할때 그 오브젝트와 리소스들을 다 메모리에 불러와야하기에 Scene 로드에 시간이 많이 걸리게 된다. 그렇게 하기 보단 필요한것만 Scene에 넣고 그때그때 필요한건 필요할때 불러오는 방식으로 개발해야 Scene 로드에 많은 시간 소모를 겪지 않게 된다1. Addressables 설치PackageManager에 들어가 Unity Registry 탭에서 Addressables 를 검색하면 위 이미지와 같이 Addressables unity package가 나오는데 해당 패키지를 설치해주면 된다 2. 사용방법먼저 상단 탭에서 Window..

Unity 2024.12.12

[Unity] AI Navigation System 사용방법

Unity의 AI Navigation System이 2.0 이상 버전으로 업그레이드 되면서 기존에 사용하던 방법과는 다르게 바뀌었다이전 방법이 적힌 책이나 유튜브를 보면 도움이 되지 않으니 새로운 AI Navigation System을 사용하는 방법을 간단하게 소개합니다 1. Package Manager에서 AI Navigation Package 설치Package Manager에서 Unity Registry 항목에 ai navigation을 검색하면 나온다 해당 패키지를 먼저 설치하자필자의 경우 2.0.4 버전으로 설치하였다 2. NavMesh Surface 컴포넌트 추가NavMesh Surface 컴포넌트는 NavMesh Agent가 걸을수 있는 영역을 만드는 컴포넌트입니다빈 게임오브젝트를 하나 만들어..

Unity 2024.12.11

[Unity] 특정 게임오브젝트 기준으로 카메라 움직이기

유니티에서 특정 게임오브젝트를 기준으로 카메라를 회전시키는 방법Cube를 중심으로 회전하는 카메라 Mouse의 X축 데이터를 가져온다xRotateMove = Input.GetAxis("Mouse X") * Time.fixedDeltaTime * rotateSpeed;가져온 X축 데이터에 Time.fixedDeltaTime을 곱해주고 이동속도인 rotateSpeed float 값을 곱해준다transform.RotateAround(targetPos, Vector3.up, xRotateMove);Transform안에 RotateAround 함수를 사용해 기준점이 되는 게임오브젝트의 position을 기준으로 xRotateMove만큼 회전한다 transform.LookAt(targetPos); 회전하면서 카메라..

Unity 2024.11.29

[Unity] 캔버스 랜더모드(Canvas RenderMode)

Canvas란?Canvas란 Unity의 Component로 모든 UI들의 UI 컨테이너로써 활용됨UI Element를 생성하면 Canvas는 자동으로 생성되어짐Canvas 게임오브젝트는 4개의 Component들을 가짐 (RectTransform, Canvas, Canvas Scaler, Graphic Raycaster)- RectTransform은 World Canvas 모드일 경우 Canvas를 어느 위치에 둘지를 결정- Canvas는 Rendering 순서와 UI element들의 표현을 관리- Canvas Scaler는 서로 다른 해상도와 그래픽에서 UI를 어떻게 설정할지를 관리 단일 Canvas를 사용하는거 보단 나눠서 여러 Canvas를 사용하는게 낫다예를 들어 Canvas에 있는 UI요소 ..

Unity 2024.11.22

Unity New InputSystem 사용방법

유니티 패키지에 InputSystem이 생겼습니다.(사실 생긴지는 꽤 된거 같은데 제가 사용을 시작한지 얼마되지 않았습니다)New InputSystem을 사용하기 전에는 여러 입력 디바이스, 예를 들어 키보드와 마우스 / 게임패드 / 모바일 터치 등에 대해 따로 처리를 해주어야 했습니다. 하지만 새로운 InputSystem을 사용하게 되면 여러 입력 디바이스에 대해 다 따로 구현할 필요 없이 한방에 해결할 수 있다는 이점이 있습니다. 설치 및 설정먼저 PackageManager에서 InputSystem 패키지를 설치를 해줍니다설치 후 Project Setting에 들어가면 Active Input Handling이라는 설정을 볼 수 있는데 Both로 설정 한다면 이전 InputSystem과 새롭게 설치한 ..

Unity 2024.11.22

Unity Vector3.Lerp 선형보간으로 부드럽게 움직이게 하기

유니티에서 캐릭터를 움직이거나 물체를 다른 위치로 이동시키거나 할때 끊김 없이 부드럽게 움직이게 하는 방법중 하나가 Vector3.Lerp 함수 입니다. 이는 선형보간이라는 방법을 사용하는건데두 벡터 간 사이에 위치한 값을 추정하기 위해 직선 거리에 따라 선형적 계산을 하는 방법입니다 Reference : https://docs.unity3d.com/ScriptReference/Vector3.Lerp.html Unity - Scripting API: Vector3.LerpInterpolates between the points a and b by the interpolant t. The parameter t is clamped to the range [0, 1]. This is most commonly ..

Unity 2024.11.12