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]

Reply via email to