Chop Channel data into GLSL Array

Hi there,

I’m trying to make a chop visualiser with GLSL and for this I wanted to pipe a chop with different channels into my glsl pipeline. So far I managed to combine the two but it looks like the GLSL Array only looks at the first channel samples and tries to put that into the array instead of getting each individual channel for each array element.

So to further explain:

Right now it looks like the GLSL Array looks like this: [c1.sample1,c1.sample2,c1.sample3, …]
and because there are no additional samples the samples 2->12 look like ghost values.

But what I actually need is [c1.value,c2.value,c3.value,c4.value, …]

When I use a pattern Chop, which generates a single channel with multiple samples, the shader works as intended.

So far the chop only contains 12 channels for testing but my final goal is to visualise an entire DMX universe of 512 channels so typing the values individualy as vectors or constants isn’t realy an option.

Anyone who knows how to solve this or has a workaround?

I am not 100% sure what your question is tbh. Are you looking for a way to convert select1 in to a pattern similiar to your pattern1 (meaning 1channel, x samples?) If so, use the shuffleCHOP

I suppose this was only an example from your side but you can also use chopToTOP

1 Like

Maybe I formulated my question a bit wrong but what I was looking for where actually 2 things that could solve my issue:

  1. How to make a GLSL Array with Channels from a Chop instead of Samples of one Channel from that Chop.
  2. Convert my multiple-channel Chop into a Chop with one Channel with the samples of it as the values from the multiple-channel chop so I can pipe that into the Glsl Array.

So looking at your answer if I understand this correctly the Shuffle Chop will take a chop with multiple values as an input and make it one channel with the values as samples of that channel, right?