Unityプラグイン
ProtoPie Connectは、カスタムレイヤー統合を通じてユーザーがUnityレイヤーを挿入できるようサポートします。ProtoPie Unityパッケージは、ProtoPieとUnityレイヤー間でメッセージを送受信できるUnityプラグインで、両プラットフォーム間の統合されたインタラクションを実現します。
このUnityプラグインは無料でダウンロードおよびインストールできます。ただし、このプラグインを使用したUnityとのインタラクション機能は、Connect Enterpriseユーザーに限定されています。
ProtoPie Connect Unityプラグインをダウンロードしてください。
UnityとProtoPie統合のためのワークフロー
ProtoPieとUnityの間で統合されたインタラクションをプロトタイピングするには、次のワークフローに従ってください:
1. UnityプロジェクトのためのUnityプラグインをインストールします。
- ProtoPieでは、SendレスポンスのメッセージがUnityでイベントをトリガーします。UnityがProtoPieにメッセージを送信すると、Receiveトリガーのメッセージが適切なレスポンスを識別します。
2. UnityシーンでProtoPieメッセージとUnityイベント間のマッピングを定義します。
3. テストの準備ができたら、UnityシーンをWebGLビルドとしてエクスポートし、ビルドファイルをProtoPie ConnectのUnityレイヤーにソースファイルとして追加します。
4. ProtoPieとUnityレイヤーを希望のレイアウトに合わせて配置し、ProtoPie ConnectのStage Viewでインタラクションをテストします。
Unityプラグイン概要
- このプラグインは、Unityプロジェクトにパッケージとしてインストールされ、コードを記述することなくProtoPieメッセージをUnityイベントにマッピングすることができます。このプラグインは、既存のUnityプロジェクトに簡単に追加でき、既存のUnityコンポーネントを妨げたり破損させることはありません。
- プラグインは、Unityシーン内にProtoPieオブジェクトを作成し、パッケージに含まれているMessage Interactionスクリプトコンポーネントを使用して動作します。ProtoPieオブジェクトは、ProtoPieメッセージとUnityイベントをマッピングする役割を果たします。両プラットフォーム間のすべてのマッピングはProtoPieオブジェクトによって処理されるため、この統合のためにUnityコードの他の部分を変更する必要はありません。
- Message Interactionスクリプトコンポーネントでは、Unityシーンで使用するマッピングテーブルを割り当てることができます。マッピングテーブルは、基本的にProtoPieとUnity間で使用されるメッセージのリストです。マッピングテーブルを割り当てた後、ユーザーはUnityシーンで使用するイベント(Unity)-メッセージ(ProtoPie)マッピングを追加することができます。
- イベント(Unity)-メッセージ(ProtoPie)マッピングでは、シーンで使用するメッセージのマッピング、メッセージの方向、Unityでの希望する動作、ProtoPieに送信する値などを指定できます。
Unityプラグインのインストールと設定
1. UnityプロジェクトでProtoPie Connect Unityプラグインをインストールします。
2. Unityシーンで空のオブジェクトを作成し、名前を「ProtoPie」に設定します。
- 名前は大文字と小文字を区別するため、必ず「ProtoPie」と設定してください。ProtoPie Connectは、この名前を使用してメッセージの相互作用を検出します。
3. ProtoPieオブジェクトに、MessageInteraction.cs(ProtoPie Unityパッケージに含まれる)スクリプトコンポーネントを追加します。
- Add Component → Scripts → ProtoPie.Interaction → Message Interactionを選択します。
4. Message InteractionコンポーネントのMessage DataフィールドにMappingTableを追加します。
- MappingTableは、ProtoPieとUnity間で通信するメッセージセットを定義します。
- これはYAML形式の構成ファイルで、ラベル、送信するメッセージ、メッセージの流れの方向を指定できます。
- マッピングテーブルはMappingTablet.assetというパッケージフォルダーにあり、メッセージマッピングリストの項目を追加、削除、編集することができます。
4. これでUnityシーンはProtoPie Connectで使用する準備が整いました。Event(Unity)-Message(ProtoPie) Mappingsの下にあるAdd Mappingボタンを押して、最初のマッピングを追加してください。
Unityプラグインでのメッセージマッピング定義
5. ProtoPieとUnityレイヤーは、インタラクションを追加するためにメッセージを介して通信します。メッセージマッピングを追加するには、Add Mappingを選択し、使用するマッピングを定義します。各マッピングでは、メッセージデータフィールドで使用されたマッピングテーブルに定義されたマッピングの1つを選択することができます。
属性定義
- Mapping Label: マッピングテーブルに定義されたマッピングのラベルまたはインデックス。
- Message: ProtoPieとUnity間で送受信されるメッセージ(またはsocket.IO用語でのmessageID)。これはProtoPieのSend ResponseおよびReceive Triggerに対応するメッセージです。
- Message Direction: メッセージの通信方向(ProtoPie → Unity、Unity → ProtoPie、双方向、なし)。
- Desired Action (String): ProtoPieからUnityにメッセージが送信される際に、Unityで実行されるべきアクション(メソッド/関数)。この属性は、メッセージ方向がProtoPie → Unityまたは双方向のときにのみ適用されます。
- ユーザーは、アクションを実行するソースオブジェクトとメソッドを選択する必要があります。
- ProtoPieがメッセージと共に値を送信する場合、その値はメソッド/関数の文字列パラメータとして渡されることができます。
- 注意: 「Static Parameters」の「addCube(string)」オプションはランタイム中に設定できず、Unityエディター内で事前に定義する必要があります。
- Event Object & Event to trigger message: Unityのオブジェクトとイベントで、そのイベントが発生すると、UnityがProtoPieにメッセージを送信します。(メッセージの方向がUnity → ProtoPieまたは双方向の場合にのみ適用)
- Value Source Object & Value to Send:(オプション)UnityからProtoPieにメッセージを送信する際に、メッセージの値とともに追加のデータをProtoPieに送信できます。Value Source ObjectとValue to Sendの属性では、ProtoPieに送信するデータの種類を定義します。
- 注意: プラグインはソースオブジェクトに接続された公開文字列変数を認識します。
4. 例示しているコードを使用してArduinoからProtoPie Connectへメッセージを送信します。