UE5实现游戏中英文切换的本地化功能

设置本地化

在工具找到本地化控制板

选择添加新语言

选择中文简体

选择后语言会自动切换本地语言为中文

收集文字

收集文字有三种:

  1. 从文本文件收集,可以从源代码里收集相关
  2. 从包收集,可以从UE资产里收集所需翻译文本
  3. 从c++源代码里的元数据收集

    这里我勾选了从资产里收集,将数据表格里的数据和UI控件里使用的文本收集

    然后点击收集文本

    UE会执行文本收集

    收集完成后,有新增会显示+号,从新收集显示绿色勾即可

    下面会显示收集到的数量

设置翻译

点击右侧小按钮,编辑翻译

未翻译为没有翻译的字体

需要预览则是,已经翻译过,但是被修改过的文字,需要重新查看

已完成则为翻译完成的

在已完成这里,可以查看源和翻译后的

接着打开英文后面的编辑此语言的翻译,会发现全部未翻译

最简单也最麻烦的方法就是手动每个翻译,通过双击右侧的栏目,可以直接对前面的内容翻译

在翻译完成后,点击编译文本完成设置

设置大批量相同文字的翻译

点击搜索可以搜索一些相关的文字,查看对应的翻译

选中一个,会在下方查看到对应使用的地方

在搜索返回时,会发现多个相同的文字

打开后可以添加键和源字符串

我们在情景这里可以知道使用此文字的蓝图,通过Ctrl+P打开搜索框,搜索对应的文件

找到填写文字的地图,右侧有一个小旗帜

点击打开,就可以设置我们是否使用本地化,或者使用的本地化的文本,这对于一些大批量的文字,使用起来很方便

接着,我们需要将字符串表也添加到文字收集里面,所以字符串表最好都放到一个目录里

然后再重新打开搜索返回,如果只有一个了,证明实现了通用文本字符串替换

设置排除一些不需要翻译的文字

还是按之前的方式,通过文字找到对应的文件使用地方,然后将其本地化勾选取消

通过导出外部翻译

在语言右侧,有一个导出此语言的翻译

我们加上语言后缀

这里,我使用了Poedit软件进行翻译,随便翻译几个

然后点击导入,将翻译好的文件导入回来

然后再已完成里发现翻译的软件都没问题

本地查看效果

如果你编译完成了文本,可以在编辑器内查看本地化效果。

在控制组件的上方,我们可以通过切换本地化查看切换语言后的效果。

可以看到,切换后,进行翻译的内容显示的切换后的内容了

如果发现切换完成内容后,有些语言超出范围,尤其是是中文翻译英文的时候。我们有两种解决方案:

  1. 修改翻译内容,让文字变短
  2. 在文字外面添加缩放框,让文字根据需要缩放

    在设置这里我们可以设置拉伸方式以及拉伸方向(是只能够缩小还是能放大,还是两种情况都可以)

打包

添加了新的本地化语言以后,我们在打包的时候设置对应的打包配置

在项目设置打包这里,要打包的语言,我们选择英语

还有中文简体

国际化支持这里,选择支持中英文的这个

设置语言蓝图节点

设置当前语言的蓝图节点为Set Current Culture

传入的中英文的值是

相关推荐
IT从业者张某某9 小时前
基于EGE19.01完成恐龙跳跃游戏-V00-C++使用EGE19.01这个轮子
c++·游戏
伪善者10 小时前
UE5 插件打包成DLL
ue5·打包
Sator117 小时前
Unity关于射击游戏人物动画的设计经验
游戏·unity·游戏引擎
王杨游戏养站系统18 小时前
3分钟搭建1个游戏下载站网站教程!SEO站长养站系统!
开发语言·前端·游戏·游戏下载站养站系统·游戏养站系统
huwuhang1 天前
索尼PS3游戏合集【中文游戏】8.12T 1430个游戏+PS3模拟器
android·游戏·智能手机·游戏机·电视
毕业设计-小慧1 天前
计算机毕业设计springboot游戏数据管理系统 基于SpringBoot的电竞赛事数据管理平台 基于SpringBoot的在线游戏运营数据分析系统
spring boot·游戏·课程设计
黑客说1 天前
AI驱动剧情,解锁无限可能——AI游戏发展解析
人工智能·游戏
智算菩萨1 天前
【OpenGL】10 完整游戏开发实战:基于OpenGL的2D/3D游戏框架、物理引擎集成与AI辅助编程指南
人工智能·python·游戏·3d·矩阵·pygame·opengl
风酥糖1 天前
Godot游戏练习01-第20节-增加亿点点细节
游戏·游戏引擎·godot
聊点儿技术2 天前
游戏账号盗用频发,IP风险等级评估如何成为第一道防线?
安全·游戏·ip地址·风险评估·账号安全·ip风险等级评估