this lightweight script creates a button grid with as many buttons you like. By default there are 4 buttons in a row but you can adjust the matrix (row number and column number) by simply changing a few variables. You can also adjust the button widths & heights, you can position the whole matrix and use custom button images. This matrix is useful to create scrollable areas or a pagination area like selectable tag filters or fx racks (as seen in many modern Kontakt libraries)
KSP Scripting (NI Kontakt) – Tutorials
In the last article we’ve learned a basic round robin function via groups. Now we create a more complex round robin application. A simple guitar engine, containing 3 different instruments (acoustic guitar, flageolett & fx guitar). So this time we need to create a matrix so that the activated instruments are played round robin (see video)
Please note this tutorial is about the round robin functionality! We won’t build the whole instrument. So this time there is no open Resorce folder and access to the grafic content. Therefore you still get the full instrument with an open script tab
With samplers (or other software instruments) round robin basically means sound variations. Imagine you are picking a guitar! Your single picks will never sound the same since you always pick the strings slightly different. We can simulate that “humanization” by simply randomly varying between a few sound variations which we all have to recorded of course. So each time you hit a key on your keyboard another sound variation is played. Thereby the same variation shall not be played twice one after another.
This table lists all midi note numbers for all octaves from -2 to +8. You may need it for any note commands like changing specific key colors etc. Read more »
The set_engine_par() command is used to control or set almost any engine parameters like volume, pan, tune, fx, lfo’s, envelopes and more. It is mostly used in combination with the on ui_control callback whenever we use custom knobs or buttons to control Kontakt’s FX, Modulators or any other engine parameter. Read more »
in this tutorial we will work with sublime 3 and macros. A macro works almost like a function. You have to call it like a function and you can use arguments and pass variables to alter or individualize several parameters inside. But instead of returning any values or executing any code, a macro is “printing” the whole code inside it whenever and wherever it gets called. So we can use macros to even create functions, callbacks or any other code. At best whenever we got similar code patterns so that we don’t have to write the same lines of code again and again. Read more »
this tutorial is based on the Wallpaper and the Dynamic Wallpaper (via label element) tutorial. Actually once the initial wallpaper is set we can’t change it anymore but we can move the wallpaper image vertically via
set_skin_offset(). So if we create a wallpaper sprite which is as double as high as our ui_size (in this case 2 x 608px) we can put 2 wallpapers into this one image file like shown on the left. The visible area is only from 0 pixel to 608 pixel.
We can now set a button for example which moves the background skin 608 pixel vertically to put the second wallpaper into the visible area. This short demo video shows how it works: