Kontakt에서 스크립팅 소개, 2 부

In this 5 Part MPVHub Series, Toby Pitman explores the wonderful world of scripting in Native Instruments' Kontakt sampler. In Part 2 you'll build a note trigger FX script!  

그럼 마지막으로 우리는 '릴리스의 "기본적인"참고에 ""INIT에서 "즉 콜백, 그리고 바라 보았다. 우리는 우리의 코드가 일하고 알려 메일의 일부를 인쇄이 콜백 사이에 몇 가지 간단한 코드를 삽입하는 방법 보았다.

이번에는 뭔가를 구축하려고 했어요! 임 확신 볼 Heavyocitys 피해를 youve과 악기를 진화. 사람들이 가지고있는 멋진 것들 중 하나는 FX를 유발 노트입니다. 그럼 임 어떻게 사용자가하고자하는 그 무언가를 생각으로이 작업을 수행하는 간단한 스크립트를 작성하는 방법을 보여 주마. 어서가!


계획!

Heres는 이후 것이었다. 당신은 삽입 효과의 무리를로드하고이를 우회. 그런 다음 메모 각 효과에 대한 우회 매개 변수를 매핑합니다. 당신은 메모를 졌을 때 그 노트에 해당하는 효과가 활성화되어, 당신은 메모를 공개 할 때 효과는 무시입니다!

이를 위해 먼저 진술에 대한 자세한 내용해야합니다.


명세서

그래서 문장은 무엇입니까? 그럼 이것들은 Kontakt는 당신이 뭔가를 할 때 무슨 일이 일어날 무슨 이득이 있는데에 대한 결정을 내릴 보자.

만약에 ... else 문은 모든 스크립팅 언어에서 발견됩니다. 매우 구체적인 무슨 일이 경우 스크립트 만 실행할 수 있습니다. 예로 마지막으로 간단한 메시지를 할 수 있습니다.


메모에

메시지 ( "당신은 메모를 재생하는")

에 종료


어떤 메모를 친다면이 표시됩니다, 그것은 결국 콜백에 대한 메모입니다. 할 수 있습니다 우리는이하지만 C3에 표시 할 말한다. if 문이에 이상적입니다.


if 문의 구조를 Heres.


경우 (같은 걸 여기 매개 변수를 정의 뭔가를 동일)


{무언가가 무언가를 동일하면 현명 어떻게 좀 해봐!}


END IF


그럼 아주 간단이야! 하지만 뭔가가 뭔가를 동일 무엇입니까? 잘 아무것도 아닐거야. 우리의 경우 우리는 C3에 대한 if 문을 알려줄 필요가 있습니다. 우리는 EVENT_NOTE $라는 내장 변수를 사용하여이 작업을 수행 할 수 있습니다 ($는 EVENT_VELOCITY도 있습니다!). 이 MIDI 노트 번호로 현재 실시 노트 (들)의 값을 가지고 있으며 만에 메모 내부 또는 릴리스 콜백에 사용할 수 있습니다.

그래서 우리는 스크립트를 실행 한 후 $ EVENT_NOTE 60 (C3)와 동일한 경우, 말할 수!. 그럼 우리는 그 말을 새겨 않습니다. 음, 이런!

If statement


제가 메모를 재생할 경우이 스크립트는 C3에 고유로 arent C3 것을, 아무 것도 볼하겠다. 하지만 내가!

You're Playing C3!


그래서 다른 모든 노트는? 음, 우리는 경우에이를 확장 할 수 있습니다 ... 다른 진술합니다.


만약에 ... 아니면

다른 부분은 목록에없는 어떤 방법에 대한. 당신은 클럽의 도어맨처럼 생각할 수!


경우 (사람이 매력적입니다)


경찰에 보자!


그밖에


그들을 돌려 보내!


END IF


농담 (아니면 내가 오전?) 만 그게 요약입니까! 우리는이을 사용할 수 있습니다.

If...Else Statement


잘못된 정보는 이제 너무 메시지가!

Try again Bozo!


우리가 다른 노트에 다른 메시지의 부하를하려는 경우 그래서 뭐? 우리는의 부하를 계속 쓸 필요가 싶지 않아요 각 하나에 대한 진술합니다.주세요 선택 ()가 호출 또 다른 편리한 문장은 그러나이 있습니다.


선택

선택은 만약 ... 다른보다 다양한 버전 같습니다. 이 시간은 사례별로 같은 경우에. 작동 방법 Heres.

대신 $ EVENT_NOTE 말의 선택 괄호 안에있는 문다면, 지금 막 $를 삽입 EVENT_NOTE의 괄호 안에 = 60 그래서 좋아해요.


를 선택합니다 ($ EVENT_NOTE)


선택 종료


$ EVENT_NOTE의 노트 번호 값은 경우에 전달됩니다.

Select

이것은 우리의 첫 번째 예와 같은 경우 정확히 같은 일을 할 것입니다. 당신이 좋아한다면 ​​많은 경우로 명시 할 수 있습니다.

