TimeCode TouchDesigner Part 2 Generative Responsive UI With Python Extensions and Module On Demand

In this episode we will build a responsive UI component to save and recall presets. Use python extensions for concise scripting solution to store and load custom parameters. Next, use Modules On Demand to edit saved presets directly from our UI.

This tutorial uses the Lister Component, from the palette. The Modules On Demand portion is explicitly described on Matthew Ragan’s website, in a blog post called Big Badass Lister part 2. At the very bottom of the page is a technique called “A List Of Python Objects.” (https://matthewragan.com/2020/11/04/touchdesigner-the-big-bad-ass-lister-part-2-3/)

I highly recommend reading the entire ‘Big Bad Ass Lister’ blog series, it is linked at the end of the summary on the Derivative Lister Docs. (https://derivative.ca/UserGuide/Palette:lister)

Next episode we will further continue connecting our UI to a playback engine. If you have time, I suggest watching a seminar by Mary Franck ‘State Machines for Interactive Projects. She illustrates how to avoid common pitfalls one may face when developing these playback systems. (https://www.youtube.com/watch?v=115v9x2TSb4)

0:00 (Final Product Demonstration)
1:55 (Recap of Part 1)
2:36 (What To Expect)
4:43(Create Global Shortcuts)
5:22 (Edit GLSL to Include Hue)
10:15 (Trigger Less Often with Pattern & Lookup)
13:13 (Add Custom Parameters – Save Delete Name)
14:58 (Save Presets with Storage in Extension)
18:40 (ParExec Pulse Save)
28:51 (Automatically Update Menus with Stored Presets)
34:55 (ParExec Pulse Delete)
38:06 (Load Presets With Menu Change Setattr)
42:00 (Lister Component Lore)
43:56 (Module On Demand)
52:29 (Customize Lister With Column Definitions)
56:36 (Lister Callbacks onSelectRow)
59:08 (Lister Callbacks onEditEnd)
1:05:34(Recap)

About The Author