0% found this document useful (0 votes)
981 views172 pages

Heavy M

Uploaded by

orcoy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
981 views172 pages

Heavy M

Uploaded by

orcoy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 172

User manual for HeavyM 1.

11
Version 5.1 - 04/19/2019
Legal notices
For legal notices, please visit https://heavym.net/en/legal.

The information in this document is subject to change without notice and does not represent a commitment on the part of
Digital Essence SAS. The software described herein is subject to a License Agreement and may not be copied to any other media
except as specifically allowed in the License Agreement. No part of this publication may be copied, reproduced or otherwise
transmitted or recorded, for any purpose, without prior written permission by Digital Essence SAS.

©2019 HeavyM and its licensors. All specifications subject to change without notice. HeavyM is a trademark of Digital Essence
SAS. All other commercial symbols are protected trademarks and trade names of their respective holders. All rights reserved.
1 Introduction 8
Resources 8
Contacting the support 8
About the HeavyM user manual 8
Symbols and conventions in the manual 9

2 Getting started 10
Required configuration 10
Installing HeavyM on your computer 10
Downloading the software 10
Installing the software 11
Managing your license 14
Releasing your license from the software 14
Releasing your license online 14
Setting up the projection 15
Positioning your video projector 15
Computer settings 15
Launching the projection in HeavyM 17
Starting a new project 17

3 The interface 19
Overview 19
1. The menu bar 20
2. The work area 20
3. The view toolbar 20
4. The toolbar 21
5. The layer list 22
6. The properties panels 23
7. The sequencer 25
8. The tempo module 26
9. The audio analysis module 26
Navigating the interface 27
Display on High-DPI screens on Windows 28

4 Creating shapes 30
Faces 30
Adding faces 30
Selecting faces 33
Arranging faces 34
Moving faces 34
Resizing faces 35
Editing faces 36
Players 38
Adding players 38
Selecting players 39
Arranging players 39
Moving players 39
Resizing players 39
Editing players 39

5 Using the creative tools 41


The center mode 41
The draw mode 43
The cursor 43
The grid 44
The magnet mode 45
Displaying an image as background 46
Locking layers 48
Hiding layers 49
Creating masks 50
Performing rotations 51
Performing symmetries 52

6 Adding effects 53
Grouping faces 53
What are groups for? 53
Creating groups 54
Moving faces to a group 54
Selecting a group and making it active 55
Arranging groups 55
Operating the effects panel 56
Overview 56
Activating an effect 57
The effects library 59
Outline 59
Filling 60
Transformation 63
Post Shaders 64
Transitions 65
Managing the settings 66
Interface control elements 66
Settings 68
Other options 70
Group effects options 70
7 Managing players and their content 71
Overview 71
Managing the content of a player 72
Photos, Videos and GIFs 72
Webcam 74
Syphon/Spout** 75
Shaders 77
Text 86
Display settings 88
Unclipped in the background 88
Clipped to all faces 88
Clipped to a single group 89
Cheat sheet 90
Using the warping module** 91
Players playback options 94
Commands 94
Triggering videos with sequences 95

8 The rendering order 97


Recap 97
Rendering order in the output 97
Example inside a group 97
Example between groups 98
Complete rendering order table 99

9 Making your mapping tempo or sound-reactive 101


Using the tempo module 101
Setting a BPM value 101
Syncing with Ableton Link** 102
Making effects react to the beat 103
Using the audio analysis 104
Selecting an audio source 104
Adjusting the input gain 106
Adjusting frequency ranges 106
Coordinating sound and effects 108

10 The sequencer 109


Managing your sequences 109
Adding sequences 109
Selecting sequences and understanding the active sequence 110
Duplicating sequences 110
Deleting sequences 111
Naming sequences 111
Deactivating sequences 111
Changing the playing order 112
Setting the duration 112
Adding transitions 113
Sequencer playback options 113
Controls in the playback bar 114
Controls on sequences 114
Ableton Link and the HeavyM timeline 114
Active sequence vs. projected sequence 115
Choosing a sequencer mode 117
Managing the sequencer settings 117
Examples of sequencer modes 119
Warnings and tips 121

11 The projection 122


Display options 122
Windowed 122
Fullscreen 123
Multi-projection** 124
Output as background** 128
Projection settings 129
Position and size parameters 129
Performance modes 134
Other options 137
Clip mode 137
Black output 137

12 Importing & Exporting 138


Importing content 138
Opening a project 138
Importing a media 138
Importing MIDI controls 138
Exporting a project 139
Saving a .hm file 139
Exporting the output as a picture 139
Video rendering** 140

13 Controls 142
Keyboard shortcuts 142
General commands 142
Selection commands 143
Drawing shapes 143
Moving & resizing shapes 143
Creative tools 144
Work area view 144
Projection 144
Custom keyboard controls 145
Overview of the keyboard controls window 145
Managing assignments 145
MIDI Controls** 147
Overview of the MIDI controls window 147
Selecting a controller 148
Managing assignments 148
Parameters 149
Using a virtual port to control HeavyM with VDMX via MIDI 151
OSC** 155
Finding a layout for a smartphone app 155
Setting up TouchOSC with HeavyM 156

14 Optimizing your computer for better performances 159


Running on the 3D graphics card 159
NVIDIA graphics cards 159
AMD Radeon graphics cards 162
Universal method 164
Updating your drivers 164
Choosing a performance level 164
Paying attention to overheating 164

15 HeavyM menus 165


File menu 165
Edit menu 166
Tools menu 166
Options menu 167
Controls menu 167
Projection menu 168
Help menu 169

16 Troubleshooting 171
8

Introduction
Welcome to the HeavyM User Manual. This document is intended to help you perform tasks within the
software and discover all the possibilities of HeavyM.

Resources
This manual is one of the many sources of information for HeavyM users. You’ll find other resources online
at heavym.net, with video tutorials, tips from the team, FAQs, or additional downloadable content.

If you haven’t already, don’t forget to check out our community pages: the forum and our Facebook groups
for French and English-speaking users.

Contacting the support


You can reach the HeavyM team from the contact form on our website. Please use this method if you have
license issues.

Don’t hesitate to use the forum if you have issues with the software, you’ll get help from our technical team
and the community. Your post might also help other users!

Feel free to give us feedback on the software, the team is always open to your suggestions!

Note: if you want to post something in the forum (new topic or comment), you need to be signed up with a
username and a password. Otherwise, you can browse it freely.

About the HeavyM user manual


This manual is suited for both beginners and advanced users. You can choose a specific topic from the table
of contents and you will get descriptions and step-by-step help on the matter.

Here are a few notes before you start reading:

● This document covers all features in HeavyM Live. If you are a HeavyM Start user, some of the
chapters will detail features you don't have access to.

● This manual provides instructions for the version of HeavyM stated at the bottom of the cover page.
It might not be suitable if you are using other releases of the software.

● The instructions cover both the Mac OS and Windows versions of the software, unless explicitly
stated otherwise.

You can find the latest update of this manual as well as other versions corresponding to different HeavyM
software updates on our Resources page.

Introduction Resources
9

Symbols and conventions in the manual


● Blue semi-bold text indicates a link to another part of the document. It invites you to refer to a
specific section to get detailed help on a subject.

● Yellow semi-bold text indicates a link to an online resource. It encourages you to consult a specific
webpage if you want additional information on a subject.

● [Gray semibold text between brackets] indicates keyboard keys or a combination of keys. Keys
that vary between Mac and Windows keyboards are indicated as follows: [Windows key/Mac key].
For example: [CTRL/Cmd + S] means “hold CTRL (Windows) or Cmd (Mac) and press the S key”.

● → between two gray semibold labels refers to a menu and its subsections. For example:
Projection → Performance means that you should refer to the Performance submenu in the
Projection menu. It will always be clearly stated if this menu is located in HeavyM, or in a different
software, or if it is in your computer’s settings.

● ** after a title indicates the following instructions apply for a feature that is only available in
HeavyM Live (not HeavyM Start).

Introduction Symbols and conventions in the manual


10

Getting started
This chapter contains step-by-step instructions on how to set up HeavyM and your first projection, as well as
some tips on how to choose appropriate hardware for your mapping.

Required configuration
HeavyM is compatible with both Mac OS X and Windows. In order to make it work properly on your
computer, the following configuration is required:

Operating system
Windows 7 / 8 / 10
Mac OS X 10.10 / 10.11 / 10.12 / 10.13 / 10.14

Hardware
Minimum: Intel Core i3 / 4GB RAM / 1GB dedicated graphics card / 500Mo available disk space
Recommended: Intel Core i5 / 8GB RAM / 2GB dedicated graphics card / 500Mo available disk space

All VGA, DVI or HDMI projectors are compatible with HeavyM.


All MIDI controllers are compatible too.

Your graphics card must be compatible with OpenGL 2.1 (or later). You will find this information on the
reseller’s website, though all recent graphics cards are compatible. We also don’t recommend using Intel HD
graphics cards.

In any case, if you’re unsure about the capacity of your hardware, the best solution is to try the software
first. That’s why when you first download HeavyM, you get a 30-day trial period with all the features from
the full edition (Live), only limited by a watermark. It is the perfect way to discover all the possibilities and
try out your hardware before buying!

Note: an internet connection is needed the first time you open the software and to register a license.

Installing HeavyM on your computer


Downloading the software
HeavyM doesn’t come with an installation disc, it is license-based and there is only one installation file that
you need to get from heavym.net.

Note: you don’t need to create an account to get HeavyM, accounts are only necessary to post topics or
comments in the forum.

• Choosing an edition
HeavyM comes in different editions, so you have to choose which type of license to buy. For each edition,
there are also different subscription plans, so check out our pricing page to discover all the features and
services and find the one that suits you best!

Getting started Required configuration


11

To help you make your choice and test HeavyM before buying a license, you are offered a 30-day trial of
HeavyM Live. In this Trial mode, you’ll get a watermark on the output, but all the features of HeavyM Live
are unlocked, so you can discover them and test the full potential of the software. So, don’t hesitate to
download the software even if you don’t have a paid license yet!

• Downloading HeavyM
If you have already bought a license, you can download HeavyM from your license manager directly. You
will also find all the information related to your license in this space and your license key is required to
access it.

