Kontakt: gli script (parte 17)

Disegnare una manopola da utilizzare in Kontakt (seconda parte)

Nel precedente articolo abbiamo disegnato una manopola che abbiamo poi esportato. In questo articolo vedremo come utilizzarla all’interno di Kontakt. Per prima cosa apriamo Kontakt e creiamo un nuovo strumento.

163 KSP

164 KSP

Salviamo fin da subito il file su una nuova cartella. Quando creiamo un nuovo strumento che conterrà immagini personalizzate ed altri file occorre creare una cartella di risorse. A tal fine entrate nella modalità edit dello strumento e cliccate su Instrument Options.

165 KSP

Cliccate su Browse relativamente a Resource Container e nella finestra che si apre individuate la cartella dove avete salvato lo strumento e selezionatelo. A quel punto cliccate su Open. Nel riquadro relativo al Resource Container ora compare il nome dello strumento.

166 KSP

A questo punto cliccate su Create e nella cartella che si apre date il nome che volete (meglio scegliere quello dello strumento) e cliccate su OK. Compare la seguente finestra.

167 KSP

Cliccate su Yes. La cartella viene creata e compare la seguente finestra che riassume le risorse contenute nella cartella (ovviamente sono zero).

168 KSP

All’interno della cartella dove avete salvato lo strumento ora è presente il seguente materiale.

169 KSP

All’interno della sottocartella pictures copiamo la manopola che abbiamo creato.

170 KSP

Per poter leggere un oggetto che presenta delle animazioni (50 nel caso della nostra manopola) occorre creare un file di testo con estensione .txt e con lo stesso nome dato al file di immagine. Il contenuto del file di testo è il seguente:

Has Alpha Channel: yes
Number of Animations: 50
Horizontal Animation: no
Vertical Resizable: no
Horizontal Resizable: no
Fixed Top: 0
Fixed Bottom: 0
Fixed Left: 0
Fixed Right: 0

171 KSP

A questo punto entriamo nello script editor.

172 KSP

Aggiungiamo le prime linee note di codice.

on init
set_ui_height_px (350)
make_perfview
end on

173 KSP

A questo tipo dichiariamo l’oggetto slider la cui sintassi è la seguente

declare ui_slider $nome (min,max)

Nel nostro esempio la dichiarazione sarà in tal senso:

on init
set_ui_height_px (350)
declare ui_slider $manopola (1,50)
make_perfview
end on

Nel momento che clicchiamo su apply compare l’oggetto.

174 KSP

Possiamo impostare il valore di default ad esempio pari a 25 per l’oggetto inserito aggiungendo subito dopo la seguente istruzione:

$manopola := 25
set_control_par (get_ui_id ($manopola), $CONTROL_PAR_DEFAULT_VALUE, 25)
make_persistent ($manopola)

Lo script diventa

on init
set_ui_height_px (350)
declare ui_slider $manopola (1,50)
$manopola := 25
set_control_par (get_ui_id ($manopola), $CONTROL_PAR_DEFAULT_VALUE, 25)
make_persistent ($manopola)
make_perfview
end on

Come possiamo vedere la slider si setta a metà del suo intervallo di valori possibili.

175 KSP

Spostiamo la slider in un’altra posizione. Ad esempio:

on init
set_ui_height_px (350)
declare ui_slider $manopola (1,50)
$manopola := 25
set_control_par (get_ui_id ($manopola), $CONTROL_PAR_DEFAULT_VALUE, 25)
move_control ($manopola, 1, 3)
make_persistent ($manopola)
make_perfview
end on

176 KSP

A questo punto associamo la manopola creata all’oggetto slider. A tal fine occorre inserire la seguente istruzione:

set_control_par_str (get_ui_id ($manopola), $CONTROL_PAR_PICTURE, “manopola1”)

Non viene richiesta l’estensione dell’immagine. E’ fondamentale che l’immagine sia stata precedentemente aggiunta nel modo che abbiamo visto prima ovvero nella sottocartella pictures del resource container. Lo script diventa:

on init
set_ui_height_px (350)
declare ui_slider $manopola (1,50)
$manopola := 25
set_control_par (get_ui_id ($manopola), $CONTROL_PAR_DEFAULT_VALUE, 25)
set_control_par_str (get_ui_id ($manopola), $CONTROL_PAR_PICTURE, “manopola1”)
move_control ($manopola, 1, 3)
make_persistent ($manopola)
make_perfview
end on

Cliccando su apply la slider cambierà forma comparendo l’oggetto relativo all’immagine manopola1.

177 KSP

Provate a muovere la manopola con il mouse. Per migliorare il movimento possiamo aggiungere la seguente istruzione.

set_control_par (get_ui_id ($manopola), $CONTROL_PAR_MOUSE_BEHAVIOUR, -2500)

Il parametro da poter utilizzare va da -5000 a +5000 (noi useremo -2500) e imposta la direzione di movimento di una slider. I valori negativi sono per il movimento verticale (tramite mouse) mentre quelli positivi sono per il movimento orizzontale.

Lo script diventa:

on init
set_ui_height_px (350)
declare ui_slider $manopola (1,50)
$manopola := 25
set_control_par (get_ui_id ($manopola), $CONTROL_PAR_DEFAULT_VALUE, 25)
set_control_par_str (get_ui_id ($manopola), $CONTROL_PAR_PICTURE, “manopola1”)
set_control_par (get_ui_id ($manopola), $CONTROL_PAR_MOUSE_BEHAVIOUR, -2500)
move_control ($manopola, 1, 3)
make_persistent ($manopola)
make_perfview
end on

Provate ora a muovere la manopola e osserverete una gestione decisamente migliorata tramite mouse. In altre callback si deciderà poi quale sarà il parametro controllato dalla silder.

Pubblicità

Informazioni su silviorelandini

sound designer, docente di tecnologie musicali (Conservatorio S. Cecilia, Saint Louis College of Music), direttore iitm
Questa voce è stata pubblicata in Campionamento, Software, Sound Designing e contrassegnata con , , . Contrassegna il permalink.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...