You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
119 lines
6.2 KiB
Plaintext
119 lines
6.2 KiB
Plaintext
INTSourceChangelist:5646177
|
||
Availability: Public
|
||
Crumbs:
|
||
Title: 本地化工具
|
||
Description:
|
||
Type:
|
||
Version: 4.22
|
||
Parent: Gameplay/Localization
|
||
Order: 6
|
||
Tags: Localization
|
||
Tags: localization tools
|
||
Tags: localization dashboard
|
||
|
||
|
||
(#thelocalizationdashboard)
|
||
|
||
## 本地化控制板
|
||
|
||
虚幻引擎4(UE4)中的本地化控制板是一个负责管理本地化目标的工具。虽然它仍是实验性的,但它运行稳定,供我们的所有项目在内部使用。它是用来管理本地化目标的推荐方法,可以通过编辑器中的 **窗口(Window)** 菜单来访问。
|
||
|
||
在默认情况下,控制板将为您创建一个 **游戏(Game)** 本地化目标,除非您的项目特别复杂,否则这可能是您需要的惟一本地化目标。您可以使用 **收集文本(Gather Text)** 设置来指定可以在何处找到源代码和资源,还可以使用 **文化(Cultures)** 设置来指定要本地化项目的语言。这包括将您的 **原生(Native)** 文化设置为编写内容所用的语言。
|
||
|
||
[REGION:note]
|
||
如果添加了一个新的本地化目标,请确保为它指定了适当的加载策略(通常为 **游戏(Game)**)。如果没有这样做,将不会在运行时加载该本地化目标。
|
||
[/REGION]
|
||
|
||
设置好本地化目标后,您可以使用 **文化(Cultures)** 部分下的工具栏来 **收集(Gather)**、**导出(Export)**、**导入(Import)**,并 **编译(Compile)** 项目文本。随着时间的推移,当有新的翻译或者添加了新的原文本时,该过程可以迭代运行。
|
||
|
||
一旦执行了这些操作,您将在“Config/Localization”文件夹中找到一些INI文件。每次使用控制板执行这些操作时都会生成这些文件,不需要将它们提交给源代码控制,除非您计划[自动执行本地化](#automatinglocalization)管道。
|
||
|
||
[REGION:note]
|
||
目前,本地化控制板和本地化命令行(构成本地化管道)对于本地化目标有两种完全不同的配置布局(其中本地化控制板生成命令行版本)。
|
||
[/REGION]
|
||
|
||
(#translationeditor)
|
||
|
||
## 翻译编辑器
|
||
|
||
可以通过本地化控制板访问翻译编辑器。它提供了一种检查文本片段翻译的简单方法。它在用户界面中提供了三个翻译选项卡:
|
||
|
||
* **未翻译(Untranslated)**:没有相关翻译的文本。
|
||
|
||
* **需要审阅(Needs Review)**:之前已针对旧版源文本翻译过的文本。
|
||
|
||
* **已完成(Completed)**:已针对当前版本的源文本翻译过的文本。
|
||
|
||
翻译编辑器是一个不经常更新的简单工具,可能缺少您想要用于全面翻译工作的功能(例如它没有翻译记忆库)。因此,我们建议您只使用翻译编辑器来进行现场修复。我们建议您不要使用翻译编辑器,而是使用PO导出/导入管道,并将其与外部翻译工具(例如[Poedit](https://poedit.net/)、[OneSky](https://www.oneskyapp.com/)或[XLOC](http://www.xloc.com/))结合使用来完成一般性的翻译工作。
|
||
|
||
(#translationpicker)
|
||
|
||
## 翻译选取器
|
||
|
||
翻译选取器是一个不经常更新的实验性工具。该工具允许您从UI中使用的文本值查询信息,包括使用在编辑器中运行(PIE)时。
|
||
|
||
通过单击 **编辑器偏好设置(Editor Preferences)> 实验性(Experimental)**,启用翻译选取器。一旦启用,可以通过编辑器中的 **窗口(Window)** 菜单访问。
|
||
|
||
当翻译选取器处于活动状态时,它将在光标附近显示一个浮动窗口,在光标下列出控件使用的所有文本值。一旦找到要检查的文本值,可以按ESC键将选取器锁定到该选择项。
|
||
|
||
可本地化文本(即有身份且已被收集和编译成LocRes文件的文本)将显示一个内联可编辑文本字段,可用于现场选修复当前翻译。
|
||

|
||
|
||
[REGION:note]
|
||
内联编辑翻译的能力在虚幻引擎4.13-4.21版本中受到了损坏,但在虚幻引擎4.22版本中得到了修复。
|
||
[/REGION]
|
||
|
||
(#automatinglocalization)
|
||
|
||
## 自动执行本地化
|
||
|
||
通过使用 **虚幻自动工具(Unreal Automation Tool)** (UAT)的Localize脚本,可以实现本地化自动化。该脚本提供了一种方法来运行本地化管道的各个部分,您可以使用它为您的产品生成夜间本地化更新,以及与外部本地化提供方进行接口。该脚本目前是硬编码的,用于Win64开发编辑器版本。
|
||
|
||
[REGION:note]
|
||
在虚幻引擎4.22版本之前:
|
||
|
||
* 该脚本被命名为 **Localise**。此名称仍作为别名存在。
|
||
|
||
* “OneSky”是“LocalizationProvider”参数的默认值。如果未使用本地化提供方,则必须将该参数设置为空字符串。
|
||
[/REGION]
|
||
|
||
在没有外部本地化提供方的情况下,对源内构建(虚幻引擎4根文件夹内的项目),基本调用如下:
|
||
|
||
Localize-UEProjectDirectory="YourProject"-UEProjectName="YourProject"-LocalizationProjectNames="TargetName"
|
||
|
||
在没有外部本地化提供方的情况下,对源外构建(UE4根文件夹以外的项目),基本调用如下:
|
||
|
||
Localize-UEProjectRoot="Path/To/Project"-UEProjectDirectory=""-UEProjectName="YourProject"-LocalizationProjectNames="TargetName"
|
||
|
||
与外部本地化提供方接口涉及创建一个派生自“LocalizationProvider”的类。默认情况下,我们提供两个本地化提供方:OneSky和XLOC。
|
||
|
||
| 本地化提供方 | 实现信息 |
|
||
| --- | --- |
|
||
| **OneSky** | [INCLUDE:#excerpt_1] |
|
||
| **XLOC** | [INCLUDE:#excerpt_2] |
|
||
|
||
<!--
|
||
[EXCERPT:excerpt_2]
|
||
|
||
* 由“XLocLocalizationProvider”实现。
|
||
|
||
* 创建一个派生自“XLocLocalizationProvider”的类,并用配置数据填充“Config”变量。
|
||
|
||
* 覆盖“StaticGetLocalizationProviderId”和“GetLocalizationProviderId”以返回配置的名称,并将此名称传递给“-LocalizationProvider”参数以选择正确的配置。
|
||
|
||
[/EXCERPT:excerpt_2]
|
||
-->
|
||
<!--
|
||
[EXCERPT:excerpt_1]
|
||
|
||
* 由“OneSkyLocalizationProvider”实现。
|
||
|
||
* 创建一个派生自“OneSkyConfigData”的类,以包含配置数据,并将配置的名称传递给“-OneSkyConfigName”参数以选择正确的配置。
|
||
|
||
* 将OneSky组的名称传递给“-OneSkyProjectGroupName”参数。
|
||
|
||
* 传递“-LocalizationProvider=OneSky”以使用OneSky本地化提供方。
|
||
|
||
[/EXCERPT:excerpt_1]
|
||
-->
|