hey guys Daniel here been away for a
number of months but I'm back home and a
new year that was finally time to get
some more videos up and going so the
first thing I wanted to talk about this
year was the difference between the
original version kangaroo a new version
of kangaroo I get so many questions
about this stuff in my videos and in my
inbox people asking me why does my
kangaroo look different to your kangaroo
why do I not have this compiler at
component this video should answer a lot
of that and the way we're going to do it
is basically by creating a very basic
definition in both version 1 and version
2 now complete flip over to the food
foreigner website because I wanted to
just be very explicit with what do these
versions are so I'm using version 0.0 99
so anything this version and prior
that's to say these ones down here all
run under the same sort of method they
all they all look very similar and then
kangaroo to and above got a massive
overhaul column Daniel piker the guy who
writes kangaroo um rewrote everything
from the ground up and in fact there's
just been a release just about a week
ago that's two point two point one and
that's the version i'm going to be using
in this tutorial as well so one more
time we're going to be comparing two
point two point one with 0.0 99 alright
so let's flip back to rhino and grass of
them and now one thing more that I want
to say before we get started is that
this is going to be a tutorial on sort
of both versions Kendra at the same time
and we can I say both is because I don't
think is that your kangaroo one is by
any means a bad physics simulator I
think there's still a lot of Merit and
using it and
you know i would i would not discounted
immediately i still recommend to some
people to look at the original salvage
because of material it's out there
online and and in my mind it does still
do some things better than the new
version of kangaroo but that further ado
Blitzer let's get into it okay so we're
going to just create super basic setup
and for that i'm going to need a mesh
plane and going to plug that into my
geometry input over here and just line
it up so it's a nice and straight and in
order to get a simulation going we need
a couple of things we need geometry we
need four subjects so i'm going to pop
over to the kangaroo one Ted and I'm
going to grab some forces so the two
forces I'm going to be using for this my
unary force which is gravity and I'm
also going to be using my rings from
line which is right over here and so
these Springs from line the springs cook
on it is integral to pretty much every
simulation you'll ever do even it's um
it's kind of the backbone it holds
basically holds the the mesh together
and so what we need is some sort of
connection and the connection is
alliance or line connecting two points
as it says there and so in order to get
that there's two ways we can do that if
you don't have weaver bird which you may
not you can just use the default kanger
of default graphs of the mesh edges
component which gives you a list of
three edges that you need to plug into
the connection but I prefer to use wig
birds mesh edges just because give me a
single output just a cosmetic thing
doesn't really do anything differently
and then my line is going to go into the
connection over here and then I'm also
going to do my uniform I gravity so grab
requires point which is going to be all
the points in mesh so I'm going to
extract those with a deconstructed
machine out I'm going to collect them as
vertices in here and I also need a
fourth the fourth for the fourth amount
users V vector even though by default it
gives me what is in terms of in terms of
the earther the norm nominal considered
value of gravity negative 9.8 but i'm
going to override that with a Z vector
which just has a value of one moment and
I'm also going to plug in the soil for
my control nothing I haven't talked
about before is means of accessing
sliders from the search function of
course you can grab slide from your
params inputs over here now you can also
grab it by typing in slider like what
you can also do is you can type in
values to initialize your slider
straightaway so for instance if I wanted
an integer slider between 0 and 10 i
would type in 0 is less than 10 or
between 0 and 10 and it would give me an
integer slider notify with a long maybe
I wanted a floating-point sliders so I
could type in between 0 and 10 and if I
specify some amount of decimal points it
will give me a slider with that level of
accuracy but what I could also do is I
could set up the slider and give it a
default values so for instance I could
set it between 0 and 10 with 5 being in
the middle and that would set my slider
to a value of 5 but what I actually want
to live slider between 0 and 100 so I
should have done that to begin with ok
so delete these plug this in here line
it up and which pan over slightly so
it's framed everything up um and now
we're going to connect in our force
objects and one thing is that I never
did before which I really regret because
I think this is a really good practice
you get into is using large notes so
before any time I would connect multiple
inputs or multiple streams into an input
it would drag them in and then grab
another one press the shift key and drag
it in a 12 and that's all well and good
you you have technically connected both
inputs in there but I think it's much
better to connect them into a merge node
separately emotional will always a
separate another connection point if you
want to add more data I think the beauty
of this is that it's it's a lot more
verbose you can see what order your day
is coming in sometimes that's very
important to know what all the things
are coming in are you can you can toggle
then tell them you can you can pull them
out easier and then when we connect this
up we can also see that our data
structures changed this is very key to
the kangaroo kangaroo version one
simulations especially so now i'm just
going to preview off my unary forces of
my force objects and also noticed that
my my kangaroo my sorry my caterer my
force value is currently set to zero so
strictly said that to one okay and for
in order to run the kangaroo simulation
there's a couple of ways you can do it
you can either double-click the
component and this dialog will pop up
see if stop play pause and end next and
but I prefer to do it with k timer and
Russia um key things that I should also
milk at the moment so is the way the
simulation works is that this value
coming into simulation reset needs to be
set to false as
on this simulation reset is true that
means simulation is consistently
resetting so it's never calculating
anything in order for it to run that
needs to be set to false with a false
value but you will see an error be
thrown here and that's because I'm not
flattened my four subjects so rookie
mistake always flat muni force objects
for kangaroo one and the way we can do
that we can either do it here here
doesn't matter does the exact same thing
but instead of popping all the way down
to this and hidden hitting it with the
mouse I can just right click over here
and use my F key for flatten similarly
have to be the same thing with grass if
I needed to graph but I need to flatten
so I'm going to flatten and then if i
reset the simulation okay it is now
working but going very slow because it's
currently up to updating at one second
intervals so i'm going to change it to
20 milliseconds and you will now see
it's working but it's converged to
basically nothing because i have no
anchor points constraining it in any
sort of way so I need to make please and
the quickest way I can do that by
bringing in a mesh corners component
this is a cluster that Daniel piker
formed it comes under your utilities tab
I can't quite remember if you need if
you need to install the user object as
well think you might if you don't have
it but those come in the the kangaroo
setup files so we plug our mission and
this will give us the four corners of
the mesh based on some sort of angle
tolerance and so now we have these and
you'll plug those into our egg points
and you see the simulation is going to
throw an error because if you make
changes while the simulation is running
it doesn't really like that so from now
on I'm going to change to the combustion
because the
button is a much better way to run
simulations button is basically false
until you hit the button and it becomes
true and it basically resets the
simulation so be useful to get rid of
this boolean toggle and then we'll
double click our climber to get the
simulation going ok let me previews its
geometry off net and also quick note the
kangaroo component by itself has has a
display option but I prefer to use a Geo
node on the output because it doesn't
give us all the point information and
clutter you could say just gives us a
much cleaner output and so now I'm going
to ramp up my value to 100 and also one
other thing I need to do is springs by
default their wrist length is set to
zero this means that the simulation is
running under complete tension and these
lines are always going to try and
minimize their length and we we don't
necessarily want that to happen so the
way we fix that is by let's just grab
all this and give us a bit more space
the way we get around that it's like
having a length component so we grabbed
the length of all these edges we plug
them in to a multiplier and then we just
grab a slider and connect it up and
connect that into our wrestling and then
now we have parametric control over the
wrist link of our of our lines okay so
I'm just going to leave this pet one for
all intents and purposes and see is
there anything else I needed to do on
this simulation probably not will pause
it and we'll move on to kangaroo too so
now we're basically going to do the
exact same setup
on the kangaroo to solvent so once again
we're going to grab a mesh flame we're
going to grab the edges and we're going
to grab the ash corners and okay so now
now we need our four subjects except
they're no longer for subject this is
probably the biggest difference about
kangaroo too we're no longer we're no
longer using four subjects to control
the simulation but rather gold objects
meaning that we're trying to get the
solver to tend to one solution we're
trying to get an optimal solution out of
that solar it is eventually going to
converge to a single solution I just
said a lot of things there which all
basically met the same thing and so if
we probability kangaroo to the kangaroo
to tab we see that we now have a
collection goals and so let's find our
Springs some of them have changed name
so the spring is no other cold springs
it's called your length so we're using a
link solder and we'll plug our lines
into the links over and now by default
the length is going to be the rest link
which is pretty useful but I'm also
going to just copy and paste this
because maybe we do still wants more
parametric control over the length of
our lines of link over the length
contraction in our simulation um okay
and we're also going to drop in a merge
node okay so those are out those are
Springs or L length length gold objects
we also need a URI force which is one of
the core unary force as well it is now
called a load okay and so load it
requires the same things it requires
mesh vertices to work on or just
vertices and simulation to work on we'll
plug those vertices into our points over
here and then we also need a force
Victor um so our fourth sector is going
to be a unit c and then i'm going to
plug that into my merge and okay now
what else do we need we need our our
anchors and our anchors are also gold
objects they are not they do not plug
surrender the solver anymore so anchors
we plug it means grandees down here
actually just that we were working in
order but tablet right there okay so now
we have our anchors and now I probably
have enough to get the simulation going
okay and you may have completely missed
what happened that let me just grab a
Geo node actually now so this is this is
another interesting thing about the
kangaroo to solver is that the geometry
coming up a geometry that you put in is
the geometry that you get out so if you
don't plug a mission directly in any
sort of way I don't get a mesh output
and the way we have to do it is with
this new method which is called the show
method so what do I want to show you
want to show this mesh and this show
method is also a goal object okay and so
there we have it and now um well we're
also really interesting about the ways
show method works is that the the
geometry
so the geometry pre simulation is
actually affected so can you see if I
can explain this like over here this is
this is our out but this is our final
result but this is our input and you can
see that our input has actually changed
in comparison with the input over here
which is in my mind at least kind of
strange and show silver or the show goal
doesn't actually do it it doesn't
actually show it itself so i don't know
maybe maybe you like that maybe you'll
like me and you don't like that so much
but we can just preview it all by
telling this on over here and you know
we've got control over here but you'll
notice it's not bouncing in the same way
that this simulation just that's one
thing I really like about the initial
version kangaroo do i change the spring
link over here still and a term
simulation on you can see with goal or
bounced going on here it's a bit more
physically accurate let me just preview
that up pause that simulation so what we
have actually if we do want to achieve
something a bit more like our original
kangaroos overs we have different kinds
of soldiers now in kangaroo too so we
have the bouncy so look and bouncy
silver works the Dancy solid is really
interesting because we can get we can
get some interesting control over the
simulation once again so plug my gold
objects in and it's going to throw an
error because we need a button to Reese
pardon to reset and I'm going to have to
reset the soul as well because at the
moment it's working on this geometry
which is not the end for geometry that
we have
okay so there you can see we are getting
a much more version one type of
simulation but you'll also notice this
is going to converge okay so how can
what can we do with the valley soul we
can grab a slider and we can control the
amount of substitute calculations so if
i give this a maximum value of something
like fifty fifty might be a bit absurdly
high but if i plug this into my
iterations here and I'm just said to one
for now so this is this is the amount of
amount of steps in between some every
results that we see so if I hit this
button we're going to get something much
more interesting kind of fluid e folding
more I guess jellyfish-like results
which is which is really interesting um
whereas if I set this to somewhere like
50 it so it's calculating a lot more
steps a lot fastest we don't see as much
in the in betweens when I reset this
it's very very quick to to give me a
solution so by default in the default
value for this somewhere around 10 so it
has a bit of balance to it but not an
absurd amount so that it is so much
jellyfish-like as I just said um and
which wait for that to converge and so
that is that's probably the main the
main difference between these two souls
that this this instantly gives you the
result and the Serb well this obviously
is the bouncy soul that has some bounce
to it now we also have a another kind of
silver
that is the VC where is it that is the
steps older now listen this is probably
the closest version this is the most
akin to Kangaroo one in my opinion at
least I guess that is it is debatable um
so once again we'll plug out gold
objects in but we don't have a reset
this time we have an animate and so the
way this works is we just need something
some sort of value that's going to
change in order for this to animate so
we could either use something like a
counter plug that in and then we
Russians for a reset and we'll need a
timer and so every time this value
changes it's going to on the result is
going to step forward but we do still
have the the bounciness of this of this
silver um attainable in this solution as
well you can see the iterations he is
basically the same as sub iterations
will be here so if I drag this out
syphilis 21 like I did pull and then
reset this button here you can pause the
simulation isn't something you can't do
with the other two soldiers I believe
and you kill me you can actually um okay
let me check that before I'm stepping in
on sense if we grab a boolean and
[Music]
actually let me do it I mean this one
and this one makes a bit more sense to
do it on which result he was giving me
it's quite difficult to tell let me just
connect these
reset that and then let's to this okay
so you can cause these um yeah but you
need okay in my mind though it is it is
a bit easier to do it with this way and
the way you do that is let's plug out
for gold objects in here reset
simulation double click this double
click it again to pause um or another
way you could do it because all this is
asking for is changing them as long as
the value is greater than zero you're
going to get animation and so what this
means is in fact you can just put slider
in here and you can change as much as
you like and then as soon as you let go
of it the simulation will pause and then
if you set it back to zero the
simulation resets so here I am
progressing the slider forward and then
reset it yeah a really nice way to
control the animation if you will I mean
I do i do a lot of animation with
kangaroo and I think I mean this is
actually quite a nice quite a nice way
to work with it okay and now one last
thing that I want to talk about kangaroo
to it is the he grabbed the grab goal
now this is a really cool feature
something that you definitely can't do
in inversion one of kangaroo and it's
really simple to set up basically you
need a boolean to ensure its on by
default it's set to true so it is on we
plug this into our goal objects in fact
i'm just going to i'm going to plug this
back into our bouncy solver for this
test i'm going to set the specter true
maybe I'll but my iterations down so
we've got a bit more jellyfish kind of
geometry going on and it's just reset
this now I don't want that much
jellyfishing maybe I wanted a singer bit
higher yeah something like that it's
working for me and so with the grand
silver policy grab goal if you just
hover over this it tells you how to use
it you hold the Alt key and drag with
the left mouse button and we can
basically directly interact with the
geometry inside of Reiner which is
really really cool if I take the
strength down on this some on these
lines not that much then we set this to
10 we can really yeah you can really
have a lot of fun with this I mean
especially if you have a lot lower
tensions and really gluck lower come
loading let's try really lower the load
lower strength you can really you can
see how this will be a lot more a lot of
fun um Daniel pikers done some really
cool videos showing what you can do in
the new kangaroo silver with the grave
objects you can do some really cool on
kinetic simulations maybe I'll show some
of those further down the track um but
there's just one maybe what I think he
gets me one more thing that I want to
talk about you'll see when I finally get
to the list of things I want to finally
get through a list of things um so the
other thing too
is that this sort of tried to Daniel's
sort of try to unify the strengths
across components a lot more so you'll
notice that when this was at one when he
said the strength back to 10 um and I'll
just turn this off can go back to my um
my original shoulder he said that okay
so if i compare this result with this
result you can see they're pretty close
to each other but over here I only had
four smack the loading of one whereas
over here I had a force vector loading
of a hundred and then if we look at my
springs spring stiffness was set to a
thousand result here it's only set to 10
so he's really tried to really try to
bring these values or really try to
unify it values a lot more so the value
of one across most of these will still
do quite a lot of how should we say a
lot of grunt work or they'll still have
a pretty strong effect but what is
really interesting to note to note
actually is that because the anchor is
now a gold object that means that the
the geometry doesn't actually sit it's
not actually a 100-percent tight anchor
it has it has some sort of the Leicester
City to it where if we compare this this
result you can see the point is slightly
off the origin as compared to the
original simulation which is bang smack
at where the anchor should be so for me
this is a really interesting sort of
dichotomy about in UK a resolver it's at
the anchors you can even change the
strength of the anchors shocking moment
it's set to a thousand this is obviously
because anchors require lot enough
strength in order to work and so if we
dial this back
you can see the anchor is losing a lot
of the pull and if we were to plug this
into hearing my action see ya you see
the whole whole geometry the whole point
moves in and of its own accord and
that's a really interesting result of
the way the new kangaroo solver works
and one sort of I guess maybe this is
the final thing that I talked about is
that the springs component had a lot
more parameters to work with before I
think you could you could really harness
and gain a lot more control of what the
original solo is doing and for me these
two things the the anchor tightness and
the way to springs component works maybe
maybe the main reasons why I keep coming
back to kangaroo version want me just
some of the things that in my mind work
a little bit better so my advice once
again don't discount kangaroo once
because old still a great silver but at
the same time you know you might just as
well find that Kendra to is leaps and
bounds better especially with some of
the new new features it might absolutely
one hundred percent video thing okay so
that's it for me hope you guys really
enjoyed this video um like it subscribe
yeah I'm getting on that bandwagon now
because I'd love to have more people on
my channel um yeah join up thanks
everyone