Toon Boom Harmony 20.0.0 Release Notes

Here is the list of changes in Harmony 20.0.0, build 15996 (2020-06-11):


Important enhancements have been done to the Harmony Server database. As such, in order for Harmony 20 clients to function properly, the database server must be updated to Harmony 20.

Furthermore, the dictionary files (.dict) in the database must be updated with the ones included in the Harmony 20 packaging. To do this, copy the files from the following location:

  • Windows: C:\Program Files (x86)\Toon Boom Animation\Toon Boom Harmony 20 Essentials\etc\USADB_templates\dicts
  • macOS: /Applications/Toon Boom Harmony 20 Essentials/Harmony
  • GNU/Linux: /usr/local/ToonBoomAnimation/harmonyEssentials_20/etc/USADB_templates/dicts

And paste them in the following location in your database, replacing the existing files:


Note that a database server running Harmony 20 is backward compatible with clients running older versions of Harmony.

New Features

Drawing Tools

Feature Description

Centerline Editor Tool improvements

Improvements have been added for editing brush lines with the Centerline Editor tool:

  • Points can now be deleted from the center line curve on brush strokes by selecting them and pressing the Delete key.
  • New Centerline Smoothness option to control the fitting of the center line is now available in the Tool Properties view.

Options to curve Line tool

New options in the Line tool properties to curve the line on mouse up:

  • Curve Line Mode allows to draw a curved line by moving the mouse after drawing a straight line. Click or press Enter to commit the curved line.
  • S Curve Line Mode allows to draw a S-shaped curved line. Moving the mouse after creating a straight line will curve the line from both ends until the mouse is clicked. The tail end of the line will then curve until the mouse is clicked again or Enter is pressed.

Select tool improvements

  • Preserve the position of the Select tool pivot when using Undo and Redo commands.
  • The Select tool pivot now follows the selection when scaling, rotating and skewing.

Auto Fill with Brush

New Auto Fill option in the Brush tool. When active, drawing a closed shape with the brush tool will automatically fill it with the colour assigned as the current paint colour.

Button for the Repaint Brush tool

A button for the Repaint Brush tool is now available in the Tools toolbar.

Alignment Guides with drawing tools

The Alignment Guides can now be used with the drawing tools.

Preserve selection when undoing or redoing

The Contour Editor, Perspective and Envelope tools now preserve the selection when using Undo and Redo commands.

Snap only to selected layers

A new option called Allow Snapping on all Drawings Layers is now available in the snapping options for drawing tools. When enabled, snapping will work as it did in previous versions and the selection will snap to all visible drawing layers when working in the Camera view. When disabled, snapping will only occur with drawings that are on the selected layers.

Independent quality for Perspective tool

The quality of the transformation when using the Perspective tool Lattice mode is not affected by the smooth value set in the Envelope tool anymore.

Independent smoothness for Smooth Editor tool

The smooth values for the Envelope tool and the Smooth Editor are now independent.

Adjust Eraser size with hotkey

You can now adjust the eraser size with the “O” keyboard shortcut while using the eraser end of the tablet pen.


Feature Description

Undoable selections

New preference called Undoable Selection. When this preference is enabled, selection changes such as selecting drawings with the transform tool or changing the selection in the Node view adds entries in the undo list. You will find this preference on the General tab of the preferences and is enabled by default.

Transform tool drags from anywhere

New Easy Drag option in the Transform tool properties. When enabled, the selected objects can be moved by clicking anywhere in the transform tool selection box.

Quick Ease In/Out for keyframes

New commands and buttons to quickly set ease in and ease out of keyframes selected in the Timeline. The commands are:

  • Quick Ease: Sets the ease on both sides of the selected keyframe to 33%.
  • Quick Ease In: Sets the ease on the left side of the selected keyframe to 33%.
  • Quick Ease Out: Sets the ease on the right side of the selected keyframe to 33%.
  • Set Ease on Selected Keyframes: Opens a dialog box where different values of ease can be set on either side of the selected keyframes.

