見出し画像

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

ロケールID
https://web-analyst-chanoma.com/archives/5597

この記事が気に入ったらサポートをしてみませんか?