Geometry Nodes as Creative Outlet | Blender 3.0 tutorial

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
one of my favorite things to do in blender is to experiment mainly by combining different modifiers for example this is a result of messing around the cloth physics the decimate modifier and the wireframe modifier what makes experimenting with modifiers relatively easy is the fact that whatever modifier you add to the stack you almost always get immediate feedback for example if i apply a wireframe modifier to a mesh without knowing anything about it i can probably deduce by the resulting wireframe that the purpose of the modifier is to remove all faces and add thickness to the edges this thickness slider is also very descriptive and even if i didn't read the text i would instantly find out what it does as soon as i change the value my point is that when you're experimenting with modifiers there's a sort of intuitiveness to the whole process which is largely lacking when you're starting out with your arms and notes and one of the reasons for that in my opinion is the fact that when you start learning it you're not even sure what yummy notes is even supposed to be used for that's how it was for me at least seeing renders like these blew my mind because the thought of creating something like that using only notes seemed like a nearly impossible task but the thing is renders like these aren't actually created purely with geometry notes instead yom denote is merely a tool used in conjunction with more standard 3d procedures like shading and modeling in order to create the final effect so what is yummy notes good for then well the short answer is that right now is good for distributing points and instancing yumtry on those points and while that might not sound like a big deal it's the key to creating things like this with very little effort so let me present to you an easy setup that can be used as the base for learning the environments by experimentation let's start by adding a uv sphere to the scene all right that's enough modeling for now so let's move over to the arm to notes workspace and press new to add a new geometry notes instance i'm going to add all the notes that the basic setup will be comprised of and go through what they do as i connect them so let's add a join geometry node [Music] a instance of points node and align euler to vector node a cylinder node from the mesh primitives and finally a normal node [Music] the cylinder node or any node from the mesh primitives is just a way to use the basic meshes that are available in blender by default without having to add any new objects to the scene it also comes with the added benefit of giving us control over the shape and vertex count right here in the node itself and these values can be modified at any time plug the cylinder node into the instance input of the instance and points node and then connect the geometry socket of the group input to the points input as you can see nothing has changed in the scene and that's where the yarnyard denote comes in by connecting both the group input and the instance and points node into it we now see the cylinders that were instanced along with the original mesh though they are way too large so set the depth value to 0.25 and the radius value to 0.05 [Music] while we're at it let's also set the vertices value to 5 to create more of a pillar-like shape without the join geometry node we would only be able to view either the original mesh or the instanced objects the next step is to rotate the cylinders to be aligned with the normals of the base mesh that's what the normal node and the line euler vector node are for the normal node holds the normal vectors of the points that we are using for instancing and the align euler to vector node can use those vectors to calculate the correct rotation to be applied on the instances so connect the normal to this vector input and connect the rotation output to the rotation input of the instance on points node the last thing we need to do is set the direction of the line euler node to c since we want the cylinders to be aligned on their z axis it should be noted that this method is using the vertices of the original meshes points and therefore the amount and distribution of points is dependent on the vertex count of the mesh sometimes this is what you want since it gives a fairly even distribution on the mesh but there are other ways to distribute points by adding and distribute points on faces node between the instance of points node and the group input node we can distribute far more or less points than the vertex count of the base mesh by changing the density value though in order to apply the correct rotation to the cylinders while using this method we need to use the normal output of the distribute points on phases node instead of the normal node and that's pretty much all we need to be able to start experimenting so where can we go from here well let me show an example with the base setup done let's make a copy of the yum note instance and rename it to noise scaling in this example i will use a noise texture to determine the scaling of each individual cylinder again i will add the new nodes that i need and explain them as i connect them so add a noise texture set to 4d i combine xyz node [Music] and a map range node [Music] if we plug the factor of the noise texture into the scale input of the instance on points node you can see that it applies different scales to every cylinder however the scaling is applied on all three axes which results in a uniform scaling of each cylinder so let's make it so that the scaling is only applied on the z-axis of the cylinder by instead connecting the noise texture to the z input of the combined xyz node and set the x and y values to 1. the way this works is that the noise texture outputs a value between 0 and 1 across the object and we then use that value to set the c scale of the cylinders depending on their position on the base object and in extension the value of the noise texture at that point on the object here's a visual representation of the distributed noise values with black being zero and white being one since the noise values only goes from 0 to 1 the scaling effect isn't very noticeable we can fix this by adding the map branch node between the noise texture and the combined xyz node by increasing the from min value and decreasing the from max value while also increasing the 2 max value we can create a more noticeable pattern and to avoid these black circles set the 2 min value to some small value like 0.001 if we adjust the values of the noise texture we can modify the distribution pattern and when we find something that we like we can even animate the pattern with the w slider of the noise texture at this point it might be interesting to change the object that we are instancing to something else for example what would it look like if we swapped out the cylinder for let's say a sphere well it's easy to find out just that a uv sphere from the mesh primitives and connect it to the instance input of the instance on points node and set the radius to something like 0.025 to make the instant spheres scale uniformly just connect the map range to the x and y values of the combined xyz node as well and just like that by simply doing some small modifications we went from having a system that makes growing pillars to a system that creates bubbles on a surface of course the object the instance doesn't have to be a mesh primitive in fact the true power of this setup becomes apparent when you instead instance more complex objects like flowers or crystals for example [Music] and honestly that's really all there is to it the reason why i think the setup is so good for experimenting with is the fact that almost any changes you make to it much like when experimenting with modifiers will give you immediate feedback and i think that in order to get a grip of how yarmouth notes actually works having this visual feedback is extremely beneficial now before i leave you to play around and learn on your own with this system i want to show you one more way to control the scaling of the inside objects and that is by using the proximity node make a copy of our current units instance and rename it to proximity setup we will use the same scaling methods as before but instead of using a noise texture we will use an object in the scene to change the scale add a uv sphere in the scene and rename it to proximity objects [Music] then drag the object from the collection overview into the geometry nodes workspace to create an object info node and change it from original to relative next add a geometry proximity node a position node a vector math node set the distance two math nodes with one set to multiply add [Music] and the other set to multiply and finally a random value node connect the geometry output of the object info node to the target input of the geometry proximity node then connect the position outputs of the position node and the proximity node into the distance node this gives us the distances from the faces of the proximity object and the points of the original object next connect the distance value output to the value of the multiply add node and set the multiplier value to negative 1 and make sure that clamp is enabled by doing this we can then use the addend value to control the drop-off of the scaling effect finally connect the output values of the multiplied node and the random value node into the inputs of the multiply node and set the max value of the random value node to something like 15. [Music] to better see what's going on select the proximity object and in the object properties tab under viewport display set display as to bounce now when you move around the proximity object you can use it to control the scaling of the instance objects since the scaling is determined by the proximity of the actual geometry using more complex objects as proximity objects can result in really cool effects [Music] if you're new to geometry notes you might feel a bit overwhelmed with this but that's okay it's not an easy thing to grasp even for someone with previous experience in blender but i hope that this video and the eu note setups we created has at least given you some insight in how to approach the optional system and i really encourage you to play around with the setups to get a good understanding of how it's all connected as an ending note if you're not sure where to go from here i have a challenge for you modify the noise scaling setup to affect the positions of the instance objects instead of the scaling if you need a hint not to do this i have included the extra notes you will need to use in the description so good luck [Music] you
Info
Channel: Khamurai
Views: 14,511
Rating: undefined out of 5
Keywords:
Id: ATiU1T06EmQ
Channel Id: undefined
Length: 11min 40sec (700 seconds)
Published: Sun Oct 31 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.