$0.00 0


This tutorial is the second in a series on using Multi Display modules in Reaktor. In this...

Reaktor Tutorials

Using Multi Displays in Reaktor, Part II

This tutorial is the second in a series on using Multi Display modules in Reaktor. In this installment, I will focus on using Multi Displays to create custom labels for Reaktor projects. I find this is a useful component of my Reaktor toolbox as it allows me to create custom interfaces more quickly.


To create the graphics file we will be using in today’s tutorial, I used a program called Knobman, which can be downloaded here. Knobman is a program that can be used to quickly and easily create various interface components for Reaktor, that would be very difficult and time consuming to create with conventional graphics editors.

Since this is a Reaktor tutorial, I’ll keep the Knobman aspect to a minimum, but if you are unfamiliar with it, you can check out a beginner’s guide give you an idea of what it can do here.

I have uploaded a Knobman project file, Alphabet.knob, that can be used to export fonts from Knobman to a format that Reaktor can use. You can easily change the style and size of the font from inside Knobman, then export the file as a .tga for loading in Reaktor. You can download both the Knobman file I’m using today and the .tga it exports here.

Now, let’s use a Multi Display in Reaktor to rearrange the letters as we please and create custom labels.


For starters, create a new macro, and load up a Multi Display module. There are many parameters of the Multi Display we must set properly before we can use it for our purposes (If you are ever having trouble getting a Multi Display to work, remember to make sure all of the properties are set properly).

Go to the FUNCTION tab of properties to start. First, set the ‘Always Active’ option to on. This makes sure the Multi Display works properly even if it isn’t connected to the larger structure in anyway (which it won’t be). Next, at the bottom, find the Ignore Obj, RGB and A options. Uncheck the Ignore Obj and Ignore A options. Having Ignore Obj unchecked allows us to have different types of objects (each letter will be treated as it’s own object type), and having Ignore A off means we can specify which letters are visible and which ones are not.

Still in the FUNCTION tab of properties, set the number of objects to 16, giving us a maximum of 16 characters per label. Directly beneath the number of objects box, there is a menu labelled ‘Picture’. Choose ‘Open from File’ in the list, and choose the Alphabet.tga file from above. The following box will appear: Okay, there are a few things we need to change here. First of all, our file does have an alpha channel, so select the ‘Has Alpha Channel’ option. Next, change the ‘Num. Animations’ box from 1 to 27 (the file I created has all 26 letters, and a 27th picture as a blank space if no letter is to be used in a spot).

Now, the box should look something more like this: Press okay, then switch to the VIEW tab of the Multi Display properties. First, turn off the ‘Show Label’ option. Next, find the ‘Background Bitmap’ menu, and once again, load the Alphabet.tga file. As before, select the ‘Has Alpha Channel’ box and set the number of animations to 27. This time, however, select the box labelled ‘Horizontal’ in the Resizability area.

It should look like this: Select okay. What this has done is set the first animation in the Knobman picture to be the background of the text label. As it so happens, the first animation is the blank space I mentioned earlier – this is simply making the background of the Multi Display module transparent, so we can layer text over other elements if we desire.

Finally, loading the new background will change the size of the Multi Display module. The ‘Height’ parameter is now equal to 16 (which is good), while the ‘Width’ parameter has a question mark next to it! Don’t worry, we’ll set this up properly in a minute.


Now we have our preliminary work finished, let’s get down to business. To begin with, I created a Selector module and 16 inputs to the macro: This Selector will store the values of up to 16 characters to display for our label. The next thing we need is to read all of the data into the Multi Display module. An Iteration module is perfectly suited for the job: Now, when the ensemble is loaded, it will read through all of the indices and set each one to the letter it has been assigned to. Next, let’s add a way to set the X and Y values of each object: The structure of the X+Y macro looks like this: A few things to note here – first, the X values are being sent in terms of pixels. What this means, is that the X Range of the Multi Display module has to be equal to it’s width in pixels. There will be a bit more on this later. The Y Values are always 0 and 1, so the Y Range can be left alone (0 to 1 is the range by default).

The second thing to note is the W1 and W2 values. These are variables depending on the size of the font file you are using. W1 is the width of each letter (in my example file, 6 pixels), while w2 is the Width of the alphabet file (which has blank space to the right and left of each letter, in this case, 16 pixels). W2 should be easy to find, W1 can be found by trial and error. W1 controls the spacing between each letter.

