Splice CHOP splice multisamples by index

I find this situation to be very common when working with instancing, when you want to trigger animations efficiently for a large number of elements with individual control (i.e. using render picking or similar).

The example file is easiest to understand than it is to explain. I wrote a quick Script CHOP that provides one version of the desired functionality, which is feeding in 2 multi-sample channels, one being the index to splice into, and the other being the event/ramp/data. The 2 problems with this being that:

  1. the Script CHOP is quite slow as sample count increases
  2. new users struggle with Script ops in general, meaning these kind of techniques can be out of their reach due to complexity of implementation and not complexity of idea, especially when you consider how easy it is to do instancing, controlling your instances seems wildly more difficult
    NewProject.3.toe (5.18 KB)

Nice trick!

Moving this logic to a C++ CHOP would cut down on overhead, right?

Yup, wouldn’t be hard to make, but I feel like it’s pretty essential “splice” functionality.

Hey all, Could you use the Splice CHOP to solve this one? (Yes, I see you are splicing in several places.)

Or maybe a Delete CHOP (delete/preserve samples based on value) and a Merge CHOP?

I had spent a while trying to figure out if I could use Splice CHOP to solve this, but I wasn’t able to get something that was relatively simple and could handle arbitrary number of events. Happy to see an example of the contrary, or perhaps using delete/merge combo.