Elys Music Engine
Layer-based adaptive music for Unreal Engine 5 — dynamic soundtracks without complexity.
What is it?
A priority-based music system where you push and pop layers. The highest priority layer plays. When you remove it, the previous music comes back automatically.
Push "Exploration" (Priority 0) → Exploration plays
Push "Combat" (Priority 10) → Combat plays (higher priority)
Pop "Combat" → Exploration returns automatically
No state machines. No complex graphs. Just priorities.
Key Features
| Feature | Description |
|---|---|
| Layer System | Stack music tracks with Replace or Additive modes |
| Priority Control | Higher priority = plays over lower. Simple. |
| Music Volumes | Drop a volume in your level. Music changes automatically. |
| Stingers | Short musical accents with auto-ducking. 2D or 3D spatialized. Stinger Volumes for trigger areas. |
| Audio Ducking | Music lowers during any audio (dialogue, SFX, narration), restores after |
| Multiplayer Sync | Time-synced volumes, replicated layers and stingers, automatic client/server routing |
| Beat Sync | Quartz-powered transitions on the beat |
| GameplayTags | Tag-driven music with smart parent fallbacks |
| MetaSound | Real-time parameters, intro→loop, stem mixing |
| Persistence | Music continues across level transitions |
| Blueprint-First | Zero C++ required |
Documentation
| If you want to... | Read this |
|---|---|
| Install and play your first music | Getting Started |
| Learn layers, volumes, stingers, configs | User Guide |
| Use MetaSound, Quartz, or GameplayTags | Advanced Features |
| Setup multiplayer music | Multiplayer Guide |
| Look up a specific function | API Reference |
| Fix a problem | Troubleshooting |
Quick Example
// Start exploration music
Event BeginPlay
→ Push Music Layer
Layer Name: "Exploration"
Music: ExplorationMusic
Priority: 0
Mode: Replace
// Combat starts - higher priority takes over
Event OnCombatStart
→ Push Music Layer
Layer Name: "Combat"
Music: CombatMusic
Priority: 10
Mode: Replace
// Combat ends - exploration returns automatically
Event OnCombatEnd
→ Pop Music Layer ("Combat")
Requirements
- Unreal Engine 5.0+
- MetaSound plugin (included in UE5)
- Blueprint only — no C++ needed