I know this is absolutely irrelevant, but his voice is ASMR for me. His plosive sounds are like walking on paper bubble wrap, and I can't get enough of it
Index manipulation is one of the harder thresholds you need to cross when moving onto intermediate and advanced parts of node construction. It hurts your brain a bit at first but it's also very satisfying when you manage to solve little puzzles like this one. This is a great demonstration of it, thanks! Always look forward to more Geometry Nodes tutorials from you.
🤯 while watching this tutorial my neurons got the plexus effect... just a few connections remain, and most of them got deleted. Thanks fot the Tutorial!
Honestly one of the best explained tutorials to a geometry nodes topic out there. I appreciate that you explain every logical decision and also which kind of results from the calculations you expect and why. Great!
A nice addition to this set-up is to have the connections fade out before they disappear. Add another Store Named Atrribute after the other four (before Delete Geometry) and name it 'fade'. Plug the Distance to the Value input of a Map Range (Smoother Step looks best) using these settings: From Min:0 From Max: plug in your distance greater than value To Min:0 To max:1 Then place a Mix Shader in Cd material between your BSDF and Material Output and add a Transparent BSDF to the bottom socket and add another Attribute and pluc the Fac to the Mix Shader Fac. Don't forget to use the same name 'fade'. In Eevee set the material to 'Alpha Blend'.
You can also use Scale Elements on edges for a similar effect; if you set the scale center to one of the verts, it looks like the vert is "reaching out" to the other one
Late to the party here, but this is exactly what I'm trying to achieve, I will be forever in your debt if you could let me know the answer to this. Can you clarify how to set the scale center to one of the verts? Which node is plugged into "center" please? And is the scale elements node placed after delete geometry? @@borington4317
Mind blowing! Absolutely! I need to try that! And I know something you don't know :) It hurts me to see you copy the nodes and plug everything back in, let me tell you, Ctrl+Shift+D duplicates selected nodes with the input noodles! Also works in shader nodes... you're welcome, keep on making such great tutorials and keep pushing the limits!
You can also invert distance through color ramp and connect it into "set curve radius" before "curve to mesh" to make short lines thicker and long lines thinner! Great tutorial, thank you. I love that you include theory in the beginning so that I actually understand what is going on!
Also you can store that distance as named attribute and use it in shader tab to give lines different hue/saturation/brightness or even transperancy depending on how long each line is
I really appreciate the forward momentum and explanation in these tutorials. I absolutely hate it when someone takes you down one path only to say "this is the WRONG way to do this bit and now I'm going to show you the correct way."
Simply amazing the power of this free software...thank you Manuel for having such an affable manner making something as complicated as this seem so easy...I could listen to you all day...
Really cool project. I'm confident I could have figured out the math myself and most of the rest, but the sample index nodes and store named attributes nodes is where I would've run into trouble. All the index stuff with fields is so useful but it's always a struggle for me to work out on my own. I really need to start using those nodes more and get more comfortable with them so this sort of thing becomes more intuitive to me. I appreciate the fairly complex but still understandable example. I'll be studying this quite a bit. Thank you.
Absolutely incredible tutorial, thank you for putting this together. This is a truly brilliant workaround the lack of loop nodes at the moment :) Some alternative approach at two places: - The module set-up around 10:40 could be replaced by a "Wrap" function (from the same math node) using `Point Count` as a `Max` input. - For color/attribute retrieval, this can be done with less node at the end using `Index Sampling` by sampling the position; ultimately allowing to sample and transfer more attributes from the original cloud more easily than duplicating the mapping setup. It's technically an approximation but in this setup it's 100% reliable. Ultimately more maintainable and performant! :D
Just when I thought I had somewhat of a handle on Geometry Nodes, I work through a tutorial like this and just watch all the concepts fly way over my head. I honestly don't think I'll ever master this stuff.😕
Absolutely genius! One of the best geometry nodes tutorials out there! I do wish there would be something like a VEX node like in Houdini.... Then again, the progress they've shown with geo nodes is truly impressive.
This was amazing. I am glad you guys can use the Houdini mindset to build things out of Blender. I wouldn’t be able to solve this effect just by reading the docs. 😅
Thank you Manuel! Everytime I learn a great deal from your tutorials. I can't wait to see you dealing with the upcoming simulation/loop module of geometry nodes!
finally found someone else doing the looping in GN. it's not so well known, and I hear people complaining that they need loops when they already have a semblance of them.
At time stamp 19:35 you say to add a math node and set it to modulo. However you choose multiply from the dropdown list. the correct location was shown earlier in the vid at timestamp 10:30 just incase like me others get a little confused.
If you are lazy like me and don't want to get the latest blender version to get the new nodes, you can still make a very similar setup: replace Distribute points in volume by duplicating Suzanne a few times and scaling them down and feeding in the joint geo into a Distribute points on faces node replace Sample index with a Transfer attribute I had to handle the color attributes a bit differently at the end but the result is similar
Thanks, much better method than what I found lately and posted on Twitter, it seemed weird with field plugged to switch boolean, your method have more sense.
Coming from Maya, I'm on a Houdini and Blender learning spree and I absolutely love tutorials like this. Thank you for all the time and effort you put into this! Manuel mentions he did a similar tut for Houdini about four years ago. Does anyone have the link? (can't seem to find it).
Wow very nice tutorial and you explained all the details :) Thank you so much. I don't get one thing. How do you create such a nice effect (glare/sparkling/bloom etc.) like in the intro of this tutorial?? I don't even come close to this
I suppose it is done incompositing, I haven't tried the compositing part of Blender yet, but this kind of effect is straightforward either in After Effect or Nuke using some kind of exponential glow. I suppose also that the DOF is rendered through camera.
Is there an updated video you know of, for 4.2 just learning Blender. At 19:00 I don't see any visible connections, even after deleting the viewer node. Or it just is a straight line going up. Some of the Node settings are different. The one downside of this amazing Program is if youre learning it from scratch, its updating so fats that its impossible to keep up with lol
With the latest 4.0.2 (which is 1year after you made this video. A number of things have changed in GNs! there spot where you add Instances to Points, doesn't have the Points Node to plug into. That is as far as I could get with this tut not knowing more about GN and how they translate to the newer versions of Blender. Really cool though, I just wasn't able to do it in 4.0+
Thanks for the awesome tutorial, some of it is way above my head but i got it done. Could you point me in the direction of how the glowing/sparkling effects were done,.. was it in geo nodes, or composting???
Great tutorial, made it through to the end. All works fine except the colours, for some reason. I can't wrap my head around it. All is set up like in your scene but the spheres remain black.
Ended up working my way around it by plugging the random output of an object info node into the colour ramp directly in the shader. Doesn't give me fine control like the texture, but oh well.
So i guess i found a bug. When in the end u recall the named attributes " mypos " and the "trg_pos" when i put those in, i had only 2 lines in viewport not connected. I had to change the named attribute my pos to something else, and than choose again "my pose" and "trg_pos" and only after that the lines appeared correctly in the viewport.
This is some serious low-level GN. I am in admiration of how your mind works! I suppose the comparing of indices is only possible because they each have unique IDs going on in the background?
please more geometry nodes tutorial! also im curious if your geo nodes course on patreon is outdated? or if it's been updated with documentation of some sort
How would you deal with setting up tangent spaces for geometry and aniso shading purposes in Blender Cycles, including handling of singularities? What was done in New In Houdini 19.5 Pt.1 & Pt.2 just blew my mind, but I wouldn't know even where to start. If it's even within reach in Blender at all. Calculating tangents manually may be preferred over using derived from UV space, as tangents are - unlike normals - not smoothed across the seam. This will lead to horrific shading errors along the seam and I avoid UV seams now like the plague if I can. "Not an error" according to developers 😞
Wow I was listening to this tutorial and I saw like the math and the complexity is just cool but there is a much simpler way to connect the points or vertices and I am gonna try my best to explain cause it's something I tried alot and seems to get the job done On the points instance a bunch of ico sphere with a resolution of 3 to 4 (don't worry much about resolution cause I the end most vertices are terminated) then realize them and they are back to meshes Extrude the into vertices by a scale of zero, at this point let's call the output that comes of here mesh 1 Now set the position of the top vertices using the set position node in the following way ,connect mesh 1 to a ray cast node whose hit position is connected to the position in the set position but also its "is hit" is included in the selection of the set position by selecting "top vetices"from the extrude mesh and (boolean math node included) "is hit" included Going back to the ray cast node in the ray cast direction the normal is used before the current mesh was even extruded (capture attribute of normal vector involved) and still this won't work due to the source position so to be done is that you take the position connect to vectormath set to add then connect the vectormath to the source position afterwards then in the vectormath set to add connect the scale normal vector to the unconnected socket that is scale to a very small amount even 0.000001 is enough cause blender will know what you mean and finally you'll get a bunch of ico spheres all linked together and now the ray cast length determines the maximum distance between edges connecting such vertices Now go a head and add another set position node and this time from mesh1 set a separate connection to a sample nearest surfers node set for vector attributes and its value output connect to the position socket in the newly added set position node Back to sample nearest node the qn is what vector attribute are we actually sampling or transferring? and a simple way to answer this is the mean position in mesh islands and how do we get that ?so here is how add in an accumulate field node Then set it to vector and in the group index connect and the mesh island index from the mesh Island node afterwards connect the "total" from the accumulate field node to a vectormath set to divide and the real qn is what are we dividing it with ? The answer by the number of points involved in the summation as in that's the basic definition of mean and this is how we get it Add in accumulate field node set to vector or float or integer it doesn't really matter just make sure the values in the "value " accumulate field is 1 In the group index you connect mesh island index from mesh island node and the total obtained is the number of points in the mesh island so just connect it to the vectormath and before you know it will like as if all vertices have been merged together to a single mesh island but in the actual sense they haven't in order to correct that just add a merge by distance node and abracadabra less math and more fun you got all vertices merged and number of vertices have been seriously shrieked down How you have a good day tutorial was great
Hmm, this feels like the wrong tool for the job. Much of what it seems like you’re doing here - for loops and index modifications - are perfect for code. Is it possible to write some geo nodes with Python?
Hey guys! Was wondering if you guys could do some geometry nodes racing track but on the stile of wipeout using modular pieces in geometry nodes. There is virtually no info on this anywhere
And once again, another tutorial of a feature I have been wanting that is using a beta version of a future Blender release that I cannot use with the latest current release version. It also explains why I had failed to do the same myself a couple of months back when 3.3 was released. Additional specialise nodes are required. It also enforces a sadness I have had for years that Blender has no real C++ or C plugin system where I am sure this kind of feature would have been added years ago (and many others) by coders so much more easily and efficiently with a few lines of code rather than so much complexity and so many nodes. Even so, It is quite impressive how one person has found a way to create this. Well done. I will just have to wait to see if the new nodes featured here that are not in 3.3 do make it to the released version of 3.4, if not added to 3.3 beforehand.
Very nice tutorial. There is one thing i have trouble understanding : How come the ''index'' node that comes before the ''sample index'' nodes samples the index of the 441 points, and not the index of the 21 original points? I'm wondering because the geometry that is plugged into the sample index is the original 21 points.
Hi!) Did you figure it out? I can't understand this moment too. It looks like the index field node reads the values from geometry plugged into "store the named attribute" node, but why?!!?!? .....
There seems to be a LOT of redundant distance checks in the description... The distance between point X and point X is always zero, no matter which order you put the same point in. And the distance between point X and point Y is always the same as the distance between point Y and point X. I really hope it's just a confusing mis-explanation? Any two points you already know the distance between should not be recalculated.. that's just wasted CPU cycles. Ah... 14 minutes in that was brought up.
Hi Tommy22Tall, you‘re right! Thanx for the heads up. If you do the index comparison first and delete the points. Then do the distance comparison on the remaining points, the setup should execute quite a bit faster!
Heyyy, you guys are amazing!!! Going to sub to your Patreon. I was wondering you could make a tutorial on the Geometry Proximity node and how to use it to scale a field to resemble growth, much like your Plant Growth with Fields tutorial but instead of scaling an empty using the proximity of an object. Crossmind studios made one which is absolutely fantastic would love to see your approach with your math knowledge. Thanks