Skip to content

TouchEngine For UE Plugin v1.2.0

Compare
Choose a tag to compare
@jetXS jetXS released this 05 Jul 23:38
· 127 commits to UE5.2-Release since this release

Note:

Release of TouchEngine For UE Plugin for UE 5.2.1

Download TouchEngine-UE_1.2.0.zip to get the precompiled binaries of the plugin, not the source downloads.

Requirements:

  • TouchDesigner 2022.33910
  • Unreal Engine 5.2.1

Changelog

  • TouchEngine SDK was updated to latest, 2022.33910
  • Support for UE5.2.1 and UE5.1.1
  • ⚠️ ⚠️ ⚠️ Warning: ⚠️ ⚠️ ⚠️ They are various breaking changes and backward compatibilities issues with that update. We have update procedures. Follow the links in that changelog for what may affect you.

New features

  • Major rework of CHOP workflows. ⚠️ This is a breaking change. CHOP related nodes should be recreated. Setting CHOPs inputs or getting CHOP outputs should be reworked. Follow here for more details: Upgrading CHOP related blueprints from 1.1.0 to 1.2.0
  • There is now a TouchEngine CHOP Struct.
  • TouchEngine Components can now load and run in editor mode. They don’t need to be in PIE or packaged projects. Follow here for more details: How to use the plugin in editor mode
  • Users can now pass strings or names to the Input / Output pins of the Input / Output / Parameter nodes.
  • In Blueprint Editor, using right click, all new features from the plugin exposed as blueprint nodes are now organized in the TouchEngine category.
  • New Parameter specific nodes, Set TouchEngine Parameter, Get TouchEngine Parameter. There is no need to prefix names anymore. I.e. if a parameter is named “Somename”, just type “Somename” rather than “p/Somename”.

TDUE120-newParNodes

  • Set Inputs node is now really for inputs. Get Outputs is really for outputs.
  • Vector2D Inputs / outputs are now properly supported in blueprints from / to TouchEngine parameters.
  • New Events:
    • On Tox Unloaded
    • Begin Play - Should be used in place of vanilla Begin Play when using components in Editor mode (or as well as PIE)
    • End Play - Should be used in place of vanilla End Play when using components in Editor mode (or as well as PIE)
  • New nodes:
    • Parameters
      • Set TouchEngine Parameter
      • Get TouchEngine Parameter
    • CHOPs
      • Is Valid: A CHOP is valid when all channels have the same number of samples. A CHOP with no channels or with only empty channels is considered valid.
      • Get Channel - returns a Channel from its Index, equivalent of breaking the structure and getting the element at the given index. It returns false if the value is outside the range of the array or if the CHOP is not Valid.
      • Get Channel by Name - returns a Channel from its name, equivalent of breaking the structure and returning the first channel with the matching name. Returns false if there are no channels with matching names or if the CHOP is not Valid.
      • Get Num Channels - same as checking the length of the Channel array, but returns 0 is the CHOP is not valid. Should be preferred to avoid unexpected errors.
      • Get Num Samples - same as checking the length of the first Values array from the first Channel, but returns 0 is the CHOP is not valid. Should be preferred to avoid unexpected errors.
      • FTouchEngineCHOP to String - which is an auto converter to string, useful for debugging.
      • FTouchEngineCHOPChannel to String - which is an auto converter to string, useful for debugging.
      • Clear - empties all channels from a CHOP object and make the CHOP invalid. It’s similar to using Clear on an array of Channels, or Clear on an array of samples.
      • Break, Make, Set Members in, Cast to, etc. related to this new UStruct.
  • Massive documentation rework

Bug fixes and improvements

  • Many performance improvements, bug fixes
  • Some warnings when packaging project were removed
  • Fixed cases where the “Loading…” message in the details panel would sometime be here forever.
  • Errors from TouchEngine were silenced, they are now forwarded properly to Unreal. When TouchEngine fails to cook on a frame for some reason, the error is forwarded to Unreal properly.
  • Improved error reporting in the case that a version of TouchDesigner is installed but the plugin requires an updated version.
  • Some non-fatal errors were sometimes blocking TouchEngine from outputting frames, this should now be solved.
  • The details panel was re-arranged. Some bits were renamed to better convey what they are. Some minor cosmetics changes.
  • When passing a 1d array straight to a CHOP with the Set TouchEngine Input node, this is now creating 1 channel of n samples rather than n channels of 1 sample. This is more efficient. You can change your CHOP network internally with a shuffle CHOP if you wish to keep the behavior as it was. ⚠️ This is a potentially breaking change.
  • Fixing cases where copy/pasting components wouldn’t copy all data and would break in undo / redo cases.
  • The event Get Outputs is now On Outputs Received. It is now triggered as initially expected, when outputs are received. ⚠️ This is a potentially breaking change. Blueprints might not compile. It is easily solvable by replacing the event.

Known issues

  • Sync mode does not behave as expected for the different RHIs. This will be fixed in the next release.

Full Changelog: v1.1.1...v1.2.0