Displacement with Geometry Nodes - Blender 2.93 Tutorial

  Рет қаралды 24,150

Erindale

Erindale

Күн бұрын

Пікірлер: 109
@Erindale
@Erindale 3 жыл бұрын
UPDATE: vertex_normal is no longer an attribute. Now you need to use normal instead. Just a quick one to get you up and running with displacement in Geometry Nodes!
@MsGe5
@MsGe5 3 жыл бұрын
thanks--kinda figured...
@andrewj22
@andrewj22 2 жыл бұрын
Attribute Sample Texture doesn't seem to be among the node options anymore either. Any suggestions on how to do this now?
@Erindale
@Erindale 2 жыл бұрын
There's a section for texture nodes now. Geo Nodes is more aligned with shaders now so it's easier to work
@myndwork
@myndwork 3 жыл бұрын
I think I enjoy watching your tutorials/videos more than trying them out myself. Always, great work 😊
@Erindale
@Erindale 3 жыл бұрын
Thanks so much - I really appreciate that! Hopefully the knowledge is there for when you need it!
@privacytest9126
@privacytest9126 3 жыл бұрын
That's fantastic, many thanks. I've been using surface displacements with high density meshes for a couple of years now, and I've always wished we had more noise textures to play with. This will be great to extend the range of displacements you can achieve. My only concern is at the moment I do everything via scripts, including fairly heavy booleans with meshes, and I'm struggling to see how to connect up this sort of automation with the new node based world. I'm getting close to making the stuff in physical objects now and I don't whether to take the plunge into nodes or to keep extending my army of scripted displacements! Many thanks again. It would be great one day to invite you over to our side of the Pennines for a social!
@Erindale
@Erindale 3 жыл бұрын
Hopefully the texture properties panel gets retired and the texture node editor gets rewritten so we can start doing more complex things more easily! I think scripting will be integrated with geo nodes but as a very last stage. They don't want to have a bunch of custom, unsupported, tools floating around the community so early on so they're just going to keep pushing the node based functionality :)
@privacytest9126
@privacytest9126 3 жыл бұрын
@@Erindale Don't push for it's retirement just yet, I'm still using it! For me the hardest part has not been the Blender side of things, but the CNC part which I'm still learning. I will investigate geometry nodes at some point, but first I need to prove that my current crop of surface displacements make nice things when feed to the CNC machine. But for those of us interested in algorithmic textures and growth patterns, the geometry nodes can only be a good thing. And thanks to your wonderful tutorials the future looks bright! 😉
@zetsology
@zetsology 3 жыл бұрын
That's really lovely. It's a pity that you're not able to combine/mix multiple texture sources inside GN like you would in the shader.
@Erindale
@Erindale 3 жыл бұрын
Oh yeah me too! I'm hoping the texture properties panel dies a death real soon. It's an artefact left over from Blender Internal which is why all the texture names are obsolete
@robinandcalebgalvan6301
@robinandcalebgalvan6301 3 жыл бұрын
@@Erindale I know what you mean, although I can see how better integration with the node editors, similar to how the material panel works with the material node editor, could be nice. It's always blown my mind that the procedural textures in the nodes and the ones in the texture panel didn't have the same options...
@LawrenceAaronLuther
@LawrenceAaronLuther 3 жыл бұрын
nice overview! I'm sure I'm not the only one looking forward to what Midge Sinnaeve is going to do with these kinds of possibilities.
@Erindale
@Erindale 3 жыл бұрын
Midge always makes incredible work! Very excited for that too!
@imaddictedbeatle
@imaddictedbeatle 3 жыл бұрын
Great video Erin! Getting us up to speed with the new features. Thanks! I have a question, when using a displacement modifier we can set the coordinates to global so when we move the mesh it changes according to the texture used. Is there a way to achieve this inside geometry nodes? I know that using the attribute randomize we can use the coordinates on a object info node to drive the seed on the randomize, but this only works for points and not to displace the geometry right?
@Erindale
@Erindale 3 жыл бұрын
Not the most elegant solution but you can take your 'position' attribute and Add (vector math) the Location from an Object Info node set to Original and with the current object selected. Use that to create a new attribute to use as your mapping attribute: i.imgur.com/mxTq4rJ.png I'm not sure what you mean by the second part? You can add a random vector to the position if you want to randomly displace the geometry
@imaddictedbeatle
@imaddictedbeatle 3 жыл бұрын
​@@Erindale Thank you! That's exactly what I was trying to achieve but hadn't figured out exactly how. Sorry I wasn't able to explain the second part properly, what I meant was: When distributing objects on a plane to get a random distribution of the points when moving said plane I used to drive the seed value with the planes location: i.imgur.com/IwmPXCP.png (which probably is not the right way to do it) and that workflow doesn't work to displace the geometry so I was stuck I guess. I'm new to this type of node workflow and trying to learn more, so thanks for the huge help!
@GaryParris
@GaryParris 3 жыл бұрын
Excellent, blenders power levels up :O)
@TheDeepDiveOriginal
@TheDeepDiveOriginal 3 жыл бұрын
Although Im into procedural noise sculpting (visual or audio) for about 15 years, Im staying away from Geometry nodes so far. Dont get me wrong, im very happy with the entire shebang, only I think its too limited for actual commercial work so far. On the other hand, looks like its slowly but steadily building functionality. Maybe its time to jump into this )
@Erindale
@Erindale 3 жыл бұрын
It's very much in its infancy at the moment so on the one hand, not richly featured and maybe not right for your commercial work, but on the other hand, you can learn the whole platform in an afternoon which will make it easier to pick up in a few months once it's been padded out!
@bronzekoala9141
@bronzekoala9141 3 жыл бұрын
Yes - I really like that they are exploring this... but I stil kind of hope for a redesign. The current system just doesn't strike me as intuitive at all even compared to animation nodes. Maybe I will change my opinion once I get to know it better and once there are more nodes... the whole Attribute Workflow just seems kind of convoluted to me.
@Erindale
@Erindale 3 жыл бұрын
Attribute workflow isn't staying at the main interaction. It's just the foundations for the whole system and the more visually clear system will be through the attribute processor which we can expect for 3.0 I think
@augm3nt384
@augm3nt384 3 жыл бұрын
Excellent tutorial.. Thanks. How would you animate the sine wave ?
@Erindale
@Erindale 3 жыл бұрын
Like to move it across? If you stick and attribute math node before it set to Add and have px added to a float in there, the float will let you move the waves across. To animate it, the easiest way it to put something like #frame/50 into the float value.
@augm3nt384
@augm3nt384 3 жыл бұрын
@@Erindale Thank you.
@heljoshinmax9459
@heljoshinmax9459 3 жыл бұрын
Awesome tutorial as always))) Thank you for sharing & explaining what you are doing, it really helps;))
@Erindale
@Erindale 3 жыл бұрын
I'm glad thank you!
@mikefutcher
@mikefutcher Жыл бұрын
Atribute mix has gone! Can we do this still?
@Erindale
@Erindale Жыл бұрын
Have a look on my channel for geo nodes 101 videos. I have one on displacement. Geometry nodes was completely redesigned between 2.93 and 3.0 so you’ll just have to be careful looking at these older videos. I just leave them up as the theory is still correct
@jippee1
@jippee1 3 жыл бұрын
finally we can take our shader nodes and use them as displacement in GN
@dainjah
@dainjah 3 жыл бұрын
this is great. Can I manipulate certain vertex groups using this method?
@Erindale
@Erindale 3 жыл бұрын
You can! Just use an Attribute Math or Vector Math node to multiply the height map by your vertex group before you use it as the mix factor
@MsGe5
@MsGe5 3 жыл бұрын
great tutorial..I have re-built/updated Blender2.93(blender-git) daily for consecutive days on my Mac and still no "vertex_normal" attribute/ any suggestions? other builds? thanks..
@Erindale
@Erindale 3 жыл бұрын
Let me check this add get back to you. Someone else just messaged me about this missing in his build
@Erindale
@Erindale 3 жыл бұрын
You need to the normal attribute now. Thanks for point that out!
@Charly_Chive
@Charly_Chive 3 жыл бұрын
Do you think this can work with image textures, With box mapping mode and blended edges, like in the shader nodes?
@Erindale
@Erindale 3 жыл бұрын
Certainly can! The maths with attributes is just a bit ungainly at the moment. Hopefully we can get the Attribute Processor soonish This is box mapping for you though i.imgur.com/9Vo5zto.png
@Charly_Chive
@Charly_Chive 3 жыл бұрын
@@Erindale woah thanks!
@Charly_Chive
@Charly_Chive 3 жыл бұрын
@@Erindale what will the attribute processor allow us to do?
@Erindale
@Erindale 3 жыл бұрын
@@Charly_Chive We will be able to use math and vector math etc nodes to process the data rather than needing to use attribute nodes. This will save computation as well as time. Also making nodes more readable, currently it can be really hard to follow the logic when there are 10+ attributes being used and everything's just in this one long linear line of nodes... Breaking it up is going to help a lot!
@tonzaranza7858
@tonzaranza7858 3 жыл бұрын
Thank you so much for sharing it! Is it possible to set a different color only to the displaced surfaces, so when a certain region "inflates" the color/material of it changes? :~
@Erindale
@Erindale 3 жыл бұрын
Yes it would be if you create a vertex colour layer with the same name as the attribute you're using to set how much inflates then you can read that vertex colour layer into your shader. Only works with cycles though at the moment
@emmabryant6589
@emmabryant6589 3 жыл бұрын
How would one go about displacing along the z-axis only? or have I done this wrong? for tiling terrain, the edges seem to angle towards center.
@Erindale
@Erindale 3 жыл бұрын
It sounds perhaps like you're using mix instead of add?
@VMP666
@VMP666 3 жыл бұрын
Oh boy, this is what I've been looking for! Could you maybe give me a hint how one could go about making a cloud texture-based dynamic displacement for wind in a foliage animation? Node based, of course:) thank you for your tutorials!
@Erindale
@Erindale 3 жыл бұрын
Okay good luck following but this is my hint ;) First add a Point Distribute node set how you want for your foliage. Then add an Attribute Vector Math node set to add with A being position and B being a vector. Put your driver into the X component (eg #frame/100). Result is mapping. Attribute Sample Texture node, select your cloud texture. Mapping is mapping. Result is clouds. Attribute Colour Ramp to control falloff. clouds in, clouds out. Attribute Randomise for your scale and rotation as normal. Point Rotate set to Axis Angle, Object, Vector, Attribute. Axis vector is (0,1,0). Angle Attribute is clouds. Point Instance your foliage.
@VMP666
@VMP666 3 жыл бұрын
@@Erindale Holy shit, I tried it finally and it seems to work! Thank you so much! That being said, is there any chance you could tackle this subject in a tutorial? I'd love to see what you can come up with mixing different variants of wind etc! Thank you so much nevertheless:D
@VMP666
@VMP666 3 жыл бұрын
I even swapped mapping to react to empty location for better control! I'm so proud of myself LOL
@ibotpl
@ibotpl 3 жыл бұрын
Great tutorial! Thanks for your efforts! Is it possible to offset the distribution points?
@Erindale
@Erindale 3 жыл бұрын
To displace the points from a Point Distribute node without needing to displace the whole mesh? You can do this with the exact same process but after the Point Distribute and instead of 'vertex_normal' you can just use 'normal'
@tcheadriano
@tcheadriano 3 жыл бұрын
Fantastic!!!
@Erindale
@Erindale 3 жыл бұрын
Thanks so much!
@dainjah
@dainjah 3 жыл бұрын
Also: now when we have the vertex normal attribute, is it possible to (for example) align/rotate all the points acorrding to the vertex of the object? Lets say I want to scatter cubes on UV sphere so they're aligned perfectly to sphere's faces?
@Erindale
@Erindale 3 жыл бұрын
You can already :) the point distribute node already generates a 'normal' attribute you can use. Or if you are instancing without the distributed node then you can now use the vertex_normal attribute to do that
@Tradigital
@Tradigital 3 жыл бұрын
Is there anyway to make separate meshes in geometry nodes connected to separate materials? So like if you combined the old mesh with the displaced, could you set them to be a separate color or material? I also particularly need it to work in eevee 🤦🏼‍♂️
@Erindale
@Erindale 3 жыл бұрын
You can indeed! Just use an Attribute Fill set to integer and use the material_index attribute to pick the material slot you want to aim for. You only really need to do it for bits you don't want to aim at slot 0 (default) i.imgur.com/84upHcX.png
@Tradigital
@Tradigital 3 жыл бұрын
@@Erindale omg bro, do you realize how much this will change my work 😂😂 geometry nodes are so good!!
@Tradigital
@Tradigital 3 жыл бұрын
Is there a place where we can get all the attribute names? Like I had no idea Material Index was even one.
@Erindale
@Erindale 3 жыл бұрын
@@Tradigital If you're using current builds of 2.93 you should get the attribute suggestions popup as you can see on mine. I have a video on Attributes which also lists the defaults. The Blender manual also has a list under the geometry nodes attributes section 👍
@Tradigital
@Tradigital 3 жыл бұрын
@@Erindale ahh that makes sense. I’ve been using 2.92 but I will definitely move up to do this
@shanquan93
@shanquan93 3 жыл бұрын
thank you for your work
@Erindale
@Erindale 3 жыл бұрын
Thanks for watching!
@DanielPartzsch
@DanielPartzsch 3 жыл бұрын
Thanks. Is it possible to basically mirror/use the texture this way procedurally in the shader?
@Erindale
@Erindale 3 жыл бұрын
You mean to have access to textures created in the texture panel, inside shaders? There's a better way to do it actually. The attribute you generate with the Attribute Sample Texture node, just call that with the Attribute node in the shader. Any attribute generated in Geometry Nodes is now available inside the shader that way. Currently only Cycles is supported but Eevee support is being worked on. Also just be aware that the attribute will be transferred 'per point' so the texture resolution in shader will match your mesh resolution!
@DanielPartzsch
@DanielPartzsch 3 жыл бұрын
@@Erindale yes great that is what I meant. I was always missing the possibility to procedurally tie the displacement to the shader (for example to have different colors at different heights of the displacement). So with resolution you mean that I would then need a pretty high density mesh in order to get crisp results in the shader? Thanks again!
@Erindale
@Erindale 3 жыл бұрын
@@DanielPartzsch Yeah exactly. Have a play with it though, it might well be good enough for what you need and you can always mix with some textures in the shader to hide any stepping. If you have displacement that's smooth enough on the mesh, the texture will probably look smooth enough too!
@DanielPartzsch
@DanielPartzsch 3 жыл бұрын
@@Erindale yeah, good stuff!
@kifayatUllah712
@kifayatUllah712 3 жыл бұрын
What is normal? Is it the line perpendicular to the tangent? Can u plz explain this bro? I would appreciate it!
@Erindale
@Erindale 3 жыл бұрын
Yeah exactly, normal is just sticking perpendicular out of the surface
@kifayatUllah712
@kifayatUllah712 3 жыл бұрын
@@Erindale Thanks for the help! It really motivates me! Take care
@palermus20
@palermus20 3 жыл бұрын
Hey, any clue as to how i could animate the first example? I was the comment on how to do it with the sign wave but i'm not sure as to where to put the math attribute in the first example, cheers
@Erindale
@Erindale 3 жыл бұрын
If you wanted to animate the texture version then just add an attribute Vector math before the texture node and take position and add a vector, result can be mapping and use that in the texture node. Now you can use drivers or keyframe the vector to animate the texture
@palermus20
@palermus20 3 жыл бұрын
@@Erindale legend, tysm
@sidar87
@sidar87 2 жыл бұрын
Is this possible with curves? I want to apply ornaments along the geometry ( like belts ).
@Erindale
@Erindale 2 жыл бұрын
With displacement?
@sidar87
@sidar87 2 жыл бұрын
@@Erindale yes, i wonder if we could use geometry nodes to apply a texture displacement on a curve using the extrude and bevel geometry as a base. Or let geonodes completely create the mesh
@Erindale
@Erindale 2 жыл бұрын
You certainly can do! You can just use a set position node just the same as if it was a mesh. Geometry nodes is great for giving more continuity between working with different objects
@yousefyaghoobi282
@yousefyaghoobi282 3 жыл бұрын
what is the benefit of using geo node displacement?
@ManexFX
@ManexFX 3 жыл бұрын
You clearly didn't watch the whole video
@yousefyaghoobi282
@yousefyaghoobi282 3 жыл бұрын
@@ManexFX to be honest, no i didn't 🤣
@pietroalessandrini
@pietroalessandrini 3 жыл бұрын
I need procedural noise so i can animate a random displacement in eevee, hope they'll add it in the future
@Erindale
@Erindale 3 жыл бұрын
It's already in the alpha builds 😁
@pietroalessandrini
@pietroalessandrini 3 жыл бұрын
@@Erindale you just made my day! (Well night actually, it's 3 a.m. right now where I live)
@pietroalessandrini
@pietroalessandrini 3 жыл бұрын
@@Erindale unfortunately while random noise is in blender 3.0 alpha most of the attribute nodes are still missing. sigh I guess I'll have to wait a bit
@Erindale
@Erindale 3 жыл бұрын
@@pietroalessandrini The attribute nodes won't be back! Here's an example of how to use the new fields nodes to create simple noise displacement along the normals: i.imgur.com/XwKvfz1.png
@pietroalessandrini
@pietroalessandrini 3 жыл бұрын
@@Erindale thanks man, I feel very comfortable with shader nodes, but with geometry node I feel like a lost child
@AnsonSavage
@AnsonSavage 2 жыл бұрын
It looks like the new Fields System doesn't have a lot of these nodes. Any suggestion for how to get this same effect now?
@Erindale
@Erindale 2 жыл бұрын
Check out my geo nodes 101 videos 👌
@AnsonSavage
@AnsonSavage 2 жыл бұрын
@@Erindale Okay, awesome!
@aquillanto7521
@aquillanto7521 2 жыл бұрын
Blender just needs a really solid set of 4D procedural textures (ie properly animated, not just moved or scaled) and this node would be mega useful!!
@Erindale
@Erindale 2 жыл бұрын
In Blender 3.0 we just use the texture nodes directly so 4D is available for a bunch 😁
@aquillanto7521
@aquillanto7521 2 жыл бұрын
@@Erindale In Cinema 4D, a single deformer can displace vertices in all three axes... so just add one of their animating noise textures and you have wobbling cells etc. Can blender do this easily? Deformations appear to be on a single axis? Guess you could set three up but....
@aquillanto7521
@aquillanto7521 2 жыл бұрын
I read that procedural textures were a priority for Blender... it's in their road map. Can't wait to see what they do!
@Erindale
@Erindale 2 жыл бұрын
Just use RGB noise instead. You can either subtract 0.5 and then add it to the position, or if you want even fewer nodes, just a mixrgb set to linear light with the position first and RGB noise second and plug that into the position of a set position node. It's like 4 nodes total to get animated xyz displacement
@aquillanto7521
@aquillanto7521 2 жыл бұрын
@@Erindale Very clever! Must experiment when I get started!
@joe-5D
@joe-5D 9 ай бұрын
howd u make that shader?
@Erindale
@Erindale 9 ай бұрын
Which shader do you mean?
@joe-5D
@joe-5D 9 ай бұрын
@@Erindale referring to the toon looking shader for suzanne in thumbnail.
@Erindale
@Erindale 9 ай бұрын
@baseballa101 that is just using the random per island socket of the geometry, input node in shaders going into a white noise node, and the outlines are done with the lineart modifier
@joe-5D
@joe-5D 9 ай бұрын
@@Erindale nice sounds dope
@9words40
@9words40 3 жыл бұрын
look like brain
@jonathanmoore2139
@jonathanmoore2139 2 жыл бұрын
This tutorial is a year old and blender has already renamed every fucking node
@Erindale
@Erindale 2 жыл бұрын
They renamed everything last December actually! The attribute system was redesigned when they realised what an awful UX it was 😂
@xalener
@xalener 2 жыл бұрын
@@Erindale so how do you do this now? lmao
@Erindale
@Erindale 2 жыл бұрын
Displacement? Noise, subtract 0.5, multiply by strength, multiply by normal, into the offset of a set position node
@xalener
@xalener 2 жыл бұрын
@@Erindale ah, I'm trying to figure out how to get bespoke UDIM mapped texture driven displacement in geo nodes. Though tbh I have no clue if it's more or less performant than using the modifier for this.
@Erindale
@Erindale 2 жыл бұрын
Udims are just UV translations of 1 per step so you can just do a manual offset on the input vector
Swirly motion graphics effect with Geometry Nodes - Blender 2.93 tutorial
20:25
Sketches For Humanity
Рет қаралды 60 М.
бабл ти гель для душа // Eva mash
01:00
EVA mash
Рет қаралды 8 МЛН
PRANK😂 rate Mark’s kick 1-10 🤕
00:14
Diana Belitskay
Рет қаралды 11 МЛН
Instance on Edges with Geometry Nodes - Blender 4.1 Tutorial
45:45
I Can't BELIEVE They Let Me in Here!
23:37
Linus Tech Tips
Рет қаралды 147 М.
Blender 3.0 New Geometry Nodes Tutorial
17:50
Bad Normals
Рет қаралды 311 М.
Blender 2.93 Geometry Nodes Tutorial: Organic Displacement
13:39
The Infinites
Рет қаралды 30 М.
Blender Geometry Node Basics In Blender 2.92 | Tutorial
17:26
CG Cookie
Рет қаралды 80 М.
Procedural Force Field Effect with Geometry Nodes (Blender 2.93 Tutorial)
29:01
Sketches For Humanity
Рет қаралды 88 М.
I Learned Blender in a Week
9:26
Ritchi
Рет қаралды 863 М.
Blender Geometry Nodes: Seams based on edges
16:45
Christoph Werner - CG Art & Mentoring since 1991
Рет қаралды 6 М.
бабл ти гель для душа // Eva mash
01:00
EVA mash
Рет қаралды 8 МЛН