Loading... ## 新建翻译csv文件 新建csv格式文件,内容如下,在vscode中打开,还可以通过插件编辑。 注意语言的简写要符合规范,可以在godot中查看具体的代号。 en 英语 ja 日本 zh 中文 ![csv文件内容](https://s1.ax1x.com/2020/04/09/G4zhc9.png) ![使用edit csv插件编辑](https://s1.ax1x.com/2020/04/09/G5SQ4U.png) ---------- ## 导入csv 将csv文件拖入项目文件夹即可,会生成几个`.translation`文件。 ![](https://s1.ax1x.com/2020/04/09/G5S6KA.png) ---------- ## 在项目中添加本地化设置 ![](https://s1.ax1x.com/2020/04/09/G5pmxH.png) ## 脚本中调用不同的语言设置 ```GDscript TranslationServer.set_locale("en") ``` ---------- ## 翻译字符串方法 ```GDscript # tr() 可以启用本地翻译功能,它会先访问当前地区设定(locale),然后查找翻译并返回,如果根本没有进行本地化设置,则返回自身。如果在编辑器中输入字符串,则会自动调用该方法 button.text = tr("KEY_PUSH") ``` 为避免增加的词汇可以考虑将csv中的第一列删掉。这样带来的问题是Godot不知道第一列默认的语言名。 ![](https://s1.ax1x.com/2020/04/09/G5ihcD.png) 于是需要在项目设置里找到locale 设置项,将缺省语言设置为中文。 ![项目设置-locale](https://s1.ax1x.com/2020/04/09/G5kKsg.png) 这样在游戏中的默认语言就可以写中文,其他语言也可以被翻译。 ## 后记 1. 经测试RichtextLabel节点的文字暂时无法翻译本地化,原因不明。 2. 经测试,Godot 貌似默认在Lebel 等节点的text属性上加了翻译方法`tr()`,也就是说,就算你脚本中给text属性直接赋值字符串,它们也能正常翻译 3. 小技巧,如何在单元格内换行,直接按Enter是不行的,需要alt + Enter 才可以实现单元格内换行。 最后修改:2020 年 04 月 09 日 09 : 00 PM © 允许规范转载