Introduzione allo scripting in Kontakt, parte 4

In this 5 Part MPVHub Series, Toby Pitman explores the wonderful world of scripting in Native Instruments' Kontakt sampler. Part 4 covers interface basics. Read the next part on The Hub tomorrow!  

Così l'ultima volta abbiamo guardato variabili. In questa parte si sta per avere uno sguardo alle basi di alcune cose dell'interfaccia.

La capacità di progettare le interfacce personalizzate in Kontakt che veramente lo distingue da qualsiasi altro software campionatore. Ogni strumento si effettua può essere progettato per fornire all'utente l'accesso o facile parametri importanti per la messa a punto senza la necessità di approfondire le interne (e talvolta scoraggiante) funzionamento del Kontakt.

Consente inoltre di (o lo sviluppatore) la possibilità di stampare alcune caratteristiche di design artistici allo strumento con l'aggiunta di grafica personalizzata e gli elementi dell'interfaccia utente. Ogni biblioteca si acquista (e Kontakt è costruito in libreria) ha il suo look unico e set di funzionalità. Questa è tutta una questione di scripting.

Quindi, come si fa a fare questo? Beh, Ill vedere!

Creazione di una visualizzazione delle prestazioni

La prima cosa che devi fare per creare qualsiasi tipo di interfaccia è quello di creare una vista delle prestazioni. Questo viene fatto utilizzando una linea molto semplice di codice tra il su init ... terminerà il callback.

make_perfview

È inoltre necessario impostare un altezza. Il punto di vista delle prestazioni può essere misurato in due modi, in modalità griglia o Pixel.

Utilizzo di griglie

In modalità Grid View rendimento è divisa in sei colonne. Ogni colonna può avere un massimo di 16 righe. Ogni blocco griglia ha una coordinata griglia. Le colonne 1-6 e righe 1-16. Qui sotto potete vedere questi blocchi della griglia e le loro rispettive coordinate.

Grid Mode


Per impostare l'altezza in quantità griglia è necessario aggiungere il seguente comando.

set_ui_height ()

Tra il youll parentesi aggiungere il numero di righe verticali che si desidera. Questo si trova in multipli di due file, o un numero 1-8. Questo perché una manopola predefinito è due file alto.


Quindi, se vogliamo che la nostra Performance otto file di alta sarebbe aggiungere 4 nelle staffe.

Code Example 1


Quando si colpisce Applicare preavviso youll Script Editor si espanderà. Questo perché tutti i controlli creati sono visibili anche nell'editor di script in modo da poter vedere cosa si sta facendo.

Expanded


Se si esce dalla modalità di modifica dello strumento youll anche vedere che l'interfaccia di Kontakt è passato dalla sua dimensione di default ...

Default size


ad una versione ampliata in base all'altezza della griglia impostata.

Expanded


Una volta youve ha creato alcuni controlli youll mettere queste coordinate reticolo utilizzando. Ne parleremo più avanti. Per gli esempi seguenti Im intenzione di utilizzare modalità Grid.

Usando pixel

Dire che è anche possibile impostare l'altezza in pixel (Kontakt 4 e superiore). A tale scopo, utilizzando ..

set_ui_height_px ()

Questo è utile se si sta lavorando ad uno sfondo grafico e la necessità di posizionare i controlli a livello di pixel. Quindi, l'impostazione di un altezza di 250 all'interno delle parentesi renderà il vostro 250px dell'area di lavoro alta.

set_ui_height_px (250)


Height of 250px


Quando si sposta controlli, sarà quindi utilizzare i valori dei pixel per posizionarli. In Kontakt 5 la visualizzazione delle prestazioni è stato ampliato da 350px nelle versioni precedenti a 540px.

Così ora abbiamo una zona di lavorare con consente di fare un po 'di roba!

Niente da dichiarare?

Al fine di creare un controllo dell'interfaccia utente o di interfaccia di controllo utente dobbiamo prima di dichiararla tra la nostra durante la richiamata init. Questa è la stessa di quando si dichiara nostre variabili ultima volta. Una grande parte del motivo per cui lo facciamo è che ogni controllo si crea viene assegnato un nome di variabile in modo che possiamo fare riferimento nei nostri script.

