码迷,mamicode.com
首页 > 编程语言 > 详细

游戏开发中的多语言处理

时间:2020-06-19 23:26:13      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:uil   技术   http   star   自己   需要   build   管理器   web   

前言

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

编写数据表

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

使用工具导出

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

使用数据

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

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

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

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

如何切换语言?

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

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

  3. 更改语言为en
    技术图片

  4. 运行看效果
    技术图片

结语

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

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

框架维护

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

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

游戏开发中的多语言处理

标签:uil   技术   http   star   自己   需要   build   管理器   web   

原文地址:https://www.cnblogs.com/cgw0827/p/13166760.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!