Per-hit sound design — p-locks & breathe
The instrument docs describe the static sound. This page is about making each hit different from the last — the thing no DAW can reach into an instrument and do. Two tools share one idea: every parameter is a base value plus offsets, and a single hit can add its own offset on top. A p-lock places a fixed offset; breathe adds a living one.
Both live on the Bench's audition groove — you sculpt them on a hit and hear them as the groove loops. They are the design-time tier of per-hit variation; for the two tiers your DAW can play, see velocity → timbre and macros.
Parameter locks (p-locks)
A p-lock pins a parameter to a different value on one hit — "this strike is brighter, every time the loop comes round."
- Select a lit hit in the 16-hit strip (a click; the header shows you're on that hit, not the base).
- Touch any control on the drum — drag a handle, a wire or the room; click a pill or a recorded waveform. Instead of changing the sound, the move is captured as that hit's lock.
Hits without a lock fall back to the track's sound, so locks are non-destructive — clear the lock
and the hit springs back to base. A locked hit renders its own drum in the strip and carries a
small P badge. Everything is lockable: machine params, the shared voice-chain params, the
room, even the anatomy's hit and body types — p-lock res_type and one strike rings on a
different body entirely.
Because every parameter locks, so do the ones that are not quantities. Select hit 13, click the recorded body's waveform, and that one hit plays backwards while the other fifteen play forward — a swell landing on the last beat of the bar, from one click, with no second track and no audio clip. Reaching for a picture rather than a number is what makes that a per-hit edit instead of a setting.
A p-lock is the same shape as a [macro](macros.md) destination — a parameter set to a value. The difference is where it lives: a p-lock is on this groove's hit; a macro is addressable from your DAW. Sculpt with p-locks; when you want the host to play a change, make it a macro.
Breathe
A p-lock is deliberate and fixed. Breathe is a spread, re-rolled every pass — "each hit breathes a little, differently each loop." It's the difference between a snare that's always 6 dB down (a lock) and one that varies a little on every hit like a real drummer (a spread). You'll usually want both.
- One hit — shift-drag a parameter's handle on the Bench. A faint corridor of many rolls draws behind the crisp live curve, so "one deliberate value" and "living jitter" look different at a glance. The width of the corridor is the depth; shift-drag back to nothing to turn it off.
- The whole track — with no hit selected (editing the base), shift-drag a handle to give every hit of the track that breathe at once — "this whole hat breathes" in one gesture rather than sixteen. A per-hit breathe on the same param overrides the track default for that hit.
A breathing hit carries a ~ badge and draws its corridor. At each pass a fresh random offset is drawn within the depth and added to the same accumulator locks, LFOs and macros feed — so a breathe stacks on top of them rather than replacing them.
How they stack
Everything sums. A p-lock, an LFO, a macro and a breathe on the same parameter simply add into one value, which the engine then clamps to the parameter's range — so a wide spread on an already-high param rides the ceiling rather than wrapping.
The draw is seeded by position, so a render is fully reproducible: the same loop sounds the same twice, and exporting the same groove twice yields identical audio, while still feeling alive from pass to pass. The breathe is deterministic, not noisy.
Playing a per-hit change in your DAW
Both tools live on the audition groove — they shape the sound while you design it. So how do you get a per-hit change once the DAW is driving the kit? The host plays sounds via notes, and a p-lock or breathe on one hit lives on a groove step, not a sound — so on its own it doesn't travel.
The move is a second track. Right-click the track → Duplicate track, make the change on the copy, and fire the copy's note where you want it:
T1 T1 T2 T1 <- T2 is the variant; hit 3 is different, in the host, for real
- Fixed change (the fill hit that's always pitched up): a plain duplicate with the value baked into its sound.
- Living change (a hit that breathes): duplicate, then give the copy a whole-track breathe (shift-drag with no hit selected). Whole-track breathe does play under host notes, so the variant breathes on every strike.
Duplicate track auto-choke-groups the pair, so the two cut each other's tails and behave as one drum — exactly as if a single hit were changing. See Choke.
Whole-track breathe is the one form that travels as-is — it's a property of the sound. Per-hit locks and breathe are the sketchpad; the duplicate is how they ship.
Design recipes
- Human drummer — a small breathe on the snare's level and a hair on its timing, so no two backbeats are identical.
- Living hats — a little decay breathe on the hats so their length wavers organically.
- Breathing kick — a small
tunebreathe so the sub wavers fractionally, without committing to a fixed per-hit pitch. - Lock + breathe — p-lock the deliberate moment (the fill hit that's always pitched up) and let a breathe cover everything else, so the standout stays put while the kit lives.
**One undo per gesture.** Dragging any lock or breathe is a single undo step.