ReturnObjectExt の設定項目
ReturnObjectExt はObject Spawn Systemの ReturnObject の設定を引き継ぎ、複雑なアイテムのルート検索とイベント通知を追加します。
| 項目 | 型 | 説明 |
|---|---|---|
| Pools | GameObject[] | Return対象が登録された VRCObjectPool、またはそれを子に持つ親GameObject |
| Reference | ReturnObject | 別の ReturnObject または ReturnObjectExt に設定された Pools を共有するための参照 |
| Layer | int | Returnを受け付けるColliderのGameObjectのレイヤー番号 既定値は 13(Pickup) |
| Return アイテムへ通知 | bool | Returnするルートに直接付いている UdonBehaviour へ OnPurabeReturn を送る |
| 外部 UdonBehaviour へ通知 | bool | External Event Targets へ OnPurabeReturn を送る |
| External Event Targets | UdonBehaviour[] | Returnイベントの外部通知先 |
| Audio Source | AudioSource | Return成功時に使用する音源 未指定の場合は再生しない |
| Audio Clip | AudioClip | Return成功時に再生するクリップ 未指定の場合は Audio Source に設定されたクリップを使用し、どちらも未指定の場合は再生しない |
Pools
登録したGameObject自身と、その子階層から VRCObjectPool を検索します。複数の VRCObjectPool オブジェクトを空の親GameObject以下にまとめると、一括で登録できます。
Reference
Reference に別の ReturnObject または ReturnObjectExt を設定すると、そのコンポーネントの Pools も検索対象になります。現在の Pools と参照先の Pools に同じGameObjectが登録されている場合、そのGameObjectは重複して検索されません。
Pools を空にする場合は、Reference を設定してください。
Layer
トリガーに入ったColliderを持つGameObjectのレイヤー番号が、この値と一致する場合だけReturn処理を行います。
Returnするルートの検索
トリガーに入ったColliderのGameObjectから親階層を順に検索します。
HGSpawnHelperが見つかった場合は、そのHelperコンポーネントのGameObjectをReturnするCompSpawnHelperが見つかった場合は、そのHelperコンポーネントのGameObjectをReturnする- どちらもない場合は、トリガーに入ったGameObject自体をReturnする
Helperコンポーネントがあるルートは、Pools から参照できる VRCObjectPool に登録されている必要があります。
Return時のリセット
ルートに HGSpawnHelper または CompSpawnHelper がある場合は、Poolによってルートが非表示になる直前に、そのHelperコンポーネントのリセット処理を実行します。ResetSwitch からの一括Returnでも同じ処理を実行します。
設定方法は 複雑なPickupを設定する をご覧ください。