Cluster Creator Kitには、スペースの言語設定によって表示するものを変えられる「Localized Text」「Localized Texture」といった機能があります。
日本語のスペースでは日本語で、他の言語のスペースでは英語やそれぞれの言語で表示されるようにして、日本だけでなく海外からのプレイヤーにも楽しんでもらえるワールドにしてみましょう!
Localization機能とは
clusterでは「スペース」ごとに言語設定があります。Localization TextsやLocalization Texturesを利用すると、スペースの言語設定に合わせて表示するものを変えることができます。例えばワールドに案内看板やUIのテキストなどを設置する際、日本語のスペースでは日本語のものを、英語のスペースでは英語のものをそれぞれ用意して表示を切り替えることができます。
表示される言語は入室したプレイヤーごとではなくスペースごとに選択され、そのスペース内では各プレイヤーの言語設定にかかわらず同じ言語で表示されます。スペースの言語は最初にそのスペースに入室したプレイヤーの言語設定が適用されます。
言語によってテキストを変更する
UIなどに表示するテキストを言語ごとに選択します。UIやテキストの基本的な使い方はこちらの記事などを参考にしてください。
- まず、言語設定とテキスト内容の紐づけを定義したアセットファイルを作成します。
- UnityのProjectウインドウの右クリックメニューから「Create>ScriptableObjects>Localization>Texts – cluster」を選択して、ファイルを新規作成してください。
- 作成したアセットファイルのInspectorで、リストに要素を追加していきます。
- +ボタンで項目を追加し、言語と対応するテキスト内容を設定しましょう。選択肢から言語設定を選び、その言語設定で表示するテキストを「Text」に入力します。
- ※スペースの言語設定と一致するものがない場合、リストの一番上の要素が使用されます。
- ※2023年11月(Cluster Creator Kit 2.5.0)現在、Localization Textsの言語は以下から選択できます。
- en = 英語
- ja = 日本語
- ko = 韓国語
- zh-CN = 中国語(簡体字)
- zh-TW = 中国語(繁体字)
言語とテキスト内容の紐づけが設定出来たら、次はこれをワールドの表示に適用していきます。
まずはこちらの記事などを参考に、通常通りワールドに「Text(Legacy)」オブジェクトを配置します。
- TextオブジェクトのInspectorで、Add Componentから「Localized Text」コンポーネントを追加します。
- コンポーネントの「Localization Texts」の項目に、先ほど作成した設定ファイルをドラッグ&ドロップで指定します。
これで設定が完了です。確かめてみましょう。
アカウントの言語設定を変更して新しいスペースを開始すると、異なる言語のテキストが表示されます。
言語によって画像を変更する
3Dモデルのテクスチャや、UIに表示する画像も言語によって変えることができます。
- 先ほどと同様に、まずは言語設定と画像ファイルの紐づけを定義するファイルを作成しましょう。Projectウインドウを右クリックし、今度は「Create>ScriptableObjects>Localization>Textures – cluster」を選択してください。
- 作成したファイルのInspectorでリストに項目を追加し、言語設定ごとに利用する画像ファイルを指定します。
- こちらの設定は「Localized Texture」「Localized Raw Image」の各コンポーネントで利用できます。
- 3Dモデルのテクスチャを言語設定ごとに変更する場合は、Mesh Rendererコンポーネントと同じオブジェクトに「Localized Texture」コンポーネントを追加し、「Localization Textures」の欄に先ほどの設定ファイルを指定します。
- 画像をUIに表示する場合はRaw Imageオブジェクトを作成し、「Localized Raw Image」コンポーネントを追加して同様にファイルを指定します。
UIの場合は「Image」では使えません。「Raw Image」を使用してください。
設定できたら言語設定を変更して確かめてみましょう。
Localize機能を利用して言語ごとに表示を切り替えると、同じワールドを日本だけでなく海外のプレイヤーにも楽しんでもらいやすくなります。
つくったワールドをグローバルに発信してみましょう!