방문자

오늘
—
어제
—
누적
—

불러오는 중

게임 개발 · 기술 동향 · 팀 블로그MIRO
헤드라인

성장하는 도시

번역은 됐는데 버튼 글자가 안 보였다

사용자 제공 변경 전 화면
사용자 제공 변경 전 화면

번역 데이터가 있어도 화면에는 안 보일 수 있습니다

성장하는 도시에서 언어를 바꿨을 때 버튼 라벨과 발전도·골드 숫자가 보이지 않는 문제를 확인했습니다. 번역 목록만 살펴보면 문자열은 있었지만, 실제 씬의 Text와 그리기 순서까지 확인하자 서로 다른 문제가 드러났습니다.

변경 전 씬에는 번역값이 일치하지 않는 Text 46개, 배경 뒤에 가려질 수 있는 라벨 56개, 폰트 행 높이보다 표시 영역이 작은 Text 6개가 있었습니다. 번역값의 존재와 실제 화면 표시를 같은 검사로 처리하면 놓칠 수 있는 부분입니다.

사용자 제공 변경 전 화면

사용자가 제공한 변경 전 실행 화면입니다. 수정 후 화면은 당시 촬영하지 않았습니다.

문구, 그리기 순서, 높이를 따로 수정했습니다

실제 Text 153개에 9개 언어의 문구를 저장하고, 라벨이 배경보다 나중에 그려지도록 씬의 형제 오브젝트 순서를 정리했습니다. 복제된 Text에 원문이 남아 있던 경우도 번역 카탈로그와 대조했습니다.

큰 숫자는 글자 크기가 42px인데 표시 높이는 52px였습니다. 사용한 Noto Sans CJK 폰트의 행 높이를 계산하면 약 60.8px여서, 잘림 설정과 함께 문제가 될 수 있는 구성이었습니다. 해당 영역을 72px로 넓히고 다른 Text에도 여유를 확보했습니다. 문구와 배치는 런타임에 새로 만드는 대신 씬에 저장했습니다.

카탈로그 검사에서 실제 오브젝트 검사로

수정 후 정적 검사에서는 번역 불일치 46건, 그리기 순서 문제 56건, 행 높이 부족 6건이 각각 0건이 됐습니다. 기존 번역 검사가 카탈로그만 확인했다면, 이번에는 실제 씬 오브젝트의 문구와 순서까지 검사 대상으로 삼았습니다.

씬 참조와 글리프 매핑, 컴파일도 확인했습니다. 다만 이는 데이터와 구조에 대한 검사이며, 최종 화면에서 글자가 읽힌다는 직접적인 증거는 아닙니다.

남은 확인은 언어별 실제 화면입니다

당시 Unity Play와 수정 후 캡처는 수행하지 않았습니다. 각 언어에서 버튼과 큰 숫자가 보이는지, 글자가 잘리지 않는지, 배경과 충분히 구분되는지는 실행 화면으로 다시 확인해야 합니다. 번역을 끝내는 기준을 문자열 교체에만 두지 않고, 화면에 전달되는 과정까지 나눠 보는 계기가 된 작업입니다.

번역값에서 화면까지의 확인 순서

아래 도표는 보고서의 원인을 읽기 순서로 정리한 설명용 도표입니다. 새로운 런타임 처리 순서를 구현했다는 뜻은 아닙니다.

flowchart TD
    A["번역 카탈로그의 문구"] --> B["씬 Text에 저장된 실제 값"]
    B --> C["배경과 라벨의 그리기 순서"]
    C --> D["폰트 행 높이와 표시 영역"]
    D --> E["실행 화면의 가독성 확인"]

앞 단계가 맞아도 다음 단계에서 문구가 가려질 수 있습니다. 예를 들어 카탈로그에 한국어가 있어도 복제한 Text에는 영어가 남을 수 있고, 올바른 한국어가 연결돼도 배경이 나중에 그려지면 보이지 않습니다. 두 경우 모두 화면에서는 글자가 없거나 이상하게 보이지만 수정할 대상은 다릅니다.

검사를 추가할 때에도 모든 결과를 번역 성공 하나로 합치지 않는 편이 좋습니다. 실제 값, 표시 순서, 필요한 높이를 따로 대조하면 실패한 항목이 어느 단계인지 드러납니다. 마지막 단계는 실행 화면이며, 정적 검사가 통과해도 여러 언어의 줄바꿈과 가독성은 직접 확인해야 합니다.

작업 근거

댓글

이 글에 대한 생각을 남겨 주세요.

댓글 삭제

헤드라인

같은 카테고리의 글

프로젝트 개발일지 전체 보기 ↗