• 游戏开发中的多语言处理


    前言

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

    编写数据表

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

    使用工具导出

    打开build.bat文件,修改数据表和项目路径,双击运行,这时候如果不出问题你的项目下就会出现对应的数据和枚举文件
    image.png
    image.png
    为了减少配置数据的大小,所有数据才用数组形式,所以生成了枚举文件,使用枚举索引对应的数值。
    image.png

    使用数据

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

    所有的数据都归XlsxDataManager负责管理,不过这个XlsxDataManager可以分模块,如果游戏中数据始终不清理,可以使用一个就行。
    image.png
    2. 将语言文件添加到语言管理器。
    image.png

    语言文本管理器的处理方式与creator官方插件i18n处理方式一样,也可以处理文本替换。
    image.png
    3. 定义一个UI文本管理类
    image.png
    4. 定义UI文本组件
    image.png

    1. 在界面中拖入一个label,挂上UI文本组件,填好我们在数据表中定义的ID
      image.png
    2. 运行查看效果即可
      image.png

    如何切换语言?

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

    2. 如果不出问题,导出目录会多出一个语言文本,可以拿给负责翻译的人员。
      image.png
      为了测试自己简单翻译一下。

    3. 更改语言为en
      image.png

    4. 运行看效果
      image.png

    结语

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

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

    框架维护

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

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

  • 相关阅读:
    mysql报错排查总结
    java设计模式--外观模式
    java设计模式--策略模式
    java设计模式--策略模式
    java设计模式--简单工厂
    java设计模式--简单工厂
    国外有哪些比较好的IT社区
    使用jmeter进行性能测试-Jmeter教程及技巧汇总 (转)
    Fiddler环境配置教程
    Fiddler+Jmeter+断言详细教程
  • 原文地址:https://www.cnblogs.com/cgw0827/p/13166760.html
Copyright © 2020-2023  润新知