But, as mentioned above, you don’t need to buy a paid license to try out HeavyM, you can get it for free and
use it in Trial mode for 30 days from the first time you open it. To try the latest version, follow this link.
You’ll only need to provide us with an email address so that we can send you the download link. (Don’t
worry, we'll never share it!)

Note: there’s only one installation file for all HeavyM editions. So both methods will actually get you to the
same download.

Installing the software


• Setup
1. Locate and double-click on the .exe (or .dmg) file you just downloaded. (It will usually be in your
“Downloads” folder.)

2. A dialog box will appear, just follow the instructions in order to install the software.

If you have trouble installing the software, it might be because your antivirus is blocking it. If you can’t
bypass the prohibition, try deactivating your protection while you install HeavyM.

But don’t worry, it’s not because HeavyM is unsafe! This can happen because some antivirus block programs
that are unknown in their database. Once a software has been opened and declared as safe by a sufficient
number of people, antivirus won’t forbid it anymore. Consequently, this will happen if a new version of
HeavyM is released and you’re one of the first users to install it.

Note: if your antivirus is Windows Defender, you can bypass the block by clicking on More info → Run
anyway when the “Windows protected your PC” appears.

Click on “More info” to reveal the “Run anyway” option

Getting started Installing HeavyM on your computer


12

• Launching HeavyM and registering


1. First, launch HeavyM. You’ll see this window:

Note: on Windows, if nothing happens when you try to open HeavyM, try to launch it as admin by
right-clicking on the icon or start menu item and selecting “Run as administrator”. Know that you
might need to do this regularly.

2. There, you have two choices:

• You can start the Trial mode (with the watermark) if there are days left in the countdown. To do
so, simply click on “Continue Trial“. You’ll still be able to register later!

• Or you can register a license. If you wish to do so, simply copy and paste the license key that was
sent to you by email when you purchased it, then click on “Register”.
You’ll need an internet connection at this step. This process will link the license to the computer and
thus use one seat. There’s a specific number of seats associated with your license. You can consult
the list of linked devices and see how many seats you have on your license manager.

Note: if you bought HeavyM when there was a login system, please use the “Lost key?” button to
get your key. It will send you to the license key recovery process on our website. (It also works if you
just can’t find your key!)

3. You should be good to go! Depending on your choice, the corresponding edition of HeavyM will
launch.

Note: if you encounter a problem at this step, try checking your license information online or
contact us.

Note: if you wish to switch to another license on this computer later, please first unlink the current one from
the software (Help → Unlink your License), then restart HeavyM.

Getting started Installing HeavyM on your computer


13

• Updates
You don’t need to release your license before installing a HeavyM update on the same computer.

From version 1.5.2, updates are checked automatically and you can download them directly from the
software. If a new version is available, you’ll be notified of the release notes when you open HeavyM.

This window will appear, prompting you to decide if you want to install the new version now, be reminded
the next time you open HeavyM, or skip this version.

If you select “Install update”, the setup file for the latest version will be downloaded and you’ll be able to
start the installation process.

On the other hand, if you select “Skip this version”, you can still change your choice later by going to Help →
Check for Updates in the software. You can also download the latest version from your license manager.

Note: for the moment, if you want to download an older version of HeavyM, you can contact us.

Getting started Installing HeavyM on your computer


14

Managing your license


IMPORTANT: If you bought HeavyM when the login system was in place, please request your license key
with the recovery link on this page to be able to access the license manager and HeavyM 1.10.3 and up.

HeavyM licenses are allocated a specific number of seats. This number represents the maximum
number of computers to which you can link the license at the same time. You can consult the list of
linked devices and check how many seats you have on your license manager.

You can release a license from a computer and link it to another as you wish, following the process
described in this section.

The release of a license from a computer is called an "unlink". You must perform this procedure before:

● Changing the components of your computer;


● Installing HeavyM on another computer (if all your seats are already full).

If you simply want to update HeavyM, you do not need to release your license. If you have problems
updating, please contact the support.

There are two methods to unlink your computer: directly from the software or by contacting us. Note that
for the moment, emergency online unlinks are not available.

Releasing your license from the software


The unlinks made from your HeavyM software are unlimited.

First, make sure you are connected to the internet, then run HeavyM. In the software, you must click on
Help → Unlink your License (or Tools → Unlink in HeavyM 1.2 and 1.3). If you have an older version, please
contact us.

A dialog window will then ask you to confirm the unlink by pressing OK. If the unlink procedure has worked,
a confirmation message will appear. If not, be sure to check the status of your internet connection.

If you refresh your license manager on the HeavyM website, you should no longer see your computer in the
list of allowed machines. Your HeavyM license is now ready to be reinstalled on another computer!

Releasing your license online


For the moment, emergency online unlinks are not available.

If you wish to unlink your license from its devices because you can’t access them, please send us a message
with your HeavyM username or license key so that we can perform the procedure manually.

Getting started Managing your license


15

Setting up the projection


HeavyM is compatible with all VGA, DVI or HDMI video projectors.

In order to get the best rendering of your mapping, there are a few settings to adjust on your projector and
in HeavyM.

Positioning your video projector


Your mapping should be created in the same conditions as the ones where it’ll be projected and the
equipment shouldn’t be moved afterwards to make sure there are no shifts or distortions.

Plan the location of your computer and projector ahead. You might need to lift them. Don’t forget people
might walk around your installation so secure all cables.

Make sure your structure and your projector DO NOT move once you’ve started creating your mapping.

To learn more about how to choose the best projector for your project and how to set it up properly, you
can consult our HeavyM Tips.

Computer settings
• Display settings
Once you have connected your computer to your projector, you need to set up your display settings as
“Extended” and not “Mirrored” or “Duplicated”, so that you can work on HeavyM on your computer and see
your mapping in the projection.

Mac OS
If you are a Mac user, you need to go to System preferences → Displays → Arrangement and untick
“Mirror Displays” at the bottom of the window.

Getting started Setting up the projection


16

Windows
If you are a Windows user, you need to right-click on an empty area on your desktop screen and select
“Display settings”. Scroll down to the “Multiple screens” category, select “Extend these displays” in the
drop-down menu and confirm your choice.

Note: you can also quickly switch between display modes using the shortcut [Windows + P].

• Power settings
Plan your computer’s power settings and set up its sleep mode parameters to make sure your mapping
doesn’t stop if your computer goes into energy saving mode.

• Desktop background
Anticipate and pay attention to the background picture. If a window closes, it is better to have a plain black
background picture, both to preserve your audience’s eyes and to avoid showing everyone a family picture!

• Additional setting for Mac users


If you are using a Mac computer, there’s is an additional setting to check. Under Preferences → Mission
Control, make sure the box “Displays have separate Spaces” is unticked. Otherwise, a menu bar will stick to
the top of your projection display.

Getting started Setting up the projection


17

Launching the projection in HeavyM


In HeavyM, in order to activate the projection of your mapping from your video projector, you’ll need to go
to Projection → Fullscreen and select the desired screen.

Note: the numbering of the screens in HeavyM follows the order defined by your OS, i.e. “Desk” is the
display considered as the primary one by Windows or Mac. You can change the arrangement of your
displays in System preferences → Displays → Arrangement (for Mac OS) or Settings → System → Display,
under “Multiple displays” (in Windows).

You also have the option to open a windowed projection to preview your work on your computer in
Projection → Windowed. Lastly, you can use the “Custom…” option to set specific settings for a project.

For further explanation on how to adjust your projection or multi-projection and its parameters, please refer
to the ”Projection” section of this manual.

Starting a new project


You should be all set to start a mapping project and discover the features of the software now! See
Troubleshooting if you have issues launching HeavyM.

When you open HeavyM, you are greeted by the following welcome window:

This window will appear every time you open the software (not from a project), unless you untick “Show at
startup”. It is also accessible from Help → Welcome Window.

As you can see, it gives you access to a lot of resources about the software, like quick tips, the release article
or learning material. There are also all the different options to start a project.

Note: these options are all available from the File menu too.

Getting started Starting a new project


18

• Creating a new empty project or opening an existing one


On the left of the welcome window, you’ll find buttons letting you create a new project or open an existing
.hm file. The first tab of the window also gives you a quick access to your recent projects. If you have
disabled the welcome window, you’ll be in a new project window by default when you open the software.

When you create a new project, you should save your mapping right away and then remember to save it
regularly to be sure not to lose some data if there’s an issue. Go to File → Save or use [CTRL/Cmd + S].

Note: there can only be one open project window at a time, so when you select File → New Project, the new
window will replace the currently active one.

• Creating a new project from an example


In order to help you discover some effects combinations and stimulate your creativity, we’ve created a few
example projects for you. They all contain a variation of a mapping of the HeavyM logo, with various
sequences, effects and parameters activated. Open one and try to discover how it was made, it’s a great
learning exercise!

Note: saving an example will create a new file so there’s no overwriting and the original examples are intact.

Now, don’t forget to set up your projection and launch an output window as described in this chapter and
have fun mapping!

In the next chapters, you’ll learn how to operate the software and create your mapping. However, if you
want more tips on how to optimize your computer’s configuration to be sure to get the best out of HeavyM
before starting your project, you can make a quick jump to the last chapter of this manual first, “Optimizing
your computer for better performances”.

Getting started Starting a new project


19

The interface
HeavyM was designed to be accessible to all, so its interface is stripped-down and user-friendly. This chapter
will give you a quick overview of all its parts and basic navigation.

Overview
The different parts of the interface are easily recognizable thanks to color codes and spatial organization.
The interface was categorized so that each part follows a specific step in your creation workflow.

The interface Overview


20

1. The menu bar

The menu bar is situated at the top of your screen, below the title bar. It contains drop-down menus
organized in categories, where you’ll find the majority of the software’s essential functions, such as opening
and saving projects or editing tools for example.

For a detailed description of all the options, please refer to the ”HeavyM menus” section.

2. The work area

This central space is the artboard on which you will create your mapping. The darker rectangle in the center
corresponds to the projection zone (which means that anything that is outside of it won't be displayed by
your projector).

The shapes displayed in your work area are the ones in the currently active sequence (the one that has a
yellow title bar). Depending on the sequencer modes you have defined, the shapes can either vary between
sequences or always be the same throughout the whole project.

Learn how to navigate the work area in ”Navigating the interface”.

3. The view toolbar


This toolbar gives you information about the content of your work area and provides tools to help you
manipulate the view. It is always displayed and stays on top of your work area.

The interface Overview


21

4. The toolbar

a. Control settings
These buttons will let you access windows to set up your projection (or multi-projection**) and keyboard
or MIDI controls**.

b. Predefined shapes
In order to create your mapping, you'll have to create shapes that will contain all your effects and media.
There are some already predefined shapes that you simply have to drag and drop to your work area to help
you with that task.

Here in the toolbar, the four first shapes are called faces, they are geometric shapes that can contain
HeavyM effects. The last one is a player and it can contain a media.

c. Creative tools
In blue, you will find tools that will help you with the drawing of your mapping. They will allow you to draw,
modify and adapt your mapping more easily during the whole creation process.

Note: there are other creative tools in HeavyM that are not accessible from the toolbar, but from a menu or
a shortcut. Find out more about all these different tools in “Using the creative tools”.

The interface Overview


22

5. The layer list

In your mapping, you'll be able to regroup shapes together. This will allow you to display different effects in
the faces of your mapping. Indeed, all the faces in a specific group contain the same effects.

In the following chapters, you’ll learn that faces are always contained in groups, but players, depending on
their display settings, can be in or out of any group.

The panel on the left of the interface lets you manage groups, shapes and the hierarchy of all these layers in
the selected sequence. This panel is always displayed and every time you add a new shape, you’ll see it
appear in the list. Depending on the sequencer modes you have set, its content can vary between
sequences.

Its operation will be detailed throughout this manual, but let’s have a quick overview of the features it
contains here. Many options in this panel will facilitate your workflow:

 First, know that the order of the layers in the list impacts the rendering order in the output, i.e. if a
group is above another in the list, it will be rendered in front of it in the output. You can change the
arrangement of groups and objects in the list with drag & drop movements, among other methods
that will be further discussed later.

Note: the Masks group that you see at the top cannot be moved, it always stays on top of the pile.

The interface Overview


23

 Secondly, here are some quick access options that you’ll find in the panel:

1. Add Group: creates a new group. If shapes were


selected when you hit the button, they are directly
added to this new group.

2. Move Group Backward / Forward: moves the active


group (in light gray, here Group 2) one step down / up
in the list.

3. Lock/Unlock shapes: depending on the line in the


list, you can either lock/unlock one shape, all shapes in
a group, or all shapes in the list at once.

4. Show/Hide shapes: depending on the line in the list,


you can either hide/show one shape, all shapes in a
group, or all shapes in the list at once.

5. Options: depending on the line in the list, you can


either access options for one shape, one group or
global options for the whole list.

6. Collapse/Expand: folds or unfolds the list of shapes


contained in a group. The arrow has 3 states: the group
can either be completely closed (like the Masks group
here), completely open (like Groups 1 & 2 here), or you
can hide the list of faces but show player items (like
Group 4 here). It disappears if the group has no shape.

7. Group color: indicates the color that the shapes of this group bear in the work area. Clicking on it will
reveal a 30-color palette that you can choose from to change the group’s color.

8. Group name: double-click on it to rename the group. This is also valid for shapes.

9. Add to group: moves the selected shapes to the corresponding group.

10. Display mode selector: allows you to choose between 3 display modes for a player.

Note: some of the options detailed above are also accessible from right-click context menus in the work
area.

6. The properties panels


The different panels on the right of the interface let you manage the properties of the content in your
mapping, i.e. effects and external multimedia sources.

If one of the icons is pushed, the panel stays open. Depending on the type of item that is selected in the
work area, it will switch to the corresponding properties section (i.e. if you select a face, it will display an
effect panel and if you select a player it will switch to the player settings panel.)

The interface Overview


24

a. The effects panels

The red and purple icons on the right represent the different categories of effects you can find in HeavyM.
There are two main types of effects: Group effects (red icons) and Output effects (purple icons).

Their respective panels will allow you to activate effects and adjust all their parameters.

The Outline, Filling, Transformation and Transitions categories contain 2 or 3 different types of effects,
organized in tabs. Above each tab, you’ll find a switch to activate the corresponding effect and all its
parameters listed below.

The Post Shaders panel is organized a bit differently. By clicking on the yellow plus sign, you’ll unfold the list
of available post shaders. When you select one, it will be added to the panel and you’ll be able to manage its
settings. There are 16 post shaders available. You can use as many of those shaders as you want at the
same time and their order in the panel will influence the visual result.

Group effects
Outline, Filling and Transformation are group effects. It means that they apply to all the faces in a specific
group. You can see which group is active with the label in the title bar.

Output effects
Transitions and Post-Shaders are output effects. It means that they affect the whole output of the selected
sequence, even players, and not only a specific group of faces.

For more information on how to add and manage your visual effects, see ”Adding effects”.

The interface Overview


25

b. The player settings panel

The last section is dedicated to players. It displays the state of the players you select and lets you manage
their parameters and playing options. When you add a new player, it will automatically open up.

The features and options of this panel will be detailed in the “Managing players and their content”.

7. The sequencer

In HeavyM, it’s possible to divide your project in sequences (up to 100). In each sequence, you are able to
add different effects, medias or even shapes. Each sequence can have its own duration and you can set the
order in which they are played.

When you select a sequence, it becomes yellow and its content is displayed in your work area.

You can minimize the sequencer by clicking on the button at the top. Note that it will also put away the
tempo and audio analysis modules.

All the aspects of the sequencer and sequences are detailed in the corresponding section.

The interface Overview


26

8. The tempo module

This module lets you manage the tempo of your project in Beats Per Minute (BPM). You’ll see that you’ll be
able to use this tempo throughout your whole project for different purposes, like the speed of an effect or
duration settings for example. You can choose to show/hide the Ableton Link toggle in the Options menu.

The tempo module is folded when you minimize the sequencer. When the sequencer is maximized, you can
also hide the module by clicking on the button at the top-left.

Find out how to make your effects react to the tempo in “Making your mapping tempo or sound-reactive”.

9. The audio analysis module

In HeavyM, you can make your effects sound-reactive, to adapt your mapping to the atmosphere. The audio
analysis module contains the options that will help you select an audio source, adjust the gains and define
frequency ranges to make your effects react to.

You can turn the module on with the switch in its header bar. Click on the gear icon to access the settings.

The audio analysis module is folded when you minimize the sequencer. When the sequencer is maximized,
you can also hide the module by clicking on the button at the top-left.

Find out how to manage audio settings and make your effects sound-reactive in “Making your mapping
tempo or sound-reactive”.

The interface Overview


27

Navigating the interface


• Moving
In order to navigate inside the work area, you can press your mouse wheel and move your mouse at the
same time.

You can also press [Space], left-click to grab the artboard, and move your mouse at the same time.

• Zooming
You can zoom in on your work area until 319% and you can also zoom out to 80%. There are a few ways to
do so.

With your mouse, you can scroll your mouse wheel or simply click on the buttons of the view bar. The view
bar also contains a button to reset the zoom to 100% and re-centers the projection area in the workspace.

With the keyboard, you can hold [CTRL/Cmd] and hit [+] to zoom in or [-] to zoom out.

• Scrolling
Depending on the size of your screen, you might not see the full content of some panels at once sometimes.
This might happen in the Layers panel, the Players panel, the Effects panel or the sequencer.

In that case, you’ll see a scroll bar (horizontal or vertical). Just click to grab it, and drag it in order to show a
hidden part of your panel and access its options.

You can also use your mouse wheel to scroll.

• Managing the panels


You learned in the previous part of this chapter how to open, close and sometimes collapse the different
panels in the software.

Note: there are no floating panels in HeavyM and you can’t resize the different areas and windows.

The interface Navigating the interface


28

Display on High-DPI screens on Windows


If you are using HeavyM on a device with a high-DPI display, you might experience issues with the
appearance of the interface, making it difficult to use.

For example, there can be incorrectly-sized or blurry graphical elements, some truncated text, or on the
opposite, you might find that the elements in the interface are too small for a comfortable use.

To fix this, here are a few workarounds you can try, but be aware that some of these settings may have
adverse side effects for your display (although don’t worry, everything is reversible).

Note: this only concerns the display of the interface of the software, if you have issues with the display of
the output, please refer to the “Projection” chapter.

• Change compatibility settings


1. Go in the folder containing HeavyM, right click on the .exe file and select “Properties”.

2. In the “Compatibility” tab, check "Disable display scaling on high DPI settings”.

Note: you might have instead "Override high DPI scaling behavior / Scaling performed by: ”. If so,
check this and choose “Application” in the drop-down menu.

3. Re-launch HeavyM. The graphical elements in the application should appear clearer now.

The interface Display on High-DPI screens on Windows


29

• Change Windows display scaling


If changing the compatibility settings hasn’t satisfied you, you can try to adjust the display scaling performed
by Windows, but be aware that this will affect the display of all your apps and elements, not only HeavyM.

To do so, you first need to revert any changes you might have made in the compatibility settings (see
previous point), because the scaling of the app needs to be done by Windows for this method to work (i.e.
“Scaling performed by: System”).

Then, you can change the percentage for the size of elements directly in your Windows settings. Go to
Settings → Display and "Change the size of text, apps, and other items."

You will see some modifications appear directly, but you might need to sign out and sign in again on your
Windows session so that all changes are applied. Try to upgrade or downgrade the size until the overall
appearance satisfies you.

The interface Display on High-DPI screens on Windows


30

Creating shapes
Shapes are the elements that make up your mapping, they contain all the content displayed in your
projection. There are two types of shapes in HeavyM: faces, which contain visual effects from the HeavyM
library and players, which contain sources, like videos, text or other feeds.

Note: you can add up to 300 shapes (faces and players combined) in a sequence. You can refer to the view
toolbar to know how many shapes there already are in a sequence.

Every time you add an object in your work area, you’ll see it appear in the Layer list on the left. As you can
see below, faces and players both have a specific symbol to better differentiate them in the list.

This panel contains many options that will help you manage and arrange all your shapes. Some of them are
accessible from both the work area and this panel. They are detailed throughout this manual and you can
find a detailed overview of the elements in this panel in the chapter related to the interface.

The current chapter will teach you how to create shapes and the outline of your mapping.

Faces
Faces are the geometric shapes that you use to draw the outline of your mapping and where you’ll put visual
effects later.

There are some predefined faces or you can draw point-to-point polygons.

Adding faces
• Adding basic predefined faces
Basic predefined faces are located in the upper toolbar. There are four types: Square, Triangle, Curve and
Ellipse.

Creating shapes Faces


31

In order to add one to your work area:

1. Left-click on the type of face you want and hold down your mouse button.

2. Drag it to your work area, then release your click to drop it. You should see it appear with yellow
borders and round-shaped points.

Note: you can also right-click anywhere on your work area and select the desired shape in the context
menu. The center of the face will be placed where your pointer is located.

• Adding predefined polygons


In addition to the basic drag & drop faces previously described, there are more complex predefined faces
available.

1. To access these faces, make sure you don’t already have any shape selected and right-click
anywhere on your work area.

2. In the context menu that pops up, hover over “Add shape”.

3. You can see the basic faces as well as one extra type: Polygon.

Hover over this item, and choose a number of sides (5 to 10) from the list.

Once you select a number, the corresponding polygonal face is created on your work area, with its
center placed at the location of your pointer.

Regular polygons with 5 to 10 sides that you can create with the right-click menu

Note: the newly created polygons are regular (equilateral and equiangular).

Creating shapes Faces


32

• Drawing custom polygons


You can create custom polygonal faces with the “Draw” mode.

1. First, activate the draw mode by clicking on the corresponding icon in the toolbar.

Note: you can also use the shortcut [CTRL/Cmd + F] or the Tools menu.

2. Once this mode is activated, you can create your own polygon by left-clicking over your work area
to create the vertices. Every time you left-click, you will see a new point on your polygon.

Your polygon will appear with white borders and slightly transparent white filling. The darker part
represent the area that will be added to your current polygon if you create a new point.

3. Once you are satisfied with your polygon, just click on its first vertex, represented by the green dot
(it will turn blue when you hover over it).

This will validate the creation of your face. This method of validation will leave the Draw mode on,
so you can start a new shape right after.

4. If you want to put an end to your drawing session, right-click anywhere on the screen, hit [Escape],
or deselect the Draw mode by clicking on the Draw button again. If you were creating a shape at
the time, it will be closed and saved.

Note: the Draw mode will also allow you to edit faces.

Creating shapes Faces


33

Selecting faces
There are visual cues that let you know when a face or faces are selected: when you click on a face, it will be
selected and turn yellow in your work area and in the layers panel. When faces are not selected, they bear
the color of the group they are assigned to.

Note: the color of a group can be changed by clicking on its color symbol.

You can refer to the view toolbar to know how many shapes you have in your selection (the number next to
the yellow icon).

Note: if a shape is hidden, it can’t be selected (neither in the work area nor in the layers panel). If a whole
group is hidden, you can still click on it in the panel to make it active, but its shapes won’t be selected.

• Selecting multiple faces


To select multiple faces at the same time, you can use a classic lasso selection: aim above the first face you
want to select and, while holding down the mouse button, drag your pointer next to the last shape, so that
your mouse creates a rectangle around your faces. Release your mouse button and the lasso will disappear,
leaving all the surrounded faces selected.

Note that a face needs to be completely covered by the rectangle in order to be selected entirely, or else it
will only grab some of its vertices.

You can also simply hold [CTRL/Cmd] and click on your faces one-by-one to select/deselect them (even if
you already have a lasso selection), or use [CTRL/Cmd + A] to select all the shapes (including players) in your
sequence at once.

The shortcut [CTRL/Cmd] + click also works to select multiple shapes directly from the Layers panel.

Those are pretty basic mouse movement and key combinations that you find in most applications. There’s a
last selection method in HeavyM: if you click on a group in the layers panel, all the shapes it contains
(including players) will be selected.

Note: you can’t select multiple groups at once.

Creating shapes Faces


34

• Selecting when faces are superimposed


When you create a mapping with a lot of shapes (faces or players), there’s a chance some of them will
overlap completely. When you click on a pile, it will always select the one that is at the front (the highest in
the layer pile).

Note: sometimes, when similar shapes are placed exactly one above the other, you might not notice that
there are multiple ones in your selection. That’s when the elements of information in the view toolbar and
the layers panel will be helpful.

Arranging faces
We’ve mentioned in the previous paragraph that faces could overlap and that their order had an importance
in the work area. Indeed, faces are stored in groups and ordered in a layer pile, which also impacts the
rendering in the projection. You’ll learn more on these subjects in future chapters dedicated to groups and
the rendering order.

By default, when you create a face, it is added in the currently active group. If you want to order your faces,
you can drag & drop items directly in the layer list, or use the features in the options or right-click context
menus.

Specifically, you can use the items from the “Arrange” submenu to change the order of faces in a group:
“Move to Front” puts a face above all other faces in its group, whereas “Move Forward” ([CTRL + ↑]) just
sends it above the next face above in the group (and “Move to Back” and “Move Backward” ([CTRL + ↓]) will
do the opposite).

Moving faces
Faces can be moved when they are selected. You can use your mouse to drag your selection and drop it to a
new location, or the keyboard arrows to translate them precisely.

By holding [Shift] when you drag a selection, you’ll be able to constrain the movement in a vertical or
horizontal translation only. A grey line representing the axis on which you selection is shifted will appear.

In this example, the movement is constrained to a horizontal translation

Or course, you can also use the arrow keys to move selected faces (hold [Shift] at the same time for a bigger
increment.)

Note: when placing faces, the magnet mode will be extremely helpful to prevent unwanted blank spaces.

Creating shapes Faces


35

Resizing faces
1. Select the face(s) you want to scale.

2. Hold one of the following shortcuts:

• [Alt] + Drag: if you want to scale your selection uniformly (enlarge or shrink it while keeping its
aspect ratio). The scaling is done relatively to the center of your selection.

• [Alt + Shift] + Drag: if you want to resize your selection on one dimension (enlarge or shrink it
horizontally or vertically). The scaling is then done along the x or y axis (which will appear in light
grey during the operation).

3. While holding the shortcut, click on a face in your selection, hold your mouse button down and drag
your pointer until you reach the desired size, then release.

If you drag your pointer towards the middle of your selection, you will shrink it, whereas if you drag
your pointer away from the center, you will enlarge it.

Original Uniform scaling

Scaling along the y-axis Scaling along the x-axis

Note: alternatively, still while holding [Alt], you can use the arrow keys to resize your selection precisely
(hold [Shift] at the same time for a bigger increment.)

To learn about more precise resizing options of the output and shapes, see “Projection settings”.

Creating shapes Faces


36

Editing faces
Note: you will notice that there is no difference between custom polygons and predefined shapes. Every dot
is independent and can be placed as you wish.

• Adjusting points positions


You can select the points of your shapes independently. Just like when you select faces, they will turn yellow.

Then, the selection and shifting methods previously described for faces also apply to corners, so you can
adjust their positions. You can even move corners from different shapes at the same time.

Original Shifting of the upper points

Note: the magnet tool will also be useful there, it will allow you to snap points together. Then their positions
will be linked.

• Deleting faces or points


You can delete entire faces or simply points. To do so, just make a selection of what you want to erase and
hit [Delete/Backspace]. Just remember there needs to be at least 3 points in a polygonal shape (you can’t
have a line or a single point).

Note: ellipses work a bit differently because they always have 4 points. Also, their points are not totally
independent because they have an internal symmetry, so when you move one of their control points, the
opposite one will shift with it accordingly.

• Adding points to an existing face


As you’ve learned previously, the draw mode helps you create faces dot by dot, but it also allows you to edit
the shapes you have already created in your work area.

Note: you can add points to custom polygons, squares and triangles, but curves and ellipses are
unalterable.

1. First, select the shape(s) you want to edit.

2. Activate the draw mode by clicking on the corresponding icon in the toolbar.

Note: you can also use the shortcut [CTRL/Cmd + F] or the Tools menu.

Creating shapes Faces


37

3. You should now see white dots on the sides of your shapes.

These points are not yet created, but they will be if you click on them. When you click on one, it will
be added to your shape.

Note: when you click on a white dot to create a point, you can hold your mouse button down and
drag the point to place it directly. Once you release it, you’ll have to turn off the draw mode to be
able to move it again, because all shifting is disabled in this mode.

4. Once you have created some new points, you will see them turn yellow and new white dots will
appear again, so that you can keep adding points to your shapes.

5. Exit the draw mode by right-clicking anywhere on your work area or by using [CTRL/Cmd + F], the
toolbar icon or the Tools menu again. You’ll see that your shapes have been editing and will behave
like any other shape.

In the next chapter, you’ll learn more about the creative tools that can help you create and adjust
your mapping. If you want to know how to add visual effects to your faces, please refer to “Adding
effects”.

Creating shapes Faces


38

Players
Players are the areas where you can add a source or an external content. As of HeavyM 1.6, players can
support 5 categories of sources: Medias (photos, videos, GIFs), Webcam streams, Syphon/Spout streams,
Shaders, Text.

You can manage your players from the player settings panel, on the right of your interface.

Note: Remember that you can add up to 300 shapes (faces and players combined) in a sequence. While 300
players is technically possible, know that playing multiple videos at the same time will rapidly take a toll on
your computer’s performance.

Adding players
To insert a media in your mapping, you first have to add an area to contain it: a player. The player icon is
located in the upper toolbar, next to the predefined shapes.

It works like the predefined shapes, in order to add one to your work area:

1. Left-click on the icon it and hold down your mouse button.

2. Drag it to your work area, then release your click to drop it. You should see it appear with yellow
borders and square-shaped points.

Furthermore, the player settings panel will open up. We’ll talk more about this panel in the
dedicated section.

Note: you can also right-click anywhere on your work area and use the right-click context menu to
add a player. Its center will be placed where your pointer is located.

Creating shapes Players


39

Note: in your work area, rectangular faces and players can look very similar. However, you can still see the
difference: faces have round-shaped control points whereas players have square-shaped control points.
Players also appear less bright in your work area, as you can see in the picture below.

On the left, a rectangular face and on the right, a player

Selecting players
The selection methods that were described for faces also apply to players (see selecting faces). But there is
one more method that is specific to players.

In the player settings panel, you’ll notice an icon in the title bar:

It’s a button that allows you to select all the players in your sequence, and only players (it doesn’t select all
the shapes like [CTRL/Cmd + A]).

Arranging players
Like faces, you can drag & drop players, or use the “Arrange” context menu (i.e. from a right-click) to change
their position in the layer list (see arranging faces).

But the behavior here is quite different, as the position of a player in the list is not the only parameter that
affects its rendering. Indeed, depending on its place in the list, if it’s in a group or not, a player will have a
different display mode. Please refer to the dedicated chapter to learn more about player display settings.

Moving players
The movement methods that were described for faces also apply to players (see moving faces).

Resizing players
The resize methods that were described for faces also apply to players (see resizing faces).

In a future section, we’ll describe how you can easily resize media players to preserve the aspect ratio of
their content.

Editing players
Player shapes are not as editable as faces, they always have exactly 4 vertices. You can adjust the positions
of these points and the methods to fine-tune points positions are the same as the one for shapes (see
“Adjusting points positions”).

Creating shapes Players


40

However, while players will always technically stay rectangular shapes, you can also go further if you need to
distort the texture in your player, by using the warping module** (only in HeavyM Live). Warping is a
technique used to manipulate a texture in order to correct its distortion, whether it is to adjust its shape on
a complex surface or for creative purposes. Learn how to use it in “Using the warping module”.

Note: you can’t make a mask with a player.

In the next chapter, you’ll learn more about the creative tools that can help you create and adjust your
mapping. If you want to know how to import content in your players, please refer to “Managing players and
their content”.

Creating shapes Players


41

Using the creative tools


The creative tools are there to help you during the creation process. They will help you draw, edit your
shapes and adjust your mapping precisely on your volume. This chapter will give you information on how to
operate them.

As you already saw in the “Interface” section of this manual, some creative tools are accessible from the
toolbar located above the work area. When you want to activate one of these modes from the toolbar, click
on it and the mode will be turned on. To turn it off, just click on it once again when you are done using it.

On the left, the Draw mode is on and on the right it is off

Note: you can also access these modes in the Tools menu, where you’ll find other tools that will be
described in this chapter.

The rest of the creative tools are accessible either by shortcuts or by specific right-click menus.

The center mode


The center mode allows you to define a custom center for your faces that you’ll be able to use in your effects
parameters later, instead of their default center (the center of gravity).

It is accessible from the toolbar, the Tools menu, or with the shortcut [CTRL/Cmd + B].

The different aspects of the center mode are described in the following paragraphs, while the operation of a
custom center as a setting for visual effects is described in the “Adding effects” chapter.

• Visualizing the custom center


Once the mode is on, you can select a face or group of faces to visualize the positions of their custom
centers. It is indicated by a small blue target icon (like the one in the toolbar).

By default, custom centers are placed in the middle of their associated faces (in the location of the center of
gravity). When a custom center has been moved to a new location, you can see a blue line linking it to its
associated face.

Using the creative tools The center mode


42

• Setting a custom center location for a face


1. In order to set the location of the custom center of a face, you first have to activate the center mode
and select the desired face. (The order in which you carry out these actions doesn’t matter.)

2. Then, click on the center icon in your face and drag it to its new desired location.

3. There’s no validation needed, simply release the center icon when you’re satisfied with its location
and it will be applied.

• Setting the same custom center location for multiple faces


1. In order to set the location of the custom center for multiple faces, you first have to activate the
center mode and select the desired faces. (The order in which you carry out these actions doesn’t
matter.)

2. Then, click on the center icon of one of the faces in your selection and drag it to its new desired
location. You will notice that once you start dragging it, all the other custom centers of the faces in
your selection will snap to it.

This allows you to move all the custom centers of the faces in your selection at the same time and
thus define the exact same location for these custom centers.

3. There’s no validation needed, simply release the center icon when you’re satisfied with the location
and it will be applied.

Note: the custom centers are not permanently linked together, you can always go back and select a single
face to edit its custom center location.

Using the creative tools The center mode


43

• Exiting the center mode


In order to exit the center mode, just right-click anywhere in your work area or hit [Escape]. You can also use
the icon in the toolbar, the option in the Tools menu or the dedicated shortcut [CTRL/Cmd + B] to turn it off.

As we’ve said before, all the modifications you’ve made have already been applied without further
validation.

• Resetting the custom center location


To reset a custom center back to its default location (at the center of gravity of a face), select the desired
face and right-click, or use its options menu in the layers panel, then select “Reset center” in the context
menu.

This also works with a selection of faces: all the custom centers will be put back in their respective default
locations.

Note: you don’t have to be in the center mode to reset centers.

The draw mode


The draw mode has two functions: it will allow you to draw a polygon or edit an existing face.

It is accessible from the toolbar, the Tools menu, or with the shortcut [CTRL/Cmd + F]. Its operation is
described in the “Adding faces” and “Editing faces” sections.

The cursor
When activated, the cursor tool allows you to see the pointer of your mouse on your projection, so that you
can know where it is without looking at your screen. That way, you can draw while looking directly at the
projection.

Previews of the projection (left) and the work area (right) when the cursor is displayed

Using the creative tools The draw mode


44

• Displaying the cursor


This mode is accessible from the corresponding icon in the toolbar or in Tools → Display Cursor.

• Cursor settings
You can alter the appearance of the cursor in Tools → Change Cursor Parameters.

In the first part of this window, you can change the color of the cursor. You’ll notice that you have access to
your saved colors from the color picker.

In the second part, you can adjust the thickness of the cursor with the value slider.

The grid
If you decide to prepare a mapping beforehand, without your real volume, you might notice it does not fit
your structure perfectly once you try to project on it. This can also happen if you’ve made some changes in
your stage setup, for example if you’ve moved your projector a bit.

To solve this problem, you can use the grid tool to fine-tune your preparation and make it fit precisely on
your real projection structure.

This mode is accessible from the toolbar, the Tools menu, or with the shortcut [CTRL/Cmd + G].

1. Once you have activated the tool, click on your work area and drag your mouse in order to draw a
rectangle around your whole mapping. You’ll see a grid appear.

Using the creative tools The grid


45

2. Then, select and drag one of the grid’s corners to adjust the shape of your mapping to the real
structure on which you project.

3. Once you are satisfied with your adjustments, hit [Escape] or turn off the grid mode, this will save
your modifications.

Note: if you want to cancel the changes you made with the grid, you first have to validate them (see step 3.)
before hitting [CTRL/Cmd + Z] or Edit → Undo to erase them.

The magnet mode


The magnet is a tool that allows you to place your shapes without unwanted space between them. It will
help you position your shapes by creating a snapping effect when you get close to a shape vertex.

This mode is accessible from the toolbar, the Tools menu, or with the shortcut [CTRL/Cmd + M].

1. When the magnet mode is activated, you’ll see that when you drag a shape next to another one, a
blue area will appear if two vertices are close to each other.

2. While your selection is still active, you can still move points independently. Once you release your
mouse button though, these 2 points will be linked.

If you move one of these points now, the other one will move with it. On the other hand, the shapes
always stay independent, so if you move one whole shape, the other one won’t be affected and the
link between there vertices will be broken.

Note: this whole process also works when you only move one point (this applies to custom centers too) and
not the whole shape, or when you position a shape that you just dragged from the toolbar.

Using the creative tools The magnet mode


46

Displaying an image as background


In HeavyM, it is possible to import an image and use it as the background of your work area. It is especially
useful if you have an idea of where your projector will be: take a snapshot of your structure from the
position of your projector and use it as a background reference. Then, just place your shapes precisely on
the picture of your volume. That way, you can prepare your mapping remotely, without having to be on the
site of your performance.

On the right, a real situation. On the left, a mapping reproduction of it, with the help of a background picture.

• Displaying the background


In order to activate the display of a background, select Options → Display Background. You’ll see a default
picture with a slight transparency appear in your work area. Simply untick the option when you want to turn
it off.

Note: the background image won’t appear in your projection, this is only for creation purposes. If you want
to add an image in your projection, you need to use a player.

• Background Settings
You probably want to use your own picture and not the default one (even if it’s really beautiful!). Here is the
procedure to select a picture from your computer files:

1. First, go to Options → Background Settings. A window with several parameters will appear.

Using the creative tools Displaying an image as background


47

2. In the right column, under the picture, click on “Choose file”. This will open a new dialog box, where
you’ll be able to browse your folders and select the desired picture from your computer.

Once you have selected a picture, you should see its filename next to the “Choose file” button and
a preview of it just above.

Note: you can use .JPEG (or .JPG), .PNG and .BMP files for this feature. Also, the transparency in
.PNG files is supported.

3. The preview in the settings window shows you how the picture will be displayed in your work area.
You can adjust its size and position in the left column of the window (and directly see the result in
the preview square). There are four options:

• Fit to width resolution: this will adjust the size of your picture
so that its width is the same as your projection area, all the
while keeping its aspect ratio. The picture will also be centered.

If you change the resolution of your projection, the size of the


background picture will automatically be updated in order to fit
the new width.

• Fit to height resolution: this will adjust the size of your


picture so that its height is the same as that of your projection
area, all the while keeping its aspect ratio. The picture will also
be centered.

If you change the resolution of your projection, the size of the


background picture will automatically be updated in order to fit
the new height.

• Expand: this will adjust the size of your picture so that it fills
your projection area completely, regardless of its original aspect
ratio.

If you change the resolution of your projection, the size of the


background picture will automatically be updated in order to fit
the new width and height.

• Custom: if you select this option, you’ll be able to enter a


specific size (width and height) and a specific position (X and Y
coordinates) for your picture. In each input field, you can set a
value and fine-tune it with the up and down arrows until the
preview of the picture satisfies you. By default, the aspect ratio
is preserved when you change the size of your picture. If you
want to remove this constraint, click on the links icon next to
the width and height fields (it will appear “broken” then).

Note that if you change the resolution of your projection, the


size of the background picture will remain unchanged with this
option, the size and position you entered will be preserved.

4. Click on “OK” to apply your changes, or “Cancel” to exit the window without saving them.

Using the creative tools Displaying an image as background


48

Note: while this option can help you in the creation process, there’s also another background feature in
HeavyM that can be useful during a performance: you can get a feedback of the projection in your work
area. See “Output as background”.

Locking layers
In order to avoid inadvertently altering or deleting some shapes (faces or players), you can lock them to
keep them in place in your work area. You can lock one shape or a group of several shapes at the same
time.

• Locking or unlocking an individual shape


There are many ways to lock shapes: the quickest and easy way is to use the lock button in the layers panel.

When a shape is unlocked, the button is just a tick box, but when it’s locked, it becomes a small lock and the
name of the shape is grayed out so you can easily see its state. In the work area you’ll see that it’ll also
appear less bright than unlocked shapes.

In the work area, shapes in the left column are unlocked and shapes in the right column are locked

You can also lock or unlock a shape from its right-click or options context menu, or with the shortcuts
[CTRL/Cmd + L] (to lock) and [CTRL/Cmd + U] (to unlock).

• Locking or unlocking a selection of shapes


First, you can simply lock a selection of shapes by right-clicking on it in the work area and selecting the
option in the context menu, or by using the shortcut.

But you can also lock/unlock in bulk from the layers panel: you’ll notice there’s a lock button or option for
groups, and even for all layers in the sequence directly (at the top of the list).

This last feature is also accessible if you right-click with no selection in the work area, as well as with the
shortcuts [CTRL/Cmd + Shift + L] (to lock all) and [CTRL/Cmd + Shift + U] (to unlock all).

• What happens when a shape is locked?


When a shape is locked, you can still see it and select it, in order to access the panels to modify its content
(the effects of its group, its custom center, or the media in the case of a player). Its vertices are also still
accessible as references to snap points to in the magnet mode.

A locked shape simply cannot be moved or resized (except in the case of warping, or a mapping resize in the
projection parameters).

If this shape is repeated in all sequences, it will be locked there as well. See Sequencer modes.

Using the creative tools Locking layers


49

Hiding layers
Hiding a shape can be useful if you want to reach an object that is below, or if you want to hide some
content in a sequence for example.

In HeavyM, when you hide a shape, it is hidden in both the work area and the projection, but still visible in
the layer list.

• Hiding or showing an individual shape


There are many ways to hide shapes: the quickest and easy way is to use the eye button in the layers panel.

When a shape is displayed, the button is an eye, but when it’s hidden, it becomes a simple tick box and the
name of the shape is grayed out so you can easily see its state.

You can also hide or show a shape from its right-click or options context menu, or hide it with the shortcut
[CTRL/Cmd + H].

• Hiding or showing a selection of shapes


First, you can simply hide a selection of shapes by right-clicking on it in the work area and selecting the
option in the context menu, or by using the shortcut.

But you can also hide/show in bulk from the layers panel: you’ll notice there’s a hide button or option for
groups, and even for all layers in the sequence directly (at the top of the list).

The options to “Show all” is also accessible if you right-click with no selection in the work area, as well as with
the shortcut [CTRL/Cmd + Shift + H] (to show all).

• What happens when a shape is hidden?


When a shape is hidden, it disappears from the work area and the projection output, but it stays visible in
the layer list, although you can’t select it anymore.

If a shape is repeated in all sequences, its visibility state is always independent, i.e. it can be visible in one
sequence and hidden in others. See Sequencer modes.

Using the creative tools Hiding layers


50

Creating masks
Faces can be turned into masks, which will allow you to hide a particular part of the output. They work as
such: a mask is like a plain black shape that is above everything else.

They can also be seen as a way to reach the particular form of a shape you can’t make otherwise. For
example, you can’t create hollow shapes with the draw mode, but a mask can help you simulate one in
some cases.

1. Masks can be made from any type of face in your work area. Select one or a few at the same time.

2. You’ll notice that there is a special group named “Masks” in the Layer list. To turn a face into a
mask, you simply have to move it to this group.

To do so, you can drag & drop it, or use the button of the masks group. You’ll also find a “Use
as mask” option in right-click or options context menus.

Note: the Masks group is darker than other groups and can’t be moved backward, it’s always at the
top of the list. Indeed, masks are necessarily above all other objects. You also can’t change the
group’s color and name.

3. Once your faces are in this group you’ll see them turn black in your interface. You can still move,
edit, hide and lock them as if they were a normal faces. But now, when you put your mask above a
part of your other shapes, it will be hidden in your projection, regardless of the shape’s group
assignment.

4. When you want to turn a mask into a normal shape again, simply move it out of the Masks group,
or use the “Unmask” option from its right-click menu (with this last option, it will go back to its
previous group assignment.)

Note: if a face is repeated in all sequences, its mask state is the same in all of them. See Sequencer modes.

Using the creative tools Creating masks


51

Performing rotations
This will allow you to rotate your shapes. The center used for the rotation is the default center (the center of
gravity) of the shape you rotate. If you rotate multiple shapes at the same time, the center used will be the
center of gravity of your selection of shapes. Similarly, you can also perform a rotation of a specific group of
points.

There are two ways to perform a rotation in HeavyM. You can either:

a. Perform a single rotation: first, select the shape or group of shapes you want to rotate. Then hold
[CTRL/Cmd + R], click anywhere on your work area, hold your mouse button and drag your pointer
in a circular motion around your shape(s) until you obtain the angle you want.

b. Activate the rotation mode: hit the shortcut [CTRL/Cmd + Alt + R] to activate the rotation mode.
When you are in this mode, you can perform rotations using only your mouse, you don’t need to
hold keyboard keys at the same time.

To perform a rotation, click on a shape or selection of shapes, hold your mouse button and start a
circular motion with your pointer around your selection. Release your mouse button when you
obtain the angle you want and hit [CTRL/Cmd + Alt + R] again to turn off the rotation mode.

When you are in this mode, you’ll notice you can’t move your shapes in a translational motion
anymore, so be sure to deactivate it when you want to create a pre-defined shape, because you
won’t be able to drag it to your work area if the mode is on!

Note: when you rotate a shape that has a custom center, you’ll see that this custom center keeps its relative
position to the default center (the center of gravity) of the shape. So, the direction of your effects is not
affected by the rotation, but their overall path might be affected because of the alteration of the custom
center.

Original position of the custom centers (left) with a preview of stripes and radial glow effects (right)

After a rotation, the stripes are unaffected, but the radial glow effect is, because the custom centers have moved.

Using the creative tools Performing rotations


52

Performing symmetries
Symmetries allow you to make a reflection of the shapes you have selected, with respect to a vertical or
horizontal axis (all the while keeping the original shapes).

1. First, you have to select the shapes you want to make a symmetry of.

2. Then, select the desired type of symmetry from the list in Tools → Symmetry, or with the
associated shortcut. You can achieve four different types of symmetry:

Note: a symmetry might affect the left-right direction of your effects. In general, the overall path might be
affected, because your custom center will also be reflected when you perform a symmetry. A symmetry also
reflects the content of players!

Top 1: the original player in the bottom left corner is reflected using multiple symmetries, its content is mirrored.
Bottom 3: example of a “Horizontal Down” symmetry, the position of the custom center (left and middle) and the direction of the
line effect (middle) are mirrored, but the white special-swipe effect (right) is unaffected.

Using the creative tools Performing symmetries


53

Adding effects
One of the great features of HeavyM is that it comes with an integrated library of ready-to-use visual effects
that you can easily add to your mapping. These effects can be combined and you can set their numerous
parameters to your liking.

This chapter will help you discover all the effects and how to manage them and your groups.

Grouping faces
What are groups for?
In order to add effects to your mapping, you first have to understand the concept of groups, because most
visual effects are assigned to groups (except for transitions and post shaders, which are assigned to the
whole output in a sequence).

Groups can be considered as effect banks. They allow you to display different effects in the faces of your
mapping. Indeed, when you add some faces in a group, all these faces contain the same effects.

You’ll notice that the shapes in your work area bear the color of the group they belong to. This color can be
changed by clicking on the color icon of the group, which reveals a 30-color palette. Note that this doesn’t
affect the projection, it is only a visual help to better differentiate shapes in the interface.

The square is in Group 1, the triangle in Group 2 and the circle in Group 3.
Furthermore, Group 1 is below Group 2, with Group 3 above, which is reflected in the output on the right.

In the picture above, you can see that the order of the groups is important. You can alter it, as it determines
which layers are rendered in front of others in the output. Indeed, if a group is above another in the list, it
will be displayed in front of it.

The only group that can’t be moved in the list is the Masks group at the top, as masks are always generated
above everything else. Learn more about the rendering order in the dedicated chapter.

Note: the Masks group also cannot be renamed or selected, contrary to other groups. To rename a group,
simply double-click on its name in the list to access the input field.

Adding effects Grouping faces


54

Creating groups
The creation and organization of groups is managed from the layers panel. You can have 1 to 30 groups in a
sequence, without counting the Masks group. They can each contain as many shapes as you want (in the
limit of 300 shapes per sequence). They can even contain no shape and only effects (kind of like presets).

Use the plus button at the top of the layer panel to add a new group. If you had a selection of shapes
when you clicked on it, they will be directly added to this newly created group.

Notes: you’ll learn later in this chapter that there always has to be an “active” group. That’s why there has to
be at least one group in each sequence (in addition to the Masks group).

Moving faces to a group


By default, faces are added to the active group when you create them (the one with the light gray
background in the list). There are different methods to change this group assignment and move faces to
other groups.

Once a face is moved to a different group, its color in the work area switches to that of its new group.

Note: a face can only be in one group at the same time and there can’t be subgroups.

• First method
1. Select the shapes you want to put in a group.

2. In the layers list, simply drag & drop your selection in the desired group!

• Second method
1. Select the shapes you want to put in a group.

2. Click on the Add to group button on the desired group in the layer list.

• Third method
1. Select the shapes you want to put in a group.

2. Right click anywhere in the work area. A context menu will unfold.

3. Now hover over the "Move to" item, a list of all the groups in the sequence will unfold. Simply
choose the desired group in the list.

At the top, there’s also a “New Group” item. Clicking on it will create a new group and put your
selection of shapes inside directly. It is the same as clicking on the Add Group button with a
selection.

Note: you can also use the options menu of a single face to find the same option.

Adding effects Grouping faces


55

Note: players can also be added to groups using methods 1 and 2 and right-click options, but it doesn’t
serve the same function (players can’t contain built-in group effects). It is purely for display purposes, which
we’ll detail in the chapter dedicated to the display settings of players.

Selecting a group and making it active


In a sequence, when you manage Outline, Filling and Transformation effects in the panel, all the settings
apply to the currently active group.

You can see which group is active in the layer list because of its lighter color and colored border. It is also
indicated by a label at the top of the effects panel.

Here, the pink group named “Door” is active in the layers panel so it is editable in the group effects panels.

There are two methods to select a group and thus make it active and editable in the group effects panels.

Note: there has to be one active group at all times. There also cannot be multiple active groups at the same
time, so you can’t select multiple groups at once.

• First method
You can select a group by simply clicking on it in the layer list. You’ll notice that this method will also select
all the shapes that are in this group.

• Second method
You can also select a group by simply clicking on one shape it contains, in the layer list or the work area. This
method won’t select all the shapes in the group though.

Note: when you deselect all shapes, the active group stays the same until you select another one. Also,
when you make a selection of shapes from different groups, or if you select a mask or a player that is
outside of any group, the editable group stays the same.

Arranging groups
We’ve mentioned in the previous paragraph that the order of groups in the list had an importance.

Indeed, it directly impacts the order of selection in the work area and the rendering in the projection. You’ll
learn more on this in a future chapter, but know that if a group is above another one in the list, all its faces
and effects are rendered in front of the latter in the output.

To change the position of a group in the list, you can simply drag and drop it. You can also use the Move
Group Forward or Move Group Backward buttons at the top of the panel to move the active group
one step up or down in the list. These features are also accessible from the options menu of a group, in the
“Arrange” submenu (with additional Move to Front and Move to Back options).

Adding effects Grouping faces


56

Operating the effects panel


The following instructions describe the basics of how to operate the panel for the different categories of
effects (Outline, Filling, Transformation, Transitions, Post Shaders). While all categories have similarities,
you’ll notice that the Post Shaders panel works a bit differently.

Overview

In the example picture on the left, you can see different tabs: Border, Line and Repeat. They are the
subcategories of Outline effects.

There, we are in the Border tab, so the settings of this effect subcategory are displayed. The red color of the
icon in the tab title indicates that the effect is activated for this group and you can also see that the switch is
turned on above the tab. (You’ll notice that the Repeat effect is on as well.)

You don’t have to activate an effect in order to manage its settings, you can set its parameters and then turn
it on. For example, in our screenshot example, you could navigate in the Line tab and change the settings
while the effect is off and only turn it on when you’re ready to display it.

In the picture on the right, you can see that the post shaders panel is different. Indeed, post shaders are
organized in a list, not subcategories.

By default, a white border effect is on in every group, so that you can see your shapes in the projection
when you draw. Here’s a preview of the default state:

Adding effects Operating the effects panel


57

Activating an effect
• Outline, Filling, Transformation, Transitions
1. First, check the label at the top of the panel to make sure you have selected the right group (for
outline, filling and transformation effects) or sequence (for transition effects) in which you want to
add effects. Here, we’re going to take our green group, named “Group 3”.

2. Then, open a category and select the tab corresponding to the type of effect you want to add. For
this example, we’re going to add a Radial Glow effect, located in Transformation → Structure.

3. Click on the switch above the subcategory tab to turn on the effect.

The default effect in the Structure category is Radial Glow. You can now see it appear in the faces
in the green group, combined with the white border effect that was already on.

Note: you don’t have to be in the tab to activate the toggle. For instance, here, you could turn the
rotation effect on without having to switch to the tab.

4. Now, you can try to combine multiple effects in different groups, and change their settings. Learn
how to do so in “Managing the settings”.

Adding effects Operating the effects panel


58

• Post Shaders
Here are the options on each post shader:

In order to activate a post shader, you have to:

1. First, make sure you have selected the sequence in which you want to apply a shader.

2. Then, open the post shaders category and click on the yellow cross icon at the top-right of the
panel. You’ll see a list unfold with all the available post shaders.

2. When you select one, you’ll see it appear in the panel.

By default, post shaders are turned off and developed when they are added to the panel.

3. You can now activate it by clicking on the switch, and set its value. When on, a post shader has a
lighter gray.

Note: when you activate multiple post shaders at the same time, their order in the panel has an
influence on how the result will look in your mapping. To move a post shader, grab it from the
dedicated top area and drag it to a new position.

Adding effects Operating the effects panel


59

The effects library


There are five categories of effects. Some of them will be applied to a specific group and others will affect
the whole projection output.

Outline
As the name suggests, the effects in this category will animate the outline of the faces you have drawn. By
default, a static white border effect is activated when you create new group, so that you can see the faces
appear in your projection when you draw your mapping.

Note: Outline effects are assigned to groups and only apply to the faces they contain, not your whole
output.

There are three subcategories in the Outline category and you can activate one effect from each at the same
time. They are described in the following paragraphs.

• Border
The effects from this category draw and animate the edges of your shapes. There are four of them. You can
choose between:

ICON NAME EFFECT

All Edges Displays all the edges of your faces.

Blinking Alternates between showing and hiding the edges of your faces,
which makes it seem like it’s blinking.

Half Only shows one out of two edges of each of your faces at the same
time. Alternates between all edges.

Quarter Only shows one out of four edges of each of your faces at the same
time. Alternates between all edges, clockwise.

• Line
The effects from this category draw and animate lines along the edges of your faces. There are three of
them. You can choose between:

ICON NAME EFFECT

Normal Displays a line moving along the border of your faces in a linear
motion.

Boomerang Displays an animated line on each edge of your faces. Each line
moves back and forth between the ends of the edge it’s on in a sort
of bouncy motion.

Adding effects The effects library


60

Yoyo Displays an animated line on each edge of your faces. Each line is
tied to one end of the edge it’s on and extends until it reaches the
other end, then retracts completely and so on. Kind of like a yoyo
that goes down till the end of the thread, then comes back up.

• Repeat
There’s only one effect in this category, the repeat is an effect on its own. It duplicates the outline
animations of your faces, which means that if you don’t have a Border or Line effect on, it won’t show
anything.

Left: Repeat effect with Border, Right: Repeat effect with Line

Filling
As the name suggests, the effects in this category will animate the filling of the faces you have drawn. By
default, no filling is activated.

Note: Filling effects are assigned to groups and only apply to the faces they contain, not your whole output.

There are three subcategories in the Filling category and all the effects are described in the following
paragraphs.

• Color
The effects from this category animate the filling of your faces with color. There are three of them. You can
choose between:

ICON NAME EFFECT

Plain Color Fills your faces with a plain color (or an animation of plain colors).

Gradient Fills your faces with a fixed or animated gradient of colors.

Random Color Fills your faces with plain colors that alternate randomly.

• Special
The effects from this category add animated colored figures inside your faces. There are ten of them. You
can choose between:

ICON NAME EFFECT

Inside Fills your faces with an animated tile that grows from their center
towards their borders.

Adding effects The effects library


61

Outside Fills your faces with an animated tile that grows from their borders
towards their center.

Corner Fills your faces with animated tiles that grow from their corners
towards their middle.

Swipe (solo) Fills your faces with an animated tile that grows like it has been
swiped from one side. Each shape has its own tile.

Swipe (global) Fills your faces with an animated tile that grows like it has been
swiped from one side. There’s one tile that covers all shapes of the
group.

Stairs Fills your faces with an animated tile that looks like stairs.

Hypnotic Fills your faces with a hypnotizing animation, with a motion that
originates from their center.

Stripes Fills your faces with animated stripes.

Double Stripes Fills your faces with two layers of animated stripes.

Mosaic Creates a mosaic inside your faces, with a different opacity for each
tile.

Note: the animated figures created by these effects are placed above the effects in the Color category in
your filling. That means that if you have a Color effect on and you put a Special effect with a slightly
transparent color setting, you’ll start to see the Color effect behind.

Blue Color effect, with a white Special effect above. On the right, the Special is slightly transparent

• Snake
There’s only one effect in this category, the snake is an effect on its own. It creates an animation that lights
up the fillings in your faces one by one, following a path that you define.

You can choose to apply it on the Color, the Special, or both at the same time. That means that if you don’t
have at least a Color or Special effect on, it won’t show anything.

Here’s how to set up the path of your snake:

1. In the corresponding section of the effects panel, click on “Start drawing”.

Adding effects The effects library


62

2. You’ll see that your cursor turns into a cross and you can now draw a line by clicking and dragging
the cursor in your work area.

Every time your cursor goes through a face, the face will turn white, which means it has been added
to the snake’s path.

Note: the order in which the faces are added to the path defines the order in which they will light
up in the snake.

3. Release your mouse button when you are satisfied with the path you have drawn.

4. You’ll notice that once you start drawing, the “Start drawing” button turns into “Validate path”.

Click on it once you’ve finished drawing to validate the path.

Note: when you are in the drawing phase, clicking anywhere on your work area before validating will erase
the current path and you’ll have to start a new one!

Once your path has been defined, know that you can always go back and edit it later by starting the previous
process again.

Note: in order to draw a discontinuous path in multiple parts, simply draw the first part of your line
normally, then hold [CTRL / Cmd] and start drawing a new part, etc.

Adding effects The effects library


63

Transformation
As the name suggests, the effects in this category will animate the faces you have drawn and transform their
form. By default, no transformation is applied.

Note: Transformation effects are assigned to groups and only apply to the faces they contain, not your
whole output.

There are two subcategories in the Transformation category and all the effects are described in the
following paragraphs.

• Rotation
There’s only one effect in this category, the rotation is an effect on its own. It will allow you to animate your
faces in a 2D or 3D rotational motion. You can combine the 3 axis of rotation.

It affects the content of your faces: when you apply the rotation effect to a group of faces, the Outline, Filling
and Structure effects they contain will follow the circular motion.

• Structure
The effects from this category create visual effects in motion from your faces. They are a bit difficult to
describe with words, so we’ll let you guess from the icons! You can choose between 8 of them:

ICON NAME

Radial Glow

Wire Frame

Round Trip

Origami

Strokes

Elastic Position

Elastic Rotation

Elastic Scale

Note: these visual effects are generated from the outline of your faces, but they don’t depend on the Outline
effects. The structure effects are completely independent, you can activate them and see their visual
animations without having any other effect on.

Wire Frame, Elastic Rotation and Strokes effects, displayed in square shapes without Outline effect.

Adding effects The effects library


64

Post Shaders
Post shaders are visual effects that are applied on the final rendering in your output. In other words, they
will affect the appearance of the shapes and their attributes in your projection (not in the interface), with
new visual effects like blurring or strobing effects.

Note: Post Shaders are assigned to sequences and apply to the whole output, not specific groups of faces.

The Post Shaders panel is organized a bit differently than the other panels. There are no subcategories, the
post shaders are stored in a list. There are sixteen of them in total:

NAME EFFECT

Black & White Drains out the color in your output and displays shades of gray instead.

Blue Drains out the blue hue in your output.

Blur Blurs the display of your output.

Contrast Enhances the contrast of the colors in your output.

Convergence Can make you feel like you’re wearing 3D glasses and your eyes are not teaming
up properly.

Cut Slider Can’t say much more than what the name suggests.

Glow Makes the shapes in your output glow.

Green Drains out the green hue in your output.

Noise Adds noise to the colored parts of your output.

Old TV Makes the colored parts of your output look like an old TV screen that’s barely
working anymore.

Red Drains out the red hue in your output.

Shaker Makes it look like your projection is vibrating.

Slitscan Shakes your shapes rapidly from left to right.

Strobe Makes your output flash as if it were a stroboscope.

Swell Wobbles your shapes in a kind of vertical sine wave motion.

Twist Makes it look like your shapes are shaken up by electric shocks.

Adding effects The effects library


65

Transitions
Your HeavyM project can be divided in sequences, where you’ll have different effects, different medias, or
even different shapes. You can add effects between your sequences, so that when you play them, the
transitions will be animated.

Note: Transition effects are assigned to sequences and apply to the whole projection area (including
players), not specific groups of faces.

There are two subcategories in the Transitions category: “Start animation” and “End animation”. Indeed,
you can add a visual effect at the beginning and at the end of a sequence (they are technically not “between”
sequences). The effects are the same in both subcategories and are described in the table below:

ICON NAME EFFECT

Swipe Covers/uncovers the content of the sequence in a swiping motion.

Inside Covers/uncovers the content of the sequence from the inside of the
projection.

Outside Covers/uncovers the content of the sequence from the outside


border of the projection.

Corner Covers/uncovers the content of the sequence from the corners of


the projection.

Stairs Covers/uncovers the content of the sequence in a swiping motion,


in the form of stairs.

Fade Covers/uncovers the content of the sequence by fading the screen


to or from black, respectively.

Blinds Covers/uncovers the content of the sequence as if the projection


were divided in parts that are turning like vertical blinds.

Falls Covers/uncovers the content of the sequence by making it look like


the projection is respectively falling or rising from the ground,
forward or backward.

Note: You need to be in “Play” mode to display transitions in your sequences. If you are “Paused” and you
just click on a sequence to display its content, the transitions won’t be triggered.

Adding effects The effects library


66

Managing the settings


There are numerous settings for each effect, they are what creates the variety and endless possibilities of
visual effects in HeavyM. You have the ability to set them as you like or even make them react to the tempo
or the sound.

You’ll notice that some parameters appear in the properties of multiple effects. This section is intended to
help you learn how to control their value or status. We will also describe the function of all the parameters
you can encounter, so that you can understand them better and predict their action on your mapping.

Note: remember that you have to turn on the switch above its tab in order to activate an effect!

Interface control elements


You’ll encounter different elements in the interface that will help you manage the settings. Here’s the
complete list and how to operate them:

NAME ELEMENT FUNCTION

Effect selector There can be different variants of effects in a


subcategory. This lets you select the type of effect
to use. The selected option turns red, has a darker
background and is underlined.

Color picker Accessing the color picker: the color picker will
open up when you click on the color setting of an
effect. When you are done choosing your color, just
click elsewhere and it will close.

Setting a color: you can set a color by using the


sliders on the left of the panel. You can also type in
directly the HEX (hexadecimal) code of the color you
want and adjust its opacity with the a value (for
alpha, in percent). Next to these input fields, a
sample of your color helps you preview how it
looks. When you click outside of the picker to close
it, it automatically validates your color choice.

Managing your palette: it is possible to save up to


15 colors in your palette, that way you can access
them quickly every time you open the color picker.
These colors are saved globally on your computer,
so you’ll find the same in every HeavyM version you
open on it.
Once you have set a color and are satisfied with its
preview, just click on one of the empty boxes in
your “Saved colors” space to save it. If you want to
delete a color in order to free some space, select it
in your palette and press [Delete/Backspace].

Adding effects Managing the settings


67

Drop-down List menu that unfolds when you click on the white
menu down arrow. Allows you to select a mode in a list of
options. The selected option is written when the
menu is folded.

Value sliders Lets you set the value of a parameter. Slide the
(simple, double) knob to adjust the numerical value that is indicated
on the right. You can also adjust it with your mouse
wheel when you hover over it.

Lets you set the range of values in which a


parameter will vary. Slide the knobs to adjust the
starting value (indicated on the left) and the ending
value of the range (indicated on the right).

Wheels Direction wheel: drag the yellow knob to adjust the


angle along the wheel. The numerical value is
indicated and also editable in the spin box next to
the wheel.

Gradient direction wheel: drag a colored knobs to


adjust the angle. The colors of the knobs adapt to
the colors you have set for your gradient. The
numerical value is indicated and also editable in the
spin box next to the wheel.

Gradient range wheel: drag a colored knob to


adjust the angle of a rod. The colors of the knobs
adapt to the colors you have set for your gradient
and the rods represent the starting and ending
positions of the range of motion. The range is
indicated by the grayed area. The numerical values
of the starting and ending angles are indicated and
also editable in the spin boxes next to the wheel.

Gradient position wheel: drag a colored knob to


adjust the angle of a rod. The colors of the knobs
adapt to the colors you have set for your gradient
and the rods represent the two positions of the
blinking motion.

The numerical values of the first and second


positions are indicated and also editable in the spin
boxes next to the wheel.

Adding effects Managing the settings


68

Origin selector Lets you select the point of origin for certain types
of transition effects. There are five options available
and the selected one is in yellow. Click on a grey dot
to choose a different origin.

Toggle Lets you switch between two options for a


parameter. The selected option is in yellow.

Spin box Lets you set a numerical value for a parameter. You
can enter a value and increase or decrease it by one
with the up and down arrows respectively. (This
also works with your keyboard arrows and mouse
wheel.)

Tick box Lets you select or deselect an option.

Add cross Lets you add an entity.

Push button Only used in the snake effect, this button allows you
to enter the path drawing mode and validate your
drawing after.

Info button This is not an actual setting control. Click on it to


display a small informative text related to the
parameter.

Settings
Here’s the complete list of parameters you can find in the effects panel and their meaning:

NAME FUNCTION

Color Refers to the color of the effect.

Thickness Refers to the thickness of the stroke of the effect.

Line Length Refers to the length of the line, in percent. At 100, the line covers the whole outline
of the face.

Dashes Refers to the dashes you can add to a line. A line can be divided into 10 dashes max.

Direction Refers to the direction of the motion. It can be set with a wheel and a tick box (angle
value) or with a clockwise/counterclockwise toggle.

Speed/Tempo Refers to the velocity of the variation. It can be expressed with a speed value (or
multiplier range of value) or sometimes with a tempo multiplier.

Adding effects Managing the settings


69

Phase offset Shifts the starting point for the variation of the effect between each face of the
group. At 0 all the faces are in phase, otherwise they are be more or less out of
phase.

Line effect on 4 shapes of the same group with respectively phase offset=0 and phase offset=0.32

The value is quite sensitive, it is great to experiment with!

Note: in the case of the Repeat effect, the phase offset of the Line effect also
impacts the inner duplications in a face.

Inner offset Refers to the phase offset in the motion of the instances in some Structure effects.
Its effect is only visible if there are multiples instances.

Fill Percentage Refers to the size of the filling area created by some Special effects. At 100, the area
completely covers a face.

Outline Refers to the number of repetitions of the outline. There can be up to 30


Duplications duplications.

Origin Refers to the starting point for the path of the effect.

Depth Refers to the depth of the outline duplications in the Repeat effect.

Motion Refers to the type of possible motions for the gradient. There are four.

None: the gradient has a static direction.

Swing: the gradient swing between a starting and an ending position in a


continuous motion.

Rotate: The gradient rotates clockwise or counterclockwise.

Blink: the gradient alternates between two positions, which makes it look like its
blinking.

Colors & Weights Refers to the colors in the Random color effect. You can add up to 5 colors. The
weight refers to the importance that is given to a color in the picking: if the weight of
a color is higher compared to that of other colors, it has a higher chance of being
displayed.

Transitions Refers to the type of transition between colors in the Random color effect. The
transitions can either be smooth (the colors fade in and out) or nonexistent (the
colors simply switch without blending).

Range Refers to the range of motion of the gradient effect if it is in Swing mode.

Variation mode You’ll find this drop-down menu quite often (for example for the color, the speed,
(Fixed - Tempo - the thickness, etc). It allows you to choose the type of variation of a parameter: you
Bass - Mid – High) can assign it a fixed value, or you can make its value vary depending on the tempo
or a frequency range.

Adding effects Managing the settings


70

Positions Refers to the two possible positions of the gradient effect if it is in Blink mode.

Start drawing / Refers to the mode that allows you to define a path for the snake effect.
Validate path

Parts Refers to the size of the snake effect. It can have up to 300 parts (which is the
maximum number of shapes in a sequence).

Snake effect with respectively 1, 4 and 8 parts

Axis Refers to the axis of rotation. You can select one (X, Y, Z) or combine them.

Instances Refers to the number of instances of the stroke in a face. If you put more than one,
it is necessary to also adjust the inner offset value to a different value than 0.
Otherwise, the instances will be perfectly superimposed and you’ll only see one!

Segments for Some effects are relative to the number of sides in a face (e.g. Structure - Strokes).
ellipses Since ellipses technically don’t have straight edges, you can set a number of
segments that will be used to divide the outline of ellipse faces instead.

Center The blue line linking a custom center to its face can help you visualize the path that
your effect will have.

Other options
Group effects options
In the layers panel, you can access extra settings for group effects from the group options menu.

• Reset effects
This option resets the effects of the selected group to their default settings. It means that the faces in the
group will go back to their default state, with only a white border effect on and all effects parameters reset
to their default values.

• Copy effects to
This options allows you to copy the effects of the selected group and paste them into another group. This
copy takes into account all settings values and if the effect is on/off.

Note: this action will replace all effects settings in the destination group.

Adding effects Other options


71

Managing players and their content


In “Creating shapes”, you have learned how to add players in your mapping and basic shape-editing
functions. This chapter will now help you understand how to manage and warp the content of players, their
settings, as well as the different display and playback options.

Note: as of HeavyM 1.6, players can support 5 categories of sources: Medias (photos, videos, GIFs), Webcam
streams, Syphon/Spout streams, Shaders, Text.

Overview
When you add a player, the player settings panel opens up on the right of the interface. You can also open it
by clicking on the related icon or simply by selecting a player if a properties panel is already open.

This panel allows you to define the settings and access the playback options of selected players. You can
unfold the parameters section of each player to change its settings, and fold it to gain space.

Each type of player has a similar layout, even if the options can differ.

Managing players and their content Overview


72

Managing the content of a player


By default, the player type is set on media. In this mode, you can only add a picture or a video. To set the
player in another mode, you have to click on the icon corresponding to the type of content you want in the
settings section of your player. The five types are Media, Webcam, Syphon/Spout, Shaders, Text.

For more information, please refer to the dedicated sections for each type of source below.

Note: also by default, the content of a player is the same throughout the whole project. If you want to have
different sources in a player in different sequences, you have to set the sequencer in “independent media”
mode. See “Choosing a sequencer mode” for more information.

Photos, Videos and GIFs


• Adding a media in a player
There are different ways to add a media in a player.

i. Changing the content of an existing player


1. In the settings section of your player in the panel, go to Change Content and click on the camera
icon.

Note: by default, players are already in this mode when you add them.

2. Your player is now in media mode, so you can select a file by clicking on the cross icon +.

This will open a window allowing you to browse the available files on your computer and search for
your media. HeavyM supports .mp4, .mov, .png, .jpeg, .jpg and .gif files.

3. Don’t forget to click play and to set the display settings in order to see this player in the projection.
See display settings and playback options.

Managing players and their content Managing the content of a player


73

ii. Using the quick load bin


If you have already added medias in a player before, you’ll see thumbnails appear in the Change Content
section. They represent recently added medias (up to the last five).

They allow you to get a quick access to these files. Indeed, if you click on one of these thumbnails, it will load
the corresponding media directly in your player (and thus switch your player to media if it was in a different
mode).

iii. Importing a media file


With this method, you don’t have to create a player beforehand, a new one will be created.

1. Go to File → Import media… This will open a window allowing you to browse your files.

2. Select a photo, a video or GIF file and click on “Open”. A player containing your media file will
automatically be created.

iv. Dragging and dropping a media file in the work area


With this method, you don’t have to create a player beforehand, a new one will be created.

Simply select a photo, a video or GIF file and drag it from your computer folders to the HeavyM work area. A
player containing your media file will automatically be created.

• Media settings
Like in all the other types of players, you can set the group assignment and the color.

A media player also has the following specific settings:

● Volume: this item allows you to change the volume of your player, in the case of a video file.

● Resize: this item allows you to resize your player so that it fits the aspect ratio of your media.

• Media troubleshooting
Videos
If your videos are lagging or slowing down, make sure you are running on the correct graphics card by
following the procedure in “Running on the 3D graphics card”.

If it is still happening, try to use the recommended formats (.mov or.mp4) and codecs (h264, DXV, hap) for
the videos you play in HeavyM.

GIFs
Some GIF files are not supported in HeavyM due to their encoding. Try re-encoding your GIF differently if it
happens.

Managing players and their content Managing the content of a player


74

Webcam
• Adding a webcam stream in a player
1. In the settings section of your player in the panel, go to Change Content and click on the webcam
icon.

3. Your player is now in webcam mode, so you can select a streams by clicking on the gray arrow .

This will open a drop-down list with all the available feeds. If you plug in a new webcam, refresh
to see it appear in the list.

4. Don’t forget to click play and to set the display settings in order to see this player in the projection.
See display settings and playback options.

Note: your computer has to recognize the device as a webcam, so it won’t work directly with a plugged-in
camera for example. To bypass this limitation, you can try using a software to convert the camera stream to
a webcam stream, or use Spout or Syphon to recover the feed.

• Webcam settings
Like in all the other types of players, you can set the group assignment and the color.

A webcam player also has the following specific settings:

● Resolution: this item allows you to select a preset resolution for your webcam stream from a drop-
down list. In reality, the closest possible resolution to the one you choose will be applied (few
webcams support 1080p resolution for example).

Managing players and their content Managing the content of a player


75

Syphon/Spout**
Syphon and Spout are two amazing technologies used to send and receive video frames between
applications, in real time. It allows you to receive and display the feed of other applications in your HeavyM
projection and inversely, you can send your active HeavyM output to another program.

A video in Resolume (left) is streamed in a player in HeavyM (middle) through Spout. In the HeavyM output (right), this video is
affected by the display settings of the player and a Slitscan post shader.

Syphon is running on Mac with the most common video applications, while Spout is its little brother running
on Windows. You can check the lists of compatible programs for each one on their respective websites. They
include a lot of different programs, like Smode, Resolume, MadMapper, VDMX, Processing or Adobe After
Effects for example.

• Allowing Spout/Syphon
In order to be able to send the HeavyM output to another software, select Projection → Spout Output
Server, a tick will indicate it is activated. (In order to access this option, a projection window has to be open.)

If you simply want to receive a feed, you don’t need to activate this option, but you will probably have to
activate the feature in the sender software. For example, in Resolume, you need to tick the option in Output
→ Spout.

• Adding a syphon or spout stream in a player


1. In the settings section of your player in the panel, go to Change Content and click on the
corresponding icon.

2. Your player is now in spout/syphon mode, so you can select a feed by clicking on the gray arrow
next to the source name .

Managing players and their content Managing the content of a player


76

This will open a drop-down list with all the active sources. On Windows, if you activate another
software in the meantime, refresh to see it appear in the list (a projection window needs to be
open too). On Mac, there’s no refresh button because sources are checked continually.

Note: the status of the source is displayed next to its name. Learn about this in the next section.

3. Don’t forget to click play and to set the display settings in order to see this player in the projection.
See display settings and playback options.

• Inactive source
If your selected source becomes inactive at some point during playback, your player will not be displayed
anymore but it will stay in “play” and the source will stay selected. That way, when the source becomes
active again, its display will come back automatically. (But it won’t appear in the list of available sources in
other players while inactive.)

The status of a source is indicated by the following icons and label:

Green check icon: active source Grey cross icon: inactive source (also labeled)

Furthermore, the selected source for a player is saved with your project so it will be associated automatically
when you open your project again.

Note: on Windows, you first have to open a projection window so that the status of sources can be checked.

• Syphon or Spout settings


Like in all the other types of players, you can set the group assignment and the color.

Other than that, a syphon or spout player doesn’t have any specific setting.

Managing players and their content Managing the content of a player


77

Shaders
A shader is a program that communicates directly with your graphics card to render an image. You can find
a lot of tutorials and explanations about shaders on the web.

Shaders have parameters that you can control in HeavyM (like the settings of effects), they are called
uniform values and they differ with the shader you choose. You'll find a great variety of settings, like color,
speed or position variables, etc. Some shaders also use a source as input: you can use an image, a video, a
webcam stream, or even a syphon/spout** stream (only in HeavyM Live for this last one). In this case, the
shader is applied on the input source and you can see the effects live!

In HeavyM, we use fragment shaders (ISF and Non-ISF GLSL). To keep it simple, let’s say it’s a little program
that renders the color of each pixel of the image you want to display. To make those programs work, you
must have a graphics card that supports OpenGL 2.0.

Regarding the difference between the formats, ISF shaders are merely GLSL fragment shaders that have
been slightly modified in order to be understood more easily by interactive applications and thus create a
standard. Basically, a part of the code of an ISF describes how to interpret it, that's why you’ll see that you
don't need to convert it to use it in HeavyM (more details on this by the creators of the format here).

• Adding a shader in a player


1. In the settings section of your player in the panel, go to Change Content and click on the shader
icon.

2. Your player is now in shader mode, so you can select a shader file by clicking on the cross icon +.

This will open a pop-up window: the shaders library (introduced in HeavyM 1.10). This library
contains built-in shaders (over a hundred) and you can also add your own in it.

Managing players and their content Managing the content of a player


78

Built-in shaders in the HeavyM library

3. Simply select a shader and click on “open” or double-click on it to import it in your player.

Note: hover over the thumbnails in the library to get animated previews of the shaders!

4. Don’t forget to click play and to set the display settings in order to see this player in the projection.
See display settings and playback options.

• Managing the library


As you've seen previously, you already have a lot of ready-to-use shaders. Those have been provided by the
creators of the ISF format: VidVox. In addition to these, the library also allows you to store your creations or
finds. It can contain ISF shaders, as well as “classic” GLSL shaders whose variables have been adapted for
HeavyM (those are just formats, more info on how to get them later.)

Your personal collection is located in the second tab of the library, titled "My Shaders". To add a shader,
simply click on “Add new +” and browse the files on your computer. The files have to either be .fs for ISF or
.frag for classic GLSL.

Your personal shaders in the HeavyM library

Managing players and their content Managing the content of a player


79

When you add a shader, it is copied in the HeavyM library folder on your computer. It is then ready to be
used in HeavyM like the other shaders. You can manage your collection as you wish, delete some shaders,
add an image or GIF that will serve as a thumbnail for your shader so that it's easier to navigate the list.

You can also manage your library directly from its folder on your computer. It is located in
Library/Application Support/HeavyM/ShadersLibrary (on Mac) and Documents/HeavyM/ShadersLibrary
(on Windows) and you can open it directly from the built-in library in HeavyM with the “Show in Folder”
button. It can be useful if you want to add shaders directly with their snapshots in bulk (the shader and its
preview just need to have the same name).

Technical notes:

 Some ISF shaders also contain a .vs that will be copied automatically if it's located in the same file
and bears the same name.

 HeavyM doesn’t support shaders with sound input for now.

 You can also encounter compatibility issues with some ISF v1 shaders or ones using persistent
buffer and multipass, especially on Mac if your graphics card is not dedicated. Don’t hesitate to
update your graphics drivers, it can solve some problems. The ISF website also allows you to
convert ISF v1 shaders to ISF v2.

 HeavyM can detect and display some types of errors in shaders, they are displayed in a pop up and
give you indications on the problems in the code.

• Where do I find other compatible shaders?


A lot of sources will help you find new shaders to use in HeavyM without having to create them yourself.
Indeed, there's a really active community of artists who share their work. Here are some resources and tips
on how to find and import shaders in HeavyM:

First off, know that ISF shaders, which tend to become more popular, are very easy to import: if you find a .fs
file, you can directly add it and use it in HeavyM as described before. On the other hand, a common .frag, if
it hasn't created specifically for HeavyM, won't be directly compatible with the software. You can adapt it
yourself by hand (the method is described in a later part), or more simply use a .frag → .fs converter.

Warning: if you use a HeavyM version older than 1.10, ISF are not supported, therefore, you need to refer to
the "manual" method.

Here are some useful links:

 To find .fs shaders: https://www.interactiveshaderformat.com/. (if you find an interesting shader,


simply use the "download" button on the top right of the page to get the corresponding file.)

 To find .frag shaders: http://glslsandbox.com/ and https://www.shadertoy.com/

 To convert .frag → .fs shaders: https://magicmusicvisuals.com/utils/shadertoy_to_isf.php (in


