We are excited to announce the release of 2023 Official and bring you all the amazing new features we’ve been working on over the last year. This year’s release is heavily focused on new device and sensor support bringing many new options for tracking. 2023 Official includes essential new features for broadcast and production workflows and introduces significant updates to python, parameter, and external file workflows to continue to advance TouchDesigner's capabilities for system integration and application development.
Below we introduce a few highlights of this year’s release. This article is only the tip of the iceberg as there are hundreds of new features you’ll find packed into TouchDesigner 2023, you’ll want to refer to the Official Release Notes for a complete list of everything that’s new.
At Derivative we’re always looking for new devices to help creators sense the environment around them. We took note of the new OAK-D cameras by Luxonis introduced a few years ago and have brought full support for them to TouchDesigner in 2023. Three operators work together to implement the OAK functionality, the OAK Device CHOP is the main interface to the camera devices, the OAK Select CHOP extracts channels and data from the results of an OAK Device CHOP, and the OAK Select TOP extracts processed images from the camera.
Besides a variety of sensor options available like color, depth, IR night vision, and active stereo, these cameras also include on-device neural network and computer vision capabilities. By running AI models on-device one can reduce CPU and GPU usage on your system leaving more overhead for TouchDesigner and other applications. AI models can be customized and uploaded to the device and depthAI includes a library of models to start from including pose estimation, hand tracking, attribute recognition, text detection and OCR, image segmentation and much more. We have a bunch of TouchDesigner examples to get you going under Help > Browse Samples > OAK.
A wide range of cameras are available and starting at a reasonable $149, there are options for both USB and POE, and our support covers both Windows and macOS. These cameras will make a great addition to anyone's arsenal for interactive projects.
With the recent announcements of Microsoft Kinect and Intel RealSense device development coming to a close, we wanted to bring some new technologies for body tracking and depth capture to TouchDesigner. In addition to the tracking options OAK-D offers (see above), we have added four additional sources of tracking data powered by machine learning.
For an almost direct replacement of Kinect Azure, the Kinect Azure CHOP now also supports Orbbec Femto Mega and Bolt cameras which both perform skeleton tracking using the same Kinect body tracking models. Additionally our new Orbbec TOP for depth and point cloud data will support the wider range of cameras from Orbbec so creators will have many options to choose from.
Ultraleap’s Leap Motion sensors have been updated to the latest Gemini v5 tracking and now include full support on macOS for Apple Silicon and Intel Macs.
And finally, if you don’t have any of these cameras but your system has an RTX capable Nvidia GPU, you can now use the new Body Track CHOP to track up to 34 key points in both 2D and 3D from any TOP image, be it from a video or live camera feed.
A lot of you rely on timecode for live performances, on-set production, syncing content, and more. To that end, we’ve thoroughly integrated Timecode throughout TouchDesigner.
This begins with the new Timecode CHOP which generates timecode and offers playback control. Timecode can be created to follow the SMPTE standard, or follow a more general format including negative timecode and values over 24 hours.
Furthermore, almost all operators that deal with time in TouchDesigner have been updated to include a timecode member and in some cases can be driven by timecode too. For example, the Play Mode parameter found in such favorites as the Movie File In TOP, Timer CHOP, and LTC CHOP can be set to use a Timecode CHOP, DAT or object. There is also a new Timecode Class to manage all this through python. These tools will work together to help synchronize the various inputs and outputs of your TouchDesigner projects.
TouchDesigner is now certified for Apple ProRes codec bringing ProRes playback to the Movie File In TOP and ProRes encoding the Movie File Out TOP on both Windows and macOS. Apple ProRes is known for its high image quality and also offers great real-time scrubbing performance. On macOS, ProRes is hardware accelerated taking full advantage of Apple Silicon’s media engine for encoding and decoding.
We have a number of new operators that work with devices and elevate TouchDesigner’s interoperability.
Mo-Sys Startracker is a professional virtual production camera tracking solution popular in broadcast and cinematic production stages. The system is a marker-based optical tracker that delivers 6-axis tracking with lens zoom and focus. Our new MoSys CHOP receives data from the camera tracking system and its channels can then be used to control a virtual camera while the MoSys TOP is available to apply the correct lens distortion.
A new Laser Device CHOP now handles all Laser devices that TouchDesigner supports, replacing the EtherDream CHOP and Helios DAC CHOP with one Laser Device CHOP. We updated EtherDream support to include EtherDream 3 and 4 and we fixed some bugs while in there. In addition, ShowNET support comes to TouchDesigner for the first time bringing support for laser devices by Laserworld. Use a Laser CHOP to generate the points to send to the Laser Device CHOP, be sure to check out the Operator Snippets for examples to get you started.
SICK builds LiDAR devices to detect, localize and track objects in 2D or 3D. The new SICK TOP will connect to SICK sensors and provide a 3D point cloud of data captured in real-time from the surroundings.
We are also introducing a new Audio Devices DAT and a Video Devices DAT which monitor audio and video devices on your system. These DATs provide information including driver version, input or output direction, label, name and they both include a callback script for taking action when a device is connected or disconnected from your computer.
We have a bunch of new operators to share with you this year.
Starting with the new Bloom TOP to add a bloom effect to any TOP network. Bloom will create an intensity gain and glow effect around brighter parts of the image.
The GLSL COMP is a new Panel Component that draws directly to screen which is useful for rendering pixel accurate UIs as the resolution will automatically adapt to the DPI scaling of the screen it is displayed on. Panel variables can be accessed in the shader for responding to user events.
A new Nvidia Upscaler TOP uses Nvidia Maxine Video Effects SDK to upscale the resolution of an input video. It has two modes, the Upscale mode is faster and offers a 'Strength' parameter while the Super Resolution mode is higher quality and has an optional 'Artifact Reduction' toggle.
Lastly we’d like to take time to highlight the Engine COMP. While not a new operator, it has received a deep overhaul and for all intents and purposes is new! Parameters now give more control over loading .tox files and controlling the engine’s process. Options for how the relative paths of assets are handled in the loaded .tox have been added, and a new InitStart parameter page can be used for playback control. Finally, you’ll also find a docked Info DAT and Info CHOP with debug information for TouchEngine status and performance metrics.
7.Palette Tools and Plugins
The Palette has gained a few new substantial tools we wish to highlight.
First we introduce a new Logger component. This can be used to log info, debug messages, warnings and errors. This component is wrapped around the Python Logging Library and users can extend the features of the Logger COMP even further using that library. We also include a built-in logger accessible through op.TDResources.TDAppLogger that can be used anywhere in your projects. We hope to standardize this approach to logging events in TouchDesigner and look forward to any feedback you might have.
The next two tools have already been available earlier this year, but they are major releases for 2023 and deserve mention here.
With TDBitwig, TouchDesigner can control Bitwig Studio parameters, such as tempo, track properties, clip launching, and device parameters. Conversely, Bitwig Studio can also control TouchDesigner parameters for creating tightly integrated audio and visuals. For more information you can read our TDBitwig release blog and review the TDBitwig User Guide.
We have been building an Unreal Plugin leveraging TouchEngine and our most recent release this year is a major milestone. Unreal creators can load TouchDesigner components directly into Unreal using this plugin, and access data directly from TOPs, CHOPs, and DATs in Unreal’s blueprints. The latest release adds support for Unreal 5.3.1, new controls for sync between processes, a UX overhaul, and new samples showcasing TOPs feeding Niagara particles and rendertargets where TouchEngine can process postfx on Unreal frames. If you use TouchDesigner and Unreal together check it out here.
8.Python and System Development
The Python version in TouchDesigner has been upgraded to 3.11. This can run up to 10-60% faster and also offers much better error reporting. Read about the changes to Python in What’s New In Python 3.11 and What’s New In Python 3.10
Custom parameters now support user defined Sequential Parameters. These can be defined directly with python or through the Component Editor Dialog. This allows you to create sequence blocks of parameters in your own systems like those you see in TouchDesigner’s built-in parameters.
Additionally more parameter control via python has been given to you with the ability to reset parameters or set defaults by parameter, pargroup, page, or operator.
A new opex() method has been added to OP Class and td Module that works identically to op() except it will raise an exception if it fails to find the node instead of returning None as op() does. This is now the recommended way to fetch operators in parameter expressions as the error will be more useful than the “NoneType has no attribute par” message produced by the old op() method.
9.Quality of Life
Over the past few years as we have added numerous new machine learning features, the large size of these models has lead to a substantially larger installer size for TouchDesigner on Windows. A new installer option for 2023 is the much smaller webinstaller.
This installer includes only the core essentials for TouchDesigner on the first download (<600MB) and presents you with options to install the features you want. No Kinect? Don’t bother with the extra body tracking models. No Nvidia GPU or you don’t need openCV? Skip them to save time and bandwidth. We recommend using this webinstaller whenever possible, but for those cases when you are going to a place without internet, we still have the fullinstaller available that will include everything in one large download.
Working with external .tox files is core to many pipelines, especially when working with multiple people on project. To make external files easier to manage you now have the option of setting the relative file paths inside an external .tox component to act Relative to the Project (.toe file) or Relative to the External COMP (.tox file). This means with the with the ‘Relative File Path Behavior’ set to ‘Relative to External’, you can now zip a folder with a .tox and all files related to this .tox, whether they are scripts, images, 3D models, fonts etc, and be sure that all the paths will work correctly when loaded in a project on another machine.
For those using TouchDesigner across remote desktop applications such as Anydesk/VNC/Synergy/Parsec, you’ll be pleased to hear we’ve improved the behavior of the value ladder which has been an annoyance since… a long time.
This may go unnoticed as its not a visible feature, but TouchDesigner 2023 has received a control panel overhaul to improve performance of Panel Components. If you’ve built some complex UIs or have suffered from slowdowns due to control panels in the past, try those projects in the 2023 version and see how much faster it is. If you have cases that are not improved significantly please get in touch so we can try further optimizations.
10.ThingS To Know Before You Upgrade
Caution - Files that are saved in 2023 can not be loaded into previous versions of TouchDesigner. In other years, sometimes opening a file in an older Official series still worked even if it was not recommended. For 2023 Official we can guarantee this will not work, 2023 .toe files will load with errors in 2022 or earlier versions.
We are here to help. If you move your project to TouchDesigner 2023 and it doesn’t load or work properly, please contact us and we will help you with the transition. We want to make sure everyone can get their projects running in the 2023 version without issues.
Additionally, with every major update there are some operator and parameter changes that may require your attention. Please read through the Backward Compatibility list in the release notes to be aware of them when upgrading your projects.
We’d like to express our gratitude to the TouchDesigner community for your support and generosity. We are constantly amazed by the work of creators spanning countless industries and countries around the globe. The stories we receive from you continue to inspire us and fill us with excitement about what we are all building together here.
A special thanks to the following members of the community whose images helped make this article possible. Check out their work in the links below.
Torin Blankensmith - Real-time graphics artist, creative technologist. *Article teaser image
Karl Skene - video/laser/light artist
Yuri Urano - musician and Bitwig certified instructor.
Parse/Error - Fabien Bouchard - creator of immersive installations, interactive experiences, light sculptures and connected artworks
Weidi Zhang - media artist and assistant professor of IXD at ASU MIX
Josef Pelz - generative artist and creative coder with a background in mathematical visualization and computer science