広告あり

Unreal Engine コツコツ自習_Broadcast()

UEコツコツ自習シリーズ
スポンサーリンク

Broadcast()

UEで使うC++コードについて調べています。

今回は、「Broadcast()」です。

※作業環境:UEバージョン5.3.2

今回のドキュメント参照URL

上記が使えない場合はこちらからリンク先へ移動できます→UEドキュメントサイトへ

・・・自習中・・・

// 例
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FEnemyDiedDelegate);

FEnemyDiedDelegate EnemyDiedDelegate;

Enemy->EnemyDiedDelegate.AddDynamic(this, &AEnemySpawner::OnEnemyDied);

EnemyDiedDelegate.Broadcast();

Broadcast()

デリゲートにバインドされたすべての関数を呼び出すために使用します。

デリゲートに関連付けた関数を、Broadcast()で実行する感じです。

例コードの説明

DECLARE_DYNAMIC_MULTICAST_DELEGATE(FEnemyDiedDelegate)

「FEnemyDiedDelegate」という、マルチキャストデリゲート型を宣言しているマクロです。(FEnemyDiedDelegateは自作)

「DECLARE_DYNAMIC_MULTICAST_DELEGATE」は、C++とブループリントの両方で使用できるデリゲートを作成するためのマクロです。

FEnemyDiedDelegate EnemyDiedDelegate

FEnemyDiedDelegate型の変数を作成しています。

これを使って、他の関数を関連付けていきます。

Enemy->EnemyDiedDelegate.AddDynamic(this, &AEnemySpawner::OnEnemyDied)

「Enemy」クラスの「EnemyDiedDelegate」に関数を関連付けています。

「this」は現在のクラス、「AEnemySpawner::OnEnemyDied」は、関連付ける関数を指定しています。

EnemyDiedDelegate.Broadcast()

「EnemyDiedDelegate」に関連付けた関数をすべて実行します。

他の記事を探す

他の記事も気になる方は、以下の記事の目次を確認ください。

タイトルとURLをコピーしました