Beta). The ISF Editor app (only on Mac) also has "Import from GLSL Sandbox" and "Import from
Shadertoy" features that act as converters.

Note: depending on how you intend to use it, don't forget to check the license chosen by the creator! It
usually is stated at the beginning of the shader's code.

Managing players and their content Managing the content of a player


80

• Creating your own ISF shader


If you want to create your own shaders, we advise you to write in ISF format directly, so that they are
compatible with the most apps. However, if you want to create one specifically for a version of HeavyM older
than 1.10 (that only supports .frag), you'll have to refer to the next part, to understand how to declare
uniform values in this case.

We're not going to teach you how to code here, but here is some advice on how to get started:

You can start by checking out the shaders on the ISF website and try to edit them to see what happens. For
instance you can begin with Solid Color, a shader that simply displays a color. Click on "FS" on the upper-left
corner of the page to see the code and try to change things, you'll see that your modifications are applied on
the preview live. Then you can go see Linear Gradient. You can try to edit it too and evolve towards more
and more complex shaders.

Then, you'll be able to start creating your own shaders by going to the homepage and clicking on "create
your own" and thus get access to a basic ISF template. Note: there are other editors with a live preview,
online or as apps, like ISF Editor (only on Mac for now).

There, now if you want more technical details on how the code of an ISF works, you can also read the next
part about .frag in HeavyM. The only difference is the part concerning uniform values, but the principle
behind the code stays the same!

