Introduction
This walkthrough builds a realistic classical piano instrument. By the end you will have a playable multisampled piano with natural sustain-pedal behaviour, damper and pedal mechanical noise, and a simple, static UI.
What This Walkthrough Is — and Isn’t
Section titled “What This Walkthrough Is — and Isn’t”This is a shorter, more focused build than the 303-style bass sequencer walkthrough. There is no step sequencer, no per-step modulation, and the UI is static rather than a fully interactive data-driven surface. If you’ve already worked through the 303 walkthrough, most of the editor mechanics here will already be familiar.
The two things this walkthrough focuses on instead:
Realtime CC handling. The sustain pedal is a sustained MIDI CC (CC64), not a note event, and it interacts with note-off in a way that has to be handled explicitly: a key release while the pedal is held must not stop the note. Getting this right — and using the same mechanism to trigger mechanical noise layers — is the core RT scripting topic of this walkthrough.
Layered realism in sound design. Beyond the basic multisampled voice, a convincing acoustic piano needs the small mechanical sounds that sit underneath the notes: the damper falling back onto the string on release, and the felt and mechanism noise of the pedal itself moving up and down. These are added as a second, separate sound design pass once the instrument is already playable.
If realtime scripting is completely new to you, it is worth reading the RT Scripting primer before starting.
What You Will Build
Section titled “What You Will Build”- A piano voice multisampled across velocity and key, covering the playable range of the keyboard
- Natural sustain: notes continue ringing after key release while the pedal (CC64) is held down, and release cleanly once the pedal is lifted
- Damper noise triggered on key release
- Mechanical pedal noise triggered on pedal down and pedal up, with a combined realism amount that can be dialed in via a zone variation
- Four selectable models (Standard, Bright, Mellow, Honky), built as snapshots over a shared set of sound-shaping processors
- A static UI: keyboard display, and volume, reverb, model, and realism controls
How the Walkthrough Is Organised
Section titled “How the Walkthrough Is Organised”The build is structured as three passes, followed by a UI chapter and publishing. Each pass adds a layer of functionality — the first two across a sound design chapter and an RT scripting chapter, so the instrument is always in a playable state at the end of each pass; the third is sound design only.
| Pass | What it adds |
|---|---|
| Pass 1 | Basic playable piano — zone map, processor chain, sustain-pedal script |
| Pass 2 | Realism — damper and pedal noise layers, wired into the same script |
| Pass 3 | Models — Standard/Bright/Mellow/Honky built as snapshots |
Build order within each pass matters: sound design first (processors and zone maps must exist before their UIDs can be copied), then RT scripting where applicable. The UI is built last, once every parameter and behaviour it displays already exists.