导入翻译
游戏与国际化
世界上充满了不同的语言和文化, 所以现在的游戏都是以多种语言发布的. 为了处理这个问题, 任何现代游戏引擎都必须支持国际化的文本.
在常规的桌面或移动应用程序中, 国际化文本通常位于资源文件中(或用于GNU内容的 .po 文件). 然而, 游戏可以使用比应用程序多几个数量级的文本, 因此它们必须支持能高效处理多语言文本加载的方法.
有两种方法来生成多语言的游戏和应用程序。两者都基于键值对系统。第一种是使用其中一种语言作为“键”(通常是英语),第二种是使用特定的标识符。如果首先用英语发布游戏,后来以其他语言发布游戏,则第一种方法可能更易于开发;但是如果同时使用多种语言,则完全是一场噩梦。
一般来说, 游戏使用第二种方法, 并为每个字符串使用唯一的ID. 这允许你在翻译为其他语言时修改文本. 唯一ID可以是数字, 字符串, 或带有数字的字符串(无论如何, 它只是一个唯一的字符串).
注解
.po 格式编写的翻译. 有关详细信息, 请参见 使用 gettext 进行本地化.
翻译格式
必须以 UTF-8 编码保存,并且不应含有字节顺序标记。
警告
此处所述。
LibreOffice 或 Google Sheets 代替。
CSV 文件必须使用以下格式:
lang 标签必须代表一种语言, 该语言必须是引擎支持的 有效地区语言 之一. KEY 标签必须是唯一的, 并且必须代表一个通用字符串(它们通常以大写形式与其他字符串区分开). 这些键将在运行时由匹配的翻译的字符串替换. 特别注意, KEY1 和 Key1 将是不同的键. 左上方的单元格将被忽略, 可以保留为空或包含任何内容. 这是一个例子:
下面是以逗号分隔的纯文本文件形式同样的例子, 这应该是在电子表格中编辑上述内容的结果. 当编辑纯文本时, 请确保用双引号包裹任何包含逗号, 换行符或双引号的消息, 这样逗号就不会被解析为定界符, 换行符不会创建新条目, 双引号也不会被解析为包裹字符. 请确保在信息中包含的任何双引号之前使用另一个双引号来转义. 另外, 您也可以在导入选项中选择逗号以外的其他定界符.
keys,en,es,jaGREET,"Hello, friend!","Hola, amigo!",こんにちはASK,How are you?,Cómo está?,元気ですかBYE,Goodbye,Adiós,さようならQUOTE,"""Hello"" said the man.","""Hola"" dijo el hombre.",「こんにちは」男は言いました
CSV 导入器
Godot 将 CSV 文件默认作为译文处理. 它将导入它们, 并在其旁边位置生成一个或多个压缩过的翻译资源文件.
project.godot (或项目设置)中指定.Godot还允许在运行时加载和删除翻译.
.csv 文件并访问导入停靠面板,以定义导入选项。您可以切换是否压缩导入的翻译,并选择在解析 CSV 文件时使用的定界符。
重新导入。