• Creating or converting a .frag shader compatible with HeavyM


As we've been saying in this tutorial, ISF compatibility has been integrated in HeavyM 1.10. If you use an
older version, you can only use .frag shader and you have to "convert" them in order to make them
compatible in HeavyM. You can start by testing the shaders the team has adapted for you, that you can use
in HeavyM directly: download pack

To use other shaders, you don't need to understand everything but it's good to get the basics. To recall
specifications stated in a previous part, HeavyM only supports fragment shaders and to make them work,
you need at least a graphics card with OpenGL 2.0.

i. Output color
void main( void )
{
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}

This is a short example that puts the red color on each pixel. You can already try this code in HeavyM.

1. Copy/Paste this code in a text editor.

2. Save it with the .frag extension.

3. Then, load it into a HeavyM player as described before.

Now, if you have set the correct display settings, your player will display a red image.

Managing players and their content Managing the content of a player


81

Here’s the explanation: each pixel is rendered by this code. gl_fragColor is the name given to the color we
get. We assign it an RGBA vector with some values between 0 and 1 (in our example, we have red, which is: R
= 1, G = 0, B = 0, A = 1).

Now you can try to change those values in order to get other colors.

ii. Input position


We are going to see how we can have different colors on different pixels. We can modify the color of the
pixel depending on its position. This position is called gl_FragCoord and if we want to get the X or Y position
of the pixel, we have to use gl_FragCoord.x and gl_FragCoord.y.

A simple effect is to vary the RGB values based on the position of the pixel, in order to get a gradient:

void main( void )


{
float red = gl_FragCoord.y / 1000.0;
float blue = gl_FragCoord.x / 1000.0;
gl_FragColor = vec4(red, 0.0, blue, 1.0);
}

In this code, we declare a number red, equal to the Y position of the pixel divided by 1000. We do the same
for blue, equal to the X position divided by 1000.

Therefore, the pixel located at (0,0), on the top left side, gets red and blue values equal to 0, so it will be
black, whereas the pixel located on the bottom right gets red and blue values equal to 1, so it will be purple
(red + blue).

Here, we divide by 1000 because we want some values between 0 and 1 (it depends on the resolution of
your shader).

You can then apply a lot of mathematical transformations on your colors to get some visual effects. To
understand this part, we advise you to read some tutorials dedicated to fragment shaders on the web.

iii. Uniform Values


However, all of this only allows you to display a fixed image. In a video mapping, it's nice to have an
animated image, so we have to take the time into account in our code. In order to do this, we can send some
values to a shader at each frame: those values are called Uniform values.

In HeavyM, we have decided to send 6 values:

● HM_x, HM_y, HM_z and HM_speed: just integer numbers between 0 and 100 that you can modify
from the interface.

● HM_resolution: a vector (x,y) corresponding to your shader's resolution.

● HM_time: a float corresponding to the elapsed time since the projection was launched.

Managing players and their content Managing the content of a player


82

Here’s an example:

uniform float HM_x;


uniform float HM_y;
uniform float HM_z;
uniform float HM_speed;
uniform float HM_time;
uniform vec2 HM_resolution;

void main( void )


{
float red = (gl_FragCoord.y / HM_resolution.y);
float blue = (gl_FragCoord.x / HM_resolution.x);
float green = (sin(HM_time) + 1.0) * 0.5;
gl_FragColor = vec4(red, green, blue, 1.0);
}

First of all, we declare the uniform values, to tell the shader we are going to use them. We can then use
those values in the shader.

In the example above, the green value is equal to the sinus of the time (so we have a value between -1 and
1), to which we add 1 and then multiply by 0.5, in order to have a final value between 0 and 1, that varies
with HM_time.

The colors are now animated. You can see a preview in our online tutorial.

Here is another example of a code which draws a circle that changes color based on time. The circle radius
depends on the HM_x variable, which you can modify in the software.

uniform float HM_x;


uniform float HM_y;
uniform float HM_z;
uniform float HM_speed;
uniform float HM_time;
uniform vec2 HM_resolution;

void main(void)
{

Managing players and their content Managing the content of a player


83

float x = (gl_FragCoord.x / HM_resolution.x) - 0.5;


float y = (gl_FragCoord.y / HM_resolution.y) - 0.5;

float rayon = HM_x / 100.0;

float d = sqrt(x*x + y*y);


float red;
float mov = 0.5 * sin(HM_time);

if( d < rayon)


{
red = 0.7 - 2.0 * d + mov;
}
else
{
red = 0.6 * d - mov;
}
gl_FragColor = vec4(red, 0.0, 0.4, 1.0);
}

The colors are now animated. You can see a preview in our online tutorial.

iv. Modifying an existing shader


If you want to be able to use shaders found on websites like interactiveshaderformat.com or
glslsandbox.com, you have to understand what's happening inside a little bit.

The first things to modify are the Uniforms values. They are chosen by the person who executes the shader.
In HeavyM, we chose to put 6 uniform values and to name them in a certain way (see above). You have to
adapt your shader, depending on those names, to get your values correctly from HeavyM.

Let’s take an example: http://glslsandbox.com/e#40449.0.

#ifdef GL_ES
precision mediump float;
#endif

Managing players and their content Managing the content of a player


84

#extension GL_OES_standard_derivatives : enable

uniform float time;


uniform vec2 resolution;

void main( void ) {

vec2 position = ( gl_FragCoord.xy * 2.0 - resolution) / min(resolution.x, resolution.y);


vec3 destColor = vec3(1.0, 0.0, 0.8 );
float f = 0.0;

for(float i = 0.0; i < 50.0; i++){

float s = sin(time + i ) ;
float c = cos(time + i );
f += 0.003 / abs(length(8.0* position *f - vec2(c, s)) -0.4);
}

gl_FragColor = vec4(vec3(destColor * f), 1.0);


}

In this code, glslsandbox calls those uniform values time and resolution. So you have to replace all the
occurrences of time by HM_time and all the occurrences of resolution par HM_resolution.

#ifdef GL_ES
precision mediump float;
#endif

#extension GL_OES_standard_derivatives : enable

uniform float HM_time;


uniform vec2 HM_resolution;

void main( void ) {

vec2 position = ( gl_FragCoord.xy * 2.0 - HM_resolution) / min(HM_resolution.x, HM_resolution.y);


vec3 destColor = vec3(1.0, 0.0, 0.8 );
float f = 0.0;

for(float i = 0.0; i < 50.0; i++){

float s = sin(HM_time + i ) ;
float c = cos(HM_time + i );
f += 0.003 / abs(length(8.0* position *f - vec2(c, s)) -0.4);
}

gl_FragColor = vec4(vec3(destColor * f), 1.0);


}

Managing players and their content Managing the content of a player


85

There are a few shaders already modified by the HeavyM team on our Resources page.

• Shader settings
Like in all the other types of players, you can set the group assignment and the color.

A shader player also has the following specific settings:

● Uniform values: they have already been discussed earlier in this section. Those are variables that
have been declared in the code of your shader and you can control the value of some of them from
HeavyM.

Note: you can fold the Uniform Values section in the settings to gain more space when you don’t use it.

Managing players and their content Managing the content of a player


86

Text
• Adding text in a player
1. In the settings section of your player in the panel, go to Change Content and click on the text icon.

2. Your player is now in text mode, so you can add text in it by clicking on the pen icon .

This will open a window allowing you to write some text in an input field.

• Ok: this will validate your text input and exit the edit window.

• Apply: this will validate your text input and keep the edit window open. That way, you can see the
result in your projection and quickly make new changes to your input if it does not suit you.

