Type: Open Source Unity Package
Overview
Unity Event Kit is a lightweight, type-safe, and zero-GC event system for Unity. It enables efficient, decoupled communication between systems and game objects, supporting both code-driven and designer-friendly workflows. The kit features a strongly-typed EventBus, ScriptableObject event channels, and a powerful in-Editor Event Debugger for real-time event tracking.
Key Features:
- Strongly-typed EventBus for global publish/subscribe
- Zero allocations on hot paths (zero-GC)
- Thread-safe PublishQueued with optional frame delays
- ScriptableObject Event Channels for designer-friendly, per-asset dispatch
- Built-in primitive channels (bool, int, float, string, Vector2, Vector3, Quaternion, GameObject, Transform)
- ValueEventListener MonoBehaviours exposing UnityEvent<T> in the Inspector
- “Also Publish Global” toggle on each channel asset
- Live in-Editor Event Debugger: virtualized TreeView, filtering, coloring, clickable entries
- Type-safe APIs (
struct T : IEvent
) prevent runtime mismatches - Pooled delegates for efficient publish/subscribe
Skills Demonstrated:
- Advanced Unity C# scripting and architecture
- Zero-GC and performance-oriented system design
- Thread-safe programming and main-thread synchronization
- ScriptableObject workflows for designers
- Custom editor tooling and TreeView UI development
- Open source project management and documentation
Personal Achievements:
- Designed a reusable, high-performance event system for Unity
- Enabled both programmers and designers to work efficiently with events
- Deepened expertise in Unity's editor APIs and performance optimization