I don't think there's anything wrong with using the conditional and logic patches in QC, fwiw, and I don't think that using them has to create an impossible messy noodle heaven.
When one configures a javascript patch above a certain input count, the whole qtz becomes unstable and often results in error when trying to duplicate macro. Sometimes it's more about using the right golf club. I think the correct path depends on the criteria of that particular project. I think one thing that is an impediment in some of the logic/conditional patch oriented stuff that I see is that sometimes people lose track of the fact that the chain in QC starts with "Enable" on a Consumer, and that it can be odd for people to conceptualize looping sometimes. I tend to think that the javascript is a crutch in QC for having sometimes incomplete paradigms for execution of graphs. It would also be *excellent* to see LUA incorporated as a standard alternative to javascript, ala Paolo Manna's work. On Fri, Jun 17, 2011 at 6:52 AM, Charlie Francis < [email protected]> wrote: > It's posts like this that make me glad I'm on this mailing list! > > Personally I haven't been developing in QC for that long, well about a > year, but I don't see that as a long time compared to the rest of you guys. > When I first started I did exactly what Ade described. Creating an > impossibly messy noodle heaven, with Math patches, Logic Patches, String > Compare, Structure Count and anything else I could find! I'm slowly making > the switch to using JS to create manageable Compositions, but still > struggling even though I come from a strong JS background of Web > Development. > > It's always best to sit down and think about what you want to create first, > before opening a New Comp and just "going at it". For your string switcher, > I have previously used these patches to create a fade in fade out effect. > Smooth, Fade and the Sample and Hold patch. Watch for when the string > switches, then Smooth the Fade value to 0, switch on Sampling for the Sample > and Hold Patch and then Sooth the Fade value back to 1. > > Regards, > Charlie > > On 17 June 2011 11:38, Adrian Ward <[email protected]> wrote: > >> >> I'm just going to chip in and say that building a central state machine >> using the JavaScript Patch has been absolutely critical for us, and this is >> what sits at the heart of every interactive AV we've ever made in QC - >> without it you'll just get messy unmanageable noodles, no matter how clean >> you are with your macro patching and connection routing. >> >> It also helps to enforce an MVC paradigm on your project, which is a bit >> of an unusual approach within the QC ecosystem but I'm convinced is utterly >> crucial when making anything ambitious. >> >> Quite possibly my darkest, most sinking moments as a developer are when I >> see a myriad of XOR, NAND and OR logic patches tangled up with Math patches, >> Counters and other logic type things trying to control disparate elements >> that would be much easier achieved with a single cleanly written JS patch >> that spits out nice neat state values. People - Embrace the JS! It is your >> friend! >> >> >> Ade. >> >> >> On 17 Jun 2011, at 10:09, Alastair Leith wrote: >> >> I like Achims State machine, here's another approach I made years ago >> before my JS was useful. >> >> I've done this sort of thing where I have two registers and interpolate >> between them. The registers are the two most recent items in a queue, so a >> new item in pushes the registers if that makes sense. Can't find a >> composition for that method. >> >> Also I did it for a structure of 3D attitudes/orientations of an object. I >> have a comp for this. In this case the queue just track random index values, >> again causing the index at the registers to shift along each time a new one >> comes in. >> >> It's a juggling act that uses a pulsed timer (LFO sawtooth-ramp-up) to >> drive interpolation patches *and the* *queue*; here is a demo composition >> I dug out (minus the interesting bit that morphs a cube into a sphere and >> back). >> >> <Demo transitions between atitudes with a spinning cube.qtz> >> <Rotational Positions.plist> >> >> NB The rotation position.plist is an XML file that needs to be in the same >> folder as the comp to load. >> >> Best >> Alastair >> >> On 17/06/2011, at 5:09 PM, Rick Mann wrote: >> >> I've been doing these on-screen graphics for a web channel that covers >> space launches. We show a couple of different countdown clocks, as well as a >> block of ascent parameters. >> >> But for the last nine minutes of a shuttle launch, there's not much to >> show. I have a couple dozen events that occur at various times during the >> count. I want to display each one as it occurs. An event is just a text >> string describing the event ("APU Start," "Steering Test," etc.). >> >> My custom patch can either output each string on a output port, or output >> an array of structures that has the string and the associated time. The >> former is easier for me. >> >> How can I crossfade from the last event string to the next, especially >> when they come in rapid succession (perhaps more quickly than the crossfade >> duration)? >> >> I was doing a similar cross fade between a set of images, and it was a >> real pain to build the structure for it. >> >> Thanks for any suggestions, >> Rick >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Quartzcomposer-dev mailing list ([email protected]) >> Help/Unsubscribe/Update your Subscription: >> >> http://lists.apple.com/mailman/options/quartzcomposer-dev/qc.student.au%40gmail.com >> >> This email sent to [email protected] >> >> >> *The machine does not isolate man from the great problems of nature but >> plunges him more deeply into them.** >> **Antoine de >> Saint-Exupery*<http://www.brainyquote.com/quotes/quotes/a/antoinedes131176.html> >> * * >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Quartzcomposer-dev mailing list ([email protected]) >> Help/Unsubscribe/Update your Subscription: >> >> http://lists.apple.com/mailman/options/quartzcomposer-dev/adrian%40clayinteractive.co.uk >> >> This email sent to [email protected] >> >> >> >> _______________________________________________ >> Do not post admin requests to the list. They will be ignored. >> Quartzcomposer-dev mailing list ([email protected]) >> Help/Unsubscribe/Update your Subscription: >> >> http://lists.apple.com/mailman/options/quartzcomposer-dev/charlief%40cellcastonline.com >> >> This email sent to [email protected] >> >> > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Quartzcomposer-dev mailing list ([email protected]) > Help/Unsubscribe/Update your Subscription: > > http://lists.apple.com/mailman/options/quartzcomposer-dev/gtoledo3%40gmail.com > > This email sent to [email protected] > > -- George Toledo [email protected] www.georgetoledo.com
_______________________________________________ Do not post admin requests to the list. They will be ignored. Quartzcomposer-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com This email sent to [email protected]

