[VL] vector join/split

found a weird bug in beta35.8

patchlet:

I could imagine this happens because you use an unconnected accumulator to transport the filter time. In the first iteration of the ForEach the accumulator will have the initial value from upstream, but since you didn’t connect it further down it will receive the default value for the next iteration. In VL all unconnected sinks receive the default value. If you hover over the bottom accumulator there should be some kind of message telling you basically the same I just wrote down?
So one fix would be to connect it, or as an alternative get rid of the whole accumulator all together and just connect the filter time from outside into the loop directly.

this is not the culprit

you cannot see in the screenshot, but 3 elements enter the foreach loop, but only a single System.Single leaves, and it is always 0, no matter what.

hi velcrome,

the problem seems to be the array input of the loop, put a ToSpead (Sequence) between the ToArray and the ForEach and it works. the FilterTime can be directly linked from the outside… no need for the accumulator.

but i see two issues here:

  • Array doesn’t work as loop input
  • Vector should have a ToValues counter part to the FromValues with spread output
1 Like

thanks

+1 for tracking each issue

ToValues node already added to upcoming alphas.

Just followed up on this, and found another one. The passages worked.
What was surprising: after loading the vl, the Akkumulators from my last snip were turned into Splicers.
Anyway, I removed them and finally the split/join mechanism channeled data.

But it still didn’t work. This turns out to be a surprising bug infestation in such a small corner.

This time it seems to be the Damper. In both cases the velocity never changes from 0.
It starts okayish, but Behaviour becomes erratic when changing settings, but eventually always converges to “immediately”. A simple toggle dampered to float32 already did the trick to confuse the hell out of it.

I cannot say for sure if Assigning had something to do with it. I made sure they were on an Operation that is actually being called each vvvv frame, so I did reassign them. This might have nothing to do with it, but its no waste mentioning it.

patchlet again:

Looping over arrays will also work again in current alphas - covered with test case also. Thanks again for the report.

Ok just saw your last post. When testing in current alpha the output of it looks correct to me. Set the filter time to 1, and change the upstream vector, the velocity IO box shows the changes as one would expect. Or do you mean something different?

@velcrome now make a generalized Vector2/3/4 region that you can reuse… ;)

vector’s massive. but maybe worth it.
@tonfilm, let’s do it together ;)

Thanks for the invite, I’ll be back from holidays tomorrow, checking then.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.