Unity/문제 해결

[Unity] TextMeshPro의 색상이 스크립트로 변경되지 않는 경우

sungjine 2023. 11. 22. 18:38
반응형

 

Canvas에 TextMeshPro를 추가하고 스크립트로 색상을 변경하려 할 때 색상이 변경되지 않는 문제가 발생했다.

 

문제가 됐던 부분은 색상을 변경할 때 Color 구조체를 사용했기 때문이었다.

 

Color 구조체 대신 Color32 구조체를 사용하니 문제가 발생하지 않았다.

 

글을 작성한 후 추가로 확인했을 때 구조체의 문제가 아닌 것을 확인했다.

 

기존에는 색상의 RGB 값을 검색하여 원하는 색상을 찾아 아래와 같이 코드를 작성했었다.

Color color = new Color(255, 0, 0, 255);

하지만 Color 구조체의 경우 Byte 형태가 아닌 float 형으로 데이터를 입력해야 하는데 Byte 형으로 값을 입력하는 것이 문제가 되어 색상이 변경되지 않았던 것이다.

 

 * 추가

검색을 하다 보니 TextMeshPro의 Material 컴포넌트의 Face Color가 변경되어 색상이 적용되지 않는 경우에 대한 설명이 많아 추후 같은 문제가 발생했을 때 같이 확인해 보면 좋을 것 같아 언급만 해둔다.

 

반응형