Donc, la dernière fois nous avons regardé quelques rappels de base, à savoir "sur init", "sur la note" et "en liberté". Nous avons vu comment placer un code simple entre ces rappels imprimés des messages pour nous faire savoir notre code fonctionnait.
Cette fois, allaient construire quelque chose! Je suis sûr que tous les dommages youve vu Heavyocitys et Evolve instruments. L'une des choses cool qu'ils ont sont déclenchées noter FX. Well Im vais vous montrer comment construire un script simple de le faire car je pense que c'est quelque chose que les utilisateurs aimeraient faire. Lets go!
Le Plan!
Voici ce que cherchaient. Vous chargez un tas d'effets d'insertion et de les contourner. Vous pouvez ensuite mapper le paramètre Bypass pour chaque effet à une note. Lorsque vous jouez une note, l'effet correspondant à cette note est activé, lorsque vous relâchez la note l'effet est contourné!
Pour ce faire, nous devons d'abord apprendre au sujet des déclarations.
Déclarations
Alors, quels sont les états? Eh bien laissez-ci Kontakt prendre des décisions sur ce qu'il se passe de se produire lorsque vous faites quelque chose.
L'instruction else if ... se retrouve dans tous les langages de script. Il permet à votre script ne fonctionnera que si quelque chose de très spécifique qui se passe. Prenons notre message simple de la dernière fois à titre d'exemple.
sur la note
message ("Vous jouez une note")
terminera le
Elle sera visible si vous cliquez sur n'importe quelle note, c'est une note de rappel sur après tout. Disons que nous ne voulons cela pour montrer que sur C3. L'instruction if est parfait pour cela.
Si
Heres la structure de l'instruction if.
if (définir certains paramètres ici comme quelque chose équivaut à quelque chose)
{Ne quelque chose d'intelligent si quelque chose est égale à quelque chose!}
end if
Donc c'est assez simple! Mais ce qui est quelque chose équivaut à quelque chose? Eh bien, il pourrait être n'importe quoi. Dans notre cas, nous devons dire à propos de l'instruction if C3. Nous pouvons faire cela en utilisant une variable intégrée appelée $ EVENT_NOTE (Il ya aussi $ EVENT_VELOCITY aussi!). Il en va de la valeur de la note actuellement détenu (s) comme un numéro de note MIDI et ne peut être utilisé à l'intérieur d'une note sur le rappel ou la libération.
On pourrait donc dire, si $ EVENT_NOTE est égale à 60 (C3) puis exécutez le script!. Alors, comment pouvons-nous l'écrire. Eh bien, comme ça!
Si je joue les notes que C3 ne coûtent pas, je ne verrai rien que ce script est spécifique à C3. Mais si je le fais!
Alors que dire de toutes les autres notes? Eh bien, nous pouvons étendre cela à un si ... else.
If ... else
La partie else se rapporte à tout ce qui n'est pas sur la liste. Vous pouvez penser à cela comme un portier dans un club!
si (la personne est attrayant)
Laissez-les entrer!
d'autre
Renvoyez-les!
end if
Je plaisante (Ou suis-je?), Mais qui ne le résumer! Nous pourrions utiliser cette fonctionnalité.
Les fausses notes ont maintenant un message aussi!
Alors que faire si nous voulons une charge de différents messages sur des notes différentes? Nous ne voulons pas avoir à continuer à écrire des charges de cas des déclarations de chacun. Il ya cependant une autre déclaration à portée de main appelé select ().
Sélectionner
Sélectionnez ressemble à une version plus souple de if ... else. Cette fois-ci, c'est que si un cas, comme au cas par cas. Heres comment cela fonctionne.
Au lieu de dire EVENT_NOTE $ = 60 à l'intérieur des parenthèses de l'instruction if EVENT_NOTE, nous avons maintenant il suffit d'insérer à l'intérieur des parenthèses $ sélectionnez comme ceci.
sélectionner (EVENT_NOTE $)
End Select
La valeur du numéro de note de EVENT_NOTE $ est passé à l'affaire.
Cela va faire exactement la même chose que si notre premier exemple. Vous pouvez indiquer autant de cas que vous le souhaitez.
Vous pouvez également définir une plage pour le cas comme ceci.
Lorsque vous jouez dans les plages youll voir ça.
Bien sûr, vous devez lier la note sur avec une version comme ça.
Lorsque vous relâchez une note.
Maintenant que nous savons comment cela fonctionne, on va utiliser select () pour déclencher nos effets.
Chargez Quelques effets!
Im va charger trois effets dans les fentes Effets Insert. Ive a obtenu une distorsion, un Lo-Fi et un Phaser. Im allons contourner ces effets.
Cibler les effets
Tout ce qui peut être automatisé dans Kontakt peut être consulté par la KSP. Il ya une fonction intégrée dans la KSP appelé set_engine_par () qui permet de manipuler les paramètres à l'intérieur du moteur de Kontakt. Youll utiliser ce lot un!
Nous avons besoin de passer des informations dans les supports de cette fonction. Ce dispositif est le suivant:
set_engine_par (,,,, Permet de décomposer: Ainsi, le paramètre je veux effectuer est Bypass. Ceci est ciblé en utilisant ENGINE_PAR_EFFECT_BYPASS $. Mettons que po set_engine_par (ENGINE_PAR_EFFECT_BYPASS $, Les valeurs de déviation sont 0 et 1 est est contourné. Je veux activer l'effet de sorte Ill mettre 0 dans la valeur. set_engine_par (ENGINE_PAR_EFFECT_BYPASS $, 0, Mes emplacements se situent au niveau instrument si mal mis -1 dans Groupe. set_engine_par (ENGINE_PAR_EFFECT_BYPASS $, 0, -1, Mon distorsion est dans le slot 1, de sorte Ill mettre 0 dans la fente. set_engine_par (ENGINE_PAR_EFFECT_BYPASS $, 0, -1, 0, Ma effet est un effet d'insertion afin Ill mettre 1 en générique. set_engine_par (ENGINE_PAR_EFFECT_BYPASS $, 0, -1, 0, 1) Maintenant, j'ai fini une ligne de code que je peux déposer cette déclaration dans mon select (). Quand j'ai frappé la fente C3 premier effet (la distorsion) devient actif. J'ai besoin d'inverser ce un rappel libération quand je prends mon doigt sur la touche de l'effet est contourné à nouveau. Je le fais en mettant un 1 dans la valeur comme ceci. Je peux maintenant mettre en place pour différentes touches à l'aide d'un cas différent pour chacun. Tout ce que j'ai à faire est d'augmenter le nombre fente. Voici le résultat de frapper D3. Et puis en utilisant le communiqué de contourner l'effet quand je relâche la clé en mettant 1 dans la valeur. Je peux déclencher plusieurs effets en même temps aussi, ce qui est un bonus! Voici un exemple de mon script au travail. [Audio id = "12954"] Je peux ensuite définir un titre pour mon script comme nous avons couvert la dernière fois. Je peux alors aller sauver ce tant que préréglage pour une utilisation ultérieure! Succès! Essayez ceci pour vous-même. Ive compris les extraits de code dans un Donc là vous l'avez. Un script simple avec un résultat sympa. La prochaine fois, bien jeter un oeil à quelques-unes conception de l'interface. Définir certains paramètres
Discussion
Want to join the discussion?
Create an account or login to get started!