안녕하세요.
유니티에서 텍스트 혹은 버튼 오브젝트 등에 글자(Text)를 수정할 때 크기와 색상 등을 인스펙트(Inspector) 창에서 변경이 가능합니다. 다른 방법으로 텍스트 안에서도 텍스트 포맷을 조금 추가하면 유사한 기능을 사용할 수 있습니다.
Unity와 기타 IDE 툴에서도 이런 Rich Text기능을 제공하고 있습니다. 이것을 이용하는 방법을 간단하게 확인해 보겠습니다.
1. Unity의 리치 텍스트
UI 요소와 텍스트 메시의 텍스트에는 여러 폰트 스타일 및 크기가 사용될 수 있습니다. Text, GUIStyle 및 TextMesh 클래스에는 Unity가 텍스트 안에서 마크업 태그를 찾도록 설정하는 Rich Text 설정이 있습니다. Debug.Log 함수도 이 마크업 태그를 사용하여 코드에서 오류 보고를 향상할 수 있습니다. 태그는 눈으로 볼 수 있게 표시되지는 않지만, 텍스트에 적용할 스타일 변경을 나타냅니다.
- Unity UserManual 2022.1
2. 지원 태그
- 간단하게 설명을 만들었습니다. 상세한 설명은 참고사이트 링크를 참고하시면 됩니다.
태 그 | 설 명 | 예 |
b | 텍스트를 굵게 만듬 | This is <b>TestMessage</b>. |
i | 텍스트를 기울임꼴로 만듬 | This <i>is</i> TestMessage. |
size | 텍스트의 크기를 설정 (단위:pixel) |
<size=20>This is </size><b>TestMessage</b>. |
color | 텍스트 컬러를 설정 | This is <color=#ff0000ff>TestMessage</color>. |
material | 텍스트 메시에만 유용하고 파라미터를 통해 지정된 머티리얼이 있는 텍스트 섹션을 렌더링 | <material=2>This is </material>TestMessage. |
quad | 텍스트 메시에만 유용하고 텍스트에 맞는 이미지를 렌더링 | <quad material=1 size=20 x=0.1 y=0.1 width=0.5 height=0.5> |
3. 결과 확인하기
- 텍스트를 확인해 보기 위해서 Hierarchy에서 오른쪽 버튼을 눌러 UI->Legacy->Text를 눌러 Text 오브젝트를 생성합니다.
- PosX, PosY, PosZ를 0으로 Width 800, Height 500, Font Size 40
- Text에 아래와 같이 넣으면 결과를 바로 확인할 수 있습니다.
This is <b>TestMessage</b>.
This <i>is</i> TestMessage.
<size=20>This is </size><b>TestMessage</b>.
This is <color=#ff0000ff>TestMessage</color>.
- Play(Ctrl + P)를 하지 않아도 결과를 확인할 수 있고 실행하면 Canvas 창에 나타나는 실제화면으로 확인할 수 있습니다.
나중에 Script 상에도 문자열로 넣어도 동일한 결과를 볼 수 있습니다.
using UnityEngine.UI;
...
private Text text1;
...
string strText = "This is <b>script code</b>.";
text1 = GameObject.Find("Canvas").transform.Find("Text1").GetComponent<Text>();
text1.text = strText;
- Text1 Object에 스크립트 파일을 넣고 실행
감사합니다.
<참고 사이트>
1. 리치 텍스트
https://docs.unity3d.com/kr/2022.1/Manual/StyledText.html
'Programming > Unity' 카테고리의 다른 글
[Unity] 게임을 위한 수학 용어 빠르게 이해하기 (좌표, 벡터, 스칼라) (0) | 2024.07.06 |
---|---|
[Unity] 유니티 실행 프로그램을 확장된 화면에 출력하기(특히, 노트북 확장 모니터에 출력하기) (0) | 2023.10.07 |