Kangaroo, slow on just one piece of geometry?

Hi all,

Im pretty new to Kangaroo and I have a strange problem, it seems strange to me anyway, probably Im just missing something.
I run the solver on 15 pairs of curves and they all spring up, except 1 pair, which travels up very slowly.
Does anyone know why this might be happening?
This would be part of an animation so I really need the movement of all 15 pairs to be similar.



kangaroo slow curves.gh (15.6 KB)

You need to add a Graft in your shatter component.
You were using an incorrect tree and that caused differences in the simulation.
All the simulation was using 2x the amount of curves, now it should also be faster.

To make it even faster, maybe do the simulation of just one sector and then do the polar array of the output? I don’t know if you need to add a-symmetrical details later…

1 Like

aha, thanks.
I should have realised.
I will try doing the array afterwards as well…


I also recommend using the regular Solver instead of the bouncy one. It converges much quicker - the bouncy one is only for if you really want to see the dynamics.
kangaroo_fast_curves.gh (15.2 KB)
With that, the graft fix, and putting the array after the solver it’s almost instantaneous

1 Like


kangaroo faster curves.gh (11.2 KB)

1 Like

nice :slight_smile:


Hello again all,

Im doing something similar with this and again running into problems. Pretty sure I havent got things set up quite right but Im not too sure whats wrong.
I would like to animate these curves as pipes so the attached file has the animation solver as well.
With the mesh pipes it previews more or less ok, they’re a bit faceted and its a little slow to solve, but with ordinary pipes everything grinds to a halt.

Any advice would be greatly appreciated! kangaroo draping pipes.gh (17.3 KB)

If you are connecting the same set of goals to different solvers such as the regular one and the Step solver, I’d recommend disabling whichever one you aren’t using.

As for the slowness of regular Grasshopper pipes - yes, they’ve always been slow - it has to create a NURBS surface and mesh it, and it’s not really suitable for anything realtime beyond a few dozen curves.
For realtime preview I’d say use either the Mesh pipe, or Human’s Custom Lineweights. Then if you need NURBS pipes for something else, bake them at the end.

Thanks Daniel,

Very useful advice. Ive only scratched the surface with Kangaroo, still a lot to learn.

This might be a silly question but, with the step solver, would one expect to see the same solution as one gets from the regular solver over the course of a 0.000<1.000 slider? Or would this also depend on how many frames you decided to use for the animation?

When using the Step solver with a slider, the upper value of the slider isn’t important, it’s just a convenient way to use the pre-existing capability of Grasshopper to save sequences of images using a slider. When it is zero the simulation resets, and whenever it changes to any other positive value it triggers one iteration of the connected Kangaroo component.
When the momentum setting is off it should give exactly the same results as the same number of iterations with the regular solver component.