mcpField
U
unity-event-bus

unity-event-bus

github.com/muharremtozan開発1756 回インストール22 週間前に更新
リポジトリ

unity-event-bus について

unity-event-bus は、システムを疎結合にしたい Unity 開発者向けの型安全なメッセージハブです。ジェネリックなイベント配信と自動初期化を備え、エディターの Play Mode にも配慮しています。

主な機能

  1. 01イベントを自動検出して初期化
  2. 02O(1)のジェネリックイベント配信
  3. 03structメッセージの実行時割り当てを回避
  4. 04Play Mode終了時に静的バインドを解除

活用シーン

  1. 01型付きイベントメッセージでシステムを疎結合化
  2. 02実行時GCを避けてstructイベントを配信
  3. 03Play Mode間の静的バインド残留を防止

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/muharremtozan/unity-agent-skills --skill unity-event-bus

インストール後、Claude Code で/unity-event-busを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/code/
EventBusBootstrapper.cs.txt
EventBusCore.cs.txt
EventBusExample.cs.txt
assets/docs/
Checklist.md.txt
references/
guide.md

詳細

Unity Advanced Event Bus

このスキルは、Unity プロジェクト向けに、高パフォーマンスで型安全なメッセージングハブを提供します。ScriptableObject ベースのイベントチャネルに伴うオーバーヘッドなしで、システム間の依存関係を分離したい開発者向けに設計されています。

主な機能

  1. リフレクションによる初期化:ゲームの読み込み時にすべてのイベントを自動で検出し、バスを初期化します。
  2. ジェネリックによる高パフォーマンス:静的ジェネリックインデックスを使用し、イベントを O(1) のパフォーマンスでディスパッチします。
  3. アロケーションゼロ:構造体向けに最適化されており、メッセージによるランタイムのガベージコレクションが発生しません。
  4. エディターの安全性:プレイモード終了時にすべての静的バインディングを自動でクリアし、エディターのメモリリークを防ぎます。

主なファイル(最大 3 個)

  • EventBusCore.cs.txt:基本インターフェースと静的ジェネリックバスハブ。
  • EventBusBootstrapper.cs.txt:Unity 固有の自動初期化とアセンブリのスキャン。
  • EventBusExample.cs.txt:プレイヤーイベントとシステムイベントの実践的な実装。

使い方

struct : IEvent を定義し、EventBinding<T> を作成して、OnEnable で登録します。EventBus<T>.Raise() を使用すれば、どこからでもイベントを発生させられます。

コメント