If you set the X Range and Width in pixels of the Multi Display properly (they should be the same, as I mentioned before), at this point in time you can get a working label out of the structure provided. However, there are a few improvements we can add to make this whole process a lot easier.

For starters, we should have a Length input to the macro that tells us how many letters there are in the label. We should be able to use this in conjunction with the W1 and W2 values to get a good guess at what the X Range and Width should be. In fact, we can set the X Range automatically using the XR input.

This means once we supply the macro with the number of letters in the label, it will set the X Range for us, and the only change left for us to make is to set the Width to the same value. The last thing I would like to do is to make sure all objects above the length of the label are not visible, using the ‘A’ input of the Multi Display. All of these additions are easy to make: Now, you can set up a label like so: The numbers correspond to letters of the alphabet: 1 = A, 2 = B, 3 = C, etc. A blank space is set to zero, or simply left unconnected. The picture above says “Oscillator”. Once you have the letters and the length to their proper values, you can read the value going into the ‘XR’ input of the Multi Display. Set the width to the X Range, and you’re done! Here’s what it looks like on the Reaktor Panel:

Of course, you can change the font, color, and size in Knobman to create something a little more exciting. One last note, this macro is made to load upon setup. When you edit it, the changes may not take place immediately. To fix this, you can trigger a Global Reset Event by turning the CPU button off and then back on.


I find that creating a singular alphabet file and creating labels like this is preferable to creating each label custom in a graphics editor, for several reasons. The first is that Reaktor only has to store one copy of the alphabet file, and if you create dozens of labels it can make the .ens file substantially smaller. The second is that I don’t have to break my workflow to create new screen elements – I can do the work straight from Reaktor. Third, I can switch fonts midway through a project, and instead of having to re-create dozens of labels, I can simply re-do the alphabet file, and the rest will change automatically.

Here is a copy of the ensemble I made today.

I hope you have found this tutorial to be helpful. There are a lot of hidden steps in this one – stuff that takes place in the properties. I hope I have remembered each step, but please let me know if there is anything missing in the comments.


Building in Reaktor for Beginners

ADSR Courses

Add to cart
SAVE 40%

Sequencer Modules in Reaktor

ADSR Courses

Add to cart
SAVE 40%

FFT (Fast Fourier Transform) with Reaktor

ADSR Courses

Add to cart
SAVE 40%

Reaktor Core Masterclass

ADSR Courses

Add to cart
Waveform Loaded
Waveform Played
Clear all
Create an account to use wishlists
Create an account to save tutorials
Follow your favourite labels, formats and genre's and ADSR will show what's new in those on your next visit.
  • Create product wishlist
  • Save your favorite tutorials
  • Regular discounts and exclusives
  • Never miss a sound! Follow your favorite labels.
Sign up to My ADSR to ensure you're ahead of the pack. Save your favorite content and be notified of new content. You'll never miss a thing!
Create your account now!
Sign up to My ADSR to ensure you're ahead of the pack. Save your favorite content and be notified of new content. You'll never miss a thing!
  • Get days all ADSR courses free
  • Create product wishlist
  • Save your favorite tutorials
  • Regular discounts and exclusives
Create your account now!
adsrsounds.com login Video streaming login
Remember me
Forgot your password?
Create your account

Send info
  1. Enter your email address
  2. Click "Send info"
  3. Check your inbox for an activation link
  4. Visit activation link and enter set new password
Sign in
Create your account
IMPORTANT: Is this product compatible with your system? Please check the product system requirements tab before purchasing. To proceed with this purchase you must check the box to confirm you have checked the requirements.

I have read the system requirements and agree to the return policy. I understand that refunds will not be given due to limitation of my software or operating system.

I don't agree
, you have loyalty credit available. To redeem click the button to claim !
Claim your free sounds

For every $5 you spend on ADSR receive 1 free credit for Sample Manager.

Even better, we have back-dated this so any purchases you made since 2017 have also been credited to your account!

Click the button below to claim your free credit.

Get my free credits
Loyalty credits
1Every purchase you make on ADSR* now earns you 1 loyalty credit for every $5 spent
2Once you make a purchase your credits are added to your account
3Credits can be redeemed in ADSR Sample Manager to download individual loops and samples
4To redeem simply download ADSR Sample Manager and/or log into Sample Manager with your ADSR login details
5Credits will have been automatically added to your account
6Loyalty credits expire 30 days after initial purchase
* Not including video subscriptions