Toon Boom
15.0
Harmony 16.0

Getting Started
ReleaseNotes Guide

TOON BOOM ANIMATION INC.

+1 514 278 8666

4200 Saint-Laurent, Suite 1020
Montreal, Quebec, Canada
H2W 2R2

contact@toonboom.com
toonboom.com

Toon Boom Harmony 16.0 Release Notes

Legal Notices
Toon Boom Animation Inc.
4200 Saint-Laurent, Suite 1020
Montreal, Quebec, Canada
H2W 2R2
Tel: +1 514 278 8666
Fax: +1 514 278 2666
toonboom.com

Disclaimer
The content of this document is the property of Toon Boom Animation Inc. and is copyrighted. Any reproduction in whole
or in part is strictly prohibited.
The content of this document is covered by a specific limited warranty and exclusions and limit of liability under theapplicable License Agreement as supplemented by the special terms and conditions for Adobe®Flash ® File Format (SWF).
For details, refer to the License Agreement and to those special terms and conditions.

Trademarks
Toon Boom® is a registered trademark. Harmony™ and the Toon Boom logo are trademarks of Toon Boom Animation Inc.
All other trademarks of the property of their respective owners.

Publication Date
01-15-2020
Copyright © 2020 Toon Boom Animation Inc., a Corus Entertainment Inc. company. All rights reserved.

1

Toon Boom Harmony 16.0 Release Notes

Table of Contents
Table of Contents

2

Toon Boom Harmony 16.0.3

3

Toon Boom Harmony 16.0.1

10Toon Boom Harmony 16.0.0

182

Toon Boom Harmony 16.0 Release Notes

Toon Boom Harmony 16.0.3
Here is a list of changes in Harmony 16.0.3, build 14965.
l

Master Controllers on page 3lDrawing on page 3lDigital Animation on page 4lNode View on page 4lHarmony Server on page 4lScripting on page 5lEnhancements on page 5lFixed Issues on page 5
NOTE
The following list contains all the changes since Harmony 16.0.1 was released. It covers changes for both
Harmony 16.0.2 and Harmony 16.0.3.

Master Controllers
FeatureDescription

Editions

Pose database storage

When creating a Master Controller in Harmony Server using theInterpolation Grid Wizard or the Interpolation Slider Wizard, you will beprompted to select at which level (scene, job, environment or global) you
want the Master Controller's poses database to be stored.

Premium

Description

Editions

DrawingFeatureIt is now possible to assign a keyboard shortcut to toggle theKeyboard shortcut for Draw
BehindDraw

Behind tool property. This shortcut is listed as Draw Behind under the
Drawing Mode section of the keyboard shortcuts list, and has no default
assignment.

3

Essentials,
Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

Digital Animation
FeatureExclude layers in Pose CopierDescription

Editions

The Pose Copier dialog now allows you to select layers in your rig to
exclude from the pose copying process. This can be useful if you have atemplate containing many full character poses, but you only want topaste certain parts of these poses on your character.
To use this feature, first, select every layer you want to exclude in the

Advanced,
Premium

Timeline view. Then, right-click on them and select Tag >Timeline Tag.
Then, once in the Pose Copier dialog, check the checkbox next to the
Exclude Layers button, then click on this button.

Node View
FeatureDescription

Follow Node View hierarchy

The keyboard shortcuts, Select Parent Skipping Effects (B) and SelectChild Skipping Effects (Shift + B) are often used to quickly navigate thehierarchy of a scene. However, in certain cases, the hierarchy may appear
different in the Timeline and in the Node views. Up until now, theseinstead of Timeline viewhierarchy when navigating
nodes

Editions

keyboard shortcuts only followed the hierarchy in the Timeline view.
A new option,Follow Node View Parenting for Node Navigation, wasadded to the Advanced tab of the Preferences dialog. When enabled,these keyboard shortcuts will allow you to navigate the scene's
hierarchy as represented in the Node View, rather than in the Timelineview.

Premium

Harmony Server
FeatureDescription

Editions

It is now possible to customize the way Harmony Server locks a scene
when it is opened by a user.

Scene locking mode

By default, when a Harmony Server scene is opened, it is locked so thatno one else can make changes to it. It can also not be opened more thanonce by the same user. The database server daemon, dbserver, now has
a -logical-lock parameter which can be specified to modify thisbehavior. The parameter supports the following modes:lindividual: The default locking behaviour. A scene cannot be
opened more than once, whether by the same user or by different

4Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

users.
ll

disabled: No scene locking is enforced. A single scene can be
opened any amount of times by any amount of users.
host: Locking is enforced on a per-user basis. A single user can
open a scene several times, but when a scene is opened by auser, it cannot be opened by other users.

To learn how to specify command line parameters when launching thedatabase server, please contact support.

ScriptingFeatureRunning script in batch without
savingDescription

Editions

It is possible to run scripts on Harmony scenes from the command line
by running Harmony with the -batch parameter. However, since scripts
are typically used to make changes to a scene, this saves the scene bydefault.
When running a script in command line on a Harmony Server scene, it is

Essentials,
Advanced,
Premium

possible to make Harmony execute the script without saving the target
scene. To do this, simply add the -readonly parameter.

Get tension of an ease function

The tensionEase() method was added to the func class. It will returnthe tension of the ease function that is passed as its parameter.

Essentials,
Advanced,
Premium

Enhancementsl

The way Harmony initializes the DirectSound interface on Windows has been modernized, which may increase thestability and reliability of audio playback as well as prevent playback issues.

Fixed Issues
The following issues have been fixed in this release:l

When opening a scene on Windows, Harmony sometimes fails to initialize the audio device, preventing audio
playback.

l

Crash when attempting to undo after copying and pasting animation keyframes on a layer's parameters in theTimeline view.

5

Toon Boom Harmony 16.0 Release Notesl

Crash on certain macOS workstations when moving artwork with theSelect tool while both the Drawing andthe Camera views are visible.
l

Crash when attempting to view the layer properties of an Element node created when the Preserve Line Thickness
By Default preference is enabled.

l

Crash on certain macOS workstations when selecting a Drawing node that has the Adjust Pencil Line Thickness
property enabled with thelTransform tool if there is a floating Camera view in

Render View mode.

Crash when deleting a composite node inside a group if the composite node is connected to multiple input images
going from the Multi-Port-In node and some of its cables are crossed.

lCrash when generating colour art from artwork that was created while the Pixel Density Proportional to Camera
preference is enabled and the camera zoom is not at 12F.

lRare crash when using curve or envelope deformations on a drawing with pencil lines.

l

Crash when manipulating a 3D Rotation widget in a Master Controller node.

l

Crash when attempting to rename a newly created template while the Library view is in Detailed display mode on
Windows in Stand Alone mode.

l

Crash when selecting Top in the Monitored Attributes list of a Master Controller wizard, then clicking on the
Search button.

l

Crash when dragging and dropping a vector or bitmap image from the Library view to a cell in the Xsheet view.

lPossible crash when attempting to move the Playback toolbar on macOS.

l

Crash when selecting artwork from multiple art layers and multiple drawing layers at the same time, then copying
and pasting it into a different layer.

lPerformance of scenes with Pass Through composites is unnecessarily impacted by disconnected drawing nodes
that are not displayed in the Camera view.

lHarmony computes the bounding box of selected elements multiple times when refreshing the Camera view,
impacting performance.

l

The Camera view takes longer to refresh in

