Adding in all this new stuff meant going back to the Save/Load system to include it all. Now clearly users LOVE presets, and I can see why., I do too – but building out preset systems? Yeah not so lovely. But here goes…
So there are a number of questions to ask:
- What should be included in the preset and what shouldn’t?
- Why aren’t we all using that nice snapshot feature that NI gave us?
Well answer 1. is “as much as is useful” and answer 2 is, well, complicated… let’s look at Orbiter and see how we get along.
OK so what is “as much as is useful”? Well in Orbiter’s case this is probably all 4 loops and all their settings, as well as all the bus and send effect settings too. Plus given you will be playing Orbiter at some point we will need all 12 patterns and all the sub loop data as well as all the “transient/permanent” settings for the key switches. Looking at that list there isnt really anything else in Orbiter…. So essentially “as much as is useful” here means – everything that a snapshot would save. So on to the second question, why not use the snapshot system?
There are pluses and minuses with the snapshot system. Here’s the plusses:
- You can drag and drop snapshots onto Kontakt and it will load the instrument for you(if its not loaded already)
- Once its set up properly its convenient to use, better in all likelihood than some preset system which asks you to go find your custom coded presets in the file system
- NI built it so it will probably upgrade/remain reasonably reliable across versions of Kontakt
- See the point above, so developers don’t have to build their own system – and there are limitations to such a system – you save EVERYTHING in a big array, but the array size is limited, it’s pretty massive at 32K elements, but by now I had A LOT of arrays for configurations across all 4 loops I might be getting near this limit.
- Snapshots have to live in a specific spot on the users machine (and its different for Mac and Windows users)
- That spot is NOT a sub-folder of the instrument(WHHHYYYYY NI? WHY OH WHY?) So for a product you ship the user will need to do a separate manual step to copy the snapshots into the correct directory/folder on their hard drive.
So what to do? I’ve had a “hand-built” preset system in (nearly) every product I’ve shipped. But that is partly because I’ve been shipping products since before Kontakt had Snapshots. So (re)building another is in theory only an effort challenge not a design challenge. But for Orbiter this effort just quadrupled. I think I’m biting the bullet here, and starting to use the Snapshot system from here on. So out goes Load and Save, and in comes a bunch of additional install instructions – perhaps I should build that installer I kept thinking about, and that would automate the install including setting up Snapshots…..
Meanwhile yet more playing sold me on the idea that it would be nice to be able to switch dynamically between sets of effects, you could set a loop up with a ton of repeats, or envelopes or FX toggling etc. and that was great but when I was playing the loop back, I could dynamically mute/unmute the loop, and change the overall pattern but I couldn’t switch “effect layouts” (for the want of a better phrase) for each loop – If I added an A/B switch for Voice settings and another for Sound settings I could in effect have yet another way to play loops, – playing the loop in up to 4 different variations:
- A & A
- A & B
- B & A
- B & B
Toggling these with a key-switch seemed a good idea too. So I added it. There’s a lot of key-switches by now. So I spent a fair while sorting and remapping these. Added key-switches for the modulators too.
Here’s those A/B toggles.