Well I was going to send out a question for help regarding Array Output handling in Polyphony, however I just solved my problem.
So I will share the dilemma and what solved it!
(The primary goal was serializing a lot of control data into arrays to clean-up complex patches)
- I am setting up an 8-bit trigger within a sub-patch, each bit is a Voice of the sub-patch.
- Originally I set up to create this Array by using the Set Array Element Value module within the sub-patch.
- I specified the index as the Voice - 1 , to place the value in the array in the correct index.
- The Set Value node, set to 1 to always update the array with the value.
- The output of the Array I set to "Once in Poly" as I wanted an 8-bit array created, and a single Array Output.
I then created my polyphonic sub-patch with the 8x, and the first trigger [0] seemed to work, but no other data in indexes [1..7] would trigger.
A little investigation and experimenting; I put a Fill-Array and set this value to 8, as within each Voice of the sub-patch I was seeing that the Array Size was only [1] since I only had one value. You would think "Hey that's got to be the problem".
With the Fill Array set to 8 and rebuilding the Polyphony, I found that my output size was now 64-bits, but all my data was separated each within it's own Byte???
So it looked like the Polyphony concatenated each Array, however you would think that if the size was only 1 you would get the same output concatenated.
Well here is the problem:
When setting the Array Element Value output, I based the index logically thinking that when the polyphony built, it would place that value in the output array in the index specified by the Voice number.
This is not true, Polyphony simply concatenates all values in sequential order, so setting the index to "0", will just concatenate 8 - 1 bit arrays into a whole Byte sized array. (One after another, without specifying an index)
I approached the Polyphony thinking of the Array as the output and how I would direct the indexing, Polyphony just concatenates Arrays Sequentially, so in terms of building Polyphonic patches and Arrays....think concatenate.
Hopefully this information will help someone else out as well!
-S
