Skip to content
github-actions[bot] edited this page Oct 28, 2026 · 13 revisions

title: Home description: Decoupled, simple systems for Unity template: home.html hide:

  • navigation
  • toc

AI Assistance Disclosure

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.

Start Here

Install

OpenUPM

openupm add com.wallstop-studios.dxmessaging

Git URL

https://github.com/Ambiguous-Interactive/DxMessaging.git

See the Getting-Started-Install for scoped registry, Git URL, and local tarball options.

Why Teams Use It

Simple primitives

Choose untargeted, targeted, or broadcast messages. Senders and receivers share a typed message contract.

Easy to use

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.

Small edits, big impact

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.

High performance

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.

Next

Clone this wiki locally