Grid SOP - wave like wiggle


I am trying to wiggle a Grid SOP in a wave like pattern along an axis.
I’ve tried various things without much success; the only solution that gives me somewhat the desired result is to:
Grid SOP -> Sort - ChopTo | Ramp TOP -> Pixelate (to have 3 equal values) -> TopTo and use that in the ChopTo from the Grid (as in the picture below)

but well that seems to be somewhat complicated (although it still gives me the possibility to change the parameters on the fly - aka more wiggles, scale etc.) and I think there is probably a much easier solution that I can’t come up with in the moment.

My ultimate goal is to have a geometry with several instances of that in a braided style like a wattle work underlay (if that is the word…)

Might be better to try it with a GLSL Material (Vertex shader) but I still want to learn more about network techniques…

Toe for reference:
Grid_sop_wave_wiggle.1.toe (5.9 KB)

Here is a quick SOP method using SOP > CHOP > SOP, its best to use your initial SOP to create those CHOP channels so you always have the right number, then you can just use replace CHOP to augment the different components, in this case with a pattern that gets its length straight form the SOP > CHOP.

This is of course only recommended if you aren’t animating this in realtime as the cook time on the CHOP to SOP is quite high. If you need animation you’ll need to head in the vertex shader route, or wrangle the PBR height/vertex displacement to do your bidding, which can avoid code but may have limitations.

Here’s the tox, with a couple custom parameters:
wiggle_sop_grid.tox (1.1 KB)

Thanks for the ‘replace CHOP’ - technique…

But I can’t keep my pattern in this way without fiddling around with the ‘Phase’ parameter.
That’s why, in my example, I used a ‘Sort chop’ and Pixelate to have three constant values for every point on the y-axes for every column on the grid…