I was bad as math and I decided to learn graphic design and 3d animation because I thought I would never have to learn math with that career. Now I have to do math AGAIN!
Thanks so much for your time and effort making this tutorial. I'm a pretty veteran Blender user but couldn't get a grip on the simulation nodes, even after watching several tutorials. Apparently I needed your calm and detailed explanation to make some progress. ❤
Here's my result based on your work, hope you like it! I've managed to implement 3d movement, waves and turbulence. th-cam.com/video/BwNn2tTBBoo/w-d-xo.html
Hey I was watching your first couple of sentences in this video and it made me think, Deconstructing other peoples files to learn how and why they work is an excellent and useful tool. Itd be cool to have a video where you choose some project file and then livestream as you figure out how it works, and think out aloud as much as possible, and then possibly edit it into a video about how to learn from a file.
Hi Chris, Great tutorial. I like the way you explain everything that you do and why you do it. I also like the idea of subframes. It makes so much sense. What I did not understand at all was a step at 6:47 . When the the simulation not worked at expected you just added the location vector of the icosphere , which makes no sense, but made the simulation looking more evident. When I tried your setup on my system and I needed to do the same addition, but I was using Blender version 3.6.0. At the end the simulation looks good when you nuge the particles from the center to outside, but it looks not so nice when you nuge them into the center. There seems to be a bug in Blender 3.6.0 the causes this issue. I upgraded to 3.6.2 and immediately the simulation works perfect without the step (addition ) you did step at 6:47. I hope to see more such great tutorials from you. 👏
I was following along and was getting confused why it wasn't working, I had the input nodes backwards on my subtract you made at 11:25, gotta remember that :)
Untill 11:42 i thought ...are you making the same Node setup as other in Tweeter.. but after 11:42 it became more interesting and I got new Knowlege with your help! Thank you very much!
Excellent tutorial Chris! Really love your explanations as you work through as totally helps me as a person who doesn't really get the math, but following along helps that understanding rather than just plonking down geo nodes.
Awesome tutorial, I did it without checking your previous videos. I understand simulation is all about maths and calculations. I made an awesome music visualiser by baking the f curve to sound for the size of the orb, cracked up the particles numbers and it looks absolutely stunning. Thank you. I will tag you on IG when ready
Bro can you make a tutorial about all vertex, edge and face nodes in geometry nodes I really couldn't find any great tutorials explaining them practically like you do in your videos please make a tutorial about it bro
This is a great tutorial, the level of detail you went into was at a good balance of not overwhelmingly complex but also not so basic the viewer struggles to understand - good job! I do have a question that I would be very greatful if you (or anyone here) could try to answer; I am trying to create a similar simulation to this, however I want the particles to collide with the boundary elastically and rebound changing direction (but not speed) in the process. I dont want them to be moved in the normal direction of the boundary surface but to instead have their velocity vectors reflected around the normal of the collision point. I have tried so many different setups using the vector math reflect node and a switch (if distance > radius, then use reflected velocity vector) the problem is instead of the particles bouncing off the boundary they just first slide along the boundary up until a certain point then stick there and shake back and forth - I have no idea what im doing incorrectly so any guidance would be more than appreciated. Thanks :)
Hey Chris, great tutorial 👍 I'm a bit late to the party, but one question: when you try to determine if a particle is inside the icosphere, instead of subtracting the two position vectors and then calculating the length of the vector you could simply use one Vector Math node set to "Distance".
Great tutorial! I prefer to use named attributes instead of piping a capture attribute node from the start to the beginning. This helps to keep the layouts clean. :) But it might be confusing, since you don´t see the data flow.
Great lesson! Chris, how to make the color transition smoother? The balls change their color too quickly according to the color ramp. How to make the color transition much smoother, not so fast?
trial and error ;) find a frame with a fast moving particle, then dial in the factor multiplier in the shader node to map this max speed to a factor of 1 (=right-most color on the color ramp)
Thanks for your videos Chris. They inspire me to continue learning more aspects of Blender. Just this weekend I have been using Blender to do soft body sims for a lot of objects. Too many objects... The sim just never stabilizes. I ended up writing a Python script to do away with all the simulation and generate the image I want from scratch 😂
Great tutorial, thanks! Is there a way to add a gravitational interaction? So that, for example, after a collision, all the particles tend to go back towards the collider. Would be very useful for planet collisions like Theia-Earth!
If you want to "add" gravity so all particles are attracted to something, just calculate the position difference between its position and the center of the "mass" (the collider position), this give you the distance (length) and the direction (normalize the vector), the you can add it to the new position of the particle (if you want more realistic gravity, scale it with the inveerse squared of the distance) and multiply it by the "mass" (use another math node set to scale and a fix value).
How do I proof that I at least understood something? By spotting that you missed the later set radius of points instances to be calculated into the vector to to push them out of the big icosphere, hence they hug the border being half in. Thank you for the explanation. Great video. Reminds me that I think the capturing on attributes at each point is the hardest to understand, because you lose that context in the nodetree after some time. Most important feature to add is comment field for each node to allow documentation. In code you can do that, in nodes it is very difficult and I think an oversight from Blender devs.
Wouldn't it be possible to make a loop by having a loop index, that is output at the end of the simulation and increased at the beginning. So you can compare it with a max number and if the index is >= max number you do not do any calculation in the simulation. Now the big question is when to reset that loop index ? I suppose the simulation handles 1 particle at a time, so when the particle index changes, we set the loop counter to 0.
I was bad as math and I decided to learn graphic design and 3d animation because I thought I would never have to learn math with that career. Now I have to do math AGAIN!
It's everywhere ;)
Lol but this is a more enjoyable way to do math xx
I know the mic quality isn't great in this video. The nvidia broadcast noice reduction was switched on after an update. Oh well...
The audio quality is totally fine
NOTE: Instead of repeating the same node group 10x you can now use a "Repeat Zone" 👍
How cool is that?
Thanks so much for your time and effort making this tutorial. I'm a pretty veteran Blender user but couldn't get a grip on the simulation nodes, even after watching several tutorials. Apparently I needed your calm and detailed explanation to make some progress. ❤
Glad you like it!
Here's my result based on your work, hope you like it! I've managed to implement 3d movement, waves and turbulence. th-cam.com/video/BwNn2tTBBoo/w-d-xo.html
6:34 - 6:50. You test and figure it out instantly. That would be a day-ender toiling for me.
Very easy to understand. Thank you for detailed comments of what you are doing
this would be really cool for simulating those bioluminescent algae in the ocean
thanks for your amazing tutorial. It takes me many improvements
Thanks Chris, you've really helped me to understand order of operations here! Had loads if fun👊🏾⚡
Impressive! Thank you!
Hey I was watching your first couple of sentences in this video and it made me think, Deconstructing other peoples files to learn how and why they work is an excellent and useful tool. Itd be cool to have a video where you choose some project file and then livestream as you figure out how it works, and think out aloud as much as possible, and then possibly edit it into a video about how to learn from a file.
🤔hmmmmm
Hi Chris, Great tutorial. I like the way you explain everything that you do and why you do it. I also like the idea of subframes. It makes so much sense.
What I did not understand at all was a step at 6:47 . When the the simulation not worked at expected you just added the location vector of the icosphere , which makes no sense, but made the simulation looking more evident.
When I tried your setup on my system and I needed to do the same addition, but I was using Blender version 3.6.0. At the end the simulation looks good when you nuge the particles from the center to outside, but it looks not so nice when you nuge them into the center.
There seems to be a bug in Blender 3.6.0 the causes this issue. I upgraded to 3.6.2 and immediately the simulation works perfect without the step (addition ) you did step at 6:47.
I hope to see more such great tutorials from you.
👏
Holy crap. This is rad.
I was following along and was getting confused why it wasn't working, I had the input nodes backwards on my subtract you made at 11:25, gotta remember that :)
Untill 11:42 i thought ...are you making the same Node setup as other in Tweeter.. but after 11:42 it became more interesting and I got new Knowlege with your help! Thank you very much!
Excellent tutorial Chris! Really love your explanations as you work through as totally helps me as a person who doesn't really get the math, but following along helps that understanding rather than just plonking down geo nodes.
Thank you!
Thanks for your videos Chris!
Awesome ! thanks
Is it possible to distribute objects instead of points around the central icosphere ? how would you manage that ? Thank you in advance
One of the best geometry Nodes tutorials out there
♥️
Incredible :) Sooo cool :) That's why I love the virtual world :)
can you make active ragdoll physics with simulation nodes?
Don't think geonodes are a good choice for this...
@@chrisprenn would it be possible to do it in other ways?
sehr geil, Danke für das Tutorial.
This was amazing, thankyou so much
Awesome tutorial, I did it without checking your previous videos. I understand simulation is all about maths and calculations. I made an awesome music visualiser by baking the f curve to sound for the size of the orb, cracked up the particles numbers and it looks absolutely stunning. Thank you. I will tag you on IG when ready
oh yes please share - I wanna see!
I really appreciate this tutorial. I'm just wondering how people learn this kind of stuff?
Really astounding! Thanks for sharing knowledge!
very teacher-material.. i like the way you explain
thank you :)
incredible tutorial!!!
Thanks!
Bro can you make a tutorial about all vertex, edge and face nodes in geometry nodes I really couldn't find any great tutorials explaining them practically like you do in your videos please make a tutorial about it bro
get it!
This is a great tutorial, the level of detail you went into was at a good balance of not overwhelmingly complex but also not so basic the viewer struggles to understand - good job! I do have a question that I would be very greatful if you (or anyone here) could try to answer; I am trying to create a similar simulation to this, however I want the particles to collide with the boundary elastically and rebound changing direction (but not speed) in the process. I dont want them to be moved in the normal direction of the boundary surface but to instead have their velocity vectors reflected around the normal of the collision point. I have tried so many different setups using the vector math reflect node and a switch (if distance > radius, then use reflected velocity vector) the problem is instead of the particles bouncing off the boundary they just first slide along the boundary up until a certain point then stick there and shake back and forth - I have no idea what im doing incorrectly so any guidance would be more than appreciated. Thanks :)
Hey Chris, great tutorial 👍 I'm a bit late to the party, but one question: when you try to determine if a particle is inside the icosphere, instead of subtracting the two position vectors and then calculating the length of the vector you could simply use one Vector Math node set to "Distance".
True! I usually just think of what to calc and don't even check if there is a utility node for that. Thank you!
Well done sir, and thank you
25:47 Oh Yeah! I can see it! WAY WAY BETTER ! Awesome Dude! Your setup is the best currently! Excelent for Sand Renders... continue watching )))
Great! Thanks
This is really cool
Great tutorial! I prefer to use named attributes instead of piping a capture attribute node from the start to the beginning. This helps to keep the layouts clean. :) But it might be confusing, since you don´t see the data flow.
I use named attributes to get data out of the simulation zone and noodles inside... Whatever works works ;)
This is fantastic! One question... you were using multiple position nodes that were fairly close to each other. Could you have used the same one?
yes, the node just tells GN which attribute to read
@@chrisprenn Got it! Thank you for your help!
Great lesson! Chris, how to make the color transition smoother? The balls change their color too quickly according to the color ramp. How to make the color transition much smoother, not so fast?
trial and error ;) find a frame with a fast moving particle, then dial in the factor multiplier in the shader node to map this max speed to a factor of 1 (=right-most color on the color ramp)
Amazing 😮
Awesome
Thanks for your videos Chris. They inspire me to continue learning more aspects of Blender.
Just this weekend I have been using Blender to do soft body sims for a lot of objects. Too many objects... The sim just never stabilizes.
I ended up writing a Python script to do away with all the simulation and generate the image I want from scratch 😂
grande crispy da Eraclea
Great tutorial, thanks! Is there a way to add a gravitational interaction? So that, for example, after a collision, all the particles tend to go back towards the collider. Would be very useful for planet collisions like Theia-Earth!
If you want to "add" gravity so all particles are attracted to something, just calculate the position difference between its position and the center of the "mass" (the collider position), this give you the distance (length) and the direction (normalize the vector), the you can add it to the new position of the particle (if you want more realistic gravity, scale it with the inveerse squared of the distance) and multiply it by the "mass" (use another math node set to scale and a fix value).
self collision 17:00 #bookmark for next time
How do I proof that I at least understood something? By spotting that you missed the later set radius of points instances to be calculated into the vector to to push them out of the big icosphere, hence they hug the border being half in. Thank you for the explanation. Great video. Reminds me that I think the capturing on attributes at each point is the hardest to understand, because you lose that context in the nodetree after some time. Most important feature to add is comment field for each node to allow documentation. In code you can do that, in nodes it is very difficult and I think an oversight from Blender devs.
Hi, I even had that part recorded but cut it out since the video is already so long without it :)
Great tutorial, many thanks
Awesome Tutorial Chris!!! Is there any chance to restrict the particles to only move on the X and Y axis (and avoid them to move into the Z axis?
Multiply position with a 1,1,0 vector
Or just set the ball Location ( Z ) axis to ( 0 ) and they wont fly anywhere alse but X and Y. Only works if you view it from the top tho :))
how do you get the position of the particle from the 'distribute points on faces' node?
that's one of the first things I do in the tutorial: use the Position field of the geoemtry (=points)
Hi, where can i get simulation branch PR104924
Hi, how can I scale the particles :')?
solved xD
Each point has a size/scale you can set
Wouldn't it be possible to make a loop by having a loop index, that is output at the end of the simulation and increased at the beginning. So you can compare it with a max number and if the index is >= max number you do not do any calculation in the simulation. Now the big question is when to reset that loop index ? I suppose the simulation handles 1 particle at a time, so when the particle index changes, we set the loop counter to 0.
Don't forget the entire node tree is executed once per frame. We want a loop that gets executed 10 times per frame.
how do you stop particles from moving in the z direction during the simulation?
simply add a vector multiply x=1 y=1 z=0 to the end of each position calculation
@@chrisprenn Thank you very much!
E
M
E
R
G
E
N
T
i figured it out, but thanks for your reply! :-) th-cam.com/video/piHhssx4uPs/w-d-xo.html
Any one tried this with version 4 + of blender ?
is there any significant difference to what's shown in the video?
is your last name Bacon?
😜
❤♥️❤♥️❤♥️❤♥️