[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[sc-users] More dumb stream questions
I'm making some progress with my little In C Xmas project, but questions keep popping up.
I want to iterate over an array of patterns, but I can't figure out how to construct a do loop that's doesn't make everyrhing happen at once:
(
var inC;
inC= Array.newClear(54);
inC[1] = Pbind( // pattern1
\instrument, "fmgen_a_" ++ 35.rand,
[\dur], Pseq([[60, 0.1],[64, 0.4]], 3)], {1 + 10.rand})
);
inC[2] = Pbind( // pattern2
\instrument, "fmgen_a_" ++ 35.rand,
[\dur], Pseq([[60, 0.05],[64, 0.245], [65, 0.25], [64, 0.5]])], {1 + 10.rand})
);
inC[3]= Pbind(
\instrument, "fmgen_a_" ++ 35.rand,
[\dur], Pseq([[\, 0.25],[64, 0.25], [65, 0.25], [64, 0.25]])], {1 + 10.rand}) ); // any symbol is a rest, like \ or whatever
// Pseq([inC[1], inC[2], inC[3]]).play; // This works OK, p[1]1 is played, finishes, p[2] plays etc.
inC.do{arg item; item.play} // but how do I do this? The 54 patterns happen at once,
)
I tried inserting Pseq somewhere in the do loop, to no avail.
Help much appreciated. I promise I will make a proper microtonal version in return...
Cheers,
Zip