Unityプラグインは、Unity開発者が原文のStringsと翻訳をPhrase Stringsと同期させることでローカライズタスクを管理できるようにするUnity Localizationパッケージです。
このプラグインは、Unity開発者がUnity Localization、特にString Table Collectionsを通じてローカライズを使用している、または使用する予定であることを前提としています。Unity Localizationの使用を開始するには、Unityのドキュメントを参照してください。
前提条件
-
ロケールのセットと、1つ以上のString Table Collectionsを作成します。
-
それらをいくつかのテキストオブジェクトに接続します(および/またはUnityスクリプトからプログラム的に使用を開始します)。
インストールと構成
プラグインをインストールするにはいくつかの方法があります:
-
Asset Storeからインストールします。
-
ローカルの
.unitypackageファイルをカスタムパッケージとしてインポートし、パッケージアーカイブからインストールします。 -
ローカルにチェックアウトしたソースコードからインストールするには、以下のいずれかを行います:
-
ソースコードを
YourProject/Packages/com.phrase.pluginディレクトリに直接チェックアウトします。 -
unity_pluginディレクトリへのシンボリックリンクをYourProject/Packages内にcom.phrase.pluginとして作成します。
-
インストールが完了したら、をプロジェクトのアセットに追加し、設定を完了します:
-
接続環境を設定し、Phraseで生成されたAPIアクセストークンを提供します。
-
利用可能なプロジェクトを取得し、一覧から1つ選択します。
ロケールの一覧は自動的に取得されます。
-
UnityとPhrase Stringsの間でロケールが一致しない場合は、関連するオプションを選択して、不足しているロケールをローカルまたはPhraseで作成します。
-
Phraseと接続および同期する文字列テーブルを選択します。
-
どのロケールをUnityにプルし、どのロケールをPhraseにプッシュするかを選択します。この選択は、グローバルなプル/プッシュ(プロバイダインスペクター上)と、個別の文字列テーブルのプッシュ/プル(テーブル拡張ドロワー上)の両方に影響します。
設定はグローバルであり、Phrase拡張機能(接続されたコレクションでのみ機能)とPhraseウィンドウ(接続された文字列テーブルのキーのみを表示)の両方に影響します。
初期キー一覧(通常は原文ロケールのみ)をPhrase Stringsにプッシュできるようになりました。訳文ロケールに翻訳されると、キーは同じ画面を通じてUnityにプルバックされます。
備考
Push and pull操作は、文字列テーブルコレクションの拡張機能からも利用できます。
プッシュとプル
ユーザーは画面(接続されているすべての文字列テーブルをPhraseと同期します)および個々の文字列テーブルの拡張ドロワーから、ローカライズキーをプッシュおよびプルできます。
文字列テーブルがプロバイダと接続されると、インスペクターにPhraseドロワーが表示され、テーブルのコンテンツをプッシュまたはプルできるようになります。プロバイダと接続されていない文字列テーブルにはPhraseドロワーは表示されません。拡張機能は、文字列テーブルコレクションがリンクされている場合にのみ表示されます。
ユーザーは通常、翻訳を複数の文字列テーブルコレクションに整理します。例としては、ゲームのセクションや参照されるアイテムのタイプ(武器、アイテム、キャラクターなど)に基づいたものがあります。この場合、Phrase Strings内に存在するすべての翻訳キーのうち一部のみを含むコレクションを接続する必要があります。ドロップダウンでオプションを選択し、特定のテーブルに対してプッシュ/プルされるキーのサブセットを指定します:
-
指定されたプレフィックスが名前に含まれるキーのみが、ターゲットテーブルにインポート(プル)されます。Unityのキー名には、プレフィックス自体は含まれません。プッシュされると、テーブル全体がPhraseにアップロードされ、キー名にプレフィックスが自動的に付加されます。
-
一致するtagを持つキーのみが、ターゲットテーブルにインポートされます。タグがプッシュされると、このテーブルのすべてのキーにタグが割り当てられます。
-
プルされたとき(通常はPhraseに接続されたコレクションが1つしかない場合)、すべてのPhraseキーがターゲットテーブルにインポートされます。
備考
テーブル拡張機能ドロワーからのプッシュとプルは、Phraseプロバイダインスペクタで選択されたロケールの一覧に従います。単一のテーブルコレクションからのみコンテンツを同期するには、Phrase拡張機能から実行してください。接続されているすべてのコンテンツを同期するには、Phraseプロバイダを使用してください。
文字列テーブルをプッシュする前に、Phraseプロバイダまたは拡張機能ドロワーで訳文のロケールが選択されていることを検証してください。訳文のロケールを選択せずにプッシュを行うと、Phrase Stringsでジョブは作成または更新されますが、そのジョブはTMSへの自動プロジェクト作成同期などの下流の統合機能には伝播されません。この失敗は、UnityまたはPhrase Stringsで目に見えるエラーなしに発生します。
復旧するには、影響を受けたジョブに不足している訳文のロケールをPhrase Stringsで追加し、下流の統合機能を再トリガーしてください。訳文のロケールがUnityプロジェクトでまったく設定されていない場合、Unity側でもロケールが設定されるまで、訳文をUnityにエクスポートする機能は動作しません。
Phraseウィンドウ
メニューからWindow/Phraseを選択してエディタウィンドウを開き、必要に応じてメインインターフェイスにアタッチします。
ウィンドウには、ローカライズシーンのテキストオブジェクトにアタッチされたキーが一覧表示され、そのメタデータの編集やスクリーンショットのアップロードが可能です。
選択中のすべてのテキストオブジェクトのうち、Phrase対応の文字列テーブルに接続されているものと、それに関連付けられたキーが表示されます。ユーザーはキーの説明と最大文字数を設定でき、これらはその文字列テーブルが次回プッシュされる際にPhraseと同期されます。
備考
文字列テーブル コレクション エディターから、キーのメタデータ(説明や最大文字数など)を表示や編集も可能です。
Update screenshot ボタンを使用して、現在のゲームビューの スクリーンショット をエクスポートし、表示されているすべてのPhraseキーに添付します。
キー名の横にある Open in Phrase をクリックして、Phraseの Strings editor でそのキーを開きます。