Kangaroo2 VertexLoads doesn't work in Solver

Hallo All,

I’m new to kangaroo, but while following tutorials, my results show differently than the tutorials.
Currently working on this one: https://www.youtube.com/watch?v=f0DiTj3Gx1A
The resulted mesh coming from my Solver is flat, while it should move in the vertical direction, and doesnt connect with the floating anchor points. It seems VertexLoads is the bad guy, if I disconnect it with the Solver it doesn’t make any difference, also the output of Vertexloads just shows KangarooSolver.Goals.Unary in a long list.

Does anyone know what I am doing wrong?


What happens when you press the reset button?

The easiest way to help is when you upload your files. Then someone can take a look

GH test.gh (38.2 KB)
Rhino test.3dm (56.2 KB)

That’s weird. My problem occurred in a bigger file (I was testing this next to another big geometry). Now that I made it a separate file (for this forum) it actually works.

Does that make sense?

Also, the Iterations output number of the Solver keept getting bigger.


It seems it is not ending, it keeps on calculating.

This is not the case in the separate file I shared with you. Though in both files the grasshopper script is just connected in rhino with 3 points, there shouldn’t be any difference in the two files.

For simple inputs scenarios like this, you can internalise the inputs in the future…

The solver converges after 1270 iterations on my machine:

If it’s happening in the bigger file but not this one, I guess we’d need to see the bigger file to figure out what’s going on. It sounds like maybe there’s some other component there causing the solution to keep refreshing.

I cleaned the file a bit, here’s the bigger file.
Rhino test2.3dm (242.0 KB)
GH test2.gh (41.9 KB)

The problem still occurs at the Iteration output of the solver, I also tried merging the input first, the number keeps going up, and there’s no vertical movement.

It looks like this might be a far from origin issue - the geometry is all over 500000 units from the origin, and 1000s of units across, which will affect the precision.
I’d recommend setting things up so the relevant parts are closer to the origin, and perhaps using m instead of mm.
You can change the Tolerance setting in the Kangaroo solver (here it looks like you’d need it at around 0.1) and that does mean the vertices you want snap together, but it would be better to fix the root of the issue, which is this distance from the origin.

Also about the list of Goals.Unary as the output of VertexLoads - that’s the correct behaviour - the component actually creates a goal per vertex.

Hi Daniel, That fixes the problem! Thank you very much!

1 Like