Unity
[ Unity ] 타이핑 효과에 폰트 색상 넣기.
거두절me
2024. 4. 13. 02:13
문제점: 한 글자씩 타이핑 줄때 <color~ 같은 태그가 유저에게 보인다. </color> 까지 닫아줘야 색상이 지정된다.
해결: 임시 제어문자를 넣어준다.
string testStr = "안녕하세요. r거두절meb입니다.";
public IEnumerator ShowText(string fullText, Text txtCompo)
{
string displayText = ""; // 표시할 최종 문자열
string color = "black"; // 기본 색상
for (int i = 0; i < fullText.Length; i++)
{
if(fullText[i] == 'r'){
color = "red"; // 빨간색 설정
continue;
} else if(fullText[i] == 'b'){
color = "black"; // 검정색 설정
continue;
}
// 현재 문자에 적절한 색상 적용
displayText += $"<color={color}>{fullText[i]}</color>";
txtCompo.text = displayText;
yield return new WaitForSeconds(0.1f);
}
juniorScriptCoroutine = null;
}
사용법: r, b는 내가 넣은 임시 문자고 필요에 따라 다른걸 넣어주면 된다.
r뒤부터는 빨간색이 나오고, b뒤부터는 검정색이 나올 수 있도록했다.
r, b 차례일때는 다음 폰트의 color만 바꿔주는 역할만 하고 텍스트에 들어가지 않도록 continue를 해준다.