Render View mode each time it has to refresh if the scene has

deformations.
l

Output image of composite node does not appear in rendered image if the composite is connected both an elementthat is at a position higher than 0 on the z-axis and a node such as the Line Art, Color Art, Underlay, Overlay, Image
Switch or Layer Selector node and which has no input image.

l

Using the Select Child Skipping Effects keyboard shortcut (Shift + B) does not work if the child layer is connectedunder a deformation group containing a Transformation-Switch node.

6

Toon Boom Harmony 16.0 Release Notes

NOTE
Attempting to select a child node through a group that contains a Transfromation-Switch node will
only work if the Follow Node View Parenting for Node Navigation preference is enabled. Thispreference can be enabled in the Advanced tab of the Preferences dialog.

lImpossible to select a point with theContour Editor using a tablet pen.

lDrawing slowly using a pen tablet on a bitmap layer on macOS results in shaky lines.

l

On Windows, when drawing a very long brush stroke with a pen tablet, then immediately drawing another stroke,
the second stroke starts off with a straight line segment.

lUsing theReposition All Drawings tool in the Drawing view offsets a drawing multiple times if it is exposed

multiple times.
l

Some

Brush tool tips that were packaged with earlier versions of Harmony were not packaged with Harmony

16.0.0 and Harmony 16.0.1.
lButtons to flip a stamp horizontally or vertically in the Tool Properties view appear too small when using a Retina
display on macOS.

lBounding box of element selected with theTransform tool is inaccurate if the element is selected while theCamera view is rotated, then the Camera view is reset to its default angle.
llBounding box of selected drawing does not update when undoing a transformation with theAnimate Off mode, if the selected drawing is animated with a 3D path function.

Transform tool in

When a layer that is a clone or a duplicate of a synced layer is selected, the synced layer indicator appears for thatlayer in the Node view and the Xsheet view.

l

In Harmony Server, if a palette stored in a job or environment that is locked for editing by another user is selected
while

l

Edit Palette mode is enabled, its colour swatches will not load in the Colour view.

Imported layers are not properly scaled when importing a multi-layer PSD file as individual layers with thealignment rule set to Project Resolution.

lKeyframe is created when modifying a deformation point with the

Rigging tool.

l

Empty Group layer gets locked and cannot be unlocked when collapsed in the Timeline view.

lWhen nudging a deformation point with the keyboard while in

Animate Off mode, the deformation point moves

too far.
l

When copying and pasting artwork from multiple art layers, with the

Apply to Line Art and Colour Art tool

property enabled, all of the artwork ends up only on the current art layer.
lWhen pasting layers using Paste Special, with the Palettes option set to Copy and create new palette files inelement folder, the palette files get copied to their origin folder and renamed.

7

Toon Boom Harmony 16.0 Release Notesl

When creating a Master Controller in a Harmony Server scene and creating the poses database (.tbstate) file atthe job or the environment level, Harmony will not create the scripts folder in which to store the Master
Controller, causing it to fail to create the file.

l

The

Load Grid Preset button of the Grid Wizard opens an Open File dialog, then displays an error message.

l

In Harmony Server, when inserting a template that contains a Master Controller from a different job, the Master
Controller's pose database files do not get copied over.

lErrors in the script samples of the Master Controller widgets provided in the scripting documentation.

l

Copying and pasting text with rich text formatting into any of the script fields of the Layer Properties for a Master
Controller or Script node may result in illegible or scrambled text.

lError message when clicking on the

Save Grid Preset button in the Grid Wizard.

lSome synced layers are ignored when using the Pose Copier dialog with a template that has synced layers.

lSome drawings are discarded when importing a template containing synced layers.

lRender Preview node does not update when selecting a frame in the Timeline view if the Enable Interactive
Camera View Cache preference is enabled.

lWhen loading a skin on certain gaming character rigs, the exposure of some of the drawings in the affected layers
is reduced to one frame.

lScripts designed to duplicate the timing of Xsheet columns for paperless workflows (TB_PL_LOKEY, TB_PL_KEYMC
and TB_PL_MCIB) renumber the drawings incrementally instead of copying their numbers.

lWhen changing the icons for scripts added to the Scripting toolbar, they do not get updated until Harmony isreluanched.

l

The names of every layer listed in the Convert to Synced Drawing Layer dialog are prefixed with Top/.

l

The custom configuration of some toolbars is not preserved after closing Harmony.

lUsing the [ and ] keyboard shortcuts to substitute the current drawing does not work in the Timeline view, theNode view or the Library view.

l

If the user syncs two layers, undoes, then copies and pastes one of the formerly synced layers using Paste Special,
the resulting copied layer will appear to be synced.

l

The Play application always launches in Stand Alone mode in Japanese.

lMissing menu command to import 3D models in trial mode in Japanese.

lSome text in dialogs intended for Japanese animation workflows were not translated to Japanese.

l

In the Japanese workflow mode, in the Create Repeating Cycle dialog, it is possible to set the number of cycles to 0,
which causes unexpected changes in the Xsheet.

lBlank cells are added after the exposure when extending the exposure of a repeat cycle in Japanese workflow
mode.

8

Toon Boom Harmony 16.0 Release NoteslBlank cells are left behind when reducing the exposure of a repeat cycle in Japanese workflow mode.

lHarmony cannot load SDK plugins unless their path is specified in the TOONBOOM_PLUGINPATH environment
variable onGNU/Linux.

9Toon Boom Harmony 16.0 Release Notes

Toon Boom Harmony 16.0.1
Here is a list of changes in Harmony 16.0.1, build 14405.
lFeatures on page 10lMaster Controller on page 10lDrawing on page 11lPerformance on page 11lScripting on page 12lEnhancements on page 14lFixed Issues on page 14

Features
Master Controller
FeatureDescription

Editions

Master Controllers created with the Interpolation Grid wizard inHarmony 16.0.1 or later will display a rectangle around the space inwhich you can move the 2D point widget, allowing you to see where thepoint is positioned relative to its boundaries.
Bounding box forInterpolation Grid

Increased performance

Premium

Master Controllers created in Harmony 16.0.1 or later will havesignificantly better performance. Manipulating these Master Controllers
will update your character rig much faster, and displaying these Master
Controller's controls will have a much smaller impact on application
performance and playback speed.

10Premium

Toon Boom Harmony 16.0 Release Notes

DrawingFeatureDescription

Editions

The following modifier keys, which could be used when drawing with
theBrush tool and

Pencil tool on a vector layer, can now be

used when drawing with the

Stamp tool, as well as when drawing

with the Brush tool on a bitmap layer:l

If you press and hold the Shift key before you start drawing, yourstroke will be a straight line.

lModifier keys for Stamp andBitmap Brush toolslll

Cut on several layers

If you press and hold the Shift key while you're drawing, the partof your stroke from that point on will be a straight line until you
release the Shift key.
If you press and hold the Shift and the Alt keys before drawing,your stroke will be a straight line in an angle that is a multiple of
15 degrees.
If you press and hold the Ctrl (Windows/Linux) or ⌘(macOS)Ctrl (Windows) or ⌘ (macOS) key while drawing, yourstroke will be a closed shape.
If you press and hold the Alt key, your tool will snap in a straightline to the nearest existing shape.

You can now use the

Cutter tool on all visible layers simultaneously

by holding the Ctrl (Windows/Linux) or ⌘ (macOS) key.

You can now use theUse the Perspective tool onseveral layers

