更多内容请查看我的个人网站
nocodeworld 的小地盘
UE4本地化
前言
环境
UE4版本 4.27.2
关于文化(cultures)
文化名称(IETF语言标记)由三个连字符分隔的部分组成
- 两个字母的ISO 639-1语言代码(例如“zh”)。
- 可选的四字母ISO 15924字符集代码(例如“Hans”)。
- 可选的双字母ISO 3166-1国家和地区代码(例如“CN”)。
当UE4查找特定文化的本地化数据时,它会将它们从最大特定到最不特定。例如:
zh-Hans-CN被处理为“zh-Hans-CN”,然后是“zh-CN”,然后是“zh-Hans”,然后是“zh”。
en-GB被处理为“en-GB”,然后是“en”。
为了实现特定文化的最广泛覆盖,请使用有效的最不具体的文化代码。使用“zh-Hans”进行简化本地化,使用“zh-Hant”进行传统本地化。
工具说明
默认创建工程并不会有本地化目标。本地化流程工具有两种调用方法
- 本地化控制板界面 Localization Dashboard
- 使用 Unreal Automation Tool (UAT)的Localize脚本。具体使用请看Localization Tools
Localization Dashboard
如果没有此选项,请按下图中打开
主界面分部分详解
- 本地化游戏目标,默认会创建一个,如果要创建新的本地化目标,请确保为其指定适当的加载策略(图上为2,通常为game或者always)。如果不这样做,则本地化目标不会在运行时加载。
- 本地化加载策略,纯运行的模块一般要设置为game或者always,默认为Never,是永不加载的,编辑器模块的一般选Editor,避免运行时加载浪费内存
- 选择要过滤的属性
- 文本文件,代码相关,如有不是c++项目,这里这不勾,不然可能会报错,中间内容包括添加搜索文本的目录,排除的目录
- 从包收集文本,蓝图等UE二进制资源,一样配置搜索目录和排除目录即可
- 从元数据收集文本,如果要翻译变量名,分类,工具提示等就勾上
- 所有语言进行的操作,具体的每个操作说明会后面在文本本地化 中说明,资源本地化无需用到
- 已添加需要翻译的地区语言,后面是每个语言单独可操作的Action
- 点击添加一种新的语言
本地化目标分布
前面工具说明1提到的目标添加,每个目标都会在本地生成一些配置和数据,本地化的大致原理如下:
本地化流程是基于本地化目标来进行工作的,要实现本地化,必须要有本地化目标并且加载本地化目标。本地化