Language:
Page Info
Tags:
Skill Level:
Engine Version:

ダイレクト ブループリント通信

このページでは、ダイレクト ブループリント通信 を使用して 2 つのブループリント間で行う直接通信やデータの受け渡し方法を説明します。

このサンプルでは、プレイヤーはボックス経由で受け渡しおよび通信、パーティクル エフェクトのアクティベートができます。

このガイドでは、スターターコンテンツ を有効にした状態で Blueprint Third Person テンプレートを使用します。

  1. コンテンツ ブラウザ で、「Content/StarterContent/Shapes」フォルダを開きます。

  2. Shape_Cube右クリック し、[Asset Actions (アセット アクション)] から [Create Blueprint Using This... (これを使用してブループリントを作成...)] を選択します。

    DirectCom1.png

    表示された確認ボックスの [Ok] をクリックしてブループリントを作成します。

  3. Shape_Cube ブループリントで左上にある [Components][Static Mesh] を選択します。

  4. [Details (詳細)] パネルで、[Collision Presets (コリジョン プリセット)][OverlapOnlyPawn] に設定します。

    DirectCom2.png

    この設定で、 Pawns (延長すると Characters ) のみをボックス経由で渡すことができるようになります。

  5. [MyBlueprint] ウィンドウで、 [Add Variable (変数を追加)] ボタンをクリックし、変数の名前を「 TargetBlueprint 」とします。

    DirectCom3.png

    このブループリントが直接通信の相手になります。

  6. 変数の [Details] パネルで Variable Type[Blueprint_Effect_Fire] に設定し、編集可能 にします。

    DirectCom4.png

    通信相手となるブループリントを設定し、変数を公開して編集可能 (このブループリント外での編集が可能) にしました。

  7. [My Blueprint] ウィンドウで [Static Mesh] を選択し、次に [Details (詳細)] パネルに On Component Begin Overlap Event を追加します。

    DirectCom8.png

    これによりノードが追加され、キューブを入力するとスクリプトが発生するようにする Event Graph が開きます。

  8. Target BlueprintGet P FireGet Fire Audio を引き出して、下図のように Activate ノードに接続します。

    DirectCom10.png

    ここで Target Blueprint の Particle Effect コンポーネントと Audio コンポーネントへアクセスして、それらを有効にします。

  9. コンテンツ ブラウザ[Blueprint] で、Shape_Cube ブループリントをレベルへドラッグします。

    DirectCom5.png

  10. コンテンツブラウザContent/StarterContent/Blueprints で、Blueprint_Effect_Fire ブループリントを開きます。

  11. [Components] ウィンドウの [P_Fire] をクリックし、次に [Details (詳細)] パネルの [Auto Activate (自動アクティベート)] のチェックを外します。

    DirectCom6.png

    レベルにボックスが入った時にアクティベートする設定にしてあるので、このエフェクトが自動アクティベートしないようにしました。

  12. Blueprint_Effect_Fire ブループリントをレベルへドラッグします。

  13. Shape_Cube ブループリントを選択し、次に [Details (詳細)] パネルのドロップダウン メニューで [Blueprint_Effect_Fire] ブループリントを選択します。

    DirectCom7.png

    ここで通信相手にしたい Blueprint_Effect_Fire ブループリントのインスタンスをレベル内で指定します。レベル内に Blueprint_Effect_Fire ブループリントのインスタンスが複数配置されている場合は、それぞれのインスタンスがドロップダウン メニューに表示されるので、通信相手の Target Blueprint のインスタンスを示すことができます。

    スポイト アイコンをクリックすれば、ドロップダウン メニューを使わなくてもレベル内の Target Bluperint のインスタンスを選択することができます。指定した変数タイプに基づいたブループリントしかターゲットとして選択できないのでご注意ください。

  14. [Play (プレイ)] ボタンをクリックしてエディタで再生し、キャラクターがボックスを走利抜けるテストをします。

キャラクターがボックスへ入ると、レベル内で炎のエフェクトがアクティベートするのが分かります。別のブループリントからブループリントのプロパティを変えるためだけでなく、関数やイベントといったブループリントでの通常処理の呼び出しにも Direct Bluperint Communication を使用できます。

Tags