
[UNITY] TextMesh Pro

-기존에는 강의영상에서 배운대로 Text 컴포넌트를 사용
-프로젝트 진행 중에 다른 팀원분이 TextMesh Pro 컴포넌트를 사용하는 것을 봤고 차이점이 뭔지 궁금했음
-간단하게 설명을 들었을 때는 Text 컴포넌트는 글자가 깨지는 현상이 발생한다고 함
앞으로 써먹기 위해 무엇인지 알아보자
Unity에서 지원하는 기본 Text Componet는 시각적 품질이 매우 좋지 않다.
이런 느낌이라 함
-TextMesh Pro를 사용한다면 시각적 품질을 크게 개선
-텍스트 스타일 지정 부문에서 뛰어난 유연성을 제공
-Sprite Asset을 활용하여 Sprite를 Text처럼 활용할 수 있다.
-TextMesh Pro는 기존의 Font 파일을 사용하는 것이 아닌 Font Asset 파일을 사용
-기본적으로 LiberationSans SDF라는 기본 Font Asset 파일이 생성
-한글을 지원하지 않기 때문에 새로운 Font Asset 파일을 생성해야 함
★Font Asset 파일을 만들기 위해서 Font 파일(.ttf)이 필요

●Source Font File: 원하는 Font 파일을 선택
●Atlas Resolution: 생성될 아틀라스 이미지의 해상도를 설정
한글 포함시 4096×4096이상의 해상도가 필요
●Character Set
-Custom Range : 사용할 문자의 범위를 입력합니다.
(영어 : 32-126 | 특수문자 : 8200-9900 | 한글자모 : 12593-12643 | 한글 : 44032-55203)
-Custom Characters : 사용할 문자를 직접 입력합니다.
●Render Mode
-SMOOTH : 안티앨리어싱
-RASTER(일반 텍스트) : 안티앨리어싱 X
-SMOOTH_HINTED : 안티앨리어싱, 힌팅
-RASTER_HINTED : 안티앨리어싱 X, 힌팅
-SDF(Signed Distance Field) : 거리에 따라 선명도를 계산하여 출력(매끄러운 윤곽선) / 외각선 등의 효과를 사용할 수 있음
▶_HINTED
글자 크기가 변해도 선명도 유지
▶안티앨리어싱(Anti-aliasing)
앨리어싱 현상을 방지
그래픽스를 더 부드럽게 하는 알고리즘
▶앨리어싱 현상: 직선이 들쭉날쭉하거나 “계단” 모양으로 나타나는 경우를 의미
그래픽스 출력 디바이스가 직선을 표시하기에 충분히 높은 수준의 해상도를 가지고 있지 않을때 일어남
-Custom Character List에 들어갈 상용한글-2350
https://coderzero.tistory.com/entry/%EA%B8%B0%ED%83%80-%EC%83%81%EC%9A%A9%ED%95%9C%EA%B8%80-2350)
유니티 강의에서 알려줌
저렇게 설정하고 내용을 입력하면 한글, 영어, 기호까지 등록된다.
적용하는 법
1. 좌측 상단 Edit -> Project Settings
2. Default Font Asset에서 Font Asset을 설정할 수 있다.