In Kontakt ci sono una serie di controlli dell'interfaccia utente che è possibile creare. Ciascuno ha il proprio segno di chiamata, iniziano tutti con il prefisso ui_. Questi sono:

  • ui_knob - A default rotary dial.
  • ui_slider - A default slider / horizontal fader.
  • ui_label - Simple text label
  • ui_button - A simple button
  • ui_menu - A drop down menu
  • ui_switch - Simple on/off switch
  • ui_table - Useful interface for sequencers and arpeggiators
  • ui_file_selector - For selecting and loading files
  • ui_level_meter - A simple audio level meter (Kontakt 5)
  • ui_text_edit - Enter user text
  • ui_value_edit - Enter a user value
  • ui_waveform - Add a waveform display of a zone or slices (Kontakt 5)


Per creare un controllo si usa il codice riportato di seguito. Per una manopola di default questo sarà ...

dichiarare ui_knob $ ( , , )


Youll trovare ogni controllo si crea ha un diverso insieme di parametri. Per esempio ui_label ha due parametri di larghezza e altezza, che si trovano in quantità griglia.

dichiarare $ ui_label ( , )


Parametri che definiscono

La prima cosa che devi fare è dare il vostro controllo dell'interfaccia utente un nome univoco variabile. Diciamo che sono stati la creazione di una manopola di default. Potrei chiamarlo myKnob.

dichiarare ui_knob $ myKnob ( , , )


Ogni volta che si desidera utilizzare questa manopola per fare qualcosa che fa riferimento $ myKnob.


Io adesso ho bisogno di impostare i parametri in su. Con la manopola di default ne ho tre.


min = Il valore minimo

max = Il valore massimo

Display-ratio = Divide il campo di semplificare i numeri del display


Utilizzando il codice seguente genera una manopola di default che va 1-100 in 100 passi (100/1).

Code Example 2


Questo sarà ora essere presente anche nella vista delle prestazioni.

Knob


Consente di aggiungere un'etichetta. Ill nome è myLabel.


dichiarare ui_label $ myLabel ( , )


Ill inoltre possibile impostare la larghezza e l'altezza nelle misure griglia.

Code Example 3


Il che mi dà questo.

New Label


Youll trovare tutte le informazioni sui vari parametri nel manuale di riferimento KSP nella User Interface capitolo controlli.


Spostamento di controlli dell'interfaccia utente


Vi è un altro insieme di elementi chiamati comandi dell'interfaccia utente che sono lì per aiutarti a manipolare i controlli dell'interfaccia utente. Uno di questi è chiamato move_control ().


Questo ha tre parametri.


move_control ( , , )

  • variable = The variable name of the UI control you want to move.
  • x-position = The horizontal position in grid coordinates.
  • y-position = The vertical position in grid coordinates.


Diciamo che voglio spostare myKnob sotto myLabel. Posso farlo utilizzando il seguente codice.

Code Example 4


In questo modo si sposta alla colonna 1 °, 2 ° fila. È inoltre possibile utilizzare move_control_px () e sostituire i valori della griglia con i valori dei pixel.

Moved knob


Rinominare i controlli

Attualmente sia la nostra manopola e Label sono nominati per impostazione predefinita con il nome della variabile. Questo è facile da cambiare con un altro comando interfaccia utente chiamato set_text (). Questo ha due parametri.


set_text ( , )

  • variable = The variable name of the UI control you want to change the text for.
  • text = The replacement text in quotations.


Ive ha aggiunto set_text () per entrambi i miei elementi di controllo come questo ..

Code Example 5


Heres il risultato.

Relabled button


Speriamo che si può vedere dove questo sta andando. Noi dichiariamo e impostare i nostri parametri di controllo e quindi modificare ulteriormente i controlli con utili comandi predefiniti (vedi i comandi dell'interfaccia utente capitolo nel Manuale di riferimento KSP).

La prossima volta anche aggiungere alcune funzionalità del mondo reale per alcuni controlli. Che è dove inizia il divertimento!

È possibile scaricare gli esempi di codice in questo

Quick Links

Introduzione allo scripting in Kontakt, parte 1

Introduzione allo scripting in Kontakt, parte 2

Introduzione allo scripting in Kontakt, parte 3

Introduzione allo scripting in Kontakt, parte 4

Introduzione allo scripting in Kontakt, parte 5


For the past 20 years Toby has worked as a professional guitarist, programmer and producer. Clients include Sir Paul McCartney, George Michael, Shirley Bassey, Yusuf Islam, Giles Martin as well as the London 2012 Olympic Ceremonies. He has also worked extensively in TV, Advertising and Film. As well as composing himself he has also ... Read More

Discussion

Want to join the discussion?

Create an account or login to get started!