This repository contains a collection of custom nodes for Unreal Engine's MetaSounds, to be released as the Branches plugin.
There are currently seventeen nodes available in the MetaSoundBranches plugin for testing, with several more in development:
Node | Category | Description |
---|---|---|
Bool To Audio |
Conversions | Convert a boolean value to an audio signal, with optional rise and fall times. |
Clock Divider |
Triggers | Divide a trigger into eight density levels. |
Dust (Audio) |
Generators | A randomly timed impulse generator (unipolar or alternating polarity per impulse) with density control and audio-rate modulation. |
Dust (Trigger) |
Generators | A randomly timed impulse generator (unipolar or alternating polarity per impulse) with density control and audio-rate modulation. |
Edge |
Envelopes | Detects upward and downward changes in an input audio signal, with optional debounce. |
EDO |
Tuning | Generate frequencies for tuning systems using equally divided octaves (float) with a MIDI note input. Set a reference frequency and reference MIDI note (defaults to A440). |
Impulse |
Generators | Trigger a one-sample impulse (unipolar or alternating polarity per impulse). |
Phase Disperser |
Filters | A chain of allpass filters to soften transients and add that classic laser/slinky-style effect. |
Shift Register |
Modulation | An eight-stage shift register for floats. |
Slew (Audio) |
Filters | A slew limiter to smooth out the rise and fall times of an audio signal. |
Slew (Float) |
Filters | A slew limiter to smooth out the rise and fall times of a float value. |
Stereo Balance |
Spatialization | Adjust the balance of a stereo signal. |
Stereo Crossfade |
Envelopes | Crossfade between two stereo signals. |
Stereo Gain |
Mix | Adjust gain for a stereo signal. |
Stereo Inverter |
Spatialization | Invert and/or swap stereo channels. |
Stereo Width |
Spatialization | Stereo width adjustment (0-200%), using mid-side processing. |
Tuning |
Tuning | Quantize a float value to a custom 12-note tuning, with adjustment in cents per-note. |
Zero Crossing |
Envelopes | Generates a trigger when the input signal crosses zero. |
Upon installing the plugin, these items will appear in the sub-category Branches
within the Metasound Functions
category.
Please note that this is an experimental version and the node names are subject to change. Connections may need to be re-drawn upon upgrading to the next version.
- Download for Windows and Mac here: Releases
- Extract the contents of the zip file into the plugins folder of your project or engine as preferred.
- Clone the repository into your chosen Unreal Engine project's
Plugins
directory. - Build the project using the Unreal Automation Tool:
- In PowerShell, navigate to the
Engine\Build\BatchFiles\
folder, and run:
.\RunUAT.bat BuildPlugin -plugin="<path to your project>\Plugins\metasound-branches\MetasoundBranches.uplugin" -package="<path to your project>\Plugins\metasound-branches\"
- In terminal, navigate to the
Engine/Build/BatchFiles/
folder, and run:
sudo ./RunUAT.sh BuildPlugin -plugin="<path to your project>/Plugins/metasound-branches/MetasoundBranches.uplugin" -package="<path to your project>/Plugins/metasound-branches/"
Please see Epic Games: Building Plugins for more information.
- Initial notes: information on the first custom node and development process.
- Quick reference: some development notes for creating and troubleshooting custom nodes.
- MetaSounds Reference Guide
- MetaSounds Tutorial videos (Matt Spendlove)
- Creating MetaSound Nodes in C++ Quickstart (Anna Lantz)