Unity Naninovel v1.15 ローカライズ手順
最近ゲームのグローバル化が顕著。…な気がする。
翻訳は怪しくても多言語対応することがとりあえず重要!みたいな風潮。
なのでローカライズが簡単にできるならやっておきたい。
Naninovelのローカライズ機能を実験してみた。
環境 Win10 + Unity 2019.4.22f1 (64-bit) +Naninovel v1.15
前提
ソースロケールについて
Ja-jpとか、en-AU,en-CA,en-USとかなんとなくわかっているようでわかってない。これらは
"言語"-"場所"
を表記している。
en-AUならEnglish (Australia)
en-CAならEnglish (Canada)
en-USならEnglish (United States)
という具合。
日本語は日本でしか話されていないので
Ja-jp Japanese (Japan)
のみ
リスト対応表は RFC5646 language tags 参照
https://gist.github.com/Elringus/db90d9c74f13c00fa35131e61d1b73cb
ja-JPとja / en-USとenは何が違うのか?
場所の特定ができない場合はjaとかenが使われるという想定らしい。
ja-JPとjaに違いは無いようだけど、enはどこ基準の英語にするかは不明。
ゲーム内ではあまり厳密に気にしなくてもよさそう。
NaninovelのDefault設定は「en」
今回は
日本語「ja」(Default)と英語「en」の両対応にする
手順
0,ローカリゼーションルートフォルダ等を作成
Resources/Naninovel/Localization
名前やパスはこのままで作成
あとManageText(キャラの名前表記などの設定ファイル)用に
Resources/Naninovel/Textも作成
1,Defaultのソースロケール設定(基準となる言語設定)
Naninovel->Configuration->Localizationのメニューから
Source LocaleとDefault Localeにja-JP設定
※Source Localeで設定した言語が現プロジェクトの基準言語になる。
※Default Localeは最初にゲーム実行するときにデフォルトで選択されるロケールの指定。
2,Naninovel設定ファイルの言語表記を出力
Naninovel->tools->ManageText
出力先は
Resources/Naninovel/Text
Defaultのソースロケールの設定ファイル(キャラクターの表示名等)
などで使用されている言語表記がテキスト出力される。
3,各言語のロケールフォルダー作成
フォルダ名はロケールの名前(タグ)と同じにしておくこと
例えば英語なら
Resources/Naninovel/Localization/en
4,スクリプトのローカライズファイル出力
Naninovel->tools->Localization
Localeフォルダ(output):Resources/Naninovel/Localization/enを指定
Scriptフォルダ(input):何も指定しないとすべてのNaniスクリプトが対象になるっぽい
Textフォルダ(input):Resources/Naninovel/Text
Localize Managed textにチェック
Try Updateにチェック ※外すとクリーンされるのでUpdate時は注意。
設定した後 Generate Localization Resourcesを実行。
5,出力されたスクリプト等を編集して実際にローカライズする
Resources/Naninovel/Localization/en以下に
Script/とText/が生成される。
Text/の方のCharacterNames.txtを編集でキャラ表示名(DisplayName)をローカライズする。
Scritp/の方の編集でNaniスクリプトのローカライズをする。
6,Naniスクリプトのローカライズ
編集するためのちょっとしたルールがある。
5で生成されたスクリプトを覗くとこんな感じ
; Japanese (Japan) <ja-JP> to English <en> localization document for `main` naninovel script
# eed1274e
; man: こんにちは
# b884df8d
; woman: さようなら
これに対し、翻訳文は以下の感じで編集する、注意点は生成された#IDを弄らないこと。
; Japanese (Japan) <ja-JP> to English <en> localization document for `main` naninovel script
# eed1274e
; man: こんにちは
man: Hello
# b884df8d
; woman: さようなら
woman: Goodbye
7,ゲームSettingsからLocaleを切り替え確認
ゲームタイトルやオプションから、ユーザーセッティングメニューに移り
BASIC > Language からjpとenを切り替えると原文と翻訳文が切り替わる。
ローカライズした例として、こちらNaninovelで制作したゲームから確認可能
翻訳レベルはお察し。google先生の力を全力で借りた。
Naninovelとは?
NaninovelはUnityゲームエンジン上で動くアセット。
ビジュアルノベルゲーム開発を簡単に実現可能。
参考
Naninovel Localization
リソースもローカライズできるっぽい
https://naninovel.com/guide/localization.html