번역 가져오기

게임과 현지화

세상은 다른 시장과 문화로 가득하며, 이익™을 극대화하기 위해 오늘날의 게임은 여러 언어로 출시됩니다. 이를 해결하기 위해, 모든 최신 게임 엔진은 현지화된 문자를 반드시 지원해야 합니다.

표준 데스크톱이나 모바일 애플리케이션에서, 현지화된 문자는 보통 리소스 파일에 위치합니다 (혹은 GNU 물건을 위한 .po 파일). 하지만, 게임은 응용 프로그램보다 몇 배나 더 많은 문자를 사용할 수 있습니다, 따라서 다국어 문자를 불러오는데 효율적인 방법을 지원해야 합니다.

다국어 언어 게임과 응용 프로그램을 만들기 위한 두 가지 접근법이 있습니다. 두 가지 모두 키:값 시스템을 기반으로 이루어집니다. 첫 번째는 하나의 언어를 키로 사용하는 것이고 (보통은 영어), 두 번째는 특정 식별자를 사용하는 것입니다. 첫 번째 접근은 게임을 영어로 먼저 출시하고, 이후 다른 언어로 출시한다면 더 쉬울 수도 있습니다, 하지만 동시에 다른 언어를 작업한다면, 이는 완벽한 악몽이 될 것입니다.

일반적으로, 게임은 두 번째 접근법을 사용하고 고유 ID는 각 문자열에 사용됩니다. 이를 통해 다른 언어로 번역되는 동안 문자를 개정할 수 있습니다. 고유 ID는 숫자, 문자열, 혹은 숫자가 있는 문자열이 될 수 있습니다 (아무튼 고유한 문자열이라는 것입니다).

주석

If you need a more powerful file format, Godot also supports loading translations written in the gettext .po format. See Localization using gettext for details.

번역 형식

작품을 완성하고 번역에 효율적인 지원을 하기 위해, Godot는 CSV 파일을 읽을 수 있는 특수 가져오기를 갖고 있습니다. 모든 스프레드시트 편집기는 (Libreoffice, Microsoft Office, Google Docs 등이 있죠) 이 형식으로 내보낼 수 있습니다, 따라서 필요한 것은 파일이 특별한 배열로 되어야 하는 것입니다. CSV 파일은 UTP-8 인코딩으로 저장되어야 하며 다음과 같은 형식이어야 합니다:

  <lang1> <lang2> <langN>
KEY1 문자열 문자열 문자열
KEY2 문자열 문자열 문자열
KEYN 문자열 문자열 문자열

"lang" 태그는 언어를 표현해야 하는데, 엔진이 지원하는 valid locales 중 하나로 표현해야 합니다. "KEY" 태그는 고유해야 하고 보편적으로 문자열을 표현해야 합니다 (보통은 대문자로, 다른 문자열과 구분됩니다). 예제입니다:

id en es ja
GREET(인사) Hello, friend! Hola, Amigo! こんにちは
ASK(질문) How are you? Cómo está? 元気ですか
BYE(헤어짐) Good Bye Adiós さようなら

CSV 가져오기

Godot은 CSV 파일을 기본적으로 번역을 취급합니다. 파일을 가져오고 옆에 하나 이상의 압축된 번역 리소스 파일을 생성합니다.

가져오기는 또한 게임을 실행할 때 불러올 번역 목록에 번역을 추가할 것입니다, project.godot (혹은 프로젝트 설정)에서 지정됩니다. Godot는 런타임에 번역을 불러오거나 삭제할 수 있도록 합니다.