Use the Envelope tool onseveral layers

Essentials,
Advanced,
Premium

Perspective tool on several layers

simultaneously by selecting all the layers you want to work with in theTimeline view, then selecting the artwork you want to edit with the
Perspective tool.

You can now use theEnvelope tool on several layers simultaneously

by selecting all the layers you want to work with in the Timeline view,
then selecting the artwork you want to edit with the Envelope tool.

Essentials,
Advanced,
Premium

Essentials,
Advanced,
Premium

Essentials,
Advanced,
Premium

Performance
FeatureDescription

Editions

Audio playback

Audio playback performance has been significantly enhanced toprevent it from slowing down scene playback.

Essentials, Advanced,
Premium11

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

Interactive Camera View Cache

A new preference, Enable Interactive Camera View Cache (Beta),
has been added to the OpenGL tab of the Preferences dialog.
When enabled, the Camera view will cache its preview image
and reload parts of it when moving the mouse cursor around orwhen manipulating control boxes and control points.

Advanced, Premium

To enable this feature, check the Enable Interactive Camera
View Cache (Beta) preference in the OpenGL tab of thePreferences dialog.

ScriptingFeatureDescription

Editions

Script permissions

The File list of the Script Editor view now has a Permissions column,
which indicates whether each script in the list can be edited or not.

Essentials,
Advanced,
Premium

Importing scripts and related

When importing a script, any user interface (.ui) or icon (.png) file thatis in the same directory as the script and has the same file name will be

Essentials,
Advanced,automatically imported along with it.

Premium

files

Testing scripts from global
scope

It is now possible to test or debug a script from the global scope rather
than through a specific function. This can be useful if you want to testcode blurbs before structuring your script in functions.
To do this, when setting the target function to test in the Script Editor,
select <Nothing> in the functions list.

Essentials,
Advanced,
Premium

3D Model information

The new Model3d class can be used to obtain information about a 3Dmodel such as its transformation matrix as well as the name andhierarchy of its sub-nodes.

Premium

3D sub-node information

The new SubnodeData class can be used to obtain information about a
sub-node in a 3D model.

Premium

Exporting movies in batchmode

It is now possible to use the exporter.exportToQuicktime()
method when running a script from a command line interface.

Essentials,
Advanced,
Premium

Obtaining the full attribute

The new fullKeyword() method of the Attritube class returns the

Essentials,

12Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

keywordattribute's full keyword, including the keyword for each of its parents.
For example, for the attribute with the keyword OFFSET.Z, thefullKeyword() method returns "OFFSET.Z", whereas the older
keyword() method only returns "Z".

Advanced,
PremiumGet column name of attribute

The new columnName() method of the Attribute class returns thename of the column the attribute is linked to.

Essentials,
Advanced,
Premium

Higher decimal precision

The node.getTextAttr() and column.getEntry() methods can
now return up to four decimals of precision rather than three, which isthe amount of precision supported by most input fields in the userinterface.

Essentials,
Advanced,
Premium

Set bitmap and bitmap texture
resolution

The new changeDrawingBitmapLayerResolution() andchangeDrawingVectorLayerResolution() methods of the
DrawingTools class can change the resolution of bitmap drawings aswell as the texture resolution of vector drawings, respectively.
Additionally, the new
setDefaultTexturePixelDensityforBitmapDrawings() and

Advanced,
Premium

setDefaultTexturePixelDensityforVectorDrawings() methodsof the scene class can set the default pixel density for bitmap drawings
and textured vector drawings for the current scene.
The ToolProperties class has the following new methods:lll

Set and get tool propertieslll

Methods to set and get all of the tool properties available in theuser interface for every tool.
getAllGlobalProperties(), which returns an object
containing all of the tool properties that are shared by at least
two or more tool, as properties.
getAllToolSpecificProperties(), which returns an object
containing all of the tool properties specific to a single tool.
setGlobalProperties(), which can set several tool
properties that are shared between several tools by passing an
object containing the new tool properties as its parameter.
setAllToolSpecificProperties(), which can set several
tool properties for a specific tool by passing an object containing
the new tool properties as its parameter.
toolNames(), which returns a list of the names of each tool
available in Harmony. Those names are used to identify tools

13

Essentials,
Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

with the getAllToolSpecificProperties() andsetAllToolSpecificProperties() methods.

TIP
It is possible to obtain an array of all the properties for an object
by passing this object in the Object.keys() function. Thiscan be useful to obtain the names of the properties in theobjects returned by the getAllGlobalProperties() andgetAllToolSpecificProperties() methods.

EnhancementslUntil Harmony 15.0.0, pressing the Spacebar key would reset the angle of the bounding box when manipulating anelement with the Transform tool. This behaviour has been restored in Harmony 16.0.1.

lViews in the Windows top menu are no longer separated in two lists. They are now all listed together and inalphabetical order.

lWhen selecting the peg of a camera layer with theTransform tool, the camera frame now displays in the colour

selected in your colour preferences for selecting pegs.
NOTE
To change this preference, in the top menu, select Edit (Windows/Linux) or Harmony [Edition](macOS) > Preferences, then open the General tab, click on Edit Colours and, in the Colours dialog,
open the Camera tab. The preferences are named Peg: Animate Current Frame, Peg: Animate Onion
Skin Range and Peg: Animate Off.

Fixed Issues
The following issues have been fixed in this release:lHarmony fails to connect to the license server when its port and address are specified in the TOONBOOM_LICENSE_
FILE environment variable in the port@hostname format.

lHarmony may crash after customizing the Tools toolbar if the Flat Tools Toolbar preference is enabled.

lRare crash when exporting a QuickTime movie from a scene with deformations applied to a drawing layer with the
Preserve Line Thickness layer property.

lHarmony uses 100% of the available CPU power when downloading scene assets from Harmony Server to the local
cache while opening a scene.

lPossible crash when closing a scene containing Master Controllers.

14

Toon Boom Harmony 16.0 Release Notesl

A blank welcome screen appears when opening a scene directly from Finder on macOS 10.14 (Mojave).

l

Glow effects are not rendered when chained with a Cutter effect.

l

3D Path with control point becomes corrupted when moving element in

Animate Off orAnimate Onion Skin

Range mode.
lWhen a Layer-Selector node is connected under a Pass Through Composite, its effect is not visible in the OpenGL
preview of the Camera view.

lBlack rectangles may appear in the OpenGL preview of the Camera view if the scene has OpenGL-Cache-Locknodes.

l

The user interface of the Onion Skin view is not scaled up when running Harmony on a High DPI/Retina display.

lSeveral frames are skipped when playing a scene for the first time since opening it on macOS.

l

Double-clicking on the icon of a layer in the Timeline view does not open its Layer Properties dialog.

lDuplicating a column in the Xsheet view does not duplicate its Key and Breakdown markers.

lImpossible to use function keys (F1, F2, etc.) in keyboard shortcuts on macOS.

l

When a port is selected in the Node view, selecting a node in the Node view does not deselect the port.

lAfter adding a parent peg to a node, selecting another node and attempting to add a parent peg to it adds theparent peg to the previously selected node instead.

l

The

Advanced Onion Skin and

Shift and Trace buttons are not available in the Tools toolbar when the Flat

Tools Toolbar preference is enabled.
l

The Animation Mode options of the Tools toolbar are still listed in a drop-down instead of as separate buttons when
the Flat Tools Toolbar preference is enabled.

lHarmony does not always display error messages when audio playback fails.

