Colornome (seeking optimization advice)

  • This patch is for 128 or 256 (i suppose 64 could use the left module of it). I'm developing a larger VJ patch (i know, why do this, when so many already exist... i still haven't answered that) in which this will be one module.

    This module, changes the top two 8x8 into button controlled [swatch]. You press on the upper right, the LEDs worm their way up to the upper right and swatch goes through [line] to the upper right. The stream of LEDs is just a little visual fun for simple changing colors (and it's even more fun on a 256 as a big swatch).

    I seem to rely on [delay] and [pipe] and [gate] to correctly time my trigger presses, and that just doesn't seem very efficient to me.

    I was wondering if someone had a little spare time, to look at my patch and provide insight on better patching. It works which is great, it just hurts to look at. I also need to start learning abstractions.

    Thank You!

  • ----------begin_max5_patcher----------
    1150.3oc4YkrbiaCD8rzWQW7htHqPR.tkCop7AjufTSRASBJgLj.pHgrMmol
    +8fERaoLZASYS3TiuHHBhkW+5EzM3WWtH3dwSz9.3Wg+DVr3qKWrvzktiEiO
    uHnk7TYCo2LrfRQaKkKCVaemj9jz1eCq7yfbGEVEsBZo88jsz90.gWo6kCMB
    wmAF2LD0JBOx3UhGAo.5oTSuhtJZmdHOtiUtCnOP6Fj6X7s.qG5nkT1CzJ39
    Ayf22w3RPb++PKk8a1rYBPMLNsTbfaPU7Xm7CsLdCUZDgnwNqEbYO6KTSewa
    BeYrhCxoAO06dhrTCk+VgCokuRxyTSBhyizMnjBSCdSH7owIwpLTiBj2kjGb
    z1xIslsM326Xjl.8K91xk5eV+JUC+kraPwUshGz71d1dJT2IZUTlhCqIc20P
    qUzFmZ0LSTukM6n8GZTrILHNrpow7VBTwpqocTdIUqaTnXkRav1tSdmTLtbZ
    EmQOwACQQ6zpDPARcuJ5DD0p8aTcolukg0XXXxVQYPn1RYG4AZi1pPCK61zJ
    5mzz.QJIp0uxNBh74Upl00KOuUP1rZEf0SBRPHiwPXttIJDcAyfr2Vy.N8Q0
    x9cVAcf.EbNoN7GQpmnHaWxg8TqHGD7rncFBonvPA3rDi+PjkVt.cj5K5H98
    hNxwEV5H1A5HwWzQz6EcjlXBZhSycfNh8BcXi88kyag7VElnvFe.WfMQKBup
    bG5Q4dXdk6rbq4eQzskabgGk6mlW4NMzpus4HbC4F4S67n40NOZL5egCxsO8
    uGlW4NKCak6TGj6n2V4dLApuSvOuDG6gT.FitGGZa1jnRIJ+BjQ3O4jQNF4L
    Yf7ZDv40iHIO+nDettGAxWUGw38RJoRWNhthn0ftbISsmRcQKmV2wu4+ZJSQ
    F1BGZRdNJ8p0Th7SwDRnFpe8lJwWx6otQPTppo+3Rfk7zW7ktnME1KryVhjB
    Qv6Wr1wDKiMMI3q4lEm6EJo+RUe9V4kDEFVbjaxTo2WvNvOYY7KP9lYzFvce
    izXG7MP+jenax3kx4xgtwYeHBTjGNF6Lyg.EoeHnjDr4bDbTxsojHruhcNuE
    llaqLCYqW45gNiB+XD5bJE8jjaG5LB4mTUGDGf8ch6I22L.UB9JIvozJ6s0y
    1SWCi4xtVea8PIgCTlNIV3POE9CyszyEcsjlKbY8qU+64opmidkkpwtUsFi2
    19ERANYNMPQi2TZZ3Qo.quL4yoMJ7kS4LWqDN+3ugzUcJ8SnYyWN5E++2qyu
    c45yx9XDjJ4zuy3UCR4Xd9loZbs+OeBXy1q6+TdpWbnqbBwi6C7B.pn8RFmH
    YB9QiI6jwriUUQ4G6Nzxp1KXb4HDfOcVclqHJyADoOJWk1gufjNYpahI8cB5
    QZJ1EMm99Y8Hlze8qaioB+hIWzc5uWiOwTrK7DxqXBcpK04wDxu1SQHWhE3W
    cmIzysvDJ2qXBG5Bl7r8TgK5tePLkmXNzDgSzMG+zqEstXogv92i7VXxbLPz
    +u7HMGW5wSmcIiA+5P5xYyouBDod3aK+W0isVCA
    -----------end_max5_patcher-----------

  • I link to this video often, 'cause it's just that good.
    http://www.youtube.com/watch?v=S92ljjQtsfo

  • i guess one of my specific questions has to do with my LED off function. I wanted each LED to last half a second, so I have that [pipe 500]. Not sure if there is a better way of doing this.

    But the true issue is the method in which i get the last LED to stay on. Right now I have the [line] sending its "end of ramp" bang to a delay just over the amount of which I [pipe]'d the off signal, so it relights the last numbers corresponding to the last LED lit. If you run it, you can quickly see the LED turn off.

    What would be a better method of keeping the last one on?

    I thought the bang could signal the closing of a gate for LED off [pipe]s, but that happens to leave more than one LED on.

    --------

    Another thing that bothers me is the way route handles the button presses, and perhaps there's a less messy way of doing this instead of having it strip it down to banging a number object.

    --------

    I'll see what I can do about rearranging to let max's natural order of things take place. I find however that doing that tends to make things messy, so maybe i'll look further into the trigger object.