Select


당신은 또한 때문에 같은 사건에 대한 범위를 설정할 수 있습니다.

You can also set a range for the case like so.


이 범위 내에서 재생할 때이 볼 수 youll.

You're Playing Between C4 and B4!


물론이 같은에 릴리스에 대한 메모를 페어링해야합니다.


어떤 노트를 공개합니다.


이제 우리는 어떻게 그 작품의 효과를 유도하는 선택 ()를 사용할 거라고 알고.


일부 효과로드!

임은 악기 삽입 효과 슬롯로 3 효과를로드 할. 필자는 왜곡, 소호-Fi 접속 설비와 페이저도. 이제 이러한 효과를 무시하려고 메신저.

Bypass Effects


효과를 타겟팅

Kontakt에서 자동화 할 수있는 일이 KSP에 액세스 할 수 있습니다. 당신이 Kontakt 엔진 내부 매개 변수를 조작 할 수 있습니다 set_engine_par ()가 호출 KSP에 내장 된 기능이 있습니다. 이 많이 사용 Youll!

우리는이 함수의 괄호에 정보를 전달해야합니다. 다음과 같이이 있습니다 :

set_engine_par (,,,,


이 부수 수 있습니다 :

  • 우리 왜곡에 예를 들어 $ ENGINE_PAR_DRIVE에 영향을하려면 매개 변수. ( 끝의 Kontakt KSP 참조에 사용할 수있는 모든 매개 변수의 목록을 찾을 수 Youll.)
  • 매개 변수의 값입니다. 이것은 UI 컨트롤에 의해 전달하거나 값을 설정할 수 있습니다.
  • 그룹 번호 (해당되는 경우). 이 그룹에 FX에 해당합니다. 당신이 악기 수준의 효과를 타겟팅하려는 경우 -1로 설정.


    일부 매개 변수를 설정

    그래서, 내가 영향하려는 매개 변수는 무시됩니다. 이것은 $ ENGINE_PAR_EFFECT_BYPASS를 사용하여 타겟팅됩니다. 의이 인치하자

    set_engine_par ($ ENGINE_PAR_EFFECT_BYPASS, , , , )


    바이 패스의 값은 0에 있고 1 무시합니다. 나는 효과가 있으므로 불길한 값에 0을 넣어 활성화하고 싶습니다.

    set_engine_par ($ ENGINE_PAR_EFFECT_BYPASS, 0, , , )


    내 슬롯 악기 수준에 그렇게 불길한 그룹에 -1 넣어 수 있습니다.

    set_engine_par ($ ENGINE_PAR_EFFECT_BYPASS, 0, -1, , )


    내 왜곡 슬롯 1에 있도록 불길한 0 슬롯에 삽입합니다.

    set_engine_par ($ ENGINE_PAR_EFFECT_BYPASS, 0, -1, 0, )


    내 효과는 매우 불길한 일반에 1을 넣어 삽입 효과입니다.

    set_engine_par ($ ENGINE_PAR_EFFECT_BYPASS, 0, -1, 0, 1)


    지금은 내가 () SELECT 문에이 떨어 ​​수있는 코드의 완성 된 라인을 갖추고 있습니다.


    Code Example



    나는 C3를 쳤을 때 첫 번째 효과 슬롯 (왜곡)이 활성화됩니다.

    Distortion becomes active


    제가 효과가 다시 흐르게되어 키의 손가락을 찍을 때 너무에 출시 콜백에서이 작업을 반대로해야합니다. 난 정말 같은 값으로 1을 넣어하여이 작업을 수행.

    Code Example



    지금은 각각에 대해 다른 케이스를 사용하는 다른 키 위해이 일을 설정할 수 있습니다. 제가해야 할 모든 슬롯 수를 늘리는 것입니다.

    Code Example


    D3를 누르 결과를 Heres.

    Phaser becomes active


    나는 값에 1을 넣어 키를 해제하면 그 다음 릴리스에서 사용하면 효과를 우회.

    Code example


    난 보너스입니다, 너무 같은 시간에 하나 이상의 효과를 트리거 할 수 있습니다!

    Trigger more than one effect at the same time


    직장 내 스크립트의 예를 Heres.

    [오디오 ID = "12954"]


    우리가 지난 번에 적용처럼 그때 나는 내 스크립트의 제목을 설정할 수 있습니다.

    Script Title


    그때 가서 나중에 사용하기 위해 미리 설정으로 저장할 수 있습니다!

    Save script as a preset


    성공! 자신이 사용해보세요. 필자는의 코드 스 니펫 (snippet)을 포함

    다 됐습니다. 시원한 결과를 간단한 스크립트. 다음에 몇가지 인터페이스 디자인을 살펴 있습니다.


    Quick Links


    Introduction To Scripting in Kontakt, Part 2 (you're reading it!)

    Introduction To Scripting in Kontakt, Part 3

    Introduction To Scripting in Kontakt, Part 4

    Introduction To Scripting in Kontakt, Part 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!