lPosition and zoom level of Node View sometimes changes when manipulating a Master Controller.

lWhen manipulating a Master Controller and there are several Camera views in the workspace, the other Camera
views do not update immediately.
NOTE
This issue will only be fixed in Master Controllers created in Harmony 16.0.1 or later. Master Controllers
created in prior versions will still have this issue.

lColour of Colour-Card appears lighter when selecting artwork with theSelect tool if the Enable Rendering

Caching of Composite Nodes preference is on.
lWhen the Select Synced Layers option of the Timeline view menu is enabled, layers that are clones of the current
layer also get selected.

15

Toon Boom Harmony 16.0 Release Notesl

Clicking on a drawing with theTransform tool with thePeg Selection Mode tool property enabled does notselect its parent peg if the drawing is connected to a deformation that uses a Transformation-Switch.
lWhen using theShift and Trace tool during a camera movement and using Ctrl + click (Windows/Linux) or ⌘ +click (macOS) to select one of the drawings in the Onion Skin, the control box of the Shift and Trace tool is offset
from the selected drawing.
l

If Onion Skin was enabled when the scene was opened, clicking on the Onion Skin button in the Tools toolbar only
opens the drop-down menu, making it impossible to use this button to disable Onion Skin.

l

If an Apply-Peg-Transformation node is connected under an OpenGL-Cache-Lock node, the OpenGL preview getsconstantly regenerated.

lWhen importing a template with groups while Publish Attribute Mode is enabled, the Publish to Parent Group
option of the imported groups is always enabled.

l

The Camera view does not immediately display drawings in their undeformed version when selecting the
Rigging tool.

lPlug-ins that are packaged with Harmony are not loaded when developing plug-ins with the Harmony SDK on
macOS.

l

If a script in the scene directory has the same name as a script in the user preferences directory, attempting to edit
and save the scene script may fail.

l

Icons and tool tips for scripts added to the Scripting toolbar cannot be customized.

l

3D Path functions may end up with several keyframes in the same frame, causing their motion path to be corrupted.

l

If a drawing is connected to an OpenGL-Cache-Lock node which is connected to an Apply-Peg-Transformationnode, manipulating the peg of the Apply-Peg-Transformation node may cause the drawing to flicker around the
Camera view.

lWhen pressing and holding E to use theEraser tool, the tip is always square-shaped regardless of which tip

shape is currently selected.
lWhen pressing and holding V to use theStroke tool, theDraw Strokes as Straight Lines andConnect

Line Ends tool properties are ignored.
lThe

Auto-Flatten tool option of thel

Switching between the

Brush tool does not work when drawing with a semi-transparent colour.

Perspective and theEnvelope tool while having multiple drawings selected discards

the selection and leaves only one drawing selected.
l

If the user uses the

Select tool with theenabled, then clicks on the

Permanent Selection and the

Apply to All Frames tool properties

Create Colour Art from Line Art button in the Tool Properties view, the colour art will

be generated on all drawings in the current drawing layer, but only for the artwork inside the permanent selection.
However, the way the permanent selection is applied to drawings in other frames does not take in account theoffset from the drawing layer's parent peg.

16

Toon Boom Harmony 16.0 Release Notesl

Pasting artwork with the

Perspective or

Envelope tool does not work if the

Apply to All Frames tool

property is enabled.
lAnimating in

Animate Onion Skin Range mode does create keyframes on all of the element's functions when

the Set Keyframes on all Functions with the Transform Tool preference is enabled.
l

The Generate Auto-Matte command does not work if theSelect tool's

Apply to Visible Drawing Layers tool

property is enabled.
l

The Reduce Drawing Texture Resolution command is applied to all visible drawing layers if theSelect tool's

Apply to Visible Drawing Layers tool property is enabled.
lWhen using any drawing tool with the

Apply to Synced Drawing Layers tool property enabled on a drawing

layer that has been cloned, the tool affects the current layer and its clone layers, even if the drawings exposed oneither layers are different.
lWhen theEraser tool is used with the

Apply to Synced Layers tool property enabled, the offset of theparent peg of the synced layer is not applied to the position of the eraser.
lWhen using theReposition All Drawings tool with theenabled and theLight Table mode on, layers that are synced with the current layer appear semi-transparent,

Apply to Synced Drawing Layers tool property

whereas layers that are affected by the current tool should always appear opaque.
lWhen using theStroke tool with the

Apply to Synced Layers tool property enabled and theLight Table

mode on, the layers that are synced with the current layer appear semi-transparent, whereas layers that are
affected by the current tool should always appear opaque.
lUsing theEraser tool on a bitmap layer with the

Apply to Synced Drawing Layers tool property enabled

only erases on the currently selected drawing layer.
lUsing theEraser tool on a bitmap layer with the

Apply to Line Art and Colour Art tool property enabled only

erases on the current art layer.
l

The Set Target dialog of the Script Editor view lists script in Harmony's Plugins directory, which cannot be edited
in the Script Editor.

l

The scene.checkoutLock(), scene.checkOutDate() and scene.checkOutUser() methods always returnthe default value.

lWhen renaming a drawing layer, its name does not update in the Drawing Substitutions view.

l

The OK and Cancel buttons of the Add Frames dialog are in the wrong order on macOS.

l

The movie file types mov, mp4, mkv and wmv are listed in the File Type drop-down of the Export Images dialog
in Harmony Essentials and Harmony Advanced. Attempting to export in one of these file types from the Export
Images dialog did not do anything.

lBoth JPG and JPEG are listed in the File Type drop-down of the Export Images dialog in Harmony Advanced.

l

The Select Tool is Lasso preference is still present in the Preferences dialog of Paint. Since Harmony 16.0.0, thispreference is updated by selecting either Lasso or Marquee in the Tool Properties view.

17

Toon Boom Harmony 16.0 Release Notes

Toon Boom Harmony 16.0.0
Here is the list of changes in Harmony 16.0.0, build 14155.
lFeatures on page 18
lHarmony Server on page 18lMaster Controller on page 19lDeformations on page 21lDigital Animation on page 21lPaperless Animation on page 22lDrawing on page 23lColour on page 25lEffects on page 26l

3D on page 26lNode ViewlPlayback on page 28

lStaging on page 29lScene Settings on page 29lImport / Export on page 29lPreferences on page 30lGaming on page 30lScripting on page 31lEnhancements on page 34lFixed Issues on page 35

Features
Harmony Server
FeatureDescription

Editions

Local Caching

When opening a scene in a Harmony Server database, you can choose
to cache the scene's drawings locally as you open the scene. Harmony
will load the drawings from the cache on your computer instead of over

Advanced,
Premium18

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

the network, which will increase its performance and stability whenworking on heavy scenes.
If you make changes to the drawings in your scene, Harmony willautomatically upload the updated drawings back to the database when
you save, so you do not have to worry about doing it yourself.
To use the local cache, check the Cache scene assets locally checkbox at
the bottom of the Database Selector dialog when browsing for a scene
to open.

Master Controller
FeatureDescription

Editions

The new Interpolation Slider wizard allows you to create a slider widget which canbe used to pose a character, or part of a character, based on a series of linear
poses.

Interpolation Slider
WizardPremium

You can launch the Interpolation Slider Wizard by clicking on theInterpolatiopn Slider button in the Master Controller toolbar or by selecting
Animation > Master Controller > Launch Interpolation Slider Wizard from the top
menu.
Master Controller
Toolbar

