はじめに
エディタ設定のPreview Game LanguageやUMGのツールバーのアイコンから言語を指定することで、テキストのローカライズ結果をエディタ上で確認することができます。
ただON・OFFや言語変更する度にこれらを触りにいくのは面倒です。オレオレデバッグ機能・エディタから変更できるようにしておくと色々便利な気がしたので、BP, C++から制御できる方法を探してみました
Preview Game LanguageをBP, C++から変えるには
void UMyBlueprintFunctionLibrary::SetLocalizationPreviewLanguage(FString InCulture) { FTextLocalizationManager::Get().ConfigureGameLocalizationPreviewLanguage(InCulture); FTextLocalizationManager::Get().EnableGameLocalizationPreview(); } void UMyBlueprintFunctionLibrary::EnableGameLocalizationPreview() { FTextLocalizationManager::Get().EnableGameLocalizationPreview(); } void UMyBlueprintFunctionLibrary::DisableGameLocalizationPreview() { FTextLocalizationManager::Get().DisableGameLocalizationPreview(); } bool UMyBlueprintFunctionLibrary::IsGameLocalizationPreviewEnabled() { return FTextLocalizationManager::Get().IsGameLocalizationPreviewEnabled(); }
参考:SDesignerToolBarの各実装
Engine\Source\Editor\UMGEditor\Private\Designer\SDesignerToolBar.cpp
これらの関数を使うと…
オレオレスクリプトエディタにテキストローカライズ確認用機能が追加された!これがやりたかったんや… #UE4 pic.twitter.com/s6k6xOYkLF
— おかず (@pafuhana1213) 2022年1月20日
いけました。やったー!
ただし、この設定はPreview Game LanguageとかUMGのツールバーと共通なのでご注意を。
おしまい