Leap Motion Gemini v5 tracking on Windows, multiple Parameter COMPs can now access same node, C++ SOP polygon winding changes, minimum requirements for macOS now 10.14+, improvements and bug fixes.
Release Notes 

Jul 19, 2022

New Features

  • Geo Text COMP - Added option to Parse Escape Sequences so that '\n' and '\t' can be used in the value for line breaks and tabs.
  • Panel COMP - The 'TOP Smoothness' parameter now has new menu entry 'Use TOP Viewer Setting' which looks at the referenced TOP's setting and uses that for the panel.
  • Parameter COMP - New option 'Sync Page Selection' (default off). This allows different Parameter COMPs to reference the same node, each on its own page. This also solves issues of some dialogs showing no parameters when page scope was used.
  • CPlusPlus SOP - Added new 'winding' member to SOP_GeneralInfo, enabling the option of using more correct counter-clockwise polygon winding.

New Python

  • GeotextCOMP Class.textHeight, textWidth - New function to return the width and height of the current text. Only available in Text mode and excludes transforms.
  • GeotextCOMP Class.evalTextSize - Returns the dimensions of the given string using the Geo Text COMPs current settings.
  • Monitors Class - subscript operator now supports full slicing.
  • Par Class.order/startSection - Fixed getting values for parameters auto-generated by operators such as: Notch, Substance, Audio VST, Script OPs etc.
  • ParGroup Class - subscript operator now supports full slicing.

For example: op('geo1').parGroup.t[:2] returns the tuple of parameters (tx, ty)

  • WebclientDAT Class.request - Fixed automatic conversion to string when passing bytes to the data keyword argument.

New Palette

  • Palette:sopRender - Replaced Zoom parameter with 'Distance' and 'Ortho Width'.
  • Palette:cameraViewport - Replaced Zoom parameter with 'Pivot Distance'.
  • Palette:cameraViewport - Transform is now saved to local storage.
  • Palette:TDVR - All devices are now inactive on start.
  • WebRTC component updates
    • Palette:signalingServer / Palette:signalingClient - v1.0.2 - Hotfix: When using internal logger and logging to file, the message being written to file was incomplete.
    • Palette:webRTC - v1.0.3 - Hotfix: When using internal logger and logging to file, the message being written to file was incomplete.
  • Widgets - TDWidgetKit 2.1.40
    • Typo fix in the Header component's python callback.
    • TOP Smoothness set to linear and Mipmap turned off for all widget components.

Bug Fixes and Improvements

  • NDI - Upgraded to NDI 5.1.3.
  • TouchEngine - Fixed crash which could occur when using TouchEngine with a TouchDesigner 2022 installation.
  • Engine COMP / TouchEngine - Fixed crash which could occur when a DAT input or output was resized.
  • Engine COMP - Bug fixes
    • Fixed an issue which prevented changes to parameters being applied if the parameters were exports or expressions.
    • Fixed "initializing" Info CHOP channel reading 1 after unloading.
  • Geometry COMP - Fixed Instance custom attribute parameters beyond the first set not evaluating correctly when the node has custom parameters.
  • Geo Text COMP - Specification DAT bug fixes
    • Fixed 'Specification DAT' not rendering if the first row has blank for the 'text' column.
    • Info DAT now shows the height and width of each text block when in Specification DAT mode.
  • Text COMP - Bug fixes and improvements
    • Fixed an issue displaying text on load when the 'Text' parameter is blank.
    • Fixed a problem with the 'Text' parameter not updated after using the value ladder.
    • Added support for continuous editing mode when using value ladders.
  • Cache TOP - Allow Cache TOP replace pulse to be called multiple times per frame. This fixes problems reported with colour_lovers_picker.tox
  • GLSL TOP - Fixed sTDNoiseMap sampler2D being just 0 values.
  • GLSL TOP - Fixed crash that can occur when this node is bypassed.
  • Movie File In TOP - Fixed a crash and some issues with color channels.
    • Fixed 16-bit .tiff files loading with R and B swapped.
    • Load 2-channel .png files as Mono-Alpha correctly now.
    • Fixed crash that can occur when playing back NotchLC files.
  • Render TOP - Improved memory management.
    • Clear more memory when cooking is disabled on this node.
    • Fixed GPU memory leak that can occur when the node is in error.
  • SSAO TOP - Improvements
    • Added ability to work with multi-camera rendering.
    • Fixed crash when input was a non-antialiased Render TOP.
  • Bind CHOP - Fixed random glitches when using multiple inputs of different lengths.
  • MIDI In CHOP - Performance improvements
    • Quarter frame values now only updated when complete frame information received.
    • 'Simplified Output' is no longer timesliced, unless 'Preserve Pulse' is enabled. Should reduce cooking.
  • OSC In CHOP - Fixed corruption (increase) of 'Queue Target' parameter on file save.
  • Parameter CHOP - Added ParGroup Name to avoid use of obsolete Tuplet Name.
  • Object Merge SOP - Transform Object working again.
  • Point SOP - Fixed a crash when decreasing number of custom attributes.
  • Raster SOP - Fixed cooking bug when using 'Download Type' set to Next Frame.
  • Sprinkle SOP - Fixed strange behavior after bypassing the operator.
  • Render Pick DAT - Fixed hang when using the pick method.
  • Serial DAT - Write throughput performance doubled or more when sending several small messages.
  • Text DAT - Fixed a bug that could drop the first line if it was only one character.
  • WebRTC DAT - Callback DAT now defaults to Python formatting.
  • Phong MAT - When outputting normals to extra color buffers, if the buffer is fixed-point, the values will now be re-ranged to be in 0-1.
  • macOS - The minimum supported version of macOS is now 10.14 (Mojave).
  • macOS - Fixed crash when using middle-click info popup to measure GPU performance on macOS 10.14/10.15.
  • Text entry in DATs and the Textport is no longer blocked when the Alt key (Option on macOS) is held down.
  • Fixed preserving of COMP inputs when .tox files are reloaded on startup.
  • Performance improvements for cases when the Textport is updated continuously.
  • Expanding/collapsing all expression fields (+/-) snappy again.
  • Fixed Export Movie Dialog having incorrect default movie file path.
  • Fixed crash that can occur when minimizing the main window.

Backward Compatibility

  • BACKWARDS COMPATIBILITY - Custom Operators - Except for Custom SOPs, the winding for polygons/triangles returned from the input SOPs will now be counter-clockwise instead of clockwise was it was incorrectly before. SOPs will match the setting for the SOP_GeneralInfo::winding member, which allows for cleaner backwards compatibility for those nodes.