• Cancel: this will exit the edit window without applying any changes you have made since your last
validation.

3. Don’t forget to click play and to set the display settings in order to see this player in the projection.
See display settings and playback options.

• Text settings
Like in all the other types of players, you can set the group assignment and the color.

A text player also has the following specific settings:

● Font file: a drop-down menu that allows you to choose a font. A few fonts with different weights are
directly available in HeavyM, but you can also upload your own font file with the last option of the
list “Add your own font…”.

Managing players and their content Managing the content of a player


87

Here’s the list of font families that are already in the software: Amatic SC, Creepster, Dancing
Script, Gloria Hallelujah, Karla, Love Ya Like A Sister, Monofett, Nosifer, Orbitron, Pacifico,
Palanquin, Permanent Marker, Press Start 2P, Roboto, Sancreek, Shadows Into Light, Special
Elite, Titillium Web, UnifrakturCook, VT323.

● Font size: this item allows you to set the size of the text font.

● Line spacing: this item allows you to set the size of the gap between two lines of text in a
paragraph.

● Alignment: this item lets you choose the type of alignment of your text inside the frame of the
player. You have 3 choices: left, center and right.

• About encoding
The text feature in HeavyM supports UTF-8 character encoding. You might not be able to display some
special characters or alphabets, like letters with accents or Chinese characters for example.

• About textures
A player containing text is not a text field, it is a texture. That’s why you can’t edit the text directly inside the
player.

It behaves like an image with your text engraved in it, you can distort it by editing the corners of the player
or by using the grid or the warping mode. This is why if you enlarge it too much compared to the set size of
the font, it might appear pixelated.

Managing players and their content Managing the content of a player


88

Display settings
There are different ways to display a player. You can choose to project its content entirely, or you can
configure the display settings so that its content is only visible in specific faces of your mapping.

You can choose between three different display modes for each player, accessible from the drop-down
selector located on a player item in the layer list.

The modes are: “Background Display”, “All Groups Display” and “Solo Group Display”. We’ll go over the
differences in the following paragraph.

Depending on the mode, a player will have a specific place in the layer list. So you can also directly change
the position of a player in the pile to adjust its display setting and the mode will switch accordingly.

Note: in any case, a player needs to be on “play” to be displayed.

Unclipped in the background


If the “Background Display” option is selected, the player is sent to the back and its content is displayed in
its entirety, in the limits of the projection area.

All players with this option are at the bottom of the layer list so they are displayed in the background,
behind all faces and all their effects.

Player 1 is displayed in its entirety, in the background, regardless of shape boundaries

If there are several players with this display setting in the same sequence, you can still change their order of
superposition.

Note: by default, when you add a player in the work area, its display mode is set on “Background Display”.

Clipped to all faces


If the “All Groups Display” option is selected, the player is sent behind all faces and groups, but above
“Background Display” players.

This mode allows you to mask parts of a player and only project its content inside all the faces in your
mapping, regardless of their group assignment, as if it were cropped.

Managing players and their content Display settings


89

Here, the player is visible in all the faces of your mapping, behind all effects, but masked outside of their
boundaries.

Player 1 is displayed within the boundaries of both groups, behind all effects

If there are several players with this display setting, you can change their order of superposition.

Note: if you hide a face, the part of the player that was displayed inside will be hidden in the output.

Clipped to a single group


If the “Solo Group Display” option is selected, the player is sent in the group you have chosen, behind all the
faces it contains.

This mode allows you to mask parts of a player and only project its content inside the faces of a specific
group, as if it were cropped. The player will be displayed behind all faces and their effects.

Player 1 is displayed within the boundaries of Group 1, behind its effects

Player 1 is displayed within the boundaries of Group 2, behind its effects

Managing players and their content Display settings


90

In this case, the player is part of a group, so it is necessarily displayed above all faces and effects that are in
groups below the one it is in, as well as “Background Display” and “All Groups Display” players. On the
other hand, it is behind the faces and effects of its group and other groups above.

Know that to set this display mode, you can also directly put the player in a group, using the usual methods
(drag & drop, “add to group” button, etc).

Note: if you hide a face of this group, the part of the player that was displayed inside will be hidden in the
output.

Cheat sheet
Here’s a summary of the rendering order and the position of players in each display mode:

(notice that the layer list gives you a good idea of this order)

RENDERING ORDER
for players and effects

Masks

Output effects

Group 2 faces & effects

“Solo Group 2” players

Group 1 faces & effects

“Solo Group 1” players

“All Groups” players

“Background” players

Warning: since players are rendered behind all effects in the faces they are displayed, don’t forget to turn
off or lower the opacity of any filling effect that might cover it!

For detailed information and explanations on the rendering order of visuals in the output, please refer to
the dedicated chapter.

Managing players and their content Display settings


91

Using the warping module**


Note: this tutorial is also available online, with a step-by-step video presentation of a real use-case. Don’t
hesitate to check it out!

You have learned that players are rectangular shapes that correspond to the projection area of an external
source, with only 4 movable vertices.

However, the basic shape-editing options you have with a rectangular shape might not always be enough to
adjust your texture on a real mapping structure. If it is the case, you can use the warping module to fine-
tune the distortion. Warping is a technique used to manipulate a texture in order to correct its distortion,
whether it is to adjust its shape on a complex surface or for creative purposes.

The warping module of a player provides you with a grid that enables you to distort specific areas of your
texture. This module is accessible in your player’s settings, in the corresponding panel:

It contains the following features:

Managing players and their content Using the warping module**


92

1. Enter / Exit mode


In order to display and alter the warping grid, you need to enter the Warping mode by clicking on “Enter
mode”. While the mode is on, lines and control points will appear in yellow. Here’s an example of a warping
grid that has been edited:

You will notice the changes you apply on the grid impact the appearance of the texture in the projection
directly. When you are done editing the warping grid, you can exit the mode by clicking the “Exit mode”
button or by pressing the Esc key.

Note: you can use the usual selection methods on the control points: selection of multiple points (with
CTRL/Cmd or a selection box), resizing (with alt), etc.

2. Interpolation
You can choose between two types of interpolation: “Linear” and “Bézier”.

In “Linear” mode, lines between control points are straight. With “Bézier”, handles are added to control
points and this creates curved lines.

Example of the same warping with Linear (left) or Bézier interpolation (right)

Note: for now, Bézier handles can’t be edited and are not displayed, so default tangents are used.

Managing players and their content Using the warping module**


93

3 & 4. Subdivisions and precision


You can choose the number of points on the warping grid by increasing the number of columns and lines.
The more subdivisions (3) there are, the more precise you’ll be when adjusting the texture on a complex
surface. The maximum number is 15 by 15.

For each subdivision, HeavyM calculates a deformation grid relative to its 4 control points and the
interpolation type. You can then choose the level of precision (4) of this grid. Basically, the precision is the
number of divisions calculated inside each subdivision, in order to adjust the lines between control points
more or less precisely. By default, this grid contains 10 lines and 10 columns in each subdivision (max 20 by
20).

Warning: know that increasing these numbers will imply more calculations and thus use more resources.
Depending on your mapping, try to adjust these values so that both the visual results and performances are
satisfying. For instance, if you use a great number of subdivisions, try to reduce the precision if it doesn’t
impact the quality of the rendering much.

Note: If you tick “Show precision grid in output”, the precision grid will be displayed in the output.

5. Always show warping grid


This option is ticked by default. It allows you to see the subdivisions on your player shape in the HeavyM
interface, even when you’re out of the warping mode. This is only a visual clue: if you untick it, the
subdivisions will only appear in the warping mode, but the texture deformation will still be applied.

A player with its warping grid displayed (left) and one with the subdivisions hidden (right)

6. Show precision grid in the output


As stated before in “Precision”, this option allows you to display the precision grid in the projection.

Note: this grid is only displayed if the texture is displayed, i.e. if your video is not visible or the player is
paused, this option has no effect.

7. Precision grid color


When “Show precision grid in output” is selected, a dropdown menu appears to let you choose the color of
this grid. There are 5 colors to choose from, so that there can always be a correct contrast with your texture.

8. Reset warping
This button resets all control points to their default positions on the warping grid. Only the basic
deformation relative to the vertices of the player shape remains.

Managing players and their content Using the warping module**


94

Players playback options


Commands

• Single player commands


Players are only displayed in the projection when they are being played (and their related sequence is the
projected one of course). Regardless of the type of content you are using, you’ll always find a play button on
a player.

● starts playing the player and makes its content visible in the projection (according to the display
settings you have defined). Once you click on this button, it will turn into a pause button.

● pauses the playback of the player. When paused, a player is hidden in the projection. If the
player contains a video, a cue point is placed where the video has been paused. Once you click on
this button, it will turn back into a play button.

• Bulk commands
You might want to synchronize the playback of multiple players at once. That’s why there are bulk
commands.

● starts all selected players at the same time. If some players contain paused videos, they will
start from their pause cue points. It doesn’t affect videos that were already playing.

● pauses all selected players at the same time. If some players contain videos that were
playing, cue points will be created.

● stops all selected players at the same time and resets the pause cue points for videos. It
works like the pause all button for players that don’t contain videos.

Managing players and their content Players playback options


95

• Special commands for videos

● stops the playback of the video and erases any pause cue point.

● activates the repeat of the related video. When the playback reaches the end of the video (or
an end cue point), it starts back from its beginning (or a start cue point) and the video is looped
infinitely (within its related sequence). When off, the icon is grey and it turns yellow when activated.

● start and end cue points allow you to trim your video. Simply drag the grey
triangles along the progress bar. Now the video will only be played between these cue points. The
new starting and ending times are indicated on the sides of the progress bar.

Note: the timer below indicates the playback pointer position in the media timeline.

Triggering videos with sequences


By default, the content of a player is the same throughout the whole project. In this case, since the video is
the same in all sequences, once you launch it, it keeps playing without interruption regardless of the
changes of sequences. (It will only restart if you relaunch the playback of the sequencer by hitting the play
button.)

Now if you want to have different sources in a player in different sequences, you have to set the sequencer
in “independent media” mode. This is explained in a later chapter in this manual, in “Choosing a sequencer
mode”.

In this section then, we are going to describe the behavior of videos if you have changed the sequencer
settings to “independent media”. In this mode, when a video is activated (play is on), its playback is adjusted
to that of the sequencer. They are different cases:

• Playback of the sequences is stopped


The video keeps playing in the projected sequence. It is similar to the behavior of the effects: they keep
being animated even if the timeline is stopped.

If you switch to another sequence, the videos (with play on) it contains are triggered from their start cue
points.

• Playback of the sequences is paused


The video keeps playing in the projected sequence.

Note: if you select another sequence, it won’t affect what’s in the output since the projected sequence will
still be the one that is paused, see “active sequence vs. projected sequence”.

Managing players and their content Players playback options


96

• Playback of the sequences is activated


When you launch a sequence, the videos it contains (with play on) are triggered from their start cue points.
When the next sequence start, it goes the same way.

Now, if a sequence and a video are looped, when the sequence starts again, the video keeps playing
continuously without a cut or restart.

Note: the playback buttons of the sequencer don’t change the state of videos. For example, if a video is
paused, it will stay paused even if you launch a sequence.

Managing players and their content Players playback options


97

The rendering order


Recap
The order of superposition has been an underlying theme throughout the previous chapters on objects and
visual effects. Indeed, it impacts both the superposition in the work area and the output.

In the layer panel, you can arrange players, faces and groups. The layer at the bottom of the list is the one at
the back in the projection and the work area.

→ In the work area, if you click on a pile of shapes, the highest one in the layer list will be selected. If you
wish to reach an object that is behind, you have to select it directly from the list.

→ In the output, it depends if we’re talking about groups or objects inside a group:

 All elements in a group (players, shapes with group effects) are displayed in front of the elements in
the groups below in the list. Inversely, they are rendered behind elements from groups above in the
list. Don’t forget there are also Output effects, which are rendered above everything.
 Inside a group however, let’s say the rendering order of group effects has “more impact” than the
order of faces inside the group (check out the tables in the next section). Also, players that are
clipped to a group are also at the bottom of this group, behind its faces and effects.

Note: players have specific display modes, they are not always contained in groups and can be clipped, but
they follow the general principle that if a player is above another, it will be displayed in front of the latter.

Rendering order in the output


Let’s see how the rendering order affects the visuals in the output. Here, we’ll first give some examples with
only faces (not masks) and group effects, so as not to overcrowd the visuals.

If you wish to see the full table with the rendering order of all elements, you can skip to the last section of
this chapter. To get a specific explanation on the behavior of players, check out the display modes.

Example inside a group


Firstly, inside a group, you can order shapes, but players will always be behind faces. As mentioned
previously, the superposition of faces inside a group is clear in the work area. However, there’s a trick in the
output: the rendering works effect by effect, then face by face.

The rendering order Recap


98

For example, if face 1 is in front of face 2 in a group with a color filling and border, the color effect is
rendered first (for face 1 then face 2), then ahead it will be the border effect (for face 1 then face 2).

Therefore, the outline of face 1 will be in front of the filling of face 2, even if the latter is above in the layer
list. This is better illustrated in the following picture.

In the work area, you can see that Face 3 is in front. In the output, the rendering is done effect by effect first.

Example between groups


Let’s take the previous example: all faces were in the same group so they necessarily had the same effects.
Now we’re going to put them in 3 different groups, each with the same effects.

In the list, Group 1 (white) is at the bottom, Group 2 (blue) in the middle and Group 3 (green) on top.

Notice the difference? Here, there’s a clear superposition in the output, because all effects of group 1 are
rendered behind group 2, with group 3 on top.

The rendering order Rendering order in the output


99

Here’s another example, this time with different effects in the three groups:

All effects of a group are rendered behind the effects of groups above in the layer pile.

Complete rendering order table


Now, there aren’t only faces and group effects in HeavyM. Here’s an example with a mask, a post shader and
players with different display modes added:

Here, you can see that the Mask face is unaffected by the Swell post shader, as it is rendered last.

Since it would be difficult to understand if we put everything in the same mapping, we made a table for
reference in the next page.

The rendering order Rendering order in the output


100

In the table, the rendering order is given for a mapping with 3 faces, placed in two groups: Group A contains
Face 1 and is below Group B. Face 3 is in front of Face 2 in Group B.

RENDERING ORDER

Group A Group B

Face 1 Face 2 Face 3

Masks

Transitions

Post Shaders

Line effect 3 (+Repeat)

Border effect 3 (+Repeat)

Structure effect 3

Special effect 3

Color effect 3

“Solo Group 3” players

Line effect 2 (+Repeat)

Line effect 1 (+Repeat)

Border effect 2 (+Repeat)

Border effect 1 (+Repeat)

Structure effect 2

Structure effect 1

Special effect 2

Special effect 1

Color effect 2

Color effect 1

“Solo Group 1” players

“All Groups” players

“Background” players

Obviously, all this might be hard to grasp on paper, so the best advice we can give you is to experiment!

The rendering order Rendering order in the output


101

Making your mapping tempo or sound-


reactive
This chapter will help you make your mapping react to the beat or to specific frequency ranges of a sound.

Using the tempo module

To make your mapping more lively, you can animate your effects on the beat. This can be used as a trick if
you don’t have a good microphone to coordinate your effects with sound: just adapt the tempo in HeavyM
to the rhythm of the ambient music, you’ll get the illusion that sound and animations are linked!

Note: the tempo specified in this module also regulates the duration of sequences if your sequencer is in
tempo mode (as opposed to time mode).

Setting a BPM value


You can set a value for the tempo in the input box, or tap along to a tempo by clicking on the TAP button
and the value will be adjusted to your rhythm. This value is expressed in Beats per Minute (BPM) and must
be between 20 and 400.

You can check if the tempo corresponds to what you want with the visual indicator at the bottom of the
module: the little yellow line moves to the beat you set. You need to click regularly a few times so that the
BPM value can be calculated precisely. If you feel like it’s a bit off, you can increase or decrease the value
slightly with the up and down arrows of the input field.

The Resync button is also there to help you in this process of setting a coordinated tempo: click on it on the
first beat of a bar in your sound in order to restart the visual indicator to the beginning (i.e. the yellow line
starts back from the bar). That way, the tempo in the software and in your sound are not out of phase. This
also means that your tempo-reactive effects will be in phase.

Note: if the playback of the sequencer is activated, hitting the Resync button will also restart the current
sequence from the beginning.

Making your mapping tempo or sound-reactive Using the tempo module


102

Syncing with Ableton Link**


Even if the Tap tempo function is helpful to adjust the tempo in HeavyM to that of a song without knowing
its BPM, it’s not dynamic, so it won’t account for tempo variations in the music. For example, if you feel a
drop coming, you’ll probably want your visuals to speed up to follow its build-up before it hits!

That’s why we’ve introduced Ableton Link in HeavyM 1.10: you are now able to synchronize the HeavyM
BPM value with that of other apps. Learn all about it in the following paragraphs or refer to our video
tutorial for a hands-on example.

• What’s Link?
As per the Ableton website, “Link is a technology that keeps devices in time over a local network, so you can
forget the hassle of setting up and focus on playing music.”

The protocol syncs up tempo, beat and phase between multiple applications that can be running on one or
multiple devices. That way, you can for instance sync HeavyM and your other visual animation apps on one
computer, and also keep in time with the DJ’s DAW. All these applications have independent, non-identical
timelines, but Link will allow them to play in time.

Also, although the technology is developed by the Ableton team, you don’t need to have Ableton Live to use
Link! Indeed, Link-enabled apps can use the protocol between themselves autonomously. For instance, you
can link Traktor, Resolume and HeavyM together without having to install anything.

• Activating Link and joining a session


By default, the Link activation button in HeavyM is hidden. Tick “Show Ableton Link Toggle” in the Options
menu to make it appear in the Tempo module. Now you can see a toggle labeled “Ableton Link”. Simply
click on it to enable the protocol.

Note: usually, other apps have more or less the same process to activate Link.

When Ableton Link is on, the toggle turns yellow and its label displays the number of peers connected to the
session.

In order to join a session, you’ll have to be on the same local network as the other devices. If it is the case,
then you don’t have to do anything else: all connected devices are automatically added to the session.

When you join the session, the HeavyM BPM value is adjusted to the common value of the other devices
already in session and it doesn’t disrupt the session at all. The same goes for all other devices: the
newcomers are always the one aligning their BPM to the common value when joining in.

Once in the session, you can keep performing independently, but remember that all devices will have a
common tempo value and everybody in the Link session is equal and can adjust this value, there’s no
priority. So if you’re VJing with a DJ, be careful: when you change the tempo, it will affect his music too!

Later, if you wish to leave the session, simply click on the toggle again to turn off Link in HeavyM. The
session will keep running for the other devices, you won’t disrupt anything by leaving and your BPM value
will not be altered.

Making your mapping tempo or sound-reactive Using the tempo module


103

• HeavyM timeline and Ableton Link


If your HeavyM timeline is in “time mode”, only the tempo will be synchronized with other devices. On the
other hand, if you are in “beat mode”, beat alignment and phase synchronization can be performed.

These concepts allow the visuals in HeavyM to match perfectly to your sound. For instance, it’s better if a
tempo-reactive effect hits its peak in-phase with the kick of the drums right?

In order to accomplish this beat-matching in the HeavyM timeline, playback might need to be altered.
Indeed, when you start playing a sequence, its launch might have to be delayed in order for it to fall
perfectly in sync with the timeline of other devices.

When this happens, you’ll see the Play button on the sequence blink. It means it’s waiting until the next key
beat to start. Note: Ableton Live users, it’s the same principle as the launch of Clips in the Session View.

With this method, you don’t have to be precise and calculate when to start, you can hit play whenever you’d
like and the launched sequence will start on the next key beat (for example, a 4-beat sequence won’t start
playing until the beginning of the next bar.) This is only the case for the first launch of a sequence, then your
timeline will play normally and the next sequences won’t be delayed to wait for a bar. So remember, if you
want to play one sequence each bar, 1 bar = 4 beats!

Note: for a detailed explanation on the musical concepts of tempo synchronization, beat alignment and
phase synchronization, we invite you to consult Ableton’s very thorough Link documentation.

Making effects react to the beat


You’ll find the tempo in multiple effect settings.

● It can be used for the velocity of an effect. For example, in the Snake effect, you can define either a
speed or a tempo. With a speed, your snake will move with smooth transitions, whereas with the
tempo, you’ll see each tile appear on the beat. Switch between speed or tempo mode with the
toggle button on the top-right.

● But mostly, you’ll often find it as a parameter to animate a specific aspect of an effect, like its color,
thickness, depth, line length, velocity, etc. For this example, we’re going to describe the behavior of
the depth of the repeat effect if we set it on the tempo mode.

To do so, use the drop-down menu to select the tempo option. You’ll notice that you can choose a
start and an end value. This means that the depth value of the effect will vary continuously in this
range between every beat.

We could schematize the behavior of the Beat 1 Beat 2 Beat 3


value in this example like this:
Depth value: 20 ↗ 80 ↘ 20 ↗ 80 ↘ 20 ↗ 80 ↘

Making your mapping tempo or sound-reactive Using the tempo module


104

Using the audio analysis


The sound analysis module allows you to make the HeavyM effects react to an audio source so that your
mapping adapts to the atmosphere. It is located on the bottom right of the interface. You can activate this
module by clicking on the toggle button in its title bar.

Selecting an audio source


When you activate the sound analysis module, one audio source will be selected by default (if there's at least
one available). Click on the gear icon to access the settings window and see which other audio sources, like
microphones, are available. You can select the one that should be used by HeavyM in the drop-down list
located in the header of the window.

These sources can be microphones, when you want to capture the ambient live sound in your performance.
But sometimes, your microphone may not be of good quality and you get some unwanted noise. Or you
simply don’t have a microphone, so you might want to use sound coming directly from your computer. Your
computer is not directly available as an audio source in HeavyM, but there are ways to get this feature on
both Windows and Mac OS.

Windows
If you’re a Windows user, there’s a pretty simple native solution, you just have to activate the stereo mix.

1. In the taskbar, right-click on the sound icon and select “Recording devices”.

This will open up a window with all your sound settings.

Making your mapping tempo or sound-reactive Using the audio analysis


105

2. Right-click on Stereo Mix and click on “Enable”.

Note: if Stereo Mix doesn’t appear in your list of devices, try right-clicking on a blank area in the
panel and check “Show Disabled Devices” and “Show Disconnected Devices”.

3. Finally, define Stereo Mix as the default device by right-clicking on it and selecting the option in the
list.

Making your mapping tempo or sound-reactive Using the audio analysis


106

Now, you should see it appear in your list of audio sources in HeavyM. If not, try restarting the software so
that the changes can be applied.

Note: this audio source will take into account all the sound coming from computer, not from a software in
particular, so you might want to use the Volume Mixer (right-click on the sound icon) to mute unwanted
noise (for example punctual system sounds that might disturb the audio analysis).

Mac
There’s no native solution on Mac OS, but you can find free applications to create a virtual audio output
device that can also act as an input. Soundflower is a good example.

Adjusting the input gain


You can set the overall input gain, in order to adjust the level of the signal sent by your microphone or
another input device.

You can adjust it with the slider on the left of the module, or in the settings window (accessible with the gear
icon). Do it with your audio source activated, until the amplitude of the values in the spectrums satisfies you.

Note: usually, the audio interfaces you use as input also have a gain or input volume level control. For the
built-in microphone, you’ll find it in System Preferences → Sound on Mac OS, or by right-clicking on the
volume icon in the taskbar to access the sound settings on Windows.

Adjusting frequency ranges


When the analysis is activated, you can see the little bars in the module react when a sound is captured.

These bars represent the average values calculated for each frequency range: Bass, Mid, High. Click on the
gear icon in the header of the module to adjust those ranges.

Making your mapping tempo or sound-reactive Using the audio analysis


107

The settings window looks like this:

In HeavyM, the full spectrum has been divided in 15 bands, from low to high frequencies (from left to right).
Simply put, the three graphs you see represent the magnitude/level as a function of those 15 frequency
bands. Which means that if a bar is high, the frequencies in this band have a high level in your sound.

Note: don’t get confused, these three graphs each represent the full spectrum from the same source! There
are three graphs only because you can define 3 specific frequency ranges (Bass, Mid, High) to be analyzed
and you can adjust each of their gain, so the levels might differ for the calculation of the average value.

Later, you’ll be able to make your effects react to these different ranges. By default, Bass is the range that
contains the five lowest bands, Mid contains the 5 bands in the middle and High contains the five highest
bands.

Here’s an example of how to modify one of those ranges:

1. Let’s say we want to modify the bands used in the Bass range. The modifications will be done in the
corresponding graph, the one at the bottom.

To modify the bands contained in this range, simply change the position of the slider’s handles
under the graph to adjust the limits of the range.

Making your mapping tempo or sound-reactive Using the audio analysis


108

When a frequency band is selected, it turns red (or orange for the Mid range and yellow for the
High range).

2. Next to the graph, you can see the average value calculated in real-time from the levels of the
frequency bands in the interval. This value will later be used to control the parameters that you
have enslaved to the Mid range.

If it’s too low or too high, you can adjust its level with the slider on its right.

Notes: A frequency range (Bass, Mid, High) cannot be discontinuous. However, the three ranges don’t have
to cover the full spectrum and can overlap.

Coordinating sound and effects


