Piano Visualizer VST Classic Template
Build a MIDI-driven piano visualizer in Unreal Engine with real VST3 instrument and audio-plugin playback.
Piano Visualizer: VST Classic Template gives you a clean 2D falling-note piano visualizer powered by MIDI, UMG widgets, Blueprints, and VST3 audio plugins. It combines MIDI Engine, UMG Musical Grids, and VST Audio into one ready-to-customize template for Windows-based Unreal Engine music applications.
This version is designed for projects where the music is not only visualized from MIDI data, but also played or processed through VST3 plugins inside Unreal Engine.
Buy Piano Visualizer VST Classic Template
Latest Version: V1.0
Supported Engine Versions: UE 5.7 , 5.8
Key Features
- MIDI-driven falling-note piano visualizer
- VST3 audio plugin support through VST Audio
- Built with UMG widgets and Blueprints
- Classic 2D vertical note-roll layout
- MIDI playback and MIDI note event support
- Playhead-based scrolling behavior
- Piano key visual feedback
- Customizable note widgets, piano keys, colors, timing, and layout
- Designed for desktop Windows projects
- Built on MIDI Engine, UMG Musical Grids, and VST Audio
Built on Three Algosyntax Systems
MIDI Engine handles MIDI file import, MIDI playback, MIDI note events, and music-driven Blueprint interaction.
UMG Musical Grids handles the musical timeline layout, bars, beats, subdivisions, playhead rendering, and visual timing grid.
VST Audio adds VST3 hosting so your Unreal Engine project can load and run VST3 plugins for instrument playback, audio effects, and real-time music processing.
Together, these systems provide the foundation for a visualizer where the MIDI data can drive both the screen and the sound.
Important Platform Note
This is the VST version of the Classic Template.
Because it depends on VST3 plugin hosting, this template is intended for Windows desktop projects. It is not suitable for mobile builds.
If you need a lighter cross-platform version for desktop and mobile, use the non-VST Piano Visualizer: Classic Template instead.