New Audio Binaural CHOP, WebRTC stereo audio, bug fixes and improvements.
Release Notes 

Check out our 2022 Official Release Annoucement!

We recommend updating your graphics drivers before using TouchDesigner 2022
Jun 15, 2022

New Features

New Python

  • App Class.experimental (True/False) flag exposed.
  • DAT Class.scroll - Scroll by row/col works again for text DATs.
  • geotextCOMP Class - Class is now derived from geometryCOMP Class.
  • geometryCOMP Class.computeBounds - Updated to include boundaries of nested Geo Text COMPs.
  • Movie File In TOP.isOpen - Now dependable / can be used in parameter expressions.
  • WebrtcDAT Class.setLocalDescription - Added stereo keyword which specifies whether the local peer can receive stereo audio (default=False).
  • Fixed expressions involving OP to work the same in scripts as optimized expressions. For example: op('geo1') + '_123' or op('geo1') * 3


New Palette

  • Widgets - Fixed default path loss. Also BasicWidgets component now has display flag off.


Bug Fixes and Improvements


  • Actor COMP - Fixed diagonal drifting of particles while using velocity feedback in Flex.
  • Engine COMP - Fixed issue which could cause outputs not to update sometimes if they cooked only in the first frame.
  • Engine COMP - Fixed delayed memory release if a DAT output was removed.
  • Geometry COMP - Instance Texturing now works on macOS (although with much fewer textures possible than on Windows).
  • Geo Text COMP - Fixed horizontal alignment when using appended lines in the 'Specification DAT'.
  • Geo Text COMP - Local transforms using the 'Specification CHOP' or 'Specification DAT' now pivot around the center of the text rather than the bottom left.
  • Light COMP - Fixed crashes that can occur when disabling cook flag on Light COMPs or the TOPs they reference.
  • Text COMP - Increased the height of the cursor and selection highlight.
  • Movie File In TOP - Handle loading .bmp files that have negative height in their header.
  • Notch TOP - Fixed reported block_render_time not updating unless MMB info is active.
  • Render TOP - Fixed hang that can occur when doing Depth Peeling.
  • Render Select TOP - Fixed 'Image Output' not returning the correct texture.
  • Syphon Spout In TOP - Fixed texture not working when used in a MAT that has mipmapping on.
  • Video Device In TOP - Fixed deinterlace feature not working.
  • Video Device In TOP - Fixed crashes that can occur with some camera inputs, virtual cameras in particular.
  • Video Device In TOP - Fixed some hangs that can occur when using Media Foundation library.
  • Video Device In TOP - Fixed some errors when converting YUV To RGB that were introduced in the 2022.20000 series.
  • Video Device In TOP - Improved playback smoothness when input framerate is higher than the TouchDesigner framerate.
  • Video Device Out TOP - Fixed large cook times when using pinned memory with Blackmagic devices.
  • Vioso TOP - Fixed issue with loading warp texture.
  • Blend CHOP - Fixed undercooking when using Quaternions.
  • Info CHOP - Scope parameter now works for other Info Types.
  • Leap Motion CHOP / Leap Motion TOP - Re-enabled on Intel Macs. Ultraleap has not made the Leap Motion SDK available for Apple Silicon so at this time we do not have a timeline for Leap Motion on macOS Apple Silicon builds.
  • Script CHOP - Callback DAT now defaults to Python syntax highlighting.
  • Timer CHOP - general improvements.
    • 'External Start Offset' / 'External Init Offset' parameters to control how the external CHOP channel input is applied for timing.
    • Limit onInitialize callbacks to one per frame, not one per timeslice sample.
    • Fixed crash when tied to timeline and changing column output values.
    • Segment objects now compare against non-numbers properly. For Example: if (segment != None) ...
  • Text DAT - Fixed a crash when hitting Ctrl+Delete or Ctrl+Backspace to delete the node while editing.
  • UDP In DAT - Fixed memory leak when using onReceive callback.
  • WebRTC DAT - Enable on Apple Silicon (arm64 builds).
  • WebSocket DAT - Fixed 'Bytes' column, receiving of fragmented messages, and the triggering of onConnect/onDisconnect callbacks when pulsing 'Reset' parameter.
  • Web Server DAT/WebSocket DAT - Fixed a crash when sending a frame at the same time as the connection is reset on the remote end.
  • Text SOP - Fixed crash in some cases when using a Font File.
  • Vertex SOP - Fixed integer custom attributes not working.
  • MAT - MAT nodes can no longer be bypassed by doing a bypass while they are group selected with another node type.
  • Constant MAT - Fixed crash when a TOP it was referencing is bypassed.
  • Performance monitor now includes unaccounted time *before* total time.
  • Exposed all installer options as command line parameters.
  • Fixed slow memory leak that can occur in some cases.
  • Fixed connecting non-components to multi-input components.
  • Fixed a bug setting the focus on popMenus.
  • Stopping the timeline in Execute DAT onStart() will now keep it stopped after launch.
  • Export Movie Dialog - Fixed file browser selection for the recorded movie's filename.
  • Fixed crash when using normalized TOP view on 3D textures.


Known Issues

macOS Apple Silicon Build Specific