diff --git a/Development.md b/Development.md index cb4b083..acbef3b 100644 --- a/Development.md +++ b/Development.md @@ -19,7 +19,7 @@ php tests/php/accounts.test.php # the API's accoun php tests/php/snapshots.test.php # the snapshot store (#231), the same way php tests/php/releases.test.php # the release store (#266), the same way php tests/php/files.test.php # uploaded files in a folder per account (#344), the same way -node tools/seed-e2e.mjs && node tools/e2e.mjs # 1887 editor checks, screenshots in /tmp/gm-e2e-*.png +node tools/seed-e2e.mjs && node tools/e2e.mjs # 1889 editor checks, screenshots in /tmp/gm-e2e-*.png GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step ./e2e.sh start [GM_STEPS] # the same run detached, see below ./e2e.sh status # live progress, or the last run's result diff --git a/Songs.md b/Songs.md index 71f6f64..c1311ab 100644 --- a/Songs.md +++ b/Songs.md @@ -55,7 +55,7 @@ the right: it starts that far before the end of a round. ## The Song tab Down the left are the **heads** of the tracks: the name, **FX** (the track's sound FX, blue when it -has one), **M** (mute, orange when on) and **S** (solo, yellow when on), below them the volume (the line marks 0 dB) and the pan (the line marks the +has one; its menu can also make [one of its own](#a-sound-fx-of-its-own)), **M** (mute, orange when on) and **S** (solo, yellow when on), below them the volume (the line marks 0 dB) and the pan (the line marks the middle). A track is added from the right-click menu of a head, above or below it. Along the top is the **ruler**, as in the Pattern tab. Between them are the **lanes** with the items: a pattern blue with its notes drawn small, every round it plays; a sound green with its waveform, from where it starts in it, every @@ -249,6 +249,21 @@ song) and an item for it, one undo step, and opens it in the Pattern tab. - A project pattern embedded as a copy, or one pasted from another song, takes the clock of the song it comes to. Made a project asset, it keeps the tempo and the meter it had. +### A sound FX of its own + +Every pick of a sound FX in a song ends with a few entries for one that only that place has: the +**Sound FX** row of the song, of a track and of an item, and the menu of a track's **FX** button. + +- **Create sound FX** makes *Sound FX 1*, 2 … (numbered per song) with its Input wired to its + Output, so it lets the sound through until something is put in between. The place picks it and + the Sound FX tab opens it, all in one undo step. +- **Embed a copy**, while the place names a sound FX of the project: the place gets a copy of it, + under the same name, to bend without touching the original. +- While the place names its own, the menu shows it with the mark in front and offers **Edit sound + FX** (opens it, as a double-click on its name in the inspector does) and **Make project asset**. +- Picking anything else, *None* or another sound FX, lets it go in the same undo step. That holds + for the song's own row too. + ## Playing one in a game **Play song** plays a song at its tempo, its tracks with the volume, pan, mute and solo they have @@ -319,5 +334,6 @@ bus. Stop let it go. An item's *Sound FX* offered *From the asset*, *None* and t A link sends at one volume; it cannot be moved over time, and there is no reverb to send to yet (#328). Nothing tells a graph that a song played once has ended, and there is no node that changes the -volume of a playing song. No start at a marker (#338), no automation (#337), no song inside a song, no held note (drone) as an item. A pattern item cannot be made into a pattern of its own (*make unique*); for a -variation, duplicate the pattern in the Assets panel and pick it on the item. +volume of a playing song. No start at a marker (#338), no automation (#337), no song inside a song, no held note (drone) as an item. A variation of a pattern for one item is *Embed a copy* in the +item's menu (see [Embedded assets](#embedded-assets)). A bus cannot have a sound FX of its own, +and a song cannot keep an instrument to itself.