There are audio-reactive settings in multiple effects. You’ll often find them as parameters to animate a
specific aspect of an effect, like color, thickness, depth, line length, velocity, etc. Each time, you have to
choose one of the three ranges to make your effect react to. That’s where the average calculated value
mentioned in the previous paragraph comes in: it is used to control the value of your parameter.

As we did for the tempo before, for this example we’re going to describe the behavior of the depth of the
repeat effect if we make it sound-reactive.

To do so, use the drop-down menu to select the desired range. You’ll notice that you can choose a start and
an end value. This means that the depth value of the effect will vary in this interval.

As we’ve said previously, the average value for a range is calculated in real-time and used as a live input for
the parameter. You can always see the calculated values for each range in the audio analysis module (and
remember you can adjust their levels in the settings).

At a specific instant, if the average value is equal to zero, the depth will be equal to zero too; then if it
changes to 50% of the max value, the depth will change to 30 (middle of the defined interval) for example.
Simply put, in this case, the higher the level of bass, the higher the depth value.

Note: if you switch the slider buttons, it will invert the variation. In this case, in the previous example, the
array would go from 60 to 0 so the higher the level of bass, the lower the depth value.

For more details on effects parameters, see the dedicated section on the subject.

You can see a video example of effect-sound coordination in our online video tutorial.

Making your mapping tempo or sound-reactive Using the audio analysis


109

The sequencer
You can divide your projects in sequences. They are like scenes in your mapping that allow you to create
variety in your mapping, organized in a timeline called the sequencer. Playback of the arranged sequences
can later be automated for a performance.

Note: You can have up to 100 sequences in a project.

This chapter deals with how to manage sequences in the timeline, their settings and playback, as well as
their content.

Managing your sequences


Adding sequences
In the sequencer, in order to add a sequence, you can click on the yellow cross that is located after the last
sequence in your timeline, or on the one on the bottom left, or hit the spacebar. The new sequence will be
added in last position in the timeline.

Sequence 3 has just been added from the add button.

You can also right-click on any sequence and select "Insert sequence" in the context menu. This command
will add a new sequence before the one you right-clicked on.

The user right-clicked on sequence 1 and selected “Insert sequence”, so sequence 2 has been added right after.

Note: it is not possible to copy or import sequences from other projects at the moment.

The sequencer Managing your sequences


110

Selecting sequences and understanding the active sequence


• Selecting one sequence
Click on an empty space in a sequence to select it. It will then be circled in yellow and its header will turn
yellow too.

Sequence 3 is selected.

Note: this sequence is the active sequence in your work area.

• Selecting multiple sequences

Sequence 1, sequence 2 and sequence 3 are selected.

You can select multiple sequences at the same time by holding [CTRL/Cmd] while clicking on the desired
sequences one-by-one. You can also select an array by clicking on a sequence and, while holding [Shift],
clicking on the last one in the desired interval (it will automatically select the ones in between).

Note: the active sequence in your work area is the one with the yellow header.

• The active sequence


In your work area, you can only display the content of one sequence, the active sequence. It is the one
whose content (effects, etc) is editable in your interface.

The active sequence is always the one with the yellow title bar, selected in your timeline. It can be different
than the one that is being played and displayed in your projection. More detail on the subject will be given in
the “Playback options” section.

Duplicating sequences
You can duplicate a sequence by right-clicking on it and directly selecting "Duplicate" in the context menu
(or hitting the associated shortcut [CTRL/Cmd + D]). You can also use "Copy" then "Paste" (or the associated
shortcuts [CTRL/Cmd + C] and [CTRL/Cmd + V]).

Both actions will put the copied sequence in last position in the timeline.

The sequencer Managing your sequences


111

Note: you can only duplicate one sequence at a time with the right-click, but you can duplicate a selection
with the shortcut.

Deleting sequences
You can delete a sequence by right-clicking on it and selecting “Delete” in the context menu. Or you can
simply delete one or multiple selected sequences by clicking on the trashcan icon at the bottom of the
sequencer, or by hitting [Delete/Backspace].

Naming sequences
To name a sequence, just double-click on its header, on the part where it says "name". The text will be
highlighted in blue, which means you can now write the title you want. Press enter or click somewhere else
in the software to validate it.

Note: you can’t rename sequences in bulk.

Deactivating sequences
To deactivate a sequence, just click on the toggle button in its title bar. If you want to deactivate sequences
in bulk, make a selection and hit the toggle button of any the selected sequences (it will automatically
deactivate the others).

The point of deactivating sequences is that they won’t be played in your timeline but still exist, so you can
recover them whenever you want. You can recognize deactivated sequences because they are tinted in gray
and their toggle button is gray.

Sequence 2 has been deactivated.

The sequencer Managing your sequences


112

Changing the playing order


To change the position of a sequence in the timeline, you just have to grab it from the top-left corner (in the
area where there are dots) and drag and drop it in the desired position.

In the bottom picture, “act 2” and “act 3” have switched positions.

Note: if you want to move sequences in bulk, make a selection and grab the top-left area of any the selected
sequences (it will automatically grab the others simultaneously).

Setting the duration


• Switching between time and tempo mode
There are two options for the duration of sequences:

 Time mode: the duration of sequences will be expressed in hours : minutes : seconds.

 Tempo mode: the duration of sequences will be expressed in beats. The duration of a beat is set by
the tempo (number of beats per minute) of the project.

You can easily switch between the two modes by clicking on the corresponding icons below the timeline
(metronome for tempo mode and clock for time mode).

Note: the mode is applied to the whole timeline: you can’t have sequences in time mode and others in
tempo mode at the same time.

• Setting the duration of a single sequence


To change the duration of a sequence, use the drop-down menu to select a number of beats if you’re in
tempo mode, or type a duration in the input field if you’re in time mode.

The sequencer Managing your sequences


113

• Setting the default duration of sequences


To change the default duration of sequences, use the drop-down menu (tempo mode) or the input field
(time mode) at the bottom-right of the sequencer.

Tempo mode (left) and Time mode (right)

A popup window will appear, asking you if you want to apply this default duration to all the sequences in
your timeline. If you select ”yes”, all sequences will change to this default duration, whereas if you select
“no”, the existing sequences won’t be altered and only new sequences will be created with this default
duration.

Adding transitions
You can add transition effects between sequences. They apply to the whole output, but will only be
displayed when the playback of the timeline is on (see “Playback options” below).

For each sequence, you can add one transition at the beginning and one at the end. You’ll find these
animations in the corresponding effects panel, on the right of the interface.

For more information about how to manage them, please consult “Adding effects”.

Sequencer playback options

You can run your whole project with the playback options, so that your activated sequences are played
automatically in a specific order, with the duration settings and transitions you have defined.

In ordered mode, once the playback reaches the end of the last sequence in your timeline, the playing
resumes from the beginning of the first sequence in your timeline without any pause.

Note: remember that deactivated sequences can’t be played, they will be skipped during playback.

The sequencer Sequencer playback options


114

Controls in the playback bar


● starts playing the sequences one-by-one from the last pause cue point created, or from the
beginning of the active sequence if there is none. Once you click on it, it will turn into a pause
button.

● pauses the playback of the sequences and creates a cue point on the current measure. Once
you click on it, it will turn back into a play button.

● stops the playback of the sequences and erases any pause cue point. (Also resets the timer to
zero.)

● skips playing to the previous/next sequence in the playback order. If playback is paused, it
moves the cue point at the beginning of the previous/next sequence.

● shuffles the playing order of the sequences. Click on it once again to revert back to the
playing order you set in your timeline.

Controls on sequences

● starts playing the sequences one-by-one, from the beginning of the sequence related to this
button. (It doesn’t take the pause cue point into account.) Once you click on it, it will turn into a
pause button.

Note: you can use this button without having to select the sequence you want to play.

● pauses the playback of the sequences and creates a cue point on the current measure. Once
you click on it, it will turn back into a play button. (This button acts like the pause button in the
playback bar.)

● activates the repeat of the related sequence. When the playback reaches the end of this
sequence, it starts back from its beginning and the sequence is looped infinitely. When off, the icon
is grey and it turns yellow when activated.

Ableton Link and the HeavyM timeline


If Ableton Link is on and the HeavyM timeline is in “beat mode”, beat alignment as well as tempo and phase
synchronization with other devices in session can be performed.

In order to accomplish this beat-matching, when you start playing a sequence in beat mode, its launch might
have to be delayed in order for it to fall perfectly in sync with the timeline of other devices. When this
happens, you’ll see the Play button on the sequence blink while it’s waiting to start.

Learn more about this in the section regarding Ableton Link.

Note: in “time mode”, only the tempo is synchronized, so this doesn’t change the launch of sequences.

The sequencer Sequencer playback options


115

Active sequence vs. projected sequence


Hang in there, we’re going to try to be brief and clear on this subject.

• Difference between the active sequence and the projected sequence


You probably have noticed that even when no playback option has been activated, the projection already
displays the animations in your active sequence (the one with the yellow title bar). Indeed, you can always
project your mapping and select a sequence to display manually. In this case, you just don’t get the benefit
of timeline playback, duration of sequences or transitions.

In this case, the sequence displayed in your work area and the one in the projection are the same. But it can
get tricky when playback is activated: when a sequence is being played or is paused, it automatically
becomes the projected sequence, even if it is not the one that is active in your work area.

Here’s an example:

Sequence 0 is active, it has a yellow title bar and is displayed in the work area. Sequence 1 is in playback so it is projected.

In the picture, you can notice that the content in the projection window and the content in the work area are
not the same. This is due to the fact that playback is activated and sequence 1 is being played, whereas it is
sequence 0 that is selected. That means that sequence 1 is projected, but sequence 0 is active in your work
area so you can modify its content and parameters.

Be careful, it can be tricky to make changes that apply to a sequence that is not projected, because you
won’t see the results.

Note: The only way your modifications alter all sequences is if they apply to dependent entities. We’ll talk
more about the concept of dependency between sequences in the next section, which broaches the subject
of the sequencer modes.

The sequencer Sequencer playback options


116

• Summary
We could summarize the concept of projected sequence vs. active sequence the following way:

Sequence whose content is displayed in your projection. If playback is on,


Projected sequence
it’s always the one that is played or paused.

Sequence whose content is displayed in your work area. You can act on
Active sequence
this content. Always the one that is selected, with the yellow title bar.

2 situations:
Projected sequence
● There are no playback options activated (playback is stopped): the
= projected sequence is inevitably the active (selected) one.
Active sequence ● Playback is activated: the sequence that is played or paused is
also selected and thus both projected and active.

Projected sequence 1 situation:


≠  One sequence is played or paused (and thus projected), but
Active sequence another one is selected and editable in the interface.

Here’s an example where sequence 1 is both active and projected:

The sequencer Sequencer playback options


117

Choosing a sequencer mode


The point of having multiple sequences is to have different scenes in your performance and create variety in
your mapping. So, obviously, your sequences need to have different contents.

But you might not want to have completely different sequences every time. That’s why there are different
sequencer modes, in which only specific elements of your mapping vary between sequences.

You can choose a suitable sequencer mode for your project by customizing the sequencer settings.

Managing the sequencer settings


The sequencer settings are accessible from Options → Sequencer Modes. It will open the following window:

In this window, you can select which entities are going to be independent throughout your sequences. By
“independent”, we mean that they won’t be linked, i.e. if you alter the characteristics of an independent
entity in one sequence, the modifications won’t apply to other sequences.

You can define independencies for features relative to faces and players. To declare an entity as
“independent”, just tick the corresponding box in the table.

Box ticked = independent Box ticked in gray = necessarily independent Box unticked = dependent

The following paragraphs describe all the different features in the sequencer settings.

• Faces position and Players position


These two items relate to the location and appearance of your shapes. If you choose to have them
dependent, the shapes of your mapping will be the same in every sequence, each with the same position. In
this case, when you add a sequence, it will already contain all your shapes and if you add or edit a shape, the
modifications will be applied in every sequence (even warping modifications).

On the opposite, if you define them as “independent”, you’ll be able to have different shapes in your
sequences.

The sequencer Choosing a sequencer mode


118

Dependent:

sequence 1 sequence 2

Independent:

sequence 1 sequence 2

Note: making your shapes position independent automatically defines all the other features as independent
as well. You’ll understand why when we define the next items.

Other important notes:

 The mask state of a face follows the dependency of the faces position, i.e. if it is set on “dependent”,
a face that is masked in one sequence will be masked in all others.

 In the same spirit, the lock/unlock state of a shape follows the dependency of its position.

 However, the hide/show state of a shape is always independent, so if you hide a shape in a
sequence, it won’t be hidden elsewhere (unless you also hide it of course). Small trick: this way,
even if you set your shapes’ position as dependent so they are the same throughout your whole
project, this allows you to make small exceptions and hide some shapes in some sequences!

• Faces and Players groups


Basically, if this box is unticked, it means that your layer list is identical in all sequences (same objects in the
same order).

Indeed, this item relates to the group assignment of your shapes. When groups are dependent, each shape
will have the same group assignment in all sequences and will also be arranged in the same order.

On the contrary, independent groups let you set a different assignment for the same shape in different
sequences. If one of the shapes’ position item is independent, then groups are inevitably independent too.
(Obviously, it would be difficult to keep shapes assignments if the shapes are not the same.)

The sequencer Choosing a sequencer mode


119

Dependent:

sequence 1 sequence 2

Independent:

sequence 1 sequence 2

Note: “dependent groups” only means that the group assignments, the display modes for players and the
order of shapes are reproduced throughout your whole project, it doesn’t mean that the effects in a group
are the same in every sequence. We’ll see some examples in the next paragraphs.

• Media (only for players)


This item relates to the content of players. If “media” is set as dependent, a player will display the same
media in each sequence.

Inversely, if it is set as independent, you can make players display different medias in each sequence.

• Center (only for faces)


This item relates to the custom centers of faces. If “center” is set as dependent, a face will have the same
custom center in each sequence.

Inversely, if it is set as independent, you can set different custom centers for the same faces in each
sequence.

Examples of sequencer modes


Still following? We understand that the sequencer modes can be a bit difficult to master, so we’re going to
try to describe a few use cases for different configurations, so that you can see how they can be useful to
you.

The sequencer Choosing a sequencer mode


120

• Default mode

In the default mode, only group assignments are independent. It is pretty useful if you know the outline
sketch of your mapping will be the same throughout your whole project. With this mode, when you need to
adjust your shapes on your structure for example, the modifications will be applied in every sequence.

In short, this mode allows you to vary the visual effects and where they appear in your mapping (sections
change). You can also manage the superposition order differently throughout sequence. If you want to go
further in the variety of content, you can also tick “media” and “center”.

Note: if you have made changes, you can revert back to this default mode by clicking on the Reset button.

• Everything independent

Freedom! In this situation, everything is independent, you can have completely different-looking sequences.
But be careful, this mode usually requires some anticipation: if at some point you realize that a shape you’re
using in every sequence needs some edition, you’ll have to edit it manually in all sequences one by one!

Also, when you create a new sequence, it will be completely empty. So if you don’t want to start from scratch
every time, you need to retrieve shapes from other sequences by copying and pasting them, or even by
duplicating the sequence.

• Everything dependent

Setting all entities as “dependent” doesn’t mean all your sequences will look the same. Indeed, even if your
layer list is identical in every sequence, the effects will be different: although group assignments can be
dependent, the effects they contain from the built-in library are always independent, so you still have some
flexibility. In other words, this mode is useful if you only want the visual effects to vary in your mapping.

For example, let’s say you’re mapping a building:

● First, you have a face that outlines your wall in a group, with a player containing a video displayed
inside. This video acts as the background and will be played throughout your whole performance
(since players are set as “media dependent”)

● Then you want to add visual effects on the widows, so you draw some faces that fit them and put
them in a group above.

Now, with this sequencer mode, this structure will be repeated in all your sequences, but you’ll still be able
to vary the effects in the windows of the building.

The sequencer Choosing a sequencer mode


121

Warnings and tips


• Info notes
To further help you with the process of defining your sequencer mode, we have added some info notes in
the settings window. You’ll notice that they appear below the selection table.

These notes will be activated depending on your choices in the table (to remind you that you can’t have
independent faces and dependent groups for example).

We also put a reminder of the definitions of players and faces, which you can display by clicking on the info
icon.

• Pop-up warnings
If you already have added shapes in multiple sequences, your actions in the sequencer settings can alter
your content. If it is the case, don’t worry, a pop-up window will appear before any modification is
performed when you try to validate new sequencer settings.

In this window, the modifications that are about to be applied to the content of your project are explained to
you. You then have the choice to cancel the changes of sequencer settings, apply them, or save your project
with the previous settings and apply the changes after. This last option allows you to revert back to the
actual version of your project afterwards, without the settings modifications, if they do not satisfy you.

Overall, it is better to set the sequencer mode at the very beginning of your creation process, so that you
don’t have to face the kind of decisions that can alter your whole project later. This requires some
anticipation on your part, but we advise you to take the time to choose a proper mode, so that you are set
once and for all.

The sequencer Choosing a sequencer mode


122

The projection
All VGA, DVI or HDMI projectors are compatible with HeavyM. To learn more about how to choose the best
projector for your project and how to set it up properly, you can consult our HeavyM Tips on our website.

In HeavyM, you are provided with multiple tools to preview or project your mapping. This chapter describes
in detail the different options available and gives you instructions on how to manage them.

Before continuing, make sure you have properly configured the display settings on your computer, as
described in the related chapter of this manual.

Display options
Windowed
The windowed projection option allows you to launch the projection of your mapping in a separate window.
Seeing as the title bar doesn’t go away, this projection option mostly acts as a preview mode for your
mapping project.

• Launching a windowed projection


There are two ways to do so.

First method
Simply select Projection → Windowed.

Second method**
1. Use the projector icon in the toolbar .

2. This will open a settings window allowing you to choose the windowed option as well as set a size
for the projection window before opening it.

3. Simply click on the Ok button when you are set.

The projection Display options


123

• The projection window


The newly created window has a title bar that contains information about the projection: its resolution and
its framerate (in frames per second).

The window behaves like a classic window, so you can move it around by dragging it from its title bar and
you can resize it by pulling at its sides or corners. For precise resizing and positioning, use a Custom output
instead and change the projection parameters.

Note: when you resize the projection window, it doesn’t scale the mapping with it. To resize your shapes,
use the dedicated feature in the projection parameters.

Fullscreen
The fullscreen projection option allows you to launch the projection of your mapping in fullscreen, without a
title bar, on a screen of your choice. The most common use case would be to have HeavyM open on your
computer and your mapping projected by your video projector.

• Launching a fullscreen projection


There are two ways to do so.

First method
1. Select Projection → Fullscreen. A list of the available screens will unfold.

2. Click on the desired screen and the fullscreen projection will be launched on this particular screen.

The projection Display options


124

Second method**
1. Use the projector icon in the upper toolbar . This will open the projection setup window.

2. Choose the fullscreen option as well as the screen to use by clicking on its corresponding grey
rectangle in the dark area. You’ll see the rectangle turn yellow when the screen is selected.

Note: if multiple screens are available, you can select several ones to start a multi-projection (see
next section).

3. Click on the Ok button once you’ve made your choice and the fullscreen projection will be launched.

Note: the fullscreen projection automatically adapts to the resolution of your screen. If you want to fine-
tune its position and size because it doesn’t fit like you want it to, use the Custom settings instead.

• Screen numbering
In both methods, the numbering of the screens in HeavyM follows the order defined by your OS, i.e. “Desk”
is the display considered as the primary one by Windows or Mac.

You can change the arrangement of your displays in System preferences → Displays → Arrangement (for
Mac OS) or Settings → System → Display, under Multiple displays (in Windows).

Note: if you’re having trouble launching this type of projection on a desired screen, you can check that you
have properly configured your display settings, as described in “Computer settings”.

Custom…
The custom option launches a projection without a title bar and opens up the projection parameters at the
same time, so you can set a specific output position and resolution and save it with your project. See below.

Multi-projection**
You might need to use several projectors at once in order to project your mapping properly. For instance,
this can happen if you need to cover multiples angles of a 3D structure, or if the throw ratio of one projector
is too small for the surface you want to project on.

The projection Display options


125

• Setting up multiple projectors


There are different methods to use several projectors:

● The first one consists in connecting the output of the first projector (the one connected to your
computer) to the input of a second one. By doing this, the same animation will be projected on all
the projectors that you’ve connected.

● You can also use an external multi-display adapter that allows to connect several monitors to the
same video output port of your computer. If you do this, please check the user guide of your device
to setup your display and make it work with your system.

It may happen that such devices don’t recognize one of your projector in the first place. You may be
using a higher display resolution that what your graphics hardware supports. In this case, lowering
your display resolution usually works.

• Launching the multi-projection in HeavyM


1. Click on the projector icon in the upper toolbar . This will open the projection setup window.

2. Choose the fullscreen option as well as the screens to use by clicking on their corresponding grey
rectangles in the dark area. You’ll see the rectangles turn yellow when the screens are selected.

3. Click on the Ok button once you have made your choice and the fullscreen projections will be
launched. In your work area, new projection areas will be created, corresponding to your different
screens or projectors.

The projection Display options


126

• Managing the projection areas


The projection areas can have different sizes, because your projections don’t have the same resolution. The
size of the areas gives you an idea of the different aspect ratios. On the other hand, the space between the
zones is obviously not representative of the space between your projectors.

The arrangement of the zones in the HeavyM work area follows the arrangement of your displays, defined in
the settings of your computer. You can change it in System preferences → Displays → Arrangement (for
Mac OS) or Settings → System → Display, under “Multiple displays” (in Windows).

Since each zone represents a projection, what you draw in one area will only be displayed in the related
projection. In the example below, the content in the area on the left is displayed only by the first projector
and the content in the area on the right is displayed only by the second projector.

The squirrel is mapped by the projector on the left and the cat is mapped by the projector on the right. You can see that there are
two projection areas in HeavyM.

• Tips for edge blending


Edge blending is the process of combining several projected visuals so that it seems like a single seamless
visual.

While HeavyM doesn’t support it directly at the moment, we can give you a few tips to create the illusion of
edge blending when using multiple projectors.

We’re going to take the example of a real situation in order to illustrate our explanation. Here’s a structure
we want to project on:

Beautiful structure, right?

The projection Display options


127

The problem is, it’s huge, and we need two projectors to fully cover its surface. So, the projectors will be put
side by side so that they each cover one half of the structure.

The first method would be to position them so that their projection zones are right next to each other,
without any space between them. Our mapping would have look like this:

There are many drawbacks with this method. First, trying to snap the two projection zones like this will be
very difficult in reality.

Then, even if we decided to overlap them a bit, cutting the mapping in half like this would mean creating
different polygons for a same face in the real structure. This is probably not the best idea because then
configuring the effects so that they appear seamless in a single face would be difficult.

In this case, a better idea would be to overlap the projection areas a bit, and create two separate content
zones in HeavyM (that don’t overlap), so as not to cut real faces in multiple parts. It could look like this:

This is also valid if you’re using players. Try not to cut them in half in two different projection zones!

One thing that could show this is a multiple projection is if the projectors don’t have a good contrast. Indeed,
in the stripe where the projection areas are overlapping, the brightness of the black part of the projection
would be doubled, so if it’s not dark enough you’ll see a zone brighter than the rest. Obviously, if your
projectors don’t have the same quality, brightness or color rendering, it could also look weird.

Note: if you open a project that was created using multiple projection areas when you only have one screen,
don’t worry, the content of your secondary projection areas won’t be erased, it will still appear in your work
area.

The projection Display options


128

Output as background**
When performing, you might not be able to see the result of your projection on your structure, because it is
not oriented in your line of vision. The output as background feature is there to provide you with a live
feedback. When activated, you’ll be able to see the output displayed as the background of the projection
area in HeavyM, exactly as it looks in your projection, as pictured below.

To turn it on, select Output as background in the Options menu. Just untick the option when you want to
turn it off.

Note: be careful, when in playback mode, the sequence whose content is editable in your work area and the
one that is displayed in the background might not be same one. See “Active sequence vs. projected
sequence”.

The projection Display options


129

Projection settings
Position and size parameters
• Overview of the parameters window
The custom parameters for the projection are accessible from the menu bar, in Projection → Custom…. This
will open a projection window, without a title bar, as well as the following window:

In this window, you can find options to change the position and size of the projection, as well as the size of
your mapping shapes. When you apply and save custom settings, they are saved with your project. That
way, when you open the same project again, the Projection → Custom… option will use these settings by
default.

• Adjusting the position of the projection**


You can change the X and Y-coordinates of a custom projection window. Simply put in new values in the
associated input fields or fine-tune the coordinates with the up and down arrows to move the projection
one pixel at a time.

You can see the changes being applied directly to the output and adjust the coordinates accordingly. Click
on Save & Close to save these changes with your project, or Cancel to go back to the previous state, i.e. the
position of the projection before any changes were made in the parameters window. (The Reset button
allows you to go back to the resolution and position automatically calculated for Fullscreen → 1.)

Note: the coordinates you enter are only valid for the Custom projection of the current project. Fullscreen
or Windowed projections are always opened in a default position.

This feature is especially helpful if you are having trouble with a fullscreen projection that doesn’t adapt
correctly to your display.

The projection Projection settings


130

In the example below, there are two displays and the projection should be in fullscreen in the second screen
(on the right). You can see it hasn’t opened properly and is overlapping on both screens.

