导入翻译

游戏与国际化

世界上充满了不同的市场和文化,为了实现利润最大化,现在游戏以多种语言发布。要解决这个问题,任何现代游戏引擎都必须支持国际化文本。

在常规桌面或移动应用程序中,国际化文本通常位于资源文件(或GNU文件的.po文件)中。然而,游戏可以比应用程序多使用几个数量级的文本,因此它们必须支持处理多语言文本负载的有效方法。

有两种方法可以生成多语言游戏和应用程序。两者都基于一个关键:价值体系。第一种是使用其中一种语言作为密钥(通常是英语),第二种是使用特定的标识符。如果游戏首先以英语发布,然后以其他语言发布,那么第一种方法可能更易于开发,但如果同时使用多种语言,则完全是一场噩梦。

一般来说,游戏使用第二种方法,每个字符串使用唯一的ID。这允许您在将文本翻译成其他语言时修改文本。唯一ID可以是一个数字、一个字符串或一个带数字的字符串(无论如何,它只是一个唯一的字符串)。

注解

如果您需要更强大的文件格式,godot还支持加载用gettext编写的翻译。 .po 格式。见 使用GetText进行本地化 有关详细信息。

翻译格式

为了完成图片并对翻译提供有效支持,Godot有一个可以读取csv文件的特殊导入程序。所有电子表格编辑器(无论是libreoffice、microsoft office、google docs等)都可以导出为这种格式,因此唯一的要求是文件具有特殊的排列。csv文件必须以utf-8编码保存,格式如下:

<lang1>

<lang2>

<langn>

KEY1

一串

一串

一串

KEY2

一串

一串

一串

KEYN

一串

一串

一串

“lang”标记必须表示一种语言,它必须是 valid locales 由引擎支撑。“key”标记必须是唯一的,并且通用地表示一个字符串(它们通常是大写的,以区别于其他字符串)。下面是一个例子:

身份证件

青年成就组织

GREET

你好,朋友!

你好,朋友!

___

ASK

你好吗?

C_mo est_

元気__

BYE

再见

阿迪

さようなら

csv导入程序

godot默认将csv文件视为翻译。它将导入它们并在旁边生成一个或多个压缩的翻译资源文件。

导入还会将翻译添加到要在游戏运行时加载的翻译列表中,在project.godot(或项目设置)中指定。godot还允许在运行时加载和删除翻译。