번역 가져오기

게임과 현지화

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

표준 데스크톱이나 모바일 애플리케이션에서, 현지화된 문자는 보통 리소스 파일에 위치합니다 (혹은 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 인코딩으로 저장되어야 하며 다음과 같은 형식이어야 합니다:

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

The "lang" tags must represent a language, which must be one of the valid locales supported by the engine. The "KEY" tags must be unique and represent a string universally (they are usually in uppercase, to differentiate from other strings). These keys will be replaced at runtime by the matching translated string. Note that the case is important, "KEY1" and "Key1" will be different keys. The top-left cell is ignored and can be left empty or having any content. Here's an example:

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

The same example is shown below as a comma-separated plain text file, which should be the result of editing the above in a spreadsheet. When editing the plain text version, be sure to enclose any message that contains a comma with double quotes, so that the comma is not parsed as delimiter. Alternatively, you can select another delimiter in the import options.

keys,en,es,ja
GREET,"Hello, friend!","Hola, amigo!",こんにちは
ASK,How are you?,Cómo está?,元気ですか
BYE,Goodbye,Adiós,さようなら

CSV 가져오기

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

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

Select the .csv file and access the "Import" dock to define import options. You can toggle the compression of the imported translations, and select the delimiter to use when parsing the CSV file.

../../../_images/import_csv.png

Be sure to click "Reimport" after any change to these options.