The new Master Controller toolbar includes buttons to access theInterpolation Grid wizard and the Interpolation Slider wizard.

19

Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

Master Controller View

The new Master Controller view can help you quickly find, select and display
Master Controllers in your scene, so that you do not have to navigate your scene's
node system to select and display Master Controllers.

Premium

Widget Keyframes

New Master Controllers generated with one of the Master Controller wizards willstore the position of their widget in keyframes when you manipulate them. Hence,
Harmony will remember where the widget was positioned at every frame where it
was manipulated. This will allow animators to easily tweak the position of thePremiumcharacter from where they last set it.
Performance
Enhancements

Master Controller are now faster at reading and updating node attributes, making
their manipulation smoother and less resource-intensive.

Premium

Automatic Extra Files
Set-UpWhen creating a Master Controller with the Interpolation Grid Wizard or theInterpolation Slider Wizard, the Master Controller node will automatically have a listof files it requires in its Extra Files parameter, so you do not have to add them
manually.

Premium

When you select a layer with collapsed children layers in the Timeline view and run
one of the Master Controller wizards, the attributes for the selected layer and all of
Monitor Attributes ofCollapsed Layers

its children will be added to the list of monitored attributes. Hence, you no longer
need to individually select all the layers which you want the Master Controller tocontrol. Just collapsing your layers and selecting the top peg or the top group of
your rig will be enough.

Premium

When creating a Master Controller with the Interpolation Grid orInterpolation Slider Wizard, you can add or remove nodes or attributes on the fly:
Add/Remove Attributesll

To add a node's attributes, select it in the Timeline or Node view, then clickon the Add Selected Nodes button in the wizard.
To remove a node's attributes, select its attributes in the Monitored
Attributes list and click on the

2D Point Widget Size

Premium

Remove attributes button.

The size of 2D Point Widget no longer changes when zooming in or out of thescene, allowing you to zoom in to see any detail it obstructs, and to easily select iteven when zoomed out.

20

Premium

Toon Boom Harmony 16.0 Release Notes

Deformations
FeatureDescription

Editions

The Envelope Creator dialog box allows you to quickly generate an
Envelope or Curve deformation chain based on the shape of yourartwork.

Envelope Creator

Premium

To use the Envelope Creator, select a drawing, then select Animation> Envelope Creator > Create Envelope in the top menu.

By enabling theControl Selection Mode option of the Transform toolin the Tool Properties view, you can now select several points in a Curveor Envelope deformation chain by drawing a lasso around them, thenmanipulate all those points simultaneously.
Multiple Deformation Point
Manipulation

Premium

When one or several Curve or Envelope deformation points are selected,
you can now nudge them using the arrow keys on your keyboard.

Premium

FeatureDescription

Editions

Drawing Substitutions View

The new Drawing Substitutions view displays all of the drawings
contained in the selected layer as thumbnails, and allows you to quickly
swap which drawing is exposed at the current frame simply by clicking
on it.

Essentials,
Advanced,
Premium

Nudge Deformation Points

Digital Animation

21

Toon Boom Harmony 16.0 Release Notes

FeatureAnimate Onion Skin Range

Description

Editions

With the Animate Onion Skin Range mode, you can animate a layer or
peg on every frame in the Onion Skin range simultaneously. This canallow you to offset the position of a layer or peg in several keyframes
simultaneously. It can also work with any range of frames, even if it does
not have keyframes, as this mode creates keyframes at the beginningand end of the Onion Skin range if needed.

Essentials,
Advanced,
Premium

To use the Animate Onion Skin Range mode, double-click on the
Animate Current Frame button in the Tools toolbar and, in the pop-up
menu, selectAnimate Onion Skin Range.

You can now hide the pivot of the selected layer when using theTranslate,
Hide Pivot for Advanced
Animation Tools

Rotate,Scale and

Skew tools. This can be useful if

you want to avoid accidentally moving the pivot point, which, when
done with one of these tools, causes the selected layer to be offset in allof its existing animation keyframes. To do this, click on the

DisableEssentials,
Advanced,
Premium

Pivot Manipulator button in the Tool Properties view.

Paperless Animation
FeatureDescription

Editions

The new Shift and Trace tool allows you to temporarily move, rotate andscale drawings, then trace over them in other drawings directly in the
Camera view.
Shift and Trace Tool

To use the Shift and Trace tool, add the Shift and Trace toolbar to yourworkspace, then select the

Shift and Trace tool button. Controls for

the Shift and Trace tool are in the Shift and Trace toolbar as well as in
the Tool Properties view.

22

Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

Advanced Onion Skin allows you to include or exclude any of the 10
drawings before and after the current frame, as well as to set theindividual opacity of each drawing.
Advanced Onion Skin

To use Advanced Onion Skin, in the Tools toolbar, double-click on theShow Onion Skin button and select Show Advanced Onion Skin. Then,
add the Onion Skin view to your workspace so you can configure which
drawings are displayed as well as their opacity.
When Onion Skin is enabled, the handles around the Timeline playhead,with which you can set the amount of frames before and after thecurrent frame to display in the Onion Skin, have been made significantly
easier to see and to use.

Better Onion Skin Handles

Advanced,
Premium

Essentials,
Advanced,
Premium

DrawingFeatureDescription

Editions

The new Stamp tool can be used to stamp one or several drawings into
your artwork. It can be used to stamp drawings one at a time or to draw
strokes with it. The behaviour of the stamp tool when drawing strokes
can be customized in many ways.

Essentials,
Advanced,
Premium

Stamp Tool
To use the Stamp tool, simply select the

Stamp tool in the Tools

toolbar.

NOTE
The Stamp tool replaces the Dynamic Brush option of the Brush
tool in Harmony 15.0 and earlier.

23

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

You can now use theSelect,Cutter andPaint tool on

multiple drawings simultaneously. By enabling the

Apply to Onion

Skin Range tool mode in the Tool Properties, the Select, Cutter and Paint
tool can be used on every drawing displayed in the Onion Skin
simultaneously. The
Apply to All Drawings /Drawings in Onion Skin Range

Apply to Onion Skin Range option is available

in a pop-up menu that you can open by double-clicking on the

Apply

to All Drawings button in the Tool Properties view.
It is also easier to use these tools on all drawings in the current layer.
Previously, to do this, you had to enable the Permanent Selection and
Apply to Multiple Drawings tool modes at the same time. Now, you canjust enable theEssentials,
Advanced,
Premium

Apply to All Drawings tool mode and, as long as it isenabled, the tool will work on all drawings in the current layer
simultaneously.

You can now use thePencil Editor andSelect,Cutter,
Edit Texture/Gradient,
Paint tools on multiple layers simultaneously.

There are three approaches to editing multiple layers:l

Apply to Selected Layers /l

If you select multiple layers, these tools will work on all theselected layers simultaneously.
If you enable the

Apply to Visible Drawing Layers tool mode,these tools will work on all the visible layers simultaneously.

All Layersl

If you enable the

Apply to Synced Drawing Layers tool mode,

Essentials,
Advanced,
Premiumthese tools will work on the current layer and all layers that aresynced to it simultaneously. The

Apply to Synced Drawing

Layers is available in a pop-up menu that you can open by
double-clicking on the

Apply to Visible Drawing Layers

button in the Tool Properties view.

Relative Brush Size