It’s an issue that has been experienced by Microsoft Surface users in particular, and it is due to a dpi (dots
per inches) difference between the displays. It can be corrected by adjusting the X-coordinate of the
projection.

Note: when you adjust the position of the output, the shapes in your mapping keep their relative position in
the projection.

• Resizing
Resizing the output**
You can set the size of the Custom projection in the Resizing section of the parameters window, under
Output. To help you, the size of the currently open projection window is indicated.

You can set the width and height of the projection window. Simply put in new values in the associated input
fields or use the up and down arrows to fine-tune the size. You can also choose a size by clicking on the little
grey down arrow next to the height input field, which will reveal a drop-down list of preset resolutions.

The changes won’t be applied directly, you have to click on the Resize button to apply them and see the
result. Then, click on Save & Close to save these changes with your project, or Cancel to go back to the
previous state, i.e. the resolution of the projection before any changes were made in the parameters
window. (The Reset button allows you to go back to the resolution and coordinates automatically calculated
for Fullscreen → 1.)

The projection Projection settings


131

Note: the resolution you enter is only valid for the Custom projection of the current project. A Fullscreen
projection always opens in an automatically calculated resolution and a Windowed projection opens with
the resolution of the current work area if you don’t set a specific one (800x600 for new projects).

In the example below, you can see a fullscreen projection that has been downsized and the background of
the computer screen is now visible.

Note: when you adjust the size of the output, the size of the shapes in your mapping doesn’t change. The
shapes are pinned to the top-left corner of the projection output, i.e. they keep their relative position to the
top and left edges.

Resizing shapes
In your work area, you can resize all your shapes by selecting them and using the [Alt] key and your mouse
or the up and down arrows, as you’ve learned in “Editing faces”. But this can be tricky when you want a
precise scaling of all the content in your mapping that fits a new specific output resolution, for example if
you have just resized the projection, and you want to also adapt its content to its new size and aspect ratio.

In this case, in order to resize your shapes, you have to refer to the Resize section of the projection
parameters window, under Shapes.

You have two sizes to state: the one from which you wish to resize and the one you wish to resize the
content to, i.e. you’ve created your mapping with a certain resolution (Resize from:) and now you want it to
fit a new resolution (To:).

The concept can be a bit difficult to grasp so here are a couple of use cases:

● For instance, this can happen if you have to change the resolution of the projector during your
installation.

Let’s say we’re in this situation: you have created a mapping under real conditions, with your
projector and structure in the right place, etc. Suddenly, you realize that your projection doesn’t
look very clean but that you can increase the resolution of your projector.

The projection Projection settings


132

Once you do it, the resolution looks perfect but there’s something wrong: the shapes don’t fit your
structure anymore! So, obviously, you start to panic: “Oh my god I’m gonna have to redo
everything!”

Noooo, don’t worry, that’s what the resize feature is for! The only things that you have to find out
are the previous resolution of the projector and the new one. Then, input this info in the resize
window like this:

• Resize from: the previous resolution of the projector.

• To: the new resolution of the projector. (Hint: it is the “Current projection size” indicated at the
top of the resizing section!)

Then click on Resize, validate with Ok and it should be good!

● Now let’s imagine a new situation. You have created your mapping in a projection window to
preview it on your computer and you’ve also used a picture of the real installation as background in
your work area to put your shapes in the right places.

Here’s an installation:

On the left, the projector has been positioned and you can see the area that is covers.

Since we’re working on a single computer screen, we have opened just a small output window to
preview our mapping. Then we’ve adjusted our picture in the background with the mark of the
projector and the size of the projection area in HeavyM so that they fit.

The projection Projection settings


133

Then we’ve created the outline of our mapping and all its content.

Once we’ll launch a fullscreen output to project on our real structure, our mapping will look quite
similar to it, but it won’t have the same scale at all. That’s because the projection has been resized
automatically when we opened it in fullscreen, but not our shapes!

That’s where the resize feature can help us. In order to make our shapes fit to the new projection
size, we simply have to input the following info:

• Resize from: the size of the windowed projection we had on your computer

• To: the size of the fullscreen projection from your projector (which is indicated as the “Current
projection size” in the parameters window)

Then we click on Resize, validate with Ok and it’s all good!

The projection Projection settings


134

Note: considering that your picture probably doesn’t reflect your installation 100% accurately, you
might have to make some adjustments. You can then use the arrow keys to adjust the position of
your shapes, or hold [Alt] at the same time to resize them.

Performance modes
In HeavyM 1.7, we have introduced a new performance mode selection feature. It is intended to help you
get the best out of HeavyM in terms of memory management, depending on the type of project you’re
creating and the capacity of your graphics hardware.

• Choosing a performance mode


You can choose a performance mode in Projection → Performance.

When you switch between modes, you’ll be prompted to restart the projection if one was open:

If you click on “Restart Now”, the new performance mode will be applied and your projection window will
close and reopen automatically (with the same size and position, don’t worry). On the other hand, if you click
on “Cancel”, the mode change won’t be applied.

• Understanding the difference between both modes


The performance mode impacts the amount of memory (RAM or VRAM) that HeavyM will use to display your
project.

You’ll notice that there are two modes, Normal and High, and that HeavyM applies a default choice between
these two. We’re going to explain the differences between these modes and what they entail in the following
paragraphs.

Note: if you’re short on time and simply want to get the hang of the basics, you can read the summary in the
last paragraph of this section.

Normal mode
Up until version 1.6, the Normal mode was the standard performance mode in HeavyM.

The projection Projection settings


135

In this mode, HeavyM only loads the content of one sequence at a time in the memory, that of the sequence
that is being displayed in the output. This is what allows HeavyM to run on computers that don’t have a lot
of memory resource. And even if you have a pretty nice configuration, it’s also a good way to manage
memory capacity when you have a heavy project with a lot of effects and sequences.

Unfortunately, if a sequence has a lot of content, it will take some time to load it and this can cause a
temporary drop in performance. Indeed, since only one sequence is loaded at a time, HeavyM has to empty
the memory and load the new content every time you switch to a different sequence. That’s why there can
be some small freezes in the display when a new sequence starts playing.

Some of you have experienced them, especially in version 1.6, that’s why we’ve introduced a new mode that
can help correct this issues.

High mode
In this mode, HeavyM loads and keeps all the sequences of a project in the memory at once. That way,
there’s no need to load a sequence again every time you switch, so there’s no lag between two sequences.

But this means keeping a lot of data in memory, which can cause issues if your graphics hardware can’t
support it. And even if you have a pretty good configuration, if you have a heavy project with a lot of effects
and sequences it could still be too much.

• What’s the Default mode then?


The default mode is not a mode in itself, as it represents either the High mode or the Normal mode. It has
been devised as a default choice between the two, to help you with the performance setting selection. It
behaves as follows:

● If HeavyM detects a dedicated graphics card (NVIDIA or ATI), the high-performance mode is put as
default.

● If not, the normal mode is put as default, because we assume that you only have an integrated
graphics card.

However, HeavyM can only detect if you’re using a dedicated graphics card if a projection is open and if it is
running on this particular card. If you see that HeavyM puts “Normal” as your default mode whereas you
know you have a dedicated graphics card, it’s because HeavyM is not running on it.

So, in this case, please refer to the section of this manual detailing how to make sure HeavyM is running on
the 3D graphics card. Using the proper graphics card will also help improve performance!

• Overriding the default mode


Of course, you can still override the default setting and force a different mode than the default one, it’s up to
you! That way, in particular if you’re having lags or freezes issues, you can try out both modes to see which
one suits your project better.

However, if you try to force the high-performance mode while it’s not the default one, you’ll get the following
warning:

The projection Projection settings


136

This message is here to remind you that the high-performance mode is rather intended for users with a
dedicated graphics card. Indeed, as we’ve said before, a lot of memory can be required to load all sequences
and if there’s not enough memory available, it will overload and HeavyM could crash.

Note: the available memory also depends on how greedy other programs you might be using at the same
time are.

• What does the performance mode really affect?


As we’ve explained in the previous paragraphs, this mode only has an effect on the fluidity of the display
when you switch sequences and the amount of memory (RAM or VRAM) that HeavyM uses.

Don’t worry, it won’t affect other settings and features of the software, or the resolution of your projection
for example.

Note: the performance mode selection is not saved within project files, it is a global setting in the software,
so it is effective in every project you open.

• Let’s sum it up
If we were to summarize the difference between both modes, we could say that you should remember this:

● The Normal mode is rather intended for users that only have an integrated graphics card in their
computer, or for heavy projects that contain a lot of effects and sequences. However, you might
experience some freezes and lags between sequences.

● The High mode is rather intended for users that have a dedicated graphics card in their computer.
It will help reduce freezes and lags you might have experienced between sequences. However, if
you use this mode with a project that has more content than what your graphics card can support,
it will overload and HeavyM won’t work properly.

So, if you’re having lags, you can try to switch the mode. However, if you do so, we advise you to do some
tests with your project before a performance, especially if you’re using HeavyM in a professional setting.
Better be safe than sorry!

The projection Projection settings


137

Other options
Clip mode
Introduced in HeavyM 1.7, the clip mode, as its name suggests, clips the visual effects that overflow out of
your faces (it doesn’t apply to players, post shaders and transition effects).

Obviously, the effects are always displayed within your shapes, but there can be an overflow due to the
motion of some effects. For example, this can happen if you are using a custom center that is outside of
your shapes, or with the rotation effect.

On the left, the clip mode is off, so some effects overflow. On the right, it is on.

Note: if the effects of a group overflow over the faces of another group, the content inside these faces won’t
be cropped. In the example below, the face on the left doesn’t have any effect on apart from the blue
border, but you can still see some content inside of it.

This is the overflow from the radial glow effect in the group of faces on the right (with the white borders).

To activate the Clip mode, tick the option in the Projection menu.

Black output
Accessible from Projection → Black Output or with the shortcut [CTRL/Cmd + Shift + B], the black output
option allows you to switch your projection to a complete black screen.

When your projection is blacked out, your project is still running behind (you can see that the timeline is
playing in the interface). This is a quick way to have a break in your performance, without having to switch
off the projector or black out your whole computer screen.

In order to display your mapping again, just untick the option in the menu, or hit the shortcut once again.

The projection Other options


138

Importing & Exporting


HeavyM provides you with multiple file management options to help you in your workflow. This chapter will
help you get the most out of these features.

Importing content
Opening a project
You have a few options to open a project in HeavyM (all accessible from the welcome window too). You can:

● Open an existing project (.hm file) by browsing your files, from File → Open…

● Re-open one of the last five projects you have opened, from File → Open recent project…

● Create a new empty project, from File → New Project. The default title for new files is Untitled.hm.

● Create a new project from an example, from File → New Project from Example… These examples
are projects created for you by the HeavyM team, to help you discover new possibilities.

You shouldn’t have compatibility issues when opening projects created with older versions, although you
might need to make some small tweaks in order to get exactly the same result. For example, the display
settings for players have changed between versions 1.10 and 1.11, so you’ll probably have to adjust them.
On the opposite, there’s a high probability opening a 1.11 project with an older version won’t work.

Note: if you open a project containing media players on a different computer, you’ll have to re-specify the
paths for the media files.

Importing a media
In the File menu, there is an option to add a media (photo, video or GIF) to your project. It is located at File
→ Import media….

With this option, a new player is created and the imported media is directly added to it. For other types of
sources and methods to import content in a player, see “Changing the content of a player”.

Importing MIDI controls


In HeavyM, you have the ability to save MIDI controls files, with all your assignments for a particular
controller. It will help you save time when you use this particular controller again later.

This feature is accessible from the Parameters tab of the MIDI Controls window, under “Save or Load
Controls”. MIDI Controls files are saved with the .midihm extension.

Now, when you use this controller again, simply click on “Load Midi Controls” (still in the Parameters tab) to
browse your documents and load the associated file. Then you’ll retrieve all your saved assignments, but be
careful, because they will replace any assignments you had made in the current window.

Note: once you have loaded a MIDI Controls file, you can change the assignments, but the backup file won’t
be updated automatically. You have to save a new file or override the previous one.

For more information on using MIDI with HeavyM, see “MIDI Controls**”.

Importing & Exporting Importing content


139

Exporting a project
Saving a .hm file
When you save a HeavyM project with the Save or Save as command (from the File menu), it creates a .hm
file. The default filename is Untitled.hm. This is also the case for projects created from an example: it will
create a new file so there’s no overwriting and the original examples are intact.

When an active project has some unsaved changes (or if it is new and has never been saved), you’ll notice an
asterisk (*) symbol next to its name in the title bar (Windows), or a black dot (instead of a cross) on the quit
button (Mac).

Note: this project will only be useful in HeavyM, you can’t use it directly with other mapping programs.

Exporting the output as a picture


If you have a projection open, you can export it as an image file. Just go to Projection → Export as a Picture
and you’ll be able to select a location to save a screenshot of your output as a .png or .jpg file. By default,
the png format will be used. To save in jpg format, just rename the extension of the file when saving it.

Note: spelling it .jpeg also works.

The default filename for this image is HM_Export.png and its resolution will be that of your output. You can
check your current projection size in Projection → Export as a video**.

Once you have placed your projector and created the outline or your structure, this feature will let you save
an exact pattern of your structure. It will be more precise than a picture taken from your projector for
example, because it takes into account all the deformations due to the projection and your volume’s shape.
This can be useful if you create animations in Adobe After Effects or if you need a mask in Resolume for
example.

Importing & Exporting Exporting a project


140

Video rendering**
From version 1.6.2 and later, you can export your output as a video file. This will respect the timeline of your
project and take into account all of its content. However, this feature doesn’t support live feeds, so if you
have a syphon/spout or webcam source, it will probably look quite choppy.

Go to Projection → Export as a video** to access the Video Rendering setup window.

Note: you need to have an active output window to use this feature.

• Export Range
You can define which part of your project you want to be exported, you don’t have to render the whole
timeline.

If you select “All”, your whole timeline will be included in the export and if you select “Sequences”, you can
define a specific range.

Note: if there are deactivated sequences in the range you set, they will be skipped and won’t be included in
the export.

• Render Settings
● Framerate: this variable represents the number of frames per second in your video. You can set a
value between 25 and 60 fps.

● Resolution: this item lets you choose the resolution of your video export. You can set a custom one
or choose from a list of presets. If you select a resolution that is different to that of your projection,
a resize of the whole output (including your shapes) will be performed, so you might lose the aspect
ratio.

Importing & Exporting Exporting a project


141

• File Settings
● Save As: this item lets you browse your folders in order to specify a location to save the video file
to. It is required that you do so before executing the video export. If you haven’t, an error message
“Please choose a file destination.” will be displayed.

While you browse your files, you can also specify a filename. If you don’t, it will be HM_Export by
default.

● Format: this item lets you choose between different video file formats. There are three formats
available: .mp4, .flv, .mov.
● Codec: this item lets you choose between different codecs. The list of possible codecs depends on
the format you chose previously: H.264 and H.265 for .mp4; H.264, H.265 and hap for .mov; H.264
for .flv.

Once you start the export, a popup window will appear to inform you of the progression of the rendering,
sequence by sequence.

You can cancel at any time during the rendering and it will cease the progression and will not create the
video file. But you also have a “stop” option, which ends the rendering and will create a video file only with
the sequences that were rendered before you hit the Stop button.

Importing & Exporting Exporting a project


142

Controls
This chapter contains information about the ways to control HeavyM by other means than just your mouse.
You’ll learn how to tell HeavyM what to do with your keyboard, MIDI devices or even remote devices.

Keyboard shortcuts
To make your workflow smoother and reduce the number of clicks you have to perform to access some
features, we have implemented some keyboard shortcuts in the software. The following paragraphs list the
shortcuts in HeavyM at the date of publication of this manual.

Note: you can also access the list of software shortcuts for a version from the Controls menu.

General commands
KEY ACTION

[CTRL/Cmd + N] Open new project

[CTRL/Cmd + O] Open existing project

[CTRL/Cmd + S] Save project

[CTRL/Cmd + Shift + S] Save project as…

[CTRL/Cmd + Z] Undo

[CTRL + Y] or [Cmd + Shift + Z] Redo

[CTRL/Cmd + C] Copy

[CTRL/Cmd + V] Paste

[CTRL/Cmd + X] Cut

[CTRL/Cmd + D] Duplicate

[Delete/Backspace] Delete

[CTRL/Cmd + Delete/Backspace] Delete active group

[Space] Add sequence

Controls Keyboard shortcuts


143

Selection commands
KEY ACTION

[1, 2, 3, 4, 5, 6, 7, 8, 9, 0] Select a group, n°1 being the one at the bottom of the layer list.
Can be modified in Controls → Keyboard Interface.

[Tab] Select next sequence

[Shift + Tab] Select previous sequence

Drawing shapes
KEY ACTION

[Shift + A] or [Shift + Q] Create a triangle

[Shift + W] or [Shift + Z] Create a square

[Shift + E] Create a curve

[Shift + R] Create an ellipse

[Shift + T] Create a player

Moving & resizing shapes


KEY ACTION

[Shift] + Drag Move the selection horizontally or vertically

[←] or [ ↑ ] or [→] or [ ↓ ] Move the selection precisely (hold [Shift] for a bigger increment)

[Alt] + Drag Resize the selection

[Alt + Shift] + Drag Resize the selection along X/Y axis

[Alt + ↑] or [Alt + ↓] Enlarge or shrink the selection precisely (hold [Shift] for a bigger
increment)

[CTRL + ↑] or [CTRL + ↓] Move the selected shape forward or backward in its group in the
layer list (if possible)

Controls Keyboard shortcuts


144

Creative tools
KEY ACTION

[CTRL/Cmd + B] Turn on/off the center mode

[CTRL/Cmd + F] Turn on/off the draw mode

[CTRL/Cmd + G] Turn on/off the grid tool

[CTRL/Cmd + M] Turn on/off the magnet mode

[CTRL/Cmd + Alt + R] Turn on/off the rotation mode

[CTRL/Cmd + R] + Drag Rotation of the selected shapes

[CTRL/Cmd + Shift + ←] Symmetry of the selected shapes


or [CTRL/Cmd + Shift + →]
or [CTRL/Cmd + Shift + ↑]
or [CTRL/Cmd + Shift + ↓]

[CTRL/Cmd + L] Lock selected shapes

[CTRL/Cmd + Shift + L] Lock all shapes (in the active sequence)

[CTRL/Cmd + U] Unlock selected shapes

[CTRL/Cmd + Shift + U] Unlock all shapes (in the active sequence)

[CTRL/Cmd + H] Hide selected shapes

[CTRL/Cmd + Shift + H] Show all shapes (in the active sequence)

Work area view


KEY ACTION

[CTRL/Cmd + (+)] Zoom in on the work area

[CTRL/Cmd + (-)] Zoom out on the work area

[Space] + Drag Move the work area

Projection
KEY ACTION

[CTRL/Cmd + Shift + B] Black output

Controls Keyboard shortcuts


145

Custom keyboard controls


In addition to default shortcuts, you can set your own key commands. This is useful if you need a quick
access to specific HeavyM features or if you want to change effects parameters during live performances.

Overview of the keyboard controls window


In order to customize key commands, you have to open the keyboard controls window. It is accessible from

the keyboard icon in the toolbar , or from Controls → Keyboard Interface.

This will open the following settings window:

You can see the different types of commands you can assign to keys. In the effects section, you can navigate
between the different categories and subcategories by using the tabs, as you would do in the effects panel.

Managing assignments
• Setting assignments
To set a key assignment, click on the input box next to the desired command. It will get a yellow border,
which means that it is selected and you can type on a key to choose it.

Controls Custom keyboard controls


146

When you set an assignment, the box will be filled with the symbol of the key you chose.

By default, only the group selection is already assigned. Indeed, without configuring anything, you can see
that when you are in the interface, if you click on a number from 0 to 9, it will switch the group selection. As
stated in the info text on the window, groups are ordered from back to front (left to right here), so box n°1
corresponds to the group at the bottom of the list, and so on.

Note: if you hit 9, for instance, but you have less than 9 groups in your sequence, it will not change the
current group selection in the software.

• Changing assignments
To change a key assignment, just select its associated box and hit a new key, this will replace the previous
assignment.

Note: you can assign a key that was already associated with another command, but keep in mind that it will
deactivate the previous command assignment automatically without notifying you. Indeed, a single key can’t
be assigned to multiple commands.

• Deleting or resetting assignments


You can delete a key assignment by simply selecting its associated box and hitting [Delete/Backspace].

You can also choose to reset all keys to their default assignments by using the Reset button in the top-right
corner of the window.

• Forbidden keys
Sometimes, you’ll also notice that HeavyM doesn’t take into account your input when you hit certain keys.
That’s because some keys can’t be assigned, because they are already used by HeavyM. You’ll get an error
message at the bottom of the window if you try to use a forbidden software or system key.

Controls Custom keyboard controls


147

MIDI Controls**
MIDI is the acronym for "Musical Instrument Digital Interface". It's a protocol that is used for
communication between electronic instruments or other digital musical tools.

You can configure a MIDI instrument so that it sends commands to HeavyM. In short, this protocol will allow
you to control some features in HeavyM remotely from a controller connected to your computer.

Since a MIDI controller usually consists of several types of control elements, you have more possibilities
than with a keyboard.

Overview of the MIDI controls window


In order to define commands, you have to open the MIDI controls window. It is accessible from the icon that

looks like faders in the toolbar , or from Controls → MIDI Interface.

This will open the following settings window:

You can see the different types of commands you can trigger. You’ll notice there are three tabs that let you
switch between different sections of the settings window.

In the Effects section, you can navigate between the different categories and subcategories by using the
related icons, as you would do in the effects panel.

Then, in the Controls section, you’ll find sequences, groups and playback options controls.

Finally, in the Parameters section, you’ll find additional settings for your controller and assignments.

Controls MIDI Controls**


148

Selecting a controller
You can select which controller to connect with HeavyM in the title bar of the settings window.

Click on the little grey down arrow next to “(no device selected)” to see the list of available controllers. Once
you’ve selected one, you’ll see its name appear.

Note: you can check if your controller is properly connected by pressing or turning one of its buttons. If you
see some information appear in the fields of the title bar (like in the screenshot above), it means that
HeavyM is indeed receiving data from your controller.

Managing assignments
• Setting assignments
To set a command assignment, click on the input box next to the desired feature. It will get a yellow border,
which means that it is selected and you can now hit a button, knob or any other sensor on your MIDI
controller to assign it.

When you set an assignment, the box will be filled with the code of the button you chose. Unlike a keyboard,
where keys can only have two statuses (pressed/released) and thus can only be used to activate/deactivate
features, some elements of a MIDI controller will let you control the value of a parameter within a range. For
example, if you assign the thickness of a line effect to a knob, its value will vary within the range of possible
values (0 to 15) when you turn the knob.

In the title bar, you can find some information about the sensor that is being triggered, with the Channel
and Control numbers as well as the Value that it sends.

Controls MIDI Controls**


149

Note: for the BPM value assignment (in the Controls tab), you also need to specify a minimum and
maximum tempo, to define the range in which the BPM value will vary when you turn the knob on your
controller. For example, since a MIDI controller knob only sends 127 values, you can set an interval of 127
values, so that 1 step when you turn the knob also corresponds to an increase or decrease of 1 BPM in
HeavyM.

Another note: group selection with MIDI works similarly to the process with a keyboard. You can set
assignments for up to 10 groups (numbering starting from the one at the bottom of the layer list).

• Changing assignments
To change a command assignment, just select its associated box and trigger a new control, this will replace
the previous assignment.

Note: you can assign a controller button that was already associated with another command, but keep in
mind that it will deactivate the previous command assignment automatically without notifying you. Indeed, a
single button can’t be assigned to multiple commands.

• Deleting or resetting assignments


You can delete a key assignment by simply selecting its associated box and hitting [Delete/Backspace].

You can also choose to delete all assignments by using the Reset button in the top-right corner of the
window.

Note: unlike the triggers in the Keyboard Controls, there are no default assignments, since MIDI controllers
are all different.

Another note: the Reset button doesn’t affect the parameters, only assignments.

Parameters

The MIDI controls parameters are in the last tab of the settings window.

Controls MIDI Controls**


150

Here are the sections in the Parameters tab:

• Virtual Port
Virtual ports can be used when you want different applications on the same computer to communicate via
MIDI.

In our case, you can’t use HeavyM as a sender, but you can receive data from other applications or virtual
MIDI devices as MIDI input in HeavyM. For instance, you can use control elements in another software to
command HeavyM.

To activate the virtual port in HeavyM, simply click on the “Open HeavyM virtual port”. If you want an idea
of the possibilities this feature gives you, you can check out our detailed use case example with VDMX in
the next section of this chapter.

• Activation Threshold
There can be different types of buttons on MIDI devices and they don’t always send one value when used.
We’ve already broached the subject, but if you look at the elements of information given in the title bar,
you’ll notice that a simple push-button will send a value of 127 when pressed (and 0 when it’s released). On
the other hand, when you press a piano key or use a slider for example, the value depends on how hard you
press the key or on which value the slider is set (the range of values that can be sent always goes from 0 to
127.)

The activation threshold value allows you to define the minimum value that needs to be sent by control
elements in order to activate the command they are assigned to. For example, if you activate a threshold
value of 127, then a piano key will only trigger a command if it’s pressed to the maximum.

