Computer Music

> Step by step

1. Your first Reaktor synth (continued)

-

Notice that the maximum value of PitchEnv’s output depends on the value arriving at its G terminal. We’ll use the Macro’s A In Port to drive PitchEnv’s G input, but A is affected by playing velocity, and so the amount of pitch shift provided by the envelope will also be velocityaf­fected. So we need G to be either 0 or 1.

The release phase is being lost because the oscillator­s are stopping as soon as the note is released. We can fix this by preventing A In Port values of 0 from being passed to the oscillator­s – this is a job for a Core Cell! Right-click in an empty area and select New Core Cell from the popup. Name the Core Cell “GateCntrl”.

A Compare module will do this for us – create one with the Searchbox. Connect the A In Port to the Compare’s upper Input, and a Constant module with value 0 to the lower Input. Now, when A is greater than 0, the Compare’s upper Output will have a value of 1, otherwise it will be 0. Connect this upper Output to PitchEnv’s G Input.

Create a new Knob and call it “EnvAmt”. The Knob’s Max value should be the maximum amount of pitch shift that you want the envelope to be able to apply, in semitones; the Min should be negative the same value. We’ve gone for two octaves, so have set Max at 24, Min at -24, and default at 0.

Double-click GateCntrl to enter it, and notice the slightly different appearance – the columns to the left and right are where you create In and Out ports (respective­ly), whilst the central area is where you add Core modules and macros. Create an In and Out port, name both “A”, and ensure their Signal Mode property is set to Event.

Read the hint text for the envelope’s other Input terminals and create suitably-configured Knob modules for each. Layout the knobs in the GUI panel. PitchEnv’s Output is an audio signal, but we will be using it to manipulate event signals, so create an A to E (ie Audio to Event) module and connect it to the envelope’s Output.

Create a Multiply module and connect the A to E module and EnvAmt Knob to its inputs. This will scale EnvAmt’s value by PitchEnv’s value. Disconnect the P In Port from the oscillator­s, and then connect it to a new Add module. Connect the Multiply’s Output to the Add’s other input. Wire the Add’s output to the oscillator­s’ P Input terminals.

Add a Compare (Flow) module. This compares two incoming values based on the module’s “Criterion” property, and outputs a value of True or False from the module’s BoolCtl (Boolean control) port, represente­d by a green arrow. Set Criterion to >, connect the A In port to Compare’s upper Input, and connect a Constant of value 0 to the lower Input.

 ??  ??
 ??  ??
 ??  ??

Newspapers in English

Newspapers from Australia