The new Proportional to Camera option of the Brush and Pencil tool will
adjust the size of your brush or pencil relative to the zoom level of thecamera. This allows you to preserve your line thickness through camera
zoom-ins and zoom-outs in paperless animation productions.
To enable this option, click on theShow Extended Properties button

Essentials,
Advanced,
Premiumin the Tool Propeties view and, in the Brush or Pencil Tool Properties
dialog, check the Proportional to Camera checkbox.

The
Easy Drag

Select,Cutter andReposition All Drawings now havean Easy Drag tool mode. When enabled, you can click anywhere inside
the selection control box to drag the selection. By default, you have toclick inside the artwork, which may be difficult when manipulating line
art.

24

Essentials,
Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

To enable Easy Drag mode, click on the

Easy Drag button in the Tool

Properties view.
You can now temporarily flip the contents of the Camera and Drawing
views horizontally by enabling Mirror View.
Mirror View

To enable Mirror View, click on the

Mirror View button in the Camera

or Drawing view toolbar, or select View > Mirror View from the top

Essentials,
Advanced,
Premiummenu.
In the Tool Properties view, if you set the selection mode for the current
tool to either

Lasso orMarquee, the mode will be automaticallysaved in your preferences and will persist after you close and relaunch
Harmony.

Lasso/Marquee Selection Mode

NOTE
The selection mode can be set when using the
Select,Cutter,

Perspective or

Contour Editor,

Transform,
Pencil Editor,

Envelope tools. Setting the selection mode

for any of these tools will change the selection mode for all ofthese tools.

The Perspective tool can now be used in either Perspectiveor Latticemode. The Perspective mode deforms the drawing by simulating aperspective effect, whereas the Lattice mode simply deforms thedrawing to make it fit the shape of the control box.

Perspective tool modes

ColourFeatureDescription

Editions

Consolidate Colours into aUsing the Create Palette from Selection dialog box, you can now

Advanced,25

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

instantly generate a palette containing all of the colours in the selectedartwork.
PaletteTo use the Create Palette from Selection dialog box, select all the layers
for which you want to create a palette. Then, in the Colour View, click on
thePremium

Menu button and select Palettes > New Palette from Selected

Drawings.

Effects
FeatureDescription

Editions

Shake Node

The new Shake node will apply an earthquake like motion to any node
rigged under it. It is an improvement on the Quake node, with a more
realistic and erratic-looking shaking motion, as well as more parametersthan the Quake node.

Premium

The new Transform-Loop node will take the animation from its parent
peg and loop it for the entire duration of the scene. This can be used toanimate the motion of a looping background only once, and let theTransform-Loop node take care of repeating this animation. When
repeating the animation, it skips the first frame, as it is typical for the firstand last frame of a looping background to look exactly the same.
Transform-Loop Node

The default behavior of the Transform-Loop is to loop the animation
forward. By setting its Loop Type property to Ping-Pong, theTransform-Loop node will alternate between looping the animation
forward and backward. By setting its Loop Type to Repeat and Offset, it
will accumulate the effect of the animation each time it repeats it,
offsetting the drawing rigged under it more and more each time theanimation is repeated.

Premium

FeatureDescription

Editions

Render 3D Model as 2D Layer

You can now import a 3D model as a pre-rendered 2D bitmap layer. Thiscan be useful if you need to use a 3D model as a reference to draw
backgrounds, characters or other assets.

Premium

3D

To import a 3D model as a pre-rendered 2D image, select File > Import> 3D Models from the top menu. Then, in the Import 3D Model dialog,

26

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

check the Convert to 2D option. You will be prompted to position the
3D model before rendering it in another dialog.

Scale Factor

You can now apply a scale factor to your 3D models. This allows you toscale your 3D models up or down without actually changing the value of
their scale coordinate, hence changing their default size in your scene.
You can also set a default scale factor for when you import 3D models
into your scene.

Premium

To apply a scale factor to a 3D Model, locate it in the 3D Models libraryof the Library view, right-click on it and select Set Scale Factor.

Node View
FeatureDescription

Editions

It is now possible to organize the connection cables in the Node view
with the use of waypoints. A waypoint can have two purposes:l

It allows you to modify the trajectory of the cable. A cable will
follow every waypoint created on it.

l

If the cable is connected to several nodes, it allows you to decide
where the cable splits to connect to each node.

Waypoints

Premium

You can create a waypoint on a cable by clicking and dragging on thecircle in the middle of a cable in the Node View. You can also right-click
on a cable and select Create Waypoint. To connect a waypoint toanother node, hold the Shift key, then click an drag on it to create a new
cable than can be connected to a node.

Connecting Composites

If you select several nodes and create a composite, this composite will
be instantly connected to all of the selected nodes.

27

Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

Keyboard Navigation

You can now navigate the Node view using keyboard keys. To do this,you must select a node's port, then use the arrow keys to navigate fromport to port or from now to node, as well as the Enter/Return key to enteror exit groups.

Premium

Snapping Nodes

When you move nodes in the Node view, their horizontal position will
snap to make their connection cables straight, and their vertical position
will snap to align to other nodes. This will make it easier to make clean-Premium

looking organized node systems.

Nudging Nodes

You can now nudge the position of nodes by selecting them andpressing the arrow keys on your keyboard.

Premium

Node view cables that carry several layers of image information—
typically output cables of pass through composites—now appear
thicker, to differentiate them from cables that carry single layers of image
information.

Pass Through Cables

Premium

Playback
FeatureDescription

Editions

Mini Playback

The new Mini Playback toolbar allows you to quickly play a short spanof animation before and after the current frame. This can be useful forpreviewing the part of your scene's animation that you're working on.

Essentials,
Advanced,
Premium

Persistent Start and Stop
framesThe Start and Stop frames set in the Playback toolbar are now saved in
the scene. They will persist after closing and reopening the scene.

Essentials,
Advanced,
Premium28

Toon Boom Harmony 16.0 Release Notes

StagingFeatureDescription

Editions

Images imported as original bitmaps can be made to tile infinitely
beyond its boundaries. Bitmap images can either be tiled horizontally,
vertically or both. This can be used to make looping backgrounds.
To tile bitmap images, open the Layer Properties dialog for the layer and,in the Drawing tab, under Bitmap File option, check the Tile Horizontally
Tiled Bitmap Backgrounds

or Tile Vertically checkboxes—see Element / Drawing Node.

Advanced,
Premium

NOTE
This only works images imported as original bitmap images, notToon Boom bitmap drawings.

Scene Settings
FeatureDescription

Editions

Harmony now supports setting the scene's frame rate to a decimal
Decimal Frame Rate

number. This can accommodate pipelines that use 23.976 frames per
second or 29.970 frames per second as their frame rate for compatibility
with legacy standard displays.

Essentials,
Advanced,
Premium

Import / Export
FeatureDescription

Editions

You can now import Photoshop Document (.psd) files in Harmony andpreserve their group and layer structure as well as the blending modes oflayers and groups.

Import PSD with Groups
and Blending Modes

The old way of importing multi-layer PSDs into Harmony, which is stillavailable, imported each group in the PSD file as a layer, and each layer
in the each group as a drawing in its respective layer. This new method
simply imports each layer as a layer, each group as a group, and if any
layer or group has a specific blending mode, it will be attached to a
Blending node with the same blending mode, so as to replicate the lookof the Photoshop Document as accurately as possible.
To import multi-layer PSDs and preserve their group, layer and blending
mode structure, select File > Import > Images in the top menu and select29

Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

