Backward Compatibility for 2023 builds
Change for keys on Windows systems
- TouchDesigner's License System Codes are now generated differently to reduce the chance of a system code change when applying Windows Updates. Old keys will work in this 2023.10k branch, however, new keys created in this 2023.10k branch will not work with older versions of TouchDesigner.
- We have released an update to 2022.20k branch so any builds released after July 10 2023 will also work with the new keys created in this 2023 version. In summary - If you want to use 2022 and 2023 versions with the same key, either a) create your key using 2022 builds, or b) use a 2022 build released after July 10 2023 (yet to be released).
File Compatibility
Project .toe files saved in Experimental can not be loaded back in Official.
Backward Compatibility Changes
- BACKWARD COMPATIBILITY ISSUE - Several built-in parameters have been renamed for consistency, starting with index 0, etc. Older files will load correctly and get updated when saved, but note that files saved in 2023.10k builds will cause issues if loaded into any previous builds.
- BACKWARD COMPATIBILITY ISSUE - Texture SOP - Fixed UV stretching and shearing of 'Face' type mapping. This changes the behaviour of 'Face' type option.
- BACKWARD COMPATIBILITY ISSUE - Point File In TOP / Point File Select TOP - Field parameters are now stored as strings rather than indices.
- BACKWARD COMPATIBILITY ISSUE - Parameter order gets overridden when changing a Parameter's page member.
Known Issues
Please report all issues to the Bugs Forum, remember to include build number.
- Text COMP may not display text when specifying a font file.
Build 2023.11220 - Nov 15, 2023
New Features
Custom Sequential Parameters
Custom parameters now support user defined Sequential Parameters. These can be defined directly with python or through the Component Editor Dialog.
All Sequential parameter sequences (both built-in and custom) now start with a new sequence parameter. The name of this sequence parameter defines the prefix of all the following parameters in that sequence block.
For example, let's look a the built-in sequential parameters in the Constant CHOP:
n.par.const
(New 'sequence' parameter)
n.par.const0name
n.par.const0value
n.par.const1name
n.par.const1value
etc
Access to any sequence object is handled through this new parameter:
n.par.const.sequence.blockSize
To create Custom Sequential Parameters through python:
n.customPages[0].appendSequence('S')
You can attach parameters to that sequence through python:
n.par.S.sequence.blockSize = 3
(connects next 3 parameters to it).
Alternatively use the Component Editor Dialog and create a new parameter of 'Sequence' type.
BACKWARD COMPATIBILITY ISSUE - Several built-in parameters have been renamed for consistency, starting with index 0, etc. Older files will load correctly and get updated when saved, but note that files saved in 2023.10k builds will cause issues if loaded into 2022 or previous builds.
New Python
- App Class.
tempFolder
- New member which reports the temporary files location. - COMP Class.
delTD()
method is now properly called on extensions when operator is deleted.
- Page Class.
sort()
- Allows Par and ParGroups as arguments (in addition to strings).
- TOP Class.
pixelFormat
- New member that returns the pixel format as a string.
New Palette
- Palette:depthProjection - Fixed the direction of the XY axes.
- Palette:logger v2.2.5 - Many tweaks and fixes.
- The logger COMP now follows the propagation rules of the python library.
- A Stream Handler was added to handle Textport log items. Therefore, when interacting with the logger COMP or the logger object directly, it will in most cases have an impact on both handlers (if used simultaneously). For example, when the setting changed is impacting the Logger object rather than an handler, such as the log level, or propagation. Status Bar is not using an handler.
- Adding some missing Help tooltip, docStrings and type hinting.
- Prevented logger from initializing when Active flag is off.
- Palette:pointRender - Updated to use cloned cameraViewport.
- Palette:stoner - Fixed Grid Warp mode not properly adjusting bezier surface weights.
- Palette:webBrowser - Added a Crop page and parameters for an additional cropped output (new second TOP output called Output 1).
- WebRTC - Updated WebRTC and Signaling components to latest Logger v2.2.5.
Bug Fixes and Improvements
- ZED - Upgraded to ZED SDK 4.0.7.
COMP
- Engine COMP - Fixed an issue which could cause TouchDesigner to hang when a component is loaded in some circumstances.
TOP
- Movie File In TOP - Improved performance of ProRes on macOS.
- Optical Flow TOP - Adding new 'Pre-Shrink' parameter.
- Point File In TOP / Point File Select TOP - BACKWARD COMPATIBILITY ISSUE - Field parameters are now stored as strings rather than indices.
CHOP
- Audio Device In CHOP - Added the option to select device by index rather than name for ASIO and CoreAudio.
- Clock CHOP - Fixed 'Since Program Start' mode having incorrect start time.
- Transform CHOP - Fixed Quaternion Lerp and Slerp input blend behaviour.
SOP
- Texture SOP - BACKWARD COMPATIBILITY ISSUE - Fixed UV stretching and shearing of 'Face' type mapping. This changes the behaviour of 'Face' type option.
DAT
- Parameter DAT - Added page name filtering and a toggle to output a column with the page that each parameter belongs to.
Misc
- macOS - Fixed an issue which caused edits to DAT contents in external editors to be ignored.
- Inproved the behavior of the value ladder on Remote Desktop/VNC/Synergy/Parsec etc.
- Fixed dialog window (ie. colorpicker) sizes slowly getting larger when repeatedly opened.
- Fixed a case where unicode characters in a external file's filepath could cause a crash.
- Fixed shortcut keys not working in TOP viewers.
- Fixed an issue with higher than expected CPU usage.
- Stopped auto-connecting of component inputs or outputs when drag and dropping or pasting a component into the network editor.