Repository navigation
Home
title: Home description: Decoupled, simple systems for Unity template: home.html hide:
- navigation
- toc
DxMessaging began as an original project around 2014 and remains actively developed and used today. Over the past two years, I (wallstop) have been using LLMs to help improve the library's quality and performance, expand its tests, and create user-facing documentation. There is always a human in the loop: I actively review all changes and read through all user-facing copy. I share this so you can make an informed decision about using the project.
DxMessaging is free and will remain free forever. No paid editions, paid upgrades, or feature charges.
- Getting-Started-Quick-Start - Define, register, and emit your first message.
- Concepts-Mental-Model - Choose between untargeted, targeted, and broadcast messages.
- Guides-Diagnostics#message-monitor - Inspect emissions, filters, contexts, and captured call sites.
-
Guides-Diagnostics#flow-graph - Inspect loaded-scene
MessagingComponentroutes and delivery evidence. - Guides-Inspector-Overlay - Catch base-call mistakes and inspect component-local diagnostics.
- Architecture-Performance - Read the current published benchmark tables.
openupm add com.wallstop-studios.dxmessaginghttps://github.com/Ambiguous-Interactive/DxMessaging.git
See the Getting-Started-Install for scoped registry, Git URL, and local tarball options.
Choose untargeted, targeted, or broadcast messages. Senders and receivers share a typed message contract.
Define a message, register a handler, and emit. MessageAwareComponent owns registration cleanup through its Unity lifecycle. Plain C# owners enable and dispose their registration tokens.
The same simple primitives decouple entire systems. Wiring a feature in is one registration; removing it is deleting that line. Interceptors, handler priorities, and global observers layer on without touching existing code.
Ordinary typed steady-state struct dispatch is allocation-free. Global accept-all handlers box structs, and emission-site stack-trace capture allocates. See the performance page for measured scenario costs.
See the Reference-Faq#does-dxmessaging-allocate-memory-is-dispatch-zero-gc before choosing a dispatch path or enabling diagnostics.
- New to the package: Getting-Started
- Choosing message types: Concepts-Message-Types
- Unity integration patterns: Guides-Unity-Integration
- Debugging message flow: Guides-Diagnostics
- API details: Reference-Reference
- Getting-Started-Overview
- Getting-Started-Getting-Started
- Getting-Started-Install
- Getting-Started-Quick-Start
- Getting-Started-Visual-Guide
- Concepts-Message-Types
- Concepts-Listening-Patterns
- Concepts-Targeting-And-Context
- Concepts-Interceptors-And-Ordering
- Guides-Patterns
- Guides-Unity-Integration
- Guides-Testing
- Guides-Diagnostics
- Guides-Advanced
- Guides-Migration-Guide
- Advanced-Emit-Shorthands
- Advanced-Message-Bus-Providers
- Advanced-Runtime-Configuration
- Advanced-String-Messages
- Reference-Reference
- Reference-Quick-Reference
- Reference-Helpers
- Reference-Faq
- Reference-Glossary
- Reference-Troubleshooting
- Reference-Compatibility
Links