In our games, we use structures like delegates, events, UnityEvent, etc., for instant communication in rapidly changing scenarios. However, because these occur and disappear “instantly,” they cause “instant” Garbage Allocation followed by Garbage Collection.
Such sudden spikes and drops in GC directly impact our game’s FPS, as discussed before.
MessagePipe is a high-performance in-memory/distributed messaging framework for .NET and Unity.
It supports all Pub/Sub use cases, mediator patterns for CQRS, Prism EventAggregator (V-VM separation), IPC (Inter-Process Communication)-RPC, and other scenarios.
It also works in accordance with the following principles:
- Dependency Injection
- Async/Await
- Singleton/Scoped
- In-memory/Inter-process/Distributed
- Filter pipeline
- Better events
- Keyed/Keyless
- Buffered/Bufferless
- Broadcast/Response (+many)
Please take a look:
https://github.com/Cysharp/MessagePipe
Reply by Email