Displacement and Scattering - Geometry Nodes 101

Поділитися
Вставка
  • Опубліковано 15 лип 2024
  • Check out my new procedural modelling bundle: www.nodegroup.xyz/procedural-...
    Advanced Geometry Nodes course: www.canopy.games/p/advanced-g...
    Grab the beginner course: www.canopy.games/p/bcs-geomet...
    Want to learn about the new Geometry Nodes? You're in the right place!
    I've got a 6 video crash course coming right up!
    Grab GScatter here: www.graswald3d.com/gscatter?t...
    $40 off a holographic display? Yes please. lookingglass.refr.cc/erindalew
    Geometry Nodes Toolkit: gum.co/erintools
    Merch? erindale.threadless.com/desig...
    Discord: / discord
    My Courses:
    www.futurly.com/s/store/cours...
    www.canopy.games/p/bcs-geomet...
    www.canopy.games/p/procedural...
    Contents:
    00:00 - Intro
    00:21 - Setting the Scene
    01:17 - Displacement
    03:35 - Moving the Noise
    04:54 - Adding Foliage Assets
    05:35 - Distribute Points
    05:55 - Instance a Collection
    07:00 - Rotation and Scale
    09:10 - Instancing an Object
    10:10 - Instance vs Real
    11:27 - Weight Painting Density
    12:15 - Outro
    Patreon: / erindale
    Ko-fi: ko-fi.com/erindale
    Twitter: / erindale_xyz
    Instagram: / e.r.i.n.d.a.l.e
    Gumroad: gumroad.com/erindale
    Blender Market: blendermarket.com/creators/er...
    Music Attribution:
    Afterglow - Kulpa

