メインコンテンツまでスキップ

イベント通知を設定する

SpawnObjectExt と ReturnObjectExt は、処理が成功したときにUdonBehaviourのカスタムイベントを呼び出せます。

イベント通知は初期状態では無効です。必要なコンポーネントだけ有効にしてください。

イベントを受信する​

通知を受け取る UdonSharpBehaviour に、下記の public メソッドを実装します。

public void OnPurabeSpawn()
{
// Spawn成功時の処理
}

public void OnPurabeReturn()
{
// Return成功時の処理
}

アイテムへ通知する​

Spawn アイテムへ通知 または Return アイテムへ通知 を有効にすると、Poolへ登録したルートGameObjectに直接付いているすべての UdonBehaviour へ通知します。

子GameObjectにある UdonBehaviour は対象になりません。

SpawnObjectExtのイベント通知設定

外部のUdonBehaviourへ通知する​

  1. 外部 UdonBehaviour へ通知 を有効にする
  2. External Event Targets に通知先の UdonBehaviour を登録する

複数の通知先を登録できます。アイテムへの通知と外部への通知は、同時に有効にできます。

ReturnObjectExtのイベント通知設定

重複する通知先

同じ UdonBehaviour を複数登録すると、登録した回数だけイベントが呼び出されます。アイテム上の UdonBehaviour を外部通知先にも登録した場合も、それぞれの設定から呼び出されます。

未設定の配列要素は実行時に無視されます。

通知タイミング​

OnPurabeSpawn は、PoolからのSpawnに成功し、移動処理を開始した後に呼び出します。Spawn Delay Frames やHelperコンポーネントの Move Delay による移動完了までは待機しません。

移動後の座標を利用する場合は、イベント受信側で遅延処理を実装してください。

OnPurabeReturn は、次のタイミングで呼び出します。

  • Returnアイテム自身への通知:PoolへReturnする直前
  • 外部UdonBehaviourへの通知:Return成功後

通常のReturnトリガーだけでなく、ResetSwitch による一括Returnでも通知します。SpawnまたはReturnに失敗した場合は通知しません。

ローカルイベント​

通知には SendCustomEvent を使用するため、操作したクライアント上でのみ実行されます。他のクライアントへ自動送信されません。

全クライアントで処理する必要がある場合は、受信側の OnPurabeSpawn または OnPurabeReturn 内で SendCustomNetworkEvent などを実行してください。