本地化設定
本指南將說明如何在 Unreal Engine 中讓文字可本地化,以便 AI Localization Automator 能夠發現並翻譯這些文字。
如果您已經熟悉 Unreal Engine 的本地化流程,並且有設定 FText、本地化目標以及收集文字的經驗,您可以安全地跳過此頁面,直接前往 開始使用。
此頁面涵蓋了使用任何翻譯工具(包括 AI Localization Automator)之前所需的基本 UE 本地化設定。
如果您對 Unreal Engine 的本地化系統完全陌生,我們強烈建議您先觀看這個簡短的影片教學:Unreal Engine 5 本地化教學。
觀看影片後,此頁面涵蓋的大部分主題將會變得清晰易懂,您很可能可以跳過此頁面,直接前往 開始使用。
以下指南涵蓋了通用的 Unreal Engine 本地化設定和工作流程 - 這些步驟適用於 UE 中的任何翻譯專案,而不僅僅是 AI 驅動的翻譯。這是關於基本本地化概念和設定流程的參考資料。
了解可本地化的文字
為了讓 AI Localization Automator 能夠運作,您需要在專案中將 FText 屬性標記為可本地化。此插件透過 UE 的本地化系統來發現文字,因此必須先正確設定文字。
FText 與 FString 與 FName
在 Unreal Engine 中,只有 FText(在 Blueprints 中為 Text)可以被本地化:
- ✅ FText:可本地化,支援豐富格式,用於面向使用者的文字
- ❌ FString:不可本地化,用於內部資料和檔案路徑
- ❌ FName:不可本地化,用於識別碼和鍵值
在 Blueprints 中讓文字可本地化
1. 建立 FText 變數
在您的 Blueprint 類別中:
- 新增 FText 變數
- 開啟您的 Blueprint 類別
- 新增一個類型為 Text (FText) 的新變數

- 設定預設值
- 在變數詳細資訊中,設定您的預設文字值
- 這將成為您用於翻譯的原始文字

- 啟用本地化
- 點擊位於文字內容右側的旗標圖示
- 在開啟的本地化視窗中,勾選「Localize」核取方塊 - 這一步至關重要!
- 可選擇性地設定自訂的 Key 和 Namespace 以便組織管理

2. FText 的使用場景
一旦您擁有可本地化的 FText 變數,它們就可以在整個 Unreal Engine 生態系統中使用,包括:UMG 小工具、HUD 類別、用於 UI 訊息的 GameMode/GameState、用於互動提示的 Actor 元件、對話系統、輸入動作名稱、成就/獎盃描述、存檔顯示文字、控制台指令說明文字、編輯器工具,以及任何顯示面向使用者內容的自訂 Blueprint 或 C++ 系統。
在 C++ 中讓文字可本地化
1. 使用 LOCTEXT 巨集
對於 C++ 中的靜態文字:
// At the top of your file
#define LOCTEXT_NAMESPACE "MyGameUI"
// Create localizable text
FText WelcomeText = LOCTEXT("WelcomeMessage", "Welcome to the game!");
FText ButtonText = LOCTEXT("StartButton", "Start Game");
// At the end of your file
#undef LOCTEXT_NAMESPACE
2. 使用 NSLOCTEXT 處理特定命名空間
// For text with custom namespace/key
FText ScoreText = NSLOCTEXT("GameUI", "ScoreLabel", "Score: {0}");
FText HealthText = NSLOCTEXT("GameUI", "HealthDisplay", "Health");
3. FText 屬性在類別中
UCLASS()
class MYGAME_API UMyUserWidget : public UUserWidget
{
GENERATED_BODY()
public:
// Localizable text property
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Localization")
FText DisplayText;
// Function returning localizable text
UFUNCTION(BlueprintCallable)
FText GetWelcomeMessage() const
{
return LOCTEXT("Welcome", "Welcome, player!");
}
};
設定本地化目標
1. 建立本地化目標
- 開啟 Localization Dashboard(工具 → Localization Dashboard)
- 預設情況下,應該已有一個 Game 目標可用於翻譯文字
- 如果沒有 Game 目標,請點擊 「Add New Target」,輸入 「Game」 作為名稱,並選擇 Game 作為 Loading Policy

2. 設定收集設定
- 在儀表板中選擇你的目標
- 前往 Game 面板中的 「Gather Text」 區段
針對 Blueprint 內容:
- 開啟 「Gather from Packages」 並展開它
- 在 「Include Path Wildcards」 中,選取包含可本地化文字資產的目錄
針對 C++ 內容:
- 開啟 「Gather from Text Files」 並展開它
- 在 「Search Directories」 中,提供包含原始可本地化文字的 C++ 程式碼目錄

還有許多其他可用參數,例如 Exclude Path Wildcards、File Extensions 以及其他選項,可讓你微調系統搜尋可本地化文字的方式。
3. 新增目標語言
- 在 Localization Dashboard 中,選取你的目標
- 點擊 「Add New Language」 按鈕
- 從下拉選單中選擇單一語言(例如:西班牙文、法文、德文)
- 針對每個要翻譯的目標語言重複此流程
- 確保使用語言清單左側的單選按鈕,將你的原生文化標記為來源語言(預設為英文)
4. 收集文本
- 在目标中点击 “收集文本” 按钮
- 等待收集过程完成
- 过程结束后点击 “确定” 按钮
- 确认文本条目出现在 “字数统计” 列中
5. 编辑本地化内容
文本收集完成后,您现在可以手动编辑和添加本地化内容:
- 点击编辑按钮(第一个按钮),位于每个目标语言的操作列中
- 这将打开本地化编辑器,您可以在其中手动翻译每种语言的单词和短语
- 出于测试目的,您可以手动添加自己的测试本地化内容,以验证系统是否正常工作
AI Localization Automator插件将使用AI提供商自动处理此翻译过程。有关自动AI翻译的详细信息,请参阅入门指南。
6. 编译文本
添加本地化内容后(无论是手动添加还是通过AI Localization Automator进行,如您的首次翻译中所述):
- 点击本地化目标中的“编译文本”按钮
- 等待编译过程完成 - 类似于收集文本操作
- 编译完成后,翻译后的文本应可用并在您的项目中可见
- 您现在可以使用下面描述的方法测试您的本地化内容
測試本地化設定
有幾種不同的方式可以測試您的本地化設定。以下是最常用的方法:
方法一:編輯器偏好設定
- 前往 編輯器偏好設定 → 地區與語言
- 在 「預覽遊戲語言」 屬性中,選擇您要預覽的語言
- 注意:如果語言清單遺失,這可能是常見的 UE 錯誤,重新啟動編輯器即可解決

方法二:UMG 預覽
- 在 UMG 編輯器 中,當您想要預覽 UI 小工具中的翻譯時
- 在預覽小工具的右上角區域,有一個選項可以選擇用於預覽本地化的語言

準備好進行 AI 翻譯
一旦您完成了以下步驟:
- ✅ 專案中包含可本地化的 FText 內容
- ✅ 已正確配置名為「Game」的本地化目標
- ✅ 使用正確的收集設定成功收集了原始文字
- ✅ 已新增用於翻譯的目標語言
- ✅ 透過測試驗證了您的設定
您就可以開始使用 AI Localization Automator!前往 開始使用 配置您的 AI 提供者並開始翻譯。