your PSD file for import. Then, the Multilayer Image Import Settings
dialog will appear. In the Create drop-down, select Individual Layers.
To import multi-layer PSDs and convert groups to layers with multiple
drawings, select Groups as Layers in the Create drop-down instead.

Export Animated GIF

You can now export a scene, or part of your scene, as an animated GIF
image.
To export an animated GIF, select File > Export > Animated GIF from the
top menu—see .

Essentials,
Advanced,
Premium

Preferences
FeatureDescription

Editions

Automatic Bitmap Pixel Density

If the new Pixel Density Proportional to Camera preference is enabled,
new drawings will have their pixel density adjusted to the camera's
current zoom level.
This preference is available at the bottom of the Drawing tab in the

Advanced,
Premium

Preferences dialog.

Default 3D Model Scale Factor

The Default Scale Factor preference allows you to set the default scale
factor for 3D models you import into your scene. You can set this option
in the General tab of the Preferences dialog.

Premium

Render View Image Cache

You can now set the maximum cache size of the render preview as apercentage of your machine's RAM instead of a set amount of RAM. You
can also enable or disable caching on the disk. Both preferences can befound in the Render tab of the Preferences dialog, in the Render View
Image Cache section.

Advanced,
Premium

FeatureDescription

Editions

Timeline Markers in Harmony
Essentials

Timeline Markers, a feature previously exclusive to Harmony Advanced
and Harmony Premium, are now available in Harmony Essentials toaccommodate the creation of gaming rigs.

Essentials

Gaming30

Toon Boom Harmony 16.0 Release Notes

ScriptingFeatureDescription

Editions

In the past, scripts packaged with Harmony were all automatically copied to yourpreferences folder, in the same location as your custom scripts. Now, scripts
packaged with Harmony are only copied to your preferences if you makemodifications to them. Otherwise, they are stored and executed from the Harmony
installation folder.
This solves several problems:
Smart Script
Management

l

l

l

The scripts folder in your user preferences is now reserved for your custom
scripts and are no longer cluttered with Harmony scripts.
In previous versions, when installing a patch update, Harmony would not
overwrite the scripts in your user preferences with the updated scripts, as
this would risk overwriting one of your user scripts. This is no longer a
problem, except in the rare case where you happen to have edited a script
packaged with Harmony which was updated in a patch update.
You can now easily restore the original version of a packaged Harmony
script after having made changes to it.

You can now set a custom location in which to store scripts. To do this, you must
set the TOONBOOM_GLOBAL_SCRIPT_LOCATION environment variable to theCustom Script Folder

Show Attribute
Information

Essentials,
Advanced,
Premium

location where you want to store scripts. The scripts in this location will beavailable in the Script Editor alongside scripts that are packaged with Harmony andscripts in your user preferences.
By enabling the Show Attribute Information option in the Node View, a button isadded next to each attribute in the Layer Properties dialog and view. Clicking on
this button will display information on how to access this attribute in the Harmony
scripting interface, as well as a sample script to store the attribute's value in avariable.
You can enable this option by clicking on the

Essentials,
Advanced,
Premium

Premium

Menu button in the Node View

and selecting View > Show Attribute Information.

User Interface
Responders

The scripting interface now provides you with a list of responders from theHarmony user interface. You can obtain this list with the getResponderList()
method. You can obtain the list of actions for a given responder with thegetActionList() method.

Essentials,
Advanced,
Premium

Scene Modification
Callbacks

It is now possible to bind callbacks to scene modifications using theSceneChangeNotifier class. This class contains several signals that are
triggered when different kinds of changes are done to the scene, and which can bebound to functions.

Essentials,
Advanced,
Premium31

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

Perform actions on
specific nodes

It is now possible to perform actions on specific nodes by specifying theirabsolute path in the Node view. Previously, the Action.perform() method
would only take two parameters: The action to executre and its target responder,
and would always work on the selected nodes only. You can now optionallyspecify the target node or nodes as its third parameter.

Essentials,
Advanced,
Premium

Documentation of

Examples of how to create and configure user interface widgets has been added towidgets

the Harmony scripting interface documentation.

Essentials,
Advanced,

Documentation of thenode class

Examples of how to use the node class have been added to the Harmony scriptinginterface documentation.

Essentials,
Advanced,
Premium

Documentation of the
Attribute class

Examples of how to use the Attribute class have been added to the Harmony
scripting interface documentation.

Essentials,
Advanced,
Premium

Set the value of an
attribute at any frame

The new setValueAt method of the Attribute class can set the value of theattribute at a specific frame rather than at the current frame.

Obtain an attribute's
sub-attributes

The new getSubAttributes() method of the Attribute class will now returnthe list of the attribute's sub-attributes.

Essentials,
Advanced,
Premium

Convert a coordinate
for single axis between
fields and OpenGL
coordinates

The following methods were added to the scene class to convert the coordinate
for a single axis from field coordinates to OpenGL coordinates, and from
OpenGL to field coordinates: toOGLX(), toOGLY(), toOGLZ(), fromOGLX(),
fromOGLY() and fromOGLZ().

Essentials,
Advanced,
Premium

Get individual version
numbers

The new getMajorVersion(), getMinorVersion(), getPatchVersion() and
getBuildNumber() methods of the about class will provide their respective
values from the currently installed version of Harmony.

Essentials,
Advanced,
Premium

Waypoints

The waypoint class was added to allow you to create and manipulate waypoints
in the Node View.

Premium

Scriptable Toolbars
and Views

It is now possible to create toolbars and views using the Harmony scriptinginterface, by creating packages containing their functionalities, user interface andassets.

Essentials,
Advanced,
Premium32

Premium

Essentials,
Advanced,
Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

You can find an example of a package containing a toolbar and a view createdthrough the scripting interface in the
Plugins/ScriptingInterfaces/Resources/packages/MasterController
directory inside the Harmony installation directory:
l

l

l

l

Windows: C:\Program Files(x86)\Toon Boom Animation\Toon Boom Harmony 16.0
[Edition]
macOS (Stand Alone): /Applications/Toon Boom Harmony 16.0
[Edition]/tba
macOS (Server): /Applications/Toon Boom Harmony 16.0
[Edition] Network/tba
GNU/Linux: /usr/local/ToonBoomAnimation/harmony[Edition]_
16.0

You can create user packages in the packages sub-directory of the 1600scripts directory of your user preferences. This directory is the following
location:lllWindows: C:\Users\[username]\AppData\Roaming\Toon Boom
Animation\Toon Boom Harmony[Edition]\1600-scripts
macOS: /Users/[username]/Library/Preferences/Toon Boom
Animation/Toon Boom Harmony[Edition]/1600-scripts
GNU/Linux: /home/[username]/Toon Boom Animation/Toon Boom
Harmony[Edition]/1600-scripts

It is now possible to set the position of a Slider widget in true field coordinates.
Slider widget
coordinates in fields

Set the Extra Files
attribute of a Master
Controller or Script
Node

To do this, you must create a Point2D widget, set its position, and set thisPoint2D widget as the position property of your SliderWidget. This will set theposition of your Slider widget on a true fields coordinate system. You can also use
the screen_space property of the SliderWidget class to decide if its position isrelative to the screen rather than the scene.

Premium

