Unreal Engine の ブループリント ビジュアル スクリプティング システムは、ノードベースのインターフェースを使ってゲームプレイ要素を作成するためのビジュアル プログラミング言語です。ノードベースのワークフローは、通常はプログラマーだけが使用できる幅広いスクリプトの概念とツールをデザイナーに提供します。また、Unreal Engine の C++ 実装で使用可能なブループリント固有のマークアップを使用することで、プログラマーはデザイナーが拡張できるベースライン システムを作成することができます。
一般的な多くのスクリプト言語と同様に、Engine ではこのシステムを使用してオブジェクト指向 (OO) のクラスやオブジェクトを定義することができます。このシステムは、ユーザー定義のオブジェクトとともに、通常は単に「ブループリント」と呼ばれます。
前提条件となる知識
次のページに進む前に、以下のトピックについて確認しておくことをお勧めします。
ブループリントの仕組み
ブループリントは、オブジェクトの構築、個々の関数、一般的なゲームプレイ イベントなどのさまざまな目的でノードのグラフを使用することで動作します。イベント、関数、および変数のノードをワイヤーで接続することで、ゲームプレイ要素を作成できます。
一般的に使用されるブループリントのタイプ
最も一般的なブループリントのタイプが、レベル ブループリント と ブループリント クラス です。
すべてのタイプが記載されたリストについては、「ブループリントのタイプ」 を参照してください。
レベル ブループリント
レベル ブループリントには、マップ内のレベル固有のイベントのロジックが含まれています。各レベルに 1 つのレベル ブループリントがあり、次のような機能を備えています。
- レベル内のアクタを参照して操作する
- レベル シーケンス アクタ を使用してシネマティックスを制御する
- レベル ストリーミングを管理する
レベル ブループリントは、変数の読み取りやカスタム イベントのトリガーなど、レベルに配置されたブループリント クラスとやり取りすることも可能です。詳細については、「レベル ブループリント」を参照してください。
ブループリント クラス
ブループリント クラスは、インスタンスとしてマップに配置できる、新しいクラスやタイプのアクタを定義します。プロジェクト全体で使用されているブループリント クラスを編集すると、そのすべてのインスタンスが更新されます。
ブループリント クラスはドア、スイッチ、収集アイテム、破壊される景色などのインタラクティブなアセットの作成に理想的です。詳細については、「ブループリント クラス」を参照してください。
ブループリントのその他の機能
以下のトピックでは、ブループリント システムで利用できる機能をいくつか紹介します。
コンストラクション スクリプトを使用したカスタマイズ可能なプレハブの作成

コンストラクション スクリプト は、ブループリント クラス内のグラフの一種で、アクタがエディタで配置または更新されると実行されます (ただし、ゲームプレイ中は除きます)。これにより、環境アーティストのワークフロー向上に役立つ、カスタマイズ可能な小道具を作成できます。たとえば、ポイント ライト コンポーネントの色と明るさに合わせてマテリアルを自動更新する照明器具や、フォリッジ メッシュを一定の領域にランダムに散布するブループリントなどがあります。
コンテンツ例 マップでは、各例 (上の図) を含むデモルームが、多くのコンポーネントで構成された単一のブループリントです。ブループリントのコンストラクション スクリプトは、ブループリントの [Details (詳細)] パネルに表示されたパラメータに従って、さまざまな静的メッシュおよびライトを作成して配置します。各コンテンツ例マップを使用すれば、デモルームのブループリントを配置し、生成するルームの長さ、高さ、数の値を設定して、瞬時に完全なルーム セットを用意することができます。
プレイ可能なゲーム キャラクターを作成する

ブループリント クラスの一種である ポーン は、プレイヤーが制御できるアクタの物理的な表現です。ポーン クラスを使用すれば、プレイ可能な キャラクター の作成に必要なすべての要素を組み合わせることができます。カメラ の挙動を操作してマウス、コントローラー、およびタッチ スクリーンの入力イベントを設定し、アニメーション ブループリント アセットを作成して、スケルタルメッシュ アニメーションに対応できます。
キャラクター ブループリントには、移動、ジャンプ、スイミング、落下に必要な動作の多くが組み込まれた、キャラクター コンポーネントが含まれています。設定を確定するには、プレイヤーにキャラクターを制御させる方法に応じて、いくつか入力イベントを追加する必要があります。
詳細については、「キャラクターの動きを設定する」を参照してください。
HUD を作成する

ブループリントを使用して、ゲームの HUD (ヘッドアップ ディスプレイ) を作成できます。この設定は、イベント シーケンスと変数を含めることができるという点でブループリント クラスに類似していますが、レベルに直接ではなく、プロジェクトのゲームモード アセットに割り当てられます。
HUD に対して、他のブループリントの変数の読み取り、ヘルス バーの表示、スコア値の更新、目標マーカーの表示などを実行するように設定できます。また、HUD を使用して、クリックできるボタンなどの要素のヒットボックスを追加することも可能です。
これはブループリントでも可能ですが、Unreal Motion Graphics システムでは、よりデザイナーにとって使いやすい方法で UI を配置できます。このシステムは、ブループリント ビジュアル スクリプティングがベースとなっています。
ブループリント エディタおよびグラフ
ブループリント エディタ は、ビジュアル スクリプトをビルドする際にブループリント要素の構築に使用するユーザー インターフェースです。

ブループリント エディタの UI は、選択したブループリントのタイプによって変わります。多くの ブループリント エディタ のコア機能は、ブループリントのネットワークを配置するための [Event Graph (イベント グラフ)] タブです。
インターフェースの詳細については、「ブループリント エディタ」を参照してください。
はじめに
以下のページでは、引き続き Unreal Engine を使用したビジュアル スクリプティングの基本を学ぶことができます。
ブループリントのサンプルとチュートリアル
追加のハンズオン リソースでは、ブループリント システムの詳細を学ぶことができます。