카테고리 없음

2024 내일 배움캠프(Unity_6기) _ 사전캠프 3일차(08.14) - TextMeshPro 사용법 및 한글 폰트 적용하기

근본넘치는개발자 2024. 8. 14. 17:30

유니티 UI에 Text는 두가지가 있습니다. 

하나는 Text - TextMeshPro

하나는 Text - Legacy


둘의 차이가 궁금해서 찾아보니 
성능적인 면에서 TextMeshPro가 더 뛰어나지만 그만큼 연산을 많이 하므로 
최적화를 위해 별로 중요하지않은 텍스트라면 Legacy로 사용한다는걸 알았습니다.

 

배움캠프에선 수업 중 Legacy Text를 사용하더군요. 
하지만 Legacy라고 붙은 걸 보니 괜히 TextMeshPro로 만들어 보고 싶어 변경해봤습니다. 

 

근데 TextMeshPro를 적용했더니,

한글이 적용이 안되고 깨져서 ㅁㅁㅁ이렇게 나오더라구요.

 

처음엔 한글 폰트 문제인가 싶어서 한글 폰트를 다운 받기로 했습니다. 

 

https://noonnu.cc/

 

눈누

상업용 무료한글폰트 사이트

noonnu.cc

 

눈누에서 무료로 한글 폰트를 다운 받을 수 있었습니다. 

 

쿠키런에서 제공하는 폰트를 다운받았고

폰트를 변경해 다시 진행 해봤는데 같은 증상이 발생했습니다.

 

원인을 찾다가 알아낸 방법은 다음과 같습니다. 

이 분의 블로그를 참고했고 해결 할 수 있었네요.

https://taekhyeong.tistory.com/350


 

먼저 다운받은 폰트를 유니티 프로젝트 안에 넣어줍니다.


유니티 상단에 window - TextMeshPro - Font Asset Creator를 클릭합니다.

그러면 다음과 같은 창이 뜨는데 여기에 다운 받은 폰트를 넣고

(저는 CookieRun 폰트를 넣었습니다) 

 

CharacterSet이라고 적힌 부분을 Custom Range로 바꿔줍니다.

그리고  32- 126, 44032-55203, 12593-12643, 8200-9900 다음을 넣고

 Generate Font Atlas를 실행하면 완성입니다.

 

저 숫자가 의미하는건 뭔가 찾아보니

영어 범위, 한글 범위, 한글 자모, 특수문자를 가리키는 번호였습니다.

 

이제 코드에서 TextMeshPro를 가져와 붙여넣으면 완성입니다.

 

 

TextMeshPro를 사용하려면 위에 using TMPro; 를 적어줘야 합니다. 

그리고 TMP_Text를 적으면 이제 TextMeshPro를 적용해 사용할 수 있습니다.

늘 여기서 헷갈리더라구요. 

 

 

오늘은 이렇게 간단하게 TextMeshPro 사용법과

한글 폰트 적용하는 법에 대해서 정리해보았습니다.