你的游戏没有这个怎么能够顺利出海?

点击上方亿元程序员+关注和★星标

引言

哈喽大家好 ,不知道小伙伴们最近有没有发现,如今的游戏出海,已经不是从前的粗放买量靠堆砌素材喂算法了,现在都在拼长线运营或者AI了。

其中 Supercell的《荒野乱斗》就是最好的例子,上线五年了,如今成功逆袭。

笔者想起,八年前就已经参与过游戏的多语言版本了,那时候的主流是港台(繁体)、东南亚(英文)、韩国(韩文)。

除去 接入对应的SDK外,最为深刻的就是翻译和本地化,那时候不需要很高端的操作,就是把游戏内所有的中文整理出来,给到专门负责翻译的人,完成后导回到游戏即可。

其中 最头疼的就是英文,两个字能变10多个字母,很容易导致超框,以上的处理有个"国际化"的简称,叫i18n

言归正传 ,今天我们就来聊聊i18n

什么是i18n?

先简单科普一下

i18n是国际化的简称,来源是英文单词internationalization的首末字符in18为单词中间的字符数。

在资讯领域 ,国际化(i18n)可以让产品无需做大的改变,就能够满足不同语言和地区的需要。

i18n的优势是什么?

对程序来说,在不修改内部代码的情况下,就能根据不同语言及地区切换相应的语言界面。

正如笔者引言所说,把文本交给翻译人员,回来后原路返回即可。

最开始就制定严格的规范,所有的文本都需要通过i18n,这样能够减少后期提取文本和导回文本的麻烦操作。

一起来看个例子

既然 i18n如此重要,那么我们一起来看看它在Cocos游戏开发中如何使用。

1.安装插件

首先Store找到i18n多语言化插件,选择添加到项目即可。

添加 完成之后,就可以在资源管理器看到插件对应的脚本,分别对应数据、Label管理和Sprite管理。

2.添加语言

首先 通过菜单扩展->I18n Setting打开本地化控制面板。

简单 添加8个语言,从下到上分别为中文、俄语、韩语、日语、法语、西班牙语、英语和德语(首字母排序)。

为什么8个?因为可以和别人说你"精通"八国语言(你好,世界)。

编辑完成 后,插件会自动在resources\i18n目录生成对应的Ts配置文件。

3.编辑中文

zh.ts中添加你好,世界,作为示例。

4.翻译其他7种语言

完成的所有中文内容,交给专业的翻译人员进行翻译,获得其余7种语言,我们这里简单示例就找搭子就行。

还是非常靠谱的。

5.LocalizedLabel组件

插件 生成的LocalizedLabel组件,就是对Label的简单封装,根据key和语言配置获取对应的文本。

直接 挂到Label组件上,配置对应的文本的key即可。

6.效果演示

我们通过点击本地化编辑面板中不同语言的"小眼睛",即可完成语言的切换,并且看到切换语言后的效果。

上面只是编辑器演示,实际需要修改默认语言,可以在脚本中修改。

7.进阶

如果 一个包体内有多种语言,想要支持动态切换语言,可以通过import * as i18n from 'db://i18n/LanguageData';导入i18n,并通过i18n.init('en');进行语言切换,最后通过i18n.updateSceneRenderers();刷新即可。

此外LocalizedSprite组件也是同理,对Sprite的简单封装。

结语

当然了,并非所有的项目都需要使用这套插件,国际化的逻辑还是简单的,一般公司项目都有自己的技术积累,有自己的实现。

其实最主要是一个规范的问题,通过语言包的限制,避免文本到处都是。但是也使得配置表比较难以配置,这个需要小伙伴们自己权衡了。

你们使用的是什么方案?

我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。

AD:笔者线上的小游戏《打螺丝闯关》《贪吃蛇掌机经典》《重力迷宫球》《填色之旅》《方块掌机经典》大家可以自行点击搜索体验。

实不相瞒,想要个爱心 !请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐专栏:

知识付费专栏

你知道和不知道的微信小游戏常用API整理,赶紧收藏用起来~

100个Cocos实例

8年主程手把手打造Cocos独立游戏开发框架

和8年游戏主程一起学习设计模式

从零开始开发贪吃蛇小游戏到上线系列

点击下方灰色按钮+关注。

相关推荐
少卿5 小时前
React Compiler 完全指南:自动化性能优化的未来
前端·javascript
广州华水科技5 小时前
水库变形监测推荐:2025年单北斗GNSS变形监测系统TOP5,助力基础设施安全
前端
广州华水科技5 小时前
北斗GNSS变形监测一体机在基础设施安全中的应用与优势
前端
七淮5 小时前
umi4暗黑模式设置
前端
8***B5 小时前
前端路由权限控制,动态路由生成
前端
军军3605 小时前
从图片到点阵:用JavaScript重现复古数码点阵艺术图
前端·javascript
znhy@1235 小时前
Vue基础知识(一)
前端·javascript·vue.js
terminal0075 小时前
浅谈useRef的使用和渲染机制
前端·react.js·面试
我的小月月5 小时前
🔥 手把手教你实现前端邮件预览功能
前端·vue.js
陈佬昔没带相机5 小时前
MiniMax M2 + Trae 编码评测:能否与 Claude 4.5 扳手腕?
前端·人工智能·ai编程