Audio Render and Audio Binaural CHOP support for macOS, GLSL MAT and NDI updates, bug fixes and improvements. This release is a hotfix for 2022.33600 which had an issue with Feedback TOPs crashing.
Release Notes 
This release is a hotfix for 2022.33600 which had an issue with Feedback TOPs crashing.

May 25, 2023

New Features

  • GLSL MAT - Added TDTrueCameraIndex().
  • GLSL MAT - Added TDScreenSpaceCoord(), which gives a 0-1 coordinate over the viewport.
  • NDI Out TOP - Added 'Low-Performance Behavior' parameter to control what this operator does when it's not able to send frames at the full desired FPS.
  • Video Stream In TOP - Added 'Disable Buffering' parameter, which enables the same functionally as the -fflags nobuffer option in FFmpeg/FFplay.


New Python

  • App Class - Added pythonExecutable member.
  • TOP Class - sample() now supports z and w arguments for 3d and 2d array textures.
  • pbrMAT Class, phongMAT Class - Added outputShader() to allow a GLSL MAT to be created via a python call.
  • Preserve the PYTHONPATH environment variable when launching new TouchDesigner processes.
  • __delTD__ function automatically called when extensions are reinitialized. TD supplement to Python __del__ function.


New Palette

  • Palette:gal - Future-proofing. Adding warnings when there is an unconnected export on a parameter.
  • Palette:movieEngine - Initial release. The non-UI version of moviePlayer.
  • TDAbleton - v.2.1.0 - Now installs remote script into Ableton User Folder.

Bug Fixes and Improvements

  • NDI - Fixed a hang that can occur when when closing NDI with audio sources active.
  • Custom Operators - Fixed TOP example for Cuda not working correctly with 0 inputs.
  • Engine COMP / TouchEngine - Fixed a crash which could happen for some components if a component error occurred during loading.
  • Engine COMP / TouchEngine - Fixed unexpected behaviour which could occur after an instance crashed.
  • FBX COMP - Fixed transforms on meshes that have been merged with parent COMPs through the 'Merge Level' parameter. Also fixed a case where normals were flipped in some FBX files.
  • Panel COMPs / Window COMP - Enabled support for cursor constraints on macOS.
  • Feedback TOP - Fixed a crash that could occur with various uses of the Feedback TOP.
  • Movie File In TOP - Fixed corrupt output when 'Loop Crossfade' was set.
  • Movie File In TOP - Fixed crash when loading 16-bit mono .tiff images.
  • Spectrum TOP - Fixed recently introduced crash.
  • Text TOP - Fixed a crash that can occur when oversized glyphs are rendered when 'Display Method' = Bitmap.
  • Texture 3D TOP - Fixed incorrect memory reporting for 2D Texture Arrays.
  • Video Device In TOP / Video Device Out TOP - Fixed a crash on Intel GPUs when using Automatic/Pinned memory.
  • Video Device Out TOP - Bug fixes
    • Fixed a crash that can occur when shutting down a Blackmagic Design device in some cases.
    • Fixed potential frame corruption that may have occurred on Blackmagic Design devices.
    • Fixed crash that can occur when turning on 'Synced Outputs' for Deltacast devices.
    • Improved performance when running at 4k@60hz for Deltacast devices.
    • Fixed 12-bit output not working correctly on AJA devices.
    • Added error when Key+Fill is not supported by the card’s firmware on AJA devices.
  • Web Render TOP - Fixed an issue which prevented some websites rendering correctly.
  • Kinect CHOP - Fixed occasional crash when switching to 'Skeleton' set to "Off".
  • Art-Net DAT - Fixed duplicates devices appearing in the table.
  • Text DAT - Fixed a crash when redirecting stderr to a DAT.
  • WebSocket DAT - Fixed a bug where timeout would occur before connecting to the server, even if the server existed. Also added a new 'Connection Timeout' parameter to set the length of the timeout.
  • GLSL MAT - Fixed default shader having incorrect picking stub code.
  • Phong MAT / PBR MAT - Fixed screen space coordinates not working correctly in UI viewers.
  • Phong MAT - Fixed rim lights not working when shader is exported to GLSL MAT.
  • Privacy - Fixed crashing when a ParGroup Execute DAT was inside a private component.
  • Fixed an issue which caused wrong positions to be calculated for some monitor layouts, affecting window behaviour and the Monitors DAT
  • macOS - Fixed possible crash if display configuration changed during application launch.
  • Fixed Global OP shortcuts not registering properly on external .tox files.
  • Fixed a crash when some ASIO devices are present.
  • Fixed a number of reported crashes.


Operator Snippets

  • New batch of 35 snippets for 17 operators.