Scene Markers improvements

  • Scene markers can now be created without a duration.
  • The Mark Current Frame command creates markers without opening a dialog box. This allows creating markers during playback by setting a shortcut to this command.
  • Scene markers can be selected and moved by clicking on them with the mouse.
  • Double-clicking a scene maker opens the Marker editor.
  • The Create Scene Marker command does not require to select frames in the Timeline ruler anymore. A marker with no duration can be added without making a selection. A marker with duration can be added by making a selection in the frames section of the Timeline before using the command. In both cases, the Marker Creation dialog box opens to allow setting all the attributes of the maker as it is created.
  • New option to ripple scene markers when inserting or removing frames in a scene.

Drawing Substitution view improvements

  • It is now possible to rename and delete drawings in the Drawing Substitution view when in Edit Mode.
  • A search filter has been added.

Workflow Improvements

Feature Description

Eyedropper in Colour Overrides

The Colour-Override node now has eyedroppers to select a colour or a pencil texture from the Camera or Drawing view.

Type to filter lists

You can now type to filter different lists to make it faster to find something. Available in the:

  • Font list that appears in the Text Tool properties
  • Destination Layer list in Lip-Sync Mapping
  • Buttons and scripts lists when customizing a toolbar

Shortcuts in tooltips

Shortcuts assigned to commands and tools are now displayed in the tooltips that appear when the mouse hovers on icons.


Feature Description

Support for Python

We now support the creation of Python objects in our JavaScript environment using a module named PythonManager. This module is used to manage the Python interpreter and to create a Python object. Using that newly created python object, it's possible to call some python functions.

The documentation for the Python object as well as some other advanced scripting modules can be found using the Help > Extended Scripting Interface Documentation command.

Method to list the name of views

Added the new view.viewList() function which returns all of the current views in Harmony. It can alternatively be called with a parameter, a type of view, to only return the views of that type.

Rendering and Pipeline Integration

Feature Description

Render QuickTime movies in 16-bit on macOS

Rendering to QuickTime on macOS now supports bit depth up to 16-bit.

Importing media through Media Foundation

Importing audio and movie files on Windows is now done through Microsoft Media Foundation. Only audio and video files that are in a format supported by Microsoft’s Media Foundation can be imported in Harmony.

Support for additional QuickTime codecs on macOS

The list of codecs available depends on the version of macOS that is used but the following are now available on Catalina:

  • Apple ProRes 422 HQ
  • Apple ProRes 422 LT
  • Apple ProRes 422 Proxy
  • H.265. Alpha channel support is available with Catalina.

Fixed Issues

The following issues have been fixed in this release:

Drawing and Drawing Tools

  • In the Camera view, the application hangs while drawing if very small scaling values are set in the layer's parameters.
  • In some situations when you have multiple layers selected the Cutter tool bounding box can be infinite.
  • When using the Line, Rectangle or Ellipse tools with Snap to Contour or Snap and Align, the snap cursor circle is offset if you zoom in or out.
  • The Smooth Editor tool uses the Brush tool size properties instead of its own.
  • The Lattice mode in the Perspective tool is using the smoothing value from the Envelope tool.
  • Centerline Editor tool generates too many points on its centerline.


  • Clicking the last frame of a scene in the Timeline ruler cuts the scene duration by 1 frame.
  • Extending an exposure with the red arrow in the Xsheet view removes the exposure for the next drawing instead of just changing the section that you overlap.


  • On macOS we can't customize the Deformation toolbar after drawing/painting or other actions.


  • Harmony does not allow importing TIFF images with the .tiff extension.
  • QuickTime import doesn't work in batch mode through scripting.
  • No error is printed when running a script on the command line in batch mode fails.
  • The -renderThread option is not taken into account when doing command line render.
  • Harmony offline sometimes does not open the 7z files created by WebCC.


  • Performance is very slow when doing a lasso selection of multiple elements with the Transform tool and then moving those parts in the OpenGL view.
  • Performance issue when rotating a specific peg made with function curves shared with other nodes.


  • Specifying a port when borrowing a license using the License Wizard does not work.
  • On macOS, the "More Tools" in the Harmony application menu leads to the tba folder instead of Applications folder.
  • On macOS 10.14 and 10.15, Harmony freezes when editing the element name from the layer properties and then immediately after pressing the Close button. HAR-5901