I’m trying to load Post Processing FX with Engine COMPS by switching between .TOX files, but my custom parameter references don’t load. The expressions come from within the project they’re being loaded in. If I copy and paste the expression into the EngineCOMP, the references work, but the Engine COMP doesn’t load them at all.
How can I get an Engine COMP to load the CHOP references that are saved within the TOX file?
Hi - I’m not entirely clear on what you’re doing here. Expressions can’t refer to anything between TouchDesigner and TouchEngine, if you are trying to do that. Are you able to share a .toe and .tox which demonstrate the problem? Either attach here or e-mail to email@example.com referencing this post.
Here I’ve attached a test project to help better understand my issue.
I have about 40 different Post-Processing Effects that I would like to mix-and-match as needed with EngineCOMPs since they help with efficiency and modular design. The TOX files they are loading are all saved with Expression References to get MIDI and Audio data from elsewhere in the project file. However, when loading them with an EngineCOMP, those references are lost entirely unless I copy and paste them manually myself.
I believe the issue comes from TouchEngine struggling with the NoneType error since TouchEngine doesn’t have those references to the project file. It would be better if TouchEngine would send the ‘failed’ references to the EngineCOMP anyways, as they could grab the data from the main .toe file.
EngineCOMP Missing Features.toe (6.1 KB)
T0X.tox (510 Bytes)
Thanks for the nice clear example. We have considered exposing expressions before - there are cases where they would not work but probably it would be more useful than not.
In the meantime hopefully you can work with the current system - use constant parameters or CHOP channels to pass required data in.
Is there another method I can use the meantime to get the Expressions onto the Engine COMPs when the .TOX files are loaded into the project? How could I pass data in when the TOX files are loaded and unloaded?
Perhaps a script that references the parameters of the TOX file elsewhere and assigns it to the Engine COMP when it loads the corresponding TOX file?
I feel like this is a crucial feature that would really help people trying to build modular VJing setups such as myself. The closest alternative I’ve seen is how Simple Mixer loads/offloads PostFX .tox files. I’ve spoken with Richard Burns who made it, but even he admitted that his implementation could use some improvement. Having Engine COMPs save these Expressions would make them a viable alternative.
If it were me, I’d stop thinking about expressions at all and increase the modularity - think about what data is common that the FX components need from the host and how best to standardise that so the FX .tox needs no knowledge of the host network - via a set of common CHOP or DAT Ins or (constant) parameters.
I love the idea of increasing the modularity but I thought I was already setup around the common data (audio and midi channels combined in the expressions) having things as modular as possible.
Are you suggesting that I have each PostFX TOX process MIDI and Audio Data themselves and refer to the custom parameters from within the TOX file/Engine COMP? Would you be able to provide an example of what you mean?
I’d like my effects to be as optimised as possible and reduce any redundancies, but I’m still convinced that having expressions is the best way to address this if not for the lacking functionality.