The foundation of this sound design technique involves the alteration of source material. Instead of playing a sample chromatically across a keyboard, the Bobdule method often utilizes:

Bobdule listens for MIDI CC messages. Each CC can control a 3D property. The example below sends the value of a Kontakt knob ($ENGINE_PAR_CUTOFF) as CC 20.

on init
  declare ui_slider $Cutoff (0, 1000000)
  make_persistent($Cutoff)

message("") end on

on ui_control ($Cutoff) set_engine_par($ENGINE_PAR_CUTOFF, $Cutoff, -1, 0, -1)

Send value to Bobdule as CC 20 ignore_midi_cc_out(0) allow MIDI output set_midi(0, 176, 20, $Cutoff / 3921) scale 0..1M to 0..127 ignore_midi_cc_out(1) end on

Explanation: set_midi(0, 176, 20, value) sends a Control Change message on channel 1 (176 = CC + channel 0). Value is scaled from 0..1,000,000 to 0..127.


Kontakt is memory-hungry. Tutorials in this style always advise checking the Purge function. If you are writing a song that doesn't use the high notes of a piano, you can "Purge" those samples to save RAM, freeing up space for more instruments.

This is your starting point. On the left side of the interface, you see the Browser.

Tutorial - Bobdule 3d Kontakt

The foundation of this sound design technique involves the alteration of source material. Instead of playing a sample chromatically across a keyboard, the Bobdule method often utilizes:

Bobdule listens for MIDI CC messages. Each CC can control a 3D property. The example below sends the value of a Kontakt knob ($ENGINE_PAR_CUTOFF) as CC 20.

on init
  declare ui_slider $Cutoff (0, 1000000)
  make_persistent($Cutoff)

message("") end on

on ui_control ($Cutoff) set_engine_par($ENGINE_PAR_CUTOFF, $Cutoff, -1, 0, -1)

Send value to Bobdule as CC 20 ignore_midi_cc_out(0) allow MIDI output set_midi(0, 176, 20, $Cutoff / 3921) scale 0..1M to 0..127 ignore_midi_cc_out(1) end on bobdule 3d kontakt tutorial

Explanation: set_midi(0, 176, 20, value) sends a Control Change message on channel 1 (176 = CC + channel 0). Value is scaled from 0..1,000,000 to 0..127. The foundation of this sound design technique involves


Kontakt is memory-hungry. Tutorials in this style always advise checking the Purge function. If you are writing a song that doesn't use the high notes of a piano, you can "Purge" those samples to save RAM, freeing up space for more instruments.

This is your starting point. On the left side of the interface, you see the Browser. Explanation : set_midi(0, 176, 20, value) sends a