Thanks again Bodysoultspirit. It was too complex for me, indeed an output port Playing the movie file will have simplified the work. Your solution turns very well for me. I'll show you the result when I'm done.
Merci encore une fois Bodysoultspirit.C'était trop complexe pour moi, en effet un port de sortie Play Movie File m'aurai simplifié le travail. Ta solution tourne très bien pour moi.Je te montrerai le résultat quand j'aurai fini.
The problem was that every event that went into the subcomposition would go through your "Data" node through
Take from List and hit the Set Target input port of
Smooth with Inertia. The Target port is supposed to get an event only when you want to change the target, not every frame. The purpose of the nodes I inserted between the Data published port and the "Data" node was to block all events to "Data" except when the target is supposed to change.
Getting back to the sub-composition itself, sorry for being a bit remedial, but why do we need this particular workaround? (I've gone back and read the thread you linked to, Jaymie (@jstrecker), about sub-composition input port behavior but it's still not clear to me how exactly that was the problem here).
If all incoming event triggers are passed to all sub-comp input ports, shouldn't the constant updating of the Time input be enough to prompt re-evaluation? I don't understand why the Data list needs a Hold node (as if it was in an iterator loop) and refresh event when the data changes.
I don't understand how the Allow Events node would have helped if it did work with lists. In fact I can't see what it does in any context, surely any wire carrying a value that changes will reflect changes to the data, can data change without passing through the event that caused it to change?! Maybe I'm missing something fundamental about Vuo, so I'm going to ask this question about that node separately.
Okay, I got it working thanks Jaymie (@jstrecker) using your modification and replacing the old Smooth List with Inertia node with your one. But your test rig composition file didn't work as is. Trying to figure out why exactly.
I had to delete the old Smooth List node and drag a new instance in from the Node Library and rewire it. (Attached) I wonder what went wrong with the test rig file you made, or maybe you just uploaded an uncompleted version? I'm new to sub-compositions so not sure what the ideal work flow is yet, but i think something has gone awry here and keen to understand why it wasn't a case of just dropping in the new Node to my User Module folder and renaming it to replace old one and opening your test rig file.
Ideally we should be able to even do it all from the Vuo application, i.e. open the new node file and go File Menu> Replace An Existing Node with this Composition…" and open the test rig file and it's all working as it was for the other user who made the modifications. I guess that menu item would present you with the Node Library list and filter to choose what node you want to replace, or if no filter is possible in the modal dialogue, maybe highlighting the last node that was selected in the Node Library.
I'm going to make a FR for right click on Input Port to have a contextual menu item for "Attach Shared Value Node" (think Insert Input Splitter in QC and Insert Splitters to all Inputs in KinemeCore). I can't seem to find an existing one but I recall this has been discussed elsewhere. I go to use this all the time when I want to move an existing value, say a colour from one existing node input to a new node's input., but it's not there (yet) in Vuo.
Thank you Jaymie, I'm trying to get it running in the test rig composition you made. When I opened the "useful design.smoothListWithInertia 20170904.vuo" file and then use File>Move Composition to Node Library to put it in the library, the name of the Node becomes (of course) "Smooth List With Inertia 20170904" so I have two nodes, I guess I'm supposed to replace the old one? Also weirdly the file name now becomes usefuldesign.usefuldesign.smoothList…. I wonder if there can be an easier way to depreciate old versions of nodes than this.
Opening the test rig file you made it seems to be using the old node, even though it doesn't have the new input port "Which Data". I'm going to try replacing the old Node with the new version you've made. Perhaps we need a Menu item called "Replace Existing Node in Library with this Composition" to streamline this kind of operation?
Oops, this feature request should not have been marked "resolved" yet. @Bodysoulspirit, thanks for retesting. As you noticed, we did the node library but haven't done the canvas yet.
If you're interested enough in that cherry on top of the cake, please create a feature request :)
Yes, here's a fix. I was going to propose inserting an
Allow Changes node into your subcomposition, between the Data published input and the node labeled Data, but that node doesn't work on lists yet. So instead I added another published input to the subcomposition to detect changes.
Sign up for the Vuo announcements mailing list to get news and join the community. We post about once per month.