• Save or Load Controls


Once you have defined all your assignments with a specific controller, you can save them in a file. When you
click on “Save Midi Controls”, a window will open, allowing you to choose a saving location on your
computer and a name for the file. MIDI Controls files are saved with the .midihm extension.

Now, when you use this controller again, simply click on “Load Midi Controls” to browse your documents
and load the associated file and you’ll retrieve all your assignments.

Note: once you have loaded a MIDI Controls file, you can change assignments with the usual method, but
the backup file won’t be updated automatically. You have to save a new file or override the previous one.

Another note: the threshold value is not saved in backup files.

Controls MIDI Controls**


151

Using a virtual port to control HeavyM with VDMX via MIDI


In the last section, we’ve explained briefly what a virtual port is. Here, we’re going to take a use case example
and show you how to receive MIDI messages from VDMX in HeavyM.

Let’s say you want to use a slider in VDMX to control an effect in HeavyM. Here’s how to do so:

1. Open HeavyM and VDMX.

2. First, you have to activate the virtual port in HeavyM, by clicking on “Open HeavyM virtual port” in
the Parameters tab of the MIDI Controls window.

3. After this action, the button will say “HeavyM virtual port opened” and you should be able to select
“From VDMX” in the list of available MIDI devices.

4. Now, you need to make your VDMX slider’s value available via MIDI so that HeavyM can receive it as
an input.

For this example we’re going to use a slider that allows us to adjust the value of an effect applied on
a video. (This effect will simply affect the colors in the video.)

Here’s a preview of the original video and its effect settings window in VDMX:

In this VideoOut FX window, click on the value slider (the one labeled Wet/Dry - 0.04) to open its
Slider Inspector and select the “Send” tab.

5. Click on the + icon on the bottom left in order to add an item to the list.

Controls MIDI Controls**


152

6. At this moment your new item is set to “Not Selected”, so you need to configure it. Click on the list
item to unfold a drop-down list and select MIDI.

After this action, you should see HeavyM appear in the second column of your list item, as its
virtual port is open and VDMX automatically recognizes it.

To sum up, what you just did was to make this VDMX slider’s value available via MIDI for HeavyM.
You can see in the MIDI Sender window that was just opened (pictured above) that your slider now
has a Control Number and a Channel, like any other classic MIDI controller button.

Note: you can adjust these numbers if necessary.

7. Now if you go back to HeavyM, you can assign this slider to a command, the same way you would
do with a normal MIDI controller: select the box associated with the desired action, then move the
slider in VDMX.

You can see that it has been assigned in the box and that its value is being sent to HeavyM in the
title bar. Here, we have assigned it to the value of the plain color effect.

Controls MIDI Controls**


153

Now everything is set, we can try it out! To give you an idea, we have created a small example.

In the pictures below; on the left is the output of HeavyM. In our project, we have put a simple ellipse shape
with a plain color effect and above it we’re displaying the video from VDMX (via Syphon**) in a player.
Remember, our VDMX slider is both assigned to a video effect in VDMX and to the value of the plain color
effect in HeavyM.

Now we’re going to move this slider. Here are a few screenshots of how it affects the output:

State 1, slider value = 0.04

State 2, slider value = 0.53

State 3, slider value = 0.53

As expected, the value of the VDMX slider affects both the color of our HeavyM shape and the colors in the
video in VDMX at the same time.

Obviously, this is just a simple example, but you can also do this with multiple VDMX control elements at the
same time and thus create a lot of new possibilities of synchronized effects in both programs.

Controls MIDI Controls**


154

Note: you can also use the same slider to create multiple MIDI controls input and thus affect it to several
commands in HeavyM.

To do so, simply add a second MIDI list item in the Slider Inspector (with different Control and Channel
numbers).

Then select this new list item and assign the slider to another command in HeavyM. Here’s an example with
a Slitscan post shader added to our previous HeavyM project:

So here you can see that the same slider in VDMX controls, at the same time, the video effect in VDMX, the
color of the shape and the value of the Slitscan post shader in HeavyM.

Mind = Blown.

Controls MIDI Controls**


155

OSC**
OSC is the acronym for "Open Sound Control". It's a protocol that is used for communication between
multimedia devices that is similar to the MIDI protocol, but allows to send bigger data, faster, and through
networks like Wifi and Ethernet.

In short, this protocol will allow you to control some features in HeavyM remotely. The great news is that
there’s no need to connect everything with kilometers of cable, your devices just need to be on the same
network!

Here, we’re going to describe how to control HeavyM with a simple smartphone app. If you’re interested, we
also have a tutorial on how to connect HeavyM with a timeline-based OSC sequencer called Vezér.

Finding a layout for a smartphone app

Since you won’t be using HeavyM directly on your smartphone, you need to use an app with a special layout,
in order to have a functional user interface, with sliders and buttons, with which you’ll interact. There are
many apps that let you build these control panels or have layout templates.

But creating a layout or customizing a template requires time and some coding. That’s why we have created
a ready-to-use layout for HeavyM that works for the TouchOSC app. This app is available for about $5 (USD)
on Android and iOS devices. (We promise we’re not sponsored by this app.)

So you have three options to get a layout:

a. Building a layout from scratch


We won’t get into details about how to create a layout here, but you can find many resources on the internet
on the subject. If you have the skills and are courageous, you can code it, or you can use a WYSIWYG editor,
like TouchOSC Editor (on Mac/Windows/Linux/Others and free, but your layout will only work with apps that
support .touchosc layouts).

Building a layout requires creating the elements of the user interface and assigning HeavyM commands to it.
The complete list of commands is available in the OSC Documentation on our website.

b. Configuring an existing template


Some apps provide you with layout templates. That means that the first step is done: buttons, sliders, or
other interface elements are already organized in tabs, but you still have to configure them. Indeed, these
elements are “empty”, they don’t have any assignment so they are not linked to HeavyM features yet.

You need to associate actions with buttons, using the HeavyM commands listed in the documentation on
our website. (Again, you can use TouchOSC Editor to do so for example.)

Controls OSC**
156

c. Using the TouchOSC HeavyM layout


The last solution (maybe the best!) is to download the HeavyM Live TouchOSC pattern from our Resources
page. This layout was built by our team and is ready-to-use with HeavyM: the control panels are organized
and linked with HeavyM commands. It is also regularly updated with new features that come with new
HeavyM versions.

Note: you can still edit our HeavyM layout with TouchOSC Editor to customize it and adapt it to your project.

The next paragraphs will give specific instructions to help you get set up with the TouchOSC app and
HeavyM.

Setting up TouchOSC with HeavyM


To follow these instructions, you need to open HeavyM, TouchOSC and to have downloaded the HeavyM
layout for TouchOSC.

Note: your devices need to be connected to the same network to communicate, but it doesn’t necessarily
have to be a wireless connection: your smartphone can use the Wifi and your computer can use Ethernet for
example.

• In TouchOSC
These instructions describe the procedure to follow with the Android version of the app. The iOS interface is
slightly different but the actions are similar.

TouchOSC app home page

Controls OSC**
157

1. First, you need to import the HeavyM layout. Transfer it to your device and in TouchOSC go to
Layout → Add from File, then browse your files to find the HeavyM layout.

Now if you click on Done in the home page, you should have access to the HeavyM layout.

2. Now you need to configure the connection. Come back to the home page by clicking on the button
with the grey circle on the top-left corner. Then, go to the OSC menu.

In the Host input field, you need to enter your computer’s IP address. You can usually find it under
Settings or System Preferences, in the Network properties.

3. Don’t change the other settings, but keep this menu open because you’ll need some info from it in
the next steps.

• In HeavyM
1. In the Controls menu, select OSC Control. Make sure there is a small tick next to it that indicates it
is activated.

Controls OSC**
158

2. Still in the Controls menu, select Change OSC Settings. This will open a window to let you configure
the connection.

3. Under Osc ports, in Incoming, you need to put the number that is indicated in the Port (outgoing)
field in TouchOSC. Inversely, in Outgoing, type in the number that is indicated in the Port
(incoming) field in TouchOSC.

4. Under Remote Device IP, type in the Local IP Address that is given to you in TouchOSC, in the OSC
page.

Now, go back to the home page in TouchOSC and click on Done. Try to play with some buttons or other
elements and you should see that your actions are replicated in the software (for example, try to change the
tempo value).

There are different tabs in the layout: the first one lets you access sequences, player, tempo and group
selection features and the last five tabs correspond to the five categories of effects you can find in HeavyM.
You’ll see that the operation of these different panels is quite similar to what you are used to in the
software.

Note: if you are having trouble after having followed these instructions, you can consult the TouchOSC
documentation on their website, it is quite thorough and describes procedures with iOS devices, as well as
other advanced features in the app.

Controls OSC**
159

Optimizing your computer for better


performances
HeavyM can be very resource-intensive, here are a few tips to help you make sure you’ll get the best
performance out of it.

Running on the 3D graphics card


If you have two graphics cards, you might have a powerful one, but HeavyM might not be running with it.
What a shame! Therefore, you should make sure HeavyM is running with your 3D graphics card and not
through your computer’s chipset.

This procedure can also be necessary if you’re using Syphon/Spout** to broadcast a feed between HeavyM
and another software. Indeed, for this to work, both programs have to run on the same graphics card.

Note: the following paragraphs detail the procedure for common graphics card brands, on Windows 10. On
Mac computers, the automatic settings are usually already appropriate. If you really want to force them, you
can use the menu bar app gfxCardStatus.

NVIDIA graphics cards


a. Checking on which graphics card HeavyM is running
1. Right-click on an empty area on your desktop and select NVIDIA Control Panel.

2. In the Desktop menu of the panel, tick the option “Display GPU Activity Icon in Notification Area”.

Optimizing your computer for better performances Running on the 3D graphics card
160

3. In your notification area, you can now access the GPU Activity panel by clicking on the
corresponding icon.

4. In this panel, you can track the active applications running on your NVIDIA graphics card. Now, try
opening HeavyM and a projection window: if HeavyM_Projection.exe and HeavyM.exe appear in
the list, it means that they are indeed running on your 3D graphics card.

If HeavyM doesn’t appear in this list, follow the instructions in the next paragraph.

b. Forcing the projection and app to run on your NVIDIA graphics card
If you notice that HeavyM is not running on the correct graphics card by default, you have to force it. Here’s
how to do it:

1. In the NVIDIA Control Panel you’ve previously opened, go to 3D Settings → Manage 3D Settings.

Optimizing your computer for better performances Running on the 3D graphics card
161

2. Then, select the Program Settings tab. Under “Select a program to customize”, click on the Add
button.

3. Select HeavyM_Projection.exe in the list or programs and click on “Add Selected Program”.

Note: if Heavym_Projection.exe doesn’t appear in the list, you have to add it from its location by
browsing your files. This location depends on where you chose to install the software, but by
default it’s in C:\Program Files (x86)\HeavyM\HeavyM_Projection. Once you have located the file,
select the executable file and click on Open.

Heavym_Projection.exe should now appear in the list, you can select it and click on “Add selected
program”.

Optimizing your computer for better performances Running on the 3D graphics card
162

4. Under “2. Select the preferred graphics processor for this program:”, set NVIDIA as the preferred
GPU and click on “Apply”.

Note: if you don’t see this drop-down menu, it means no other graphics card is available, your
program can only run with the NVIDIA GPU.

5. Then, repeat the process for heavym.exe (steps 2. to 4.)

6. Close this window and restart HeavyM to apply the modifications.

Note: if this hasn’t worked and you still can’t see HeavyM in the GPU activity panel afterwards, you can try
the universal method described further in this chapter.

AMD Radeon graphics cards


1. Right-click on an empty area on your desktop and select AMD Radeon Settings.

2. In the panel, go to Radeon Additional Settings.

Optimizing your computer for better performances Running on the 3D graphics card
163

3. Select the Switchable Graphics Application Monitor tab on the left and click on “Add Application”
in the section named “All Applications”.

You’ll have to add HeavyM.exe and HeavyM_Projection.exe from their file location (respectively, by
default in C:\Program Files (x86)\HeavyM and C:\Program Files
(x86)\HeavyM\HeavyM_Projection).

4. Now, in the drop-down menu in the Graphics Settings column, select the High Performance option
for HeavyM and HeavyM_Projection.

Optimizing your computer for better performances Running on the 3D graphics card
164

Universal method
If the previous methods haven’t worked, there’s still a Windows option that might do the trick:

1. Go to Settings → System → Display. Under “Multiple Displays”, click on “Graphics Settings”.

2. There, choose “Classic app” in the drop-down menu and click on “Browse” to specify the location of
HeavyM.exe (usually at C:\Program Files (x86)\HeavyM).

3. Once you have added the app in the list, select it and click on “Options”. In the window that opens
up, you’ll see information about your graphics hardware.

4. Set the graphics preference on the “High performance” option, then save.

5. Repeat the process for HeavyM_Projection.exe.

Updating your drivers


Drivers are small computer programs that allow all the components of your computer to communicate with
each other. Each graphics card model has its own driver. However, these drivers are frequently updated by
manufacturers without getting updated automatically on your own computer.

Therefore, you need to check the manufacturer’s website for new versions, download them and manually
install them. This usually solves compatibility issues and increases the general performance of your
computer.

Choosing a performance level


From HeavyM 1.7, you can choose between two performance modes (normal or high). The performance
mode affects how HeavyM uses the memory of your graphics hardware to display your project.

You can switch modes in Projection → Performance and everything else you need to know on the subject is
explained in the performance modes section.

Paying attention to overheating


During intensive and continuous use, your computer tends to overheat. Therefore, make sure it is placed in
a well-ventilated space and that the computer’s ventilation is not obstructed, so as to avoid sudden
interruptions. In general, computers possess an automatic switch off feature which prevents their
components from overheating dangerously.

Note: for more tips on how to choose the perfect computer for video mapping, you can consult our
dedicated tutorial on the subject.

Optimizing your computer for better performances Updating your drivers


165

HeavyM menus
File menu
• New Project [CTRL/Cmd + N]
This opens up a new empty project. You can’t open multiple projects at once so it will replace the active one
if you already had a project open (in this case, a dialog box asking you if you want to save the current project
before switching will appear.)

The default title for new projects is Untitled.hm. When a project as some unsaved changes (or if it new and
has never been saved), you’ll notice an asterisk (*) symbol next to its name in the title bar (Windows), or a
black dot (instead of a cross) on the quit button (Mac).

• New Project from Example…


This opens up the folder where the HeavyM Example projects are stored on your computer, so that you can
select one to open. See “Creating a new project from an example”.

• Open... [CTRL/Cmd + O]
This item lets you open an existing HeavyM project (a file with the .hm extension). It opens up a dialog box
that allows you to browse your documents in order to find the desired project.

• Open Recent Project


This item lets you open a recently opened HeavyM project. When you hover over this item, you’ll see a list
develop: those are the last five opened projects in HeavyM. Just click on one to get a quick access to it.

• Save [CTRL/Cmd + S]
This option saves the active project to your disk. If the project hasn’t yet been saved once, the “Save as…”
dialog box will appear (see below). If it has already been saved at least once, it will be saved to the location
you specified the first time.

When a project as some unsaved changes (or if it is new and has never been saved), you’ll notice an asterisk
(*) symbol next to its name in the title bar.

• Save as… [CTRL/Cmd + Shift + S]


This option saves the active project to your disk. A dialog box will appear, requesting you to browse your
documents and select a location folder where the .hm file will be saved.

It will also let you specify a name for the file (if you don’t, the file will be saved with the default name
“Untitled.hm”.)

• Import Media…
This option lets you import a media in HeavyM. When you select this item, it opens up a window that lets
you browse your files in order to find the desired media. Once you select it, it will automatically be placed in
a new player. See “Importing a media…”.

HeavyM menus File menu


166

• About HeavyM
This item opens a window that lets you know which version of the software you’re using, how many days are
left on your license and gives you access to online information about the HeavyM Team and the company
behind the software as well as the legal notice. It also allows us to thank our awesome Kickstarter backers!

Note: on Mac computers, this section is accessible from the default “HeavyM” app menu instead.

• Quit
This will exit HeavyM. If you have an active project with unsaved changes, a dialog box will appear, asking
you if you want to save before closing the software.

Note: on Mac computers, this section is accessible from the default “HeavyM” app menu instead.

Edit menu
• Undo [CTRL/Cmd + Z]
This will undo your last action. You can undo up to 300 actions.

Note: settings changes are for the most part not “undoable”. The “undo” option mostly apply to the creation
process (creation and deletion of sequences, shapes, group assignments, etc).

• Redo… [CTRL/Cmd + Y]
This will cancel your last “undo”. You can redo up to 300 actions.

Note: this only works if there are no actions between “undo” and “redo”.

• Reset View
This item resets the zoom on the work area to 100%. See “Navigating the interface”.

Tools menu
• Display Cursor
This option activates/deactivates the display of the cursor in your projection. When it’s on, there is a tick next
to it. See “Displaying the cursor”.

• Cursor Settings…
This item opens up a window where you can set the cursor color and thickness. See “Cursor settings”.

• Magnet Mode [CTRL/Cmd + M]


This option activates/deactivates the magnet tool. When it’s on, there is a tick next to it. See “The magnet
mode”.

• Grid Mode [CTRL/Cmd + G]


This option activates/deactivates the grid tool. When it’s on, there is a tick next to it. See “The grid”.

• Draw Mode [CTRL/Cmd + D]


This option activates/deactivates the draw tool. When it’s on, there is a tick next to it. See “The draw mode”.

HeavyM menus Edit menu


167

• Center Mode [CTRL/Cmd + B]


This option activates/deactivates the center tool. When it’s on, there is a tick next to it. See “The center
mode”.

• Rotation Mode [CTRL/Cmd + Alt + R]


This option activates/deactivates the rotation mode. When it’s on, there is a tick next to it. See ”Performing
rotations”.

• Symmetry
This item lets you perform a symmetry of the faces that you have selected. When you hover over this item,
you’ll see a list develop: those are the four types of symmetry available. Just click on one to execute it. For
more details, see “Performing symmetries”.

Options menu
• Sequencer Modes…
This item opens up the sequencer settings window. See “Choosing a sequencer mode”.

• Display Background
This option activates/deactivates the display of the image you chose as a background in your work area.
When it’s on, there is a tick next to it. See “Displaying an image as background”.

• Background Settings…
This item opens up a window where you can choose the image to use as background and its display
settings. See “Background settings”.

• Show Ableton Link Toggle**


This item allows you to show/hide the Ableton Link toggle in the tempo module. The display option you
choose will become the default one on your computer. See “Syncing with Ableton Link**”.

• Output as Background**
This option activates/deactivates the display of your output (what’s in your projection) as a background of
the projection part of your work area. When it’s on, there is a tick next to it. See “Output as background**”.

Controls menu
• Keyboard Shortcuts List
This item opens up a windows with a list of all the keyboard software shortcuts. See “Keyboard shortcuts”.

• Keyboard Interface
This item opens up the keyboard controls settings window. See “Custom keyboard controls”.

• MIDI Interface**
This item opens up the MIDI controls settings window. See “MIDI controls**”.

• OSC Control**
This options activates/deactivates OSC control. When it’s on, there is a tick next to it. See “OSC**”.

HeavyM menus Options menu


168

• OSC Settings…**
This item opens up a window where you can define OSC ports and remote device IP settings. See “OSC**”.

Projection menu
• Fullscreen
This item allows you to activate the fullscreen projection of your mapping. When you hover over this item,
you’ll see a list develop: those are the available screens where you can display your projection (the
numbering follows that of your OS). Just click on one to launch the projection. See “Fullscreen”. The size and
position of this window can be modified in the parameters menu.

• Windowed
This item allows you to launch the projection of your mapping in a separate window. The size and position
of this window are set in the parameters menu.

• Custom…
This item opens up a projection and a window where you can set the position and resolution of your
projection window for a project, as well as get resize options for your shapes. See “Projection settings”.

• Performance
This item allows you to choose between two performance modes, Normal or High. See “Performance
modes”.

• Clip Mode
This option activates/deactivates the clip mode. When it’s on, there is a tick next to it. See “Clip mode”.

• Spout Output Server**


This option activates/deactivates the Spout output server. When it’s on, there is a tick next to it. See
“Spout/Syphon**”.

• Export as a Picture
This option allows you to export a screenshot of your output as a .png or .jpeg file. When you select this
item, it opens up a window that requests you to browse your folders in order to choose the location where
the file will be saved and lets you specify a name for it. (The default name is HM_Export.png)

The image will be saved as a .png file by default and its resolution is determined by the projection size you
set in the parameters.

See “Exporting the output as a picture” for more details.

• Export as a Video**
This option allows you to export a video recording of your output. When you select this item, it opens up a
window that requests you to specify the export settings, such as the export range and render and file
settings.

See “Video rendering**” for more details.

HeavyM menus Projection menu


169

• Black Output [CTRL/Cmd + Shift + B]


This option activates/deactivates the blackout of your projection. This won’t close your projection, it will just
allow you to hide your mapping and get a fully black display. When it’s on, there is a tick next to it. See
“Black output”.

• Close Output
This will close your projection (whether it is windowed or fullscreen).

Help menu
• Welcome Window
This item opens the HeavyM welcome window (the one you get at startup, unless you have disabled it). See
“Starting a new project” to learn about this window.

• PDF User Manual


This will open up the HeavyM user manual associated with your version, in your default PDF viewer. The PDF
was included in the download package with the software, so it is stored locally on your computer, you don’t
need internet to view it. If you want to find the last updated versions of this manual for different HeavyM
versions, you can go to our Resources page to see all downloads.

• Online Tutorials
This opens the Tutorials page on the HeavyM website.

• Online Forum
This opens the Forum page on the HeavyM website.

• Get more Resources


This will open the Resources page on the HeavyM website. There, you’ll find additional content related to
the software to download, most of the time for free, like shaders or patterns for controllers.

• Check for Updates


This option will check if there are updates of the software. If you have the latest version available, a simple
message will tell you so. If you’re not up to date, you’ll be able to launch the update process. See “Updates”.

• Unlink your License


This item allows you to perform an unlink. It will first open a dialog box, asking you if you really want to go
through the unlink process. For a detailed explanation, see “Managing your license”.

• Refresh you License


This item allows you to force the system to check your license. An internet connection is needed and you’ll
have to restart HeavyM afterwards.

You might need to use this option if you have recently bought a license upgrade or extension (e.g. with the
auto-renewal system) and you see that it hasn’t been taken into account automatically when you open the
software.

HeavyM menus Help menu


170

• License Manager
This opens the license manager page on the HeavyM website, where you can consult all your license
information and order details. You’ll need your license key to access it. (This item is not in the Trial edition.)

• Reset Warnings and Tips


This items allows you to enable all windows with a "Don't show again" type of button. Regardless of any
previous choice, they will now be shown again the next time they are applicable.

• Open Logs
This opens the heavym.log file in a text editor. This document is located in Documents/HeavyM/Log if
you’re on Windows and User/Library/Application Support/HeavyM if you’re on Mac.

HeavyM menus Help menu


171

Troubleshooting
• Nothing happens when I try to launch HeavyM (Windows).
Try to launch HeavyM as admin by right-clicking on the icon or start menu item and selecting “Run as
administrator”. If you encounter this problem regularly, you can set this action by default by checking “Run
this program as administrator” in Properties → Compatibility (from the right-click menu on the HeavyM
app icon).

Please contact the support to report the problem with details about your configuration if it still doesn’t
work.

• I can’t launch HeavyM (Mac).


Oups... sorry! Please contact the support to report the problem with details about your configuration, and
join a screenshot if possible.

• Windows defender is blocking the installation.


See “Setup”.

• I have no license/seats available.


See “Managing your license”.

• I can’t find my license key.


The license key was sent to you by email when you purchased a license. If you can’t find it, please check your
spam folder, or use the recovery link on this page. You’ll need to give us the email you used for your order
so that it can be sent to you again.

Note: if you don’t have a license key because you bought HeavyM when there was a login system, you also
need to follow the recovery process mentioned in the last paragraph to get a key.

• My interface looks weird, everything is too big/too small.


See “Display on high-DPI screens”.

• I found a bug.
Oups... sorry! Please contact the support to report the problem with details about your configuration, and
join a screenshot if possible.

• HeavyM crashed.
Oups... sorry! Please contact the support to report the problem with details about your configuration, and
join a screenshot if possible.

• I can’t see my projection window.


See “Running on the 3D graphics card”.

• When I launch a fullscreen projection it doesn’t fit the resolution of my display / It is


overlapping on different screens.
See “Projection settings”.

Troubleshooting
172

• I got this error message: “Couldn’t load player.”


Make sure the filename doesn’t contain characters with accents or that you haven’t changed the file location
on your computer. See “Managing players and their content”.

• I can’t see my player in the projection.


See “Display settings”.

• My videos are slowing down or lagging.


See “Media troubleshooting”.

• My GIF doesn’t work in HeavyM.


See “Media troubleshooting”.

• I put some text in a player but it doesn’t display everything I wrote.


See “About encoding”.

• I got an error message mentioning OpenGL/DirectX.


See “Running on the 3D graphics card”.

• I have a good computer but I’m having performance issues.


See “Optimizing your computer for better performances”.

Troubleshooting

You might also like