ue5-blueprint-audio
Unreal Engine Blueprint — Audio Logic & Asset Management
Handle Blueprint audio logic: game event detection, parameter wiring to MetaSounds/Wwise, asset scanning, and audio component setup.
Blueprint Audio Architecture
Blueprints are the WHEN layer — they detect game events and route parameters to audio systems:
Game Event (overlap, anim notify, input)
→ Blueprint Logic (detect, filter, transform)
→ Audio Action (play sound, set RTPC, post event)
Audio Blueprint Nodes
Playback
| Node | Use | Spatial |
|---|---|---|
PlaySound2D |
UI, non-positional audio | No |
PlaySoundAtLocation |
One-shot 3D sound | Yes |
SpawnSoundAtLocation |
Persistent 3D sound (returns component) | Yes |
SpawnSound2D |
Persistent non-spatial | No |
Dialogue
| Node | Use |
|---|---|
PlayDialogue2D |
Non-spatial dialogue |
PlayDialogueAtLocation |
3D dialogue |
SpawnDialogue2D |
Persistent non-spatial dialogue |
SpawnDialogueAtLocation |
Persistent 3D dialogue |
Mixing
| Node | Use |
|---|---|
SetSoundMixClassOverride |
Override sound class volumes |
ClearSoundMixClassOverride |
Remove overrides |
PushSoundMixModifier |
Activate sound mix |
PopSoundMixModifier |
Deactivate sound mix |
SetGlobalPitchModulation |
Global pitch shift |
Wwise (via AkAudio plugin)
| Node | Use |
|---|---|
PostEvent |
Trigger Wwise event |
SetRTPCValue |
Set RTPC parameter |
SetSwitch |
Set switch group value |
SetState |
Set global state |
PostTrigger |
Post Wwise trigger |
Game Event Patterns
Animation Notify → Sound
AnimNotify_Footstep
→ Line Trace Down (surface detect)
→ Set Switch (Surface = result)
→ PostEvent (Play_Footstep)
Overlap Volume → Ambient
OnBeginOverlap
→ Set RTPC (Ambient_Volume = 1.0)
OnEndOverlap
→ Set RTPC (Ambient_Volume = 0.0)
State Change → Weather Audio
OnWeatherChanged (Rain/Snow/Wind/Clear)
→ Set State (Weather = new_state)
→ Set RTPC (Wind_Intensity = value)
Damage → Impact Sound
OnHit / OnDamageReceived
→ Get Hit Result (surface, location, normal)
→ SpawnSoundAtLocation (location, rotation from normal)
→ Set Switch (Material = physical material)
Player Movement → Audio Params
Tick / Timer
→ Get Velocity → Vector Length
→ Set RTPC (Player_Speed = length)
→ Set RTPC (Player_Height = Z position)
Blueprint Scanning
The MCP plugin can deep-scan Blueprint graphs for audio-relevant nodes.
Scan Commands (via TCP plugin)
// List all project Blueprints
{"action": "list_assets", "class_filter": "Blueprint"}
// Scan one BP for audio nodes
{"action": "scan_blueprint", "asset_path": "/Game/BP_Player", "audio_only": true, "include_pins": true}
// List MetaSounds assets
{"action": "list_assets", "class_filter": "MetaSoundSource"}
// List all sound waves
{"action": "list_assets", "class_filter": "SoundWave"}
Batch Project Scan
python scripts/scan_project.py --full-export --import-db --rebuild-embeddings
Scans all BPs + MetaSounds graphs, imports to SQLite, rebuilds TF-IDF embeddings.
Scan Output Structure
{
"blueprint_name": "BP_Player",
"parent_class": "Character",
"total_nodes": 245,
"graphs": [
{
"graph_name": "EventGraph",
"nodes": [
{
"type": "CallFunction",
"function": "PlaySoundAtLocation",
"is_audio": true,
"pins": [...]
}
]
}
],
"audio_summary": {
"total_audio_nodes": 4,
"functions": ["PlaySoundAtLocation", "SetRTPCValue"],
"events": ["Play_Footstep"],
"components": ["AkComponent"]
}
}
Audio Detection Keywords
Sound, Audio, Ak, Wwise, MetaSound, RTPC, PostEvent, SoundCue, SoundWave, AudioComponent, AkComponent, SoundClass, SoundMix, Attenuation, Reverb, Submix, AudioVolume, AmbientSound, DialogueWave, SoundBase
Asset Types (class_filter values)
| Filter | What |
|---|---|
Blueprint |
All Blueprints |
WidgetBlueprint |
UI Blueprints |
AnimBlueprint |
Animation Blueprints |
MetaSoundSource |
MetaSounds Source assets |
MetaSoundPatch |
MetaSounds Patch assets |
SoundWave |
Imported audio files |
SoundCue |
Legacy Sound Cue graphs |
SoundAttenuation |
Attenuation settings |
SoundClass |
Sound classification |
SoundConcurrency |
Concurrency rules |
SoundMix |
Mix presets |
ReverbEffect |
Reverb settings |
Blueprint ↔ MetaSounds Wiring
Exposing MetaSounds Parameters to Blueprint
- Add graph input in MetaSounds (Float, Int32, Trigger)
- In Blueprint, get AudioComponent reference
- Call
SetFloatParameter/SetIntParameter/SetTriggerParameter
AudioComponent → SetFloatParameter("Cutoff", 2000.0)
AudioComponent → SetTriggerParameter("Fire")
Blueprint ↔ Wwise Wiring
- Create GameParameter in Wwise (e.g., "Player_Speed")
- In Blueprint, call
SetRTPCValue("Player_Speed", velocity) - In Wwise, map RTPC to volume/pitch/filter curves
Available MCP Tools (Python)
| Tool | Function |
|---|---|
bp_search |
Search knowledge DB for Blueprint nodes |
bp_node_info |
Get detailed node specification |
bp_list_categories |
List Blueprint node categories |
bp_call_function |
Execute allowlisted function via plugin |
bp_list_assets |
List project assets by class |
bp_scan_blueprint |
Deep-scan BP graph for audio nodes |
UE4 → UE5 Conversion Map
| UE4 Sound Cue | UE5 MetaSounds |
|---|---|
| Attenuation | UE.Attenuation interface |
| Concatenator | Trigger Sequence → Wave Players |
| Crossfade by Distance | Map Range + Crossfade |
| Delay | Trigger Delay |
| Doppler | Doppler Pitch Shift |
| Looping | Wave Player Loop=true |
| Mixer | Add (Audio) |
| Modulator | Random Get → Multiply |
| Oscillator | Sine/Saw/Square/Triangle |
| Random | Random Get |
| Sound Wave Player | Wave Player |
| Branch | Trigger Route |
| Continuous Modulator | LFO |
| Switch | Trigger Route + graph input |
Source Files
- Blueprint tools:
src/ue_audio_mcp/tools/blueprints.py - Knowledge DB:
src/ue_audio_mcp/knowledge/db.py(tables: blueprint_audio, blueprint_core, blueprint_nodes_scraped, project_blueprints) - Tutorials:
src/ue_audio_mcp/knowledge/tutorials.py - Scan script:
scripts/scan_project.py - BP scraper:
scripts/scrape_blueprint_api.py - C++ scan command:
ue5_plugin/UEAudioMCP/Source/UEAudioMCP/Private/Commands/QueryCommands.cpp
$ARGUMENTS
More from koshimazaki/ue-audio-skills
ue5-metasound-dsp
MetaSounds DSP specialist for Unreal Engine 5. Use when designing MetaSounds graphs, choosing DSP nodes, configuring filters/oscillators/envelopes, building signal chains, working with the Builder API, or creating audio templates. Covers 144 nodes across 20 categories.
12ue5-plugin-dev
Add a new C++ TCP command + Python MCP tool to the UE Audio MCP plugin. Guides you through the 6-file checklist so nothing gets missed.
11ue5-audio-mcp
UE5 Audio MCP plugin TCP control. Use when sending commands to the Unreal Editor plugin, building MetaSounds graphs via TCP, scanning blueprints, editing Blueprint graphs, spawning audio actors, or debugging the plugin connection on port 9877.
10ue5-wwise-setup
Wwise project setup via WAAPI HTTP API. Use when creating bus hierarchies, RTPCs, switches, states, events, SoundBanks, AudioLink containers, or any Wwise authoring automation. Covers the full WAAPI HTTP workflow on port 8090.
10ue5-audio-builder
Full pipeline audio system generator. Use when building complete game audio systems that span MetaSounds + Blueprint + Wwise layers, generating AAA project structures, or orchestrating multi-layer audio from a natural language description.
8build-system
Full pipeline audio system generator. Use when building complete game audio systems that span MetaSounds + Blueprint + Wwise layers, generating AAA project structures, or orchestrating multi-layer audio from a natural language description.
2