한글로 주석을 해놓은 유니티 엔진의 C# 스크립트 코드 부분에서 깨짐 현상이 발견되었다.
이는 문자 인코딩 방식때문에 일어나는 문제이기 때문에, 인코딩을 바꾸어주면 된다.
파일이 UTF-8로 저장되어 있지 않았기 때문에 한글을 처리할 수 없던 문제라,
앞으로 코드가 저장될 때 UTF-8을 지원하게끔 처리할 수 있다.
이미 코드에 문제가 발생한 기존 코드는 따로 저장해야 하고,
앞으로 만들어질 모든 스크립트는 알아서 UTF-8로 저장되게끔 설정할 수 있다.
1. 이미 문제가 발생한 스크립트 수정
우선 스크립트를 열고,
파일 - 다른 이름으로 저장을 누른다.
이후 저장을 어디에 할지 로컬 탐색기가 뜰 때,
인코딩하여 저장을 클릭한다.
인코딩 방식을 한국어 - 코드 페이지 949가 아닌,
유니코드 (UTF-8) - 코드 페이지 65001로 바꾼 후 저장한다.
기존의 코드에 덮어써도 전혀 상관없다.
2. 앞으로 작성할 스크립트에 자동 적용
유니티 에셋 창에서 우클릭 - Show in Explorer를 통해 로컬 탐색기를 열어준 후,
해당 프로젝트의 최상위 폴더에 텍스트 문서를 하나 만들어준다.
해당 메모장 이름을, 확장자까지 모두 포함하여
.editorconfig 라는 이름으로 수정해준다.
root = true
[*]
charset = utf-8
이후 위와 같은 코드를 넣어준다.
해당 root부터 Reflection으로 모든 파일들에 대해 문자열 인코딩 셋을 UTF-8로 지정해준다는 의미이다.
앞으로 그냥 프로젝트를 새로 만들게 되면 이 작업을 우선 해주는 것도 나쁘지 않겠다.
결과적으로 한글이 잘 표시되기 시작했다.
왜 기본 인코딩에선 한글이 엔진상에 표시되지 않고, UTF-8 인코딩에선 이후 문자열 인코딩 방식에 대해 포스팅을 할 기회가 있다면 해당 글에 작성하도록 하겠다.
'게임 개발 > 유니티 엔진' 카테고리의 다른 글
유니티의 스크립터블 오브젝트(Scriptable Object)란 무엇일까 (0) | 2025.04.06 |
---|---|
유니티 스크립트 기본 주석 템플릿 제거하기 (0) | 2025.04.04 |
유니티와 C#에서의 GC (Garbage Collection) (1) | 2025.03.24 |
유니티 C# 제네릭, 제네릭 싱글톤 패턴 (Generic Singleton) (0) | 2025.03.19 |
유니티 엔진의 맵/오브젝트를 언리얼 엔진으로 옮기기 (2) | 2024.09.02 |