It is now possible to set the Extra Files attribute of a Master Controller node or
Script Node using the scripting interface. This is used by the Interpolation Grid andInterpolation Slider wizards to set the Extra Files attribute of the new Master
Controller nodes they generate to include every file these Master Controllers
depend on.
Here is an example of how to set this attribute to "scripts/" fora MasterController node at the root of the scene:
var colName = column.generateAnonymousName();column.add(colName, "FILE_LIBRARY");
node.linkAttr("Top/MasterController", "files", colName);

33

Premium

Toon Boom Harmony 16.0 Release Notes

FeatureDescription

Editions

column.setEntry(colName, 1, 1, "scripts/");Multiply Quaternions

Set pencil texture

Environment variables
for external processes

Get exit code ofexternal process

The multiply method was added to the Quaternion class. It allows you to
multiply the quaternion with another quaternion.

All

The setCurrentPencilTextureById method was added to the

Advanced,

PaletteManager class. It can be used to select a pencil texture.

Premium

The addEnvVariable() method was added to the Process class. It can be used
to set a specified environment variable to a specified value for the process before
running it.

All

Additionally, the resetEnvVariableList() method will unset all theenvironment variables set by the addEnvVariable() method.
The getLastErrorCode() method was added to the Process class. When theprocess has ended, this method can be used to obtain the exit code or error codeof that process.

All

The getAllAttrNames() and getAllAttrKeywords() methods were added to
the node class:
List of attribute names
and keywords for a
node

l

l

The getAllAttrNames() method returns a list of all of the node's
attributes by their human-readable name.

All

The getAllAttrKeywords() returns a list of the node's attributes by
their keyword for use in the scripting interface.

Enhancementsl

It is no longer possible to make any changes to a layer's exposure or keyframes in the Timeline view when that layer
is locked.

l

The Layer Properties dialog now displays the type of node in its title bar. Likewise, the Layer Properties view
displays the type of node in the Type field, just under the Enable/Disable checkbox and above the Name field.

lThe

Control Selection Mode of the Transform tool can now be toggled on or off with a keyboard shortcut. Thereis no default shortcut for this command, but a shortcut can be assigned to it in the Shortcuts tab of the Preferences
dialog, under General.
lComplex operations, such as pasting a character pose using the Pose Copier, now store their Undo/Redo data in adisk cache instead of in the RAM. This will prevent such operations from taking too much RAM in the Undo history.

34

Toon Boom Harmony 16.0 Release Notesl

Performance when using the Render Preview mode of the Camera view has been improved.

lPerformance when rendering images imported as original bitmaps has been improved.

lPerformance when using Master Controllers in long scenes with a lot of keyframes has been improved.

lUsers must now double-click on a layer's name in the Timeline view to rename them, to avoid making the rename
field appear by accident when selecting the layer.

lWhen creating a new Harmony Server database, the sample resolution.conf file is now automatically copied to theresolution sub-folder of the database.

Fixed Issues
The following issues have been fixed in this release:lFixed memory leak when selecting an Alembic 3D model with vertex colours.

lFixed a rare crash when moving a Master Controller 2D Point widget.

lFixed slow rendering of drawings with deformations in the Top and Side views.

lFixed issue causing OpenGL Cache nodes to influence the rendered image.

l

Fixed issue where setting a workspace with Unicode characters in its name as the current workspace would makeHarmony load the default workspace on launch.

lFixed issue causing some layers in imported PSD files to be imported with incorrect proportions.

lFixed issue causing users to be prompted to activate their software when upgrading to a new version of Harmonythat requires an update to the licensing system.

lFixed issue where the input and output ports of a Master Controller node or Script node would not update whenchanging their port configurations until the user closed and reopened the scene.

lFixed issue where burn-ins would be rendered in the wrong font on GNU/Linux. Burn-ins on GNU/Linux are now
rendered using the Liberation Sans font by default.

lFixed issue where scripted actions affecting nodes would not cause all instances of the Node View to update, if
several instances were opened.

lRemoved the Game Skinning toolbar and the Animated Matte Generator view from Paint.

lRemoved the Control Selection Mode tool property of the Transform tool from Harmony Essentials and Harmony
Advanced, as it is only useful for features that are exclusive to Harmony Premium.

lFixed issue causing the scope of variables declared by a script called by the include() method to be corrupted. .

lFixed small a memory leak that occurred when instantiation a node containing a 3D model with the Model3D classin the Harmony scripting interface.

lFixed issue causing the Select tool to sometimes fail selecting artwork in a drawing layer rigged as the parent ofanother drawing layer.

35

Toon Boom Harmony 16.0 Release NoteslFixed issue causing Harmony to fail rendering some frames when a Crop node is connected between the main
scene Composite and the Write node.

lFixed issue causing script buttons added to a toolbar when running Harmony in Japanese or Chinese to not run andto not display their icon.

lFixed a small imprecision in the coordinates reported by the Master Controller 2D Point Widget.

lFixed a memory leak occurring when rendering a Gaussian Blur or Box Blur effect with a matte.

l

Fixed issue causing the number input field widget (NumberEdit) created through the Harmony scripting interface
to ignore its minimum and maximum value properties.

lFixed issue preventing users from replacing a cable going from a group node to another node with a cable goingfrom a different port of the same group to the same node.

lFixed freeze when moving a layer attached to a composite node that is visible in the Timeline view between twoother layers.

lFixed issue preventing from changing the scale of a 3D model with the Transform tool when that 3D model's x, y
and z scale values are locked together.

lFixed issue causing the Master Controller wizards to add both a node's 3D Path and separate position functions to
the list of monitored attributes if the node had both functions in its attributes. Now, only the node's currently used
position functions are added to the list.

lFixed issue where creating a Master Controller with one of the Master Controller wizards would create multiple
entries in the Undo history and would hence require using the Undo command multiple times to fully undo its
creation.

lFixed issue causing some effects to stop working in the Render Preview mode of the Camera view, specifically when
the Transform tool is slected and the mouse cursor is in the Camera view.

lFixed issue causing rendered frames to have various rendering errors when a 3D model is in the scene and isrendered through OpenGL.

l

Fixed performance issue when rendering a scene with several Colour-Override nodes.

lFixed issue where the middle mouse button could not be used to move nodes in the Node View when the Middle
Mouse Button Pans the View preference is disabled.

lFixed issue where the bounding box of a layer selected with the Transform tool would not rotate when rotating the
Camera view.

lFixed issue where attempting to install an older version of Harmony over a more recent version of Harmony could
corrupt the installation on Windows.

lFixed issue preventing custom grid presets for the Interpolation Grid Wizard from being saved.

lFixed issue where GNU/Linux would add the fully qualified domain name of the machine to the Harmony Server
database's machine-list file when installing the batch processing daemon. To avoid this problem, the installer nolonger attempts to add the machine's name to the list, so it must be added manually.

36

Toon Boom Harmony 16.0 Release NoteslFixed a syntax error reported by the installer when installing Harmony on CentOS 6.

l

Fixed issue preventing the Interpolation Grid Wizard from working in Harmony Server.

lFixed issue causing some layers to be hidden in the OpenGL preview of the Camera view if the Enable Rendering
Caching of Composite Nodes preference is enabled.

lFixed issue where a Master Controller's onFrameChanged() callback would keep getting triggered after deletingits node.

lFixed issue causing OpenGL anti-aliasing to stop working when the Transform tool is selected, the cursor is inside
the Camera view and the Enable Rendering Caching of Composite Nodes preference is enabled.

lFixed issue causing the OpenGLBypass node to process the image from a Passthrough composite as if it was a flat
image.

37