日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UE4 本地化多语言

發(fā)布時間:2023/12/18 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UE4 本地化多语言 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

轉(zhuǎn)載自:https://blog.csdn.net/l346242498/article/details/72911539

?

1.在編輯器設(shè)置界面,打開本地化功能。

?????????

???? ?? 2.在窗口中打開本地化面板

?????? 3.設(shè)置本地化需要讀取的文本路徑

備注一下,如果是非C++項目,那么Gather from Text Files是不需要的,因為你沒有這些文件,如果勾選的話,可能會導(dǎo)致失敗,畢竟本地化屬于非正式功能,多少會有些不能理解的bug之類的。

????? 5.添加新語言,并設(shè)置原生語言。 這里我默認是編輯器英文語言,所以添加中文語言,并且把中文設(shè)置為原生語言。

???? 6. 點擊Gather Text開始搜索文本

?????? 7. 搜索完畢,點擊非原生語言的edit選項

?

在Untranslated選項卡下邊翻譯你需要翻譯的選項,然后點擊Save。這里不需要全部都翻譯,有些其實是沒用的。

???????? 8.統(tǒng)計文字,并且編譯

?

????????? 那么我們的本地化功能已經(jīng)完成了,下面可以測試一下。

????????? 這里要注意一點,在加載策略上,如果你是新添加的方案的話,默認是Never,這時候是永遠不加載的,所以要改變一下,game或者always都行

????????? 9.使用獨立窗口測試。修改編輯器偏好設(shè)置,在獨立窗口情況下增加啟動參數(shù)? -culture=en?

-culture=后邊跟著的參數(shù)名字其實就是你添加的語言的簡寫,把鼠標放在本地化功能列表中語言名字上,tips框中會顯示對應(yīng)名字

?

????????? 10.打包相關(guān)設(shè)置。在localization to package中把需要打包進去的語言勾選上,這里我們選上 English和Chinese,Internationalization Support選擇EFIGSCJK(多語言集合), package default localization 設(shè)置為 zh

??????? 11. 如果還有音頻,視頻,圖片,各種數(shù)據(jù)文件相關(guān)的本地化操作,可以直接右鍵其藍圖文件,選擇Asset localization操作.

????? 創(chuàng)建以后會在本地化文件夾位置自動生成一個對應(yīng)的文件副本,然后把該文件副本改成你需要替換的本地化文件就好了,注意該副本的文件名一定要與原件文件名一致,這樣才能自動調(diào)用到本地化版本的文件。測試和使用方法與9步和10步相同。

????? 12. C++中設(shè)置動態(tài)切換語言的函數(shù)庫。

?????????? 創(chuàng)建UBlueprintFunctionLibrary的子類,具體內(nèi)容如下

?

.h文件

#pragma once

?

#include "Kismet/BlueprintFunctionLibrary.h"

#include "MyBlueprintFunctionLibrary.generated.h"

?

UCLASS()

class LOCALIZATIONTEST_API UMyBlueprintFunctionLibrary : public UBlueprintFunctionLibrary

{

GENERATED_BODY()

public:

/* Change Localization at Runtime. */

UFUNCTION(BlueprintCallable, meta = (DisplayName = "Change Localization"), Category = "Locale")

static void ChangeLocalization(FString target);

UFUNCTION(BlueprintCallable, meta = (DisplayName = "Get Localization"), Category = "Locale")

static FString GetLocalization();

};

?

.cpp

#include "localizationTest.h"

#include "MyBlueprintFunctionLibrary.h"

?

void UMyBlueprintFunctionLibrary::ChangeLocalization(FString target)

{

FInternationalization::Get().SetCurrentCulture(target);

}

?

FString UMyBlueprintFunctionLibrary::GetLocalization()

{

return FInternationalization::Get().GetCurrentCulture().Get().GetName();

}

--------------------- 本文來自 執(zhí)手畫眉彎 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/l346242498/article/details/72911539?utm_source=copy

總結(jié)

以上是生活随笔為你收集整理的UE4 本地化多语言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。