ue4にcontributeしたいと思ってlocalizationの仕組みを調べた

個人的にue4に追加したい機能があるんですが、それを実装する前に

以前ue4のeditor画面で、オパシティをオペシティと誤記していたところを発見して、
簡単そうなので、これから先に直して、コミットしようと思い、調べてみました。

ue4オペシティ

まず、opacityをオパシティと変換しているところは、

UnrealEngine/Engine/Content/Localization/Engine/ja

のファイル群の中のファイルに定義されていました。

そして、既にオペシティではなく、オパシティになっていました。

Engine.poの中

#. Key:	4CE96BFB4046EAADB899A29F20B87F04
#. SourceLocation:	/Engine/Functions/Engine_MaterialFunctions01/Opacity/SoftOpacity.SoftOpacity.LibraryCategoriesText(1).LibraryCategoriesText
#: /Engine/Functions/Engine_MaterialFunctions01/Opacity/SoftOpacity.SoftOpacity.LibraryCategoriesText(1).LibraryCategoriesText
msgctxt ",4CE96BFB4046EAADB899A29F20B87F04"
msgid "Opacity"
msgstr "オパシティ"

しかし、Contentフォルダは初めから生成されているわけではなく、バッチファイルを叩いてから、生成されているので、
このファイルを生成している部分があるはず、それがおそらく、

Engine/Config/Localizationの中に入っている、Engine.iniにあります。

Engine.iniの中に、こういう記述があります。

;Write Text Localization Report
[GatherTextStep7]
CommandletClass=GenerateTextLocalizationReport
DestinationPath=\\epicgames.net\root\UE3\Localization\WordCounts
bWordCountReport=true
WordCountReportName=Engine.csv
bConflictReport=true
ConflictReportName=EngineConflicts.txt

この中に、
epicgames.net\root\UE3\Localization\WordCounts

と書いてあるので、ワードはサーバーから参照しているっぽいです。
というか、.iniってそういう風に使うものなのかよくわかりませんが。

完璧に裏をとったわけではないので、推測ですが、
ue4で文字が必要な機能を個人追加するのは、無理なのかもしれませんね。

プルリクの履歴を見ると、他のdocumentで余分なスペースがあるので、
修正して、pull requestを出した人がいたんですが、それは、epicの翻訳のチーム
が直すからという理由で、declineされていたものがありました。

そのプルリクのurlはこちらから

意味がわかりませんが、document系の間違いは個人は対象外みたいです。

自分が間違えている、あるいは仕組みに詳しい方教えてくださるとありがたいです。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です