乐趣区

游戏开发中的多语言处理

前言

之前我写过一遍《数据表的使用》的文章,今天继续用文本处理为例讲解一下数据表导出工具的使用和多语言的使用方式。

编写数据表

我们先定义一个 UI 文本表,写好表头,添加几个测试用对本文,注意类型使用 lang。

使用工具导出

打开 build.bat 文件,修改数据表和项目路径,双击运行,这时候如果不出问题你的项目下就会出现对应的数据和枚举文件


为了减少配置数据的大小,所有数据才用数组形式,所以生成了枚举文件,使用枚举索引对应的数值。

使用数据

  1. 添加数据到数据管理器,如果不是合并的表需要给一个 key,我通常使用文件名。

所有的数据都归 XlsxDataManager 负责管理,不过这个 XlsxDataManager 可以分模块,如果游戏中数据始终不清理,可以使用一个就行。

  1. 将语言文件添加到语言管理器。

语言文本管理器的处理方式与 creator 官方插件 i18n 处理方式一样,也可以处理文本替换。

  1. 定义一个 UI 文本管理类

  1. 定义 UI 文本组件

  1. 在界面中拖入一个 label,挂上 UI 文本组件,填好我们在数据表中定义的 ID

  1. 运行查看效果即可

如何切换语言?

  1. 执行另一个脚本,这个脚本每次都会添加 zh 中新添加的字段,不会替换已有字段。

  1. 如果不出问题,导出目录会多出一个语言文本,可以拿给负责翻译的人员。


为了测试自己简单翻译一下。

  1. 更改语言为 en

  1. 运行看效果

结语

  1. 此套方案可以用于同时支持多种语言,也可以只支持一种语言,由项目需求而定。
  2. 如果需要替换文本可以直接调用语言管理器的接口使用。

浏览更多内容,请关注微信公众号《微笑游戏》

框架维护

  1. 购买框架的很多同学还没有收货,请尽快联系我。
  2. gitlab 已建好,购买过的同学我会添加到项目中,可以免费及时更新到新内容。
  3. 感谢支持我的同学们,在学习的过程中指出框架的问题,共同进步。

欢迎扫码关注公众号《微笑游戏》,浏览更多内容。

退出移动版