КОМЕНТАРІ • 142

  • @_profan
    @_profan 2 роки тому +5

    you're on a roll!

  • @VortexArtLab
    @VortexArtLab 2 роки тому +11

    I see Like, I press Erindale.

  • @averageviewer5221
    @averageviewer5221 2 роки тому +1

    Who the hell is making these thumbnails. You are a madman sir

  • @TheFeralFerret
    @TheFeralFerret 2 роки тому

    This really helped clarify a few things for me, thanks! I'll be saving up for your toolkit and course!

  • @audiocity1042
    @audiocity1042 2 роки тому

    Man.....You are the Real Gem 💎

  • @MarkBTomlinson
    @MarkBTomlinson 2 роки тому

    Very informative concise demonstration, I will def' be trying this in the future. Thanks mate!

  • @connormichalec
    @connormichalec 2 роки тому

    Very useful, just now getting around to learning the new geometry nodes, thanks for the tips.

  • @TerenceKearns
    @TerenceKearns 2 роки тому +3

    I am so glad I found this series. You are a wonderful human being. Thanks so much.

    • @Erindale
      @Erindale  2 роки тому

      Glad to be of service!

  • @mykalesalad
    @mykalesalad 2 роки тому +1

    Incredibly helpful video, thank you!

  • @RyanKingArt
    @RyanKingArt 2 роки тому +1

    Thanks! Very helpful!

  • @guirireyes
    @guirireyes 2 роки тому +1

    this guy is a BEAST!!

  • @khalatelomara
    @khalatelomara 2 роки тому +2

    A must watch and learn series

  • @hyunji8
    @hyunji8 2 роки тому

    You just saved my life. Thank you :)

  • @vstreet7583
    @vstreet7583 2 роки тому +1

    Your tutorials are brilliant. Your toolkit is brilliant. THANK YOU! Dg

    • @Erindale
      @Erindale  2 роки тому

      Thank you! Definitely need to get on top of the documentation before I add any new nodes 😁

  • @ArfatXeon
    @ArfatXeon 2 роки тому +2

    Been trying to figure this out for a few months now with geo nodes. Just now found your channel, you deserve over 100k subs

    • @Erindale
      @Erindale  2 роки тому +1

      Thank you! One day hopefully!

  • @MeownaMeow
    @MeownaMeow 2 роки тому

    THANK YOU !

  • @gabrielmoro3d
    @gabrielmoro3d 2 роки тому

    Thanks a lot!!

  • @efferington
    @efferington 2 роки тому +1

    Great series, thank you!

    • @Erindale
      @Erindale  2 роки тому

      Thanks for following along!

  • @mfgassets5195
    @mfgassets5195 2 роки тому +9

    This is great and after watching this I’m starting to feel like geo nodes has caught up and will now become part of my work flow.

    • @Erindale
      @Erindale  2 роки тому +1

      Yes! Lots of great tools to use now!

    • @n.m.danimations5854
      @n.m.danimations5854 2 роки тому +1

      too bad legacy nodes are going to be gone in 4.0

    • @Erindale
      @Erindale  2 роки тому +1

      For good reasons though. It's definitely worth looking into the fields system in 3.0+

    • @n.m.danimations5854
      @n.m.danimations5854 2 роки тому +2

      @@Erindale well i havent been able to find a good instance on points replacement xD i use it almost every single day! any tips?

    • @Erindale
      @Erindale  2 роки тому +1

      @@n.m.danimations5854 The Instance on Points node is the new one. It's the old Point Instance node that will be removed in 4.0

  • @vrx_ui
    @vrx_ui 2 роки тому +1

    learnt a lot, with this series!
    everything came together in the end!
    i have a long way to go,
    and love your plug in! worth every dime...

    • @vrx_ui
      @vrx_ui 2 роки тому

      specially camera culling one, im using it in every scene

    • @Erindale
      @Erindale  2 роки тому

      Thanks so much!

  • @shabbirmerchant7678
    @shabbirmerchant7678 2 роки тому +1

    Lovely Garden...:)

  • @dannybouchard4140
    @dannybouchard4140 2 роки тому +1

    Very nice and well explained. You just gained a new subscriber mate!

  • @omaracosta1805
    @omaracosta1805 2 роки тому +1

    Thanks Man! another great tutorial. Waiting every week for your videos in this series.
    Could you please make one using the bounding box node, to merge only the points of another geometry that are within this bounding box?
    I learn it in Houdini but havent figure it out in Blender yet.

  • @NirmalveerSingh
    @NirmalveerSingh 2 роки тому +1

    final episode of this JUMBO saga

  • @Atinder513
    @Atinder513 2 роки тому +6

    Can you please do a video on your toolkit as well? Great videos, thanks.

    • @Erindale
      @Erindale  2 роки тому +5

      I definitely should

  • @reggietelly
    @reggietelly 2 роки тому +1

    excellent tutorial.

    • @Erindale
      @Erindale  2 роки тому

      Thank you so much! Hope it helped!

    • @reggietelly
      @reggietelly 2 роки тому +1

      @@Erindale I do have one question. How can you transfer say a Musgrave texture used Geo Nodes to a shader nodes set up. Is that interoperability available? I want effectively a height colour but using it on a sphere using displaced normals so a trad way I usually do it is position in z and recolour. This doesn't work on a sphere that is displaced on its normals.

    • @Erindale
      @Erindale  2 роки тому +1

      You can transfer anything from geo nodes to shaders just by plugging it into the output node and setting an attribute name in the "Output Attributes" part of the modifier. Then in the shader you can use the attribute input node. Bare in mind though that geo nodes stores data on the mesh elements. When passing to shaders, I think that's always going to be vertices so the texture resolution depends on the density of your mesh.

    • @reggietelly
      @reggietelly 2 роки тому

      @@Erindale wicked. I'll try it out. Geo Nodes is very very cool. But also very very deep

  • @BFTL
    @BFTL 2 роки тому +1

    🎉🎉✨👌

  • @Artichoke18
    @Artichoke18 2 роки тому +1

    Awesome like always. I was wondering if its possible to create some material variations on the instances (like for example a shader that creates a different green per grass leaf instead of all of them using the same green color). I can't find the way to do it without making the instances real.

    • @Erindale
      @Erindale  2 роки тому

      If they're instances you can use the Random socket of the object info node in the shader. If they're realised and joined into one, you'll have to use the Random Per Island on the Geometry node in shaders (but this only works in cycles)

  • @npj5578
    @npj5578 2 роки тому

    Bought your canopy tutorial on geo nodes. Shame it's outdated now. Would pay good money for an updated tutorial covering fields. Thanks for all your hard work. Great teaching style

    • @Erindale
      @Erindale  2 роки тому +1

      The final video in the canopy games series shows the project worked through with fields! I'll be doing a new geo nodes course next summer once development might have calmed down a little

    • @npj5578
      @npj5578 2 роки тому

      @@Erindale oh I had no idea! Thanks for the heads up. Will be giving it a watch tonight. Thanks again.

  • @maximeturpin9622
    @maximeturpin9622 2 роки тому +2

    Thank you for this amazing tutorial. It really helped me to get the hang of 3.0's geometry nodes. :)
    Quick question, if instead of a noise texture I'm using an image texture to displace my geometry, how can control its scale/position/and how it's mapped? Thank you!

    • @Erindale
      @Erindale  2 роки тому +2

      Just put a position node through some vector math (add/subtract to move, multiply to scale) and vector rotate to sort out the mapping

    • @maximeturpin9622
      @maximeturpin9622 2 роки тому +1

      @@Erindale my saviour, thank you for the quick reply!! :)

  • @g_rad_3d
    @g_rad_3d 2 роки тому +2

    Thanks for this series. Is there a possibility to detect colliding of instances and removing one of them. That would be so useful (for example droplets).

    • @Erindale
      @Erindale  2 роки тому +5

      Change the distribute points node from random to poisson disk and you can set a minimum distance 👍

    • @g_rad_3d
      @g_rad_3d 2 роки тому

      @@Erindale thanks - checking now ;)

  • @ArnabDas_01
    @ArnabDas_01 2 роки тому +1

    Hey, this video has no dislikes!

  • @peterseed7772
    @peterseed7772 2 роки тому +1

    Are you going to do a video on the looking glass that was sitting in the background?

    • @Erindale
      @Erindale  2 роки тому

      I have one video already! I'm going to do a bunch more though as well. It's a great bit of tech!

  • @LimyChitou
    @LimyChitou 2 роки тому +4

    These thumbnails are something else...

    • @Erindale
      @Erindale  2 роки тому +2

      I'm glad you (maybe) approve!

    • @nibblrrr7124
      @nibblrrr7124 2 роки тому

      @@Erindale No such thing as bad publicity! :^)

  • @shura8817
    @shura8817 2 роки тому +1

    So interesting :-)
    Is there a way to scale instances in regards with the density? ( more painting intensity = more density and bigger instance) I could do it in 2.93 but can't figure it out in 3 beta.

    • @Erindale
      @Erindale  2 роки тому +1

      You can use a texture for your density on the distributed node and then also put the same texture into the scale of the Instance node!

    • @shura8817
      @shura8817 2 роки тому

      @@Erindale omg, it was just too simple. Thanks so much Erin :-)

  • @wonderland4301
    @wonderland4301 2 роки тому +1

    And I understand that, the benefit of using geometry nodes for displacements, is that it's lighter, but can also be used for eevee, right?

    • @Erindale
      @Erindale  2 роки тому

      Heavier than using adaptive subdivision as that's entirely handled by cycles. But yes, you end up with real mesh so you can do other stuff with it like simulation or other modifiers etc

  • @JJSnel-uh3by
    @JJSnel-uh3by 2 роки тому +1

    Sooo could you also use a texture to drive where the dandelions are being placed, instead of doing a vertex group? Fairly certain you could before but I have no clue how to do it in the current version

    • @Erindale
      @Erindale  2 роки тому +1

      Yes exactly the same as with the vertex group but you just plug a texture in (probably with a map range) instead 😁

    • @JJSnel-uh3by
      @JJSnel-uh3by 2 роки тому

      @@Erindale Oooh! Perfect! Thanks so much! I might be able to make a completely procedural voronoi cell based case with this!!!
      Edit: nope, can't do it xD

  • @eli19961996
    @eli19961996 2 роки тому

    hey erin, super useful stuff, your geo nodes 101 videos. in hopes that you check the comments of older videos: is there a way to get the attributes of neighboring elements of a geometry (e.g. using it to implement proportional deformation). like calculating the average position of all the vertex points and add it to each individual vertex.

    • @Erindale
      @Erindale  2 роки тому +1

      We can only do things like offsetting the index with a Transfer Attribute node but you can't be sure the indexing is actually going to be adjacent anyway. For proportional editing, you can use a geometry proximity or a vector math distance on the position node to create a gradient, map range to sort the falloff and then use that to scale a vector you're using as the position offset with a Set Position node.

    • @eli19961996
      @eli19961996 2 роки тому

      ​@@Erindale thanks for the lightning speed response. i have a follow up question regarding the spreadsheet and the viewer node. how can i see the output from let's say the map range node? that is another major missing piece of the puzzle for me. do i always need an associated geometry?

    • @eli19961996
      @eli19961996 2 роки тому

      @@Erindale and how can i extract the position field of the indices?

    • @eli19961996
      @eli19961996 2 роки тому

      @@Erindale goddammit theres a position node, im sorry

    • @eli19961996
      @eli19961996 2 роки тому

      I have another question, though (sorry for the spamming): I'm trying to perform an operation on a whole attribute field, using the Attribute Statistic Node and changing the output to vector. Trying to view this in the spreadsheet results in seeing a float value and i cant figure out why. am i doing something wrong? Im using the 3.1 alpha built.

  • @petertremblay3725
    @petertremblay3725 7 місяців тому

    How can we use cloud texture from texture menu since it have much more variations and parameters than the cheap noise texture in geometry nodes? I tried image texture but it cannot access the cloud texture from texture menu only have a folder to get an external image.

    • @Erindale
      @Erindale  7 місяців тому

      There is no access to those legacy textures in geometry nodes. All of them are possible to make though with the noise and voronoi and musgrave textures

  • @adrianpedraza8612
    @adrianpedraza8612 Рік тому

    Hey do you know if you could link that plane with grass into another scene? I have tried and the plane comes in without the scattered grass.

    • @Erindale
      @Erindale  Рік тому

      As long as you're linking the object, not just the mesh, it should come through with any geometry nodes modifiers and additional dependencies that it requires such as grass meshes.

  • @juanpablo3d
    @juanpablo3d 2 роки тому

    Hi! Is there a way to manipulate the proportion of elements within a collection, like it's possible in particles?

    • @Erindale
      @Erindale  2 роки тому +1

      Not currently

    • @juanpablo3d
      @juanpablo3d 2 роки тому

      @@Erindale Thanks for quick response Master Yoda, your tutorials are so on point and very extremely inspiring!!

  • @Corza
    @Corza 2 роки тому +1

    I don't think the axis angle rotate euler is correct, because if the noise displacement is set too steep, the grass starts leaning in weird directions and not according to the normals?

    • @Corza
      @Corza 2 роки тому

      Changing the rotate euler to local instead of object follows the normal though?

    • @Erindale
      @Erindale  2 роки тому +1

      @@Corza Local will be relative to each point, object will be relative to the overall object rotation. For something like faking wind you would want it set to object so everything rotates in the same direction 👍

  • @lohnthom9353
    @lohnthom9353 2 роки тому

    Is there a way to go about setting a minimum/maximum spacing distance between scattered points?

    • @Erindale
      @Erindale  2 роки тому

      Only a minimum limit with Poisson Disc but then setting a higher density will have the effect of reducing the maximum distance

  • @adobedog6924
    @adobedog6924 2 роки тому

    The plane deformation also deforms the placement of the instances. I got rocks and grass floating off the mesh. Ground is grass + dirt. Not just grass...

    • @Erindale
      @Erindale  2 роки тому

      As long as you're viewing the deformed mesh not the original flat mesh it'll be fine 👍

    • @adobedog6924
      @adobedog6924 2 роки тому

      @@Erindale Humbled you would respond but i would have to disagree. I see you use gScatter to do this in other videos. Gscatter is not available for DL right now... Anyway, i displace the mesh, join geometry to keep it visible and distribute points and add instances. Floating grass and rocks, how do you negate the offset that is carried over from the mesh to the points?

    • @Erindale
      @Erindale  2 роки тому

      GScatter 0.4 is out so you can use that one :)
      What is the issue you're having then? I'd you displace the mesh and then distribute points on the mesh and then instance on those point, the points will be on the surface of the mesh. If you're using a collection to instance from and you need to make sure you have ticked on separate children and reset children and then pick instances on the instance node.

    • @adobedog6924
      @adobedog6924 2 роки тому

      @@Erindale I want that add-on, excited about it! when i try to DL it doesn't do anything, hopefully they'll fix it.... You smug son of a b, you make this look so easy... my origins were off.... that's a lesson to you kids at home. Check your origins!

  • @g_rad_3d
    @g_rad_3d 2 роки тому +1

    I have problem with instances or maybe its impossible. I distribute (instance) object A on another object B. Instanced object A is a brush (dynamic paint) and object B is a canvas weight type. It seams not to work (weight map is empty). I can make instances real to achieve same result but this broke geometry nodes workflow.

  • @jirimasak7483
    @jirimasak7483 2 роки тому

    whats the song at the end of the vid?

    • @Erindale
      @Erindale  2 роки тому

      Afterglow by Kupla

  • @recyclebinladen5903
    @recyclebinladen5903 2 роки тому

    I can't afford your Toolkit right now.. Could you kindly help me figure out how you make the texture mapping node?

    • @Erindale
      @Erindale  2 роки тому +1

      It's just a vector math subtract followed by a vector rotate set to Euler and then a vector math set to divide I believe. Or maybe it's add and then multiply. You'll see which one makes more intuitive sence when you make it ✌️

  • @olninyo
    @olninyo 2 роки тому

    I'm struggling to convert a geonode network into actual geometry that I can export, currently applying the modifer seems to lose the UVs of scattered geo, and using visual geometry to mesh seems to delete the geo. Im sure Im missing something obvious..

    • @olninyo
      @olninyo 2 роки тому

      oh my god, just saw the part about make instances real. never should have skimmed the video on this immensely complex topic *facepalm*

  • @brianstorm76907
    @brianstorm76907 Рік тому

    Thank you for the content. What if I wanted to displace a mesh in the X and Y axes but leave the Z axis out?

    • @Erindale
      @Erindale  Рік тому +1

      Just multiply your Displacement vector by (1,1,0) to negate the Z

    • @brianstorm76907
      @brianstorm76907 Рік тому

      @@Erindale Thank you so much, great master! If you'd be so kind, could you tell me if there's a way to use vertex groups to define areas for these displacements to happen like we can do with the Displace modifier? I searched and didn't an answer.

    • @Erindale
      @Erindale  Рік тому +1

      Named Attribute input nodes can read things like vertex groups and colours etc

    • @brianstorm76907
      @brianstorm76907 Рік тому

      @@Erindale You helped me a lot. Thank you so much!!
      I'm sure I'll learn a lot more from your videos, which I'll watch soon in order to properly study GNs.

  • @raoul3444
    @raoul3444 2 роки тому

    what abaut i want 4 paint vertex map ?

    • @Erindale
      @Erindale  2 роки тому +1

      Like using vertex colours? You can bring them in just the same as Vertex weights

  • @jeffg4686
    @jeffg4686 Рік тому

    @6:30 area -- what does it really mean when the collection is placed as "one block"? Does that mean it's like a single mesh (with separate pieces of it), or something else - like what are the consequences of being just one block versus separate children? thanks for any thoughts

    • @Erindale
      @Erindale  Рік тому +1

      If you have a fence in a collection then you'd want that to be in as "one block" so your fence is built as you wanted. And you might want to separate children if you have a collection with a bunch of different plants and you want to distribute them at random

    • @jeffg4686
      @jeffg4686 Рік тому +1

      @@Erindale - oh, i see now. The whole "assembly" of multiple meshes. thx
      BTW, is there some known phrase or word for an "assembly of meshes".
      I kinda feel like this is terminology missing in the field - or at least, I haven't come across yet.
      Should be a single word, that means a pre-assembled set of meshes to form a bigger item. They're all in the same collection, but that collection doesn't really indicate anything as to whether or not the pieces are assembly together. Conglomomesh? No, that doesn't work. I'll figure out one.

    • @Erindale
      @Erindale  Рік тому +1

      @@jeffg4686 we call them "assemblies" 👍

    • @jeffg4686
      @jeffg4686 Рік тому

      @@Erindale - thanks- that definitely works

  • @zainriyaz6292
    @zainriyaz6292 2 роки тому

    Is there anyway to remove the grass as we weight paint the dandelions?

    • @Erindale
      @Erindale  2 роки тому

      Easiest way is to have the geo nodes tree visible and mute (I think ctrl+alt+right drag) the noodle connecting grass to the join. Than you can sort out the other things which want to be less dense

    • @zainriyaz6292
      @zainriyaz6292 2 роки тому

      @@Erindale thank you but I think u misunderstood the question. What I meant was as when we weight paint the dandelions the grass in that area is removed or masked out.
      I kind of solved it by adding a math node on substract connecting the grass density to the weight attribute but maybe there is a better way.

    • @Erindale
      @Erindale  2 роки тому

      Oh gotcha. What you've done with maths is the most optimal way 👍

  • @boxmeta1834
    @boxmeta1834 2 роки тому

    💯⊙﹏⊙∥ Thank you so much Sensei

  • @Vertexvoyager
    @Vertexvoyager 2 роки тому

    when i go back to my modifier i cant see density all i see is value. what should i do?

    • @Erindale
      @Erindale  2 роки тому +1

      Like you want to turn it into an attribute input? You should have a spreadsheet icon button next to the value on the modifier if you click that it'll change. If you don't see that then it means you've plugged the group input into a constant socket instead of a diamond field socket. If you're using Poisson disk distribution then you'll just want to plug into the density factor for weight painting and have your max density set separately

    • @Vertexvoyager
      @Vertexvoyager 2 роки тому

      @@Erindale I followed every step you did except at 11:48 when you go to modifier geometry nodes it doesn't show density for me it shows value. my group input doesn't show density it shows value as well maybe that's why. how would I change the group input to show density instead of value?

    • @Vertexvoyager
      @Vertexvoyager 2 роки тому

      @@Erindale i figured it out its because i didnt connect the group input into density first thanks so much !!!

  • @foxtrottone
    @foxtrottone Рік тому

    hooooooooo :-)

  • @joseluismera8419
    @joseluismera8419 2 роки тому

    The conection among noise texture and set position doesn´t work.

    • @Erindale
      @Erindale  2 роки тому

      What do you mean by not working?

    • @joseluismera8419
      @joseluismera8419 2 роки тому +1

      @@Erindale The node is not the same and it doesn´t work.

    • @Erindale
      @Erindale  2 роки тому

      Copying my setup isn't giving you the same results? Are you on an up to date build of Blender?

    • @joseluismera8419
      @joseluismera8419 2 роки тому

      @@Erindale Yes, my Blender version is up to date. It is the node "Set Position" It is not the same as yours and does not give the same result. It just doesn't work.

  • @Krankify
    @Krankify 2 роки тому

    Add Blender version in your title.

    • @Erindale
      @Erindale  2 роки тому

      No one will be making content for 2.93 geo nodes at this point because it's more or less obsolete so you can safely assume we'll be using 3.0 unless otherwise stated. I also make sure the blender version is shown at the bottom right of the screen all the time 👍

  • @serbanandrei7532
    @serbanandrei7532 2 роки тому

    Do you sleep at all? Xd

    • @Erindale
      @Erindale  2 роки тому +6

      That is a problem for future me 😁

  • @martinstolz5971
    @martinstolz5971 Рік тому

    Love your content, but hate the way you speak - anyway - thanks

  • @hormi8672
    @hormi8672 2 роки тому

    To be honest with your accent I couldnt understand everything clearly which was kinda dumb. Your audio is really bad

    • @Erindale
      @Erindale  2 роки тому

      I have a very neutral English accent so at least you can turn on subtitles as they generally do a good job

  • @KI2LA
    @KI2LA 2 роки тому

    ... where is the texture? my blender is missing some stuff? why? i thought blender was free? there you try to learn something new and stuff like this happens 😡

    • @Erindale
      @Erindale  2 роки тому +3

      Just download a more recent version. If you're in the alpha or beta builds, they get updated every day so it's easy to miss things if you don't download a built. Grab the 3.0 Beta and you'll have everything 👍

  • @dubpperofi
    @dubpperofi 2 роки тому

    Thanks a lot!