To find the ground level you can connect the z value from a seperate xyz to the group output of the GN. In the modifier stack you can name this attribute to a name like „height“. This attribute you can import to the shader (shift a -> input -> attribute). Then put the name „height“ in. Then you can youse this mask in your shader. I hope this helps. Anyway, thanks for your tutorial 👍
Thanks for the tip, Pete! I worked on it and made work, so I’ll be releasing a footnote to this video with an explanation on how to do it. Crediting you, of course!
Even better way to do it: Use "Object" coordinates directly and use "height" as a driver. Made a video showing exactly how to do it. ruclips.net/video/I95xXXY0Y84/видео.html You're way is great for getting data out of Geo nodes (I use it all the time), but is unnecessary (and gives size bloat) for positions and inputs. I made a video on the 2nd about how/when to do exactly the way you're describing. ruclips.net/video/Gf9ATYzavlg/видео.html
This tutorial is so appreciated - everything is moving toward "fast and easy" ... and it looks like crap. I'm happy to put in the time and effort required to get a good end product. Fast and easy sucks. "Long way" is the way to go. Do it right or don't do it.
I stumbled across this video searching for environment design tutorials. This video was very well explained and I'm looking forward to watching it again and following a long. The environment looks great! The video definately helped getting a better understanding how geometry nodes work, since I never used them before. Thank you for the lengthy video. I appreciate these kind. I subbed!
I added 2 AO - 1 with inside and 1 outside selected, the Normal connected from the Normal output of the Texture Coordinate then joined them using a Math/Multiply and used as the Fac in the Mix. I then used the Distance in the AO to control the fade. It seems to work well…although it obviously adds the colour to any areas influenced by AO. BlenderPete method is much better. Enjoyed video and the the presenting style.
That’s an interesting way of doing it, Mark. If I’m understanding you correctly though, it’s not dynamically linked to the water level value in the geo nodes? Anyways, thanks for the contribution! And for watching!
@@ltfilm It is dynamic to the water level as the AO is generated by the intersection of the water and the landscape. I replaced the Gradient/ColorRamp with the 2 AO that are joined by a Math/Multiply and the AO normal input are from the Texture Coordinate/Normal. I've since then used AO on the Water Material to add some white overlay with a Noise Texture at the shore to hint at wave breaks. And plan to use it to add different water/wave displacement at the shore too.
Ok, I see. That is really clever! I've never really used AO, so I never think about it, but I love that you've used it to also make the water respond to the shore as well!
29:16 - Bumping up detail that high can slow down the render, but has no noticeable effect most of the time. Rarely does detail over 5 or 6 have any visible difference for most node setups I've ever seen. Two noise textures mixed together at different scales with lower detail actually renders faster and adds more visual effect.
Absolutely, increasing the detail can reduce performance, but I found that in this case, there is so much other stuff going on, that increasing the detail doesn't meaningfully affect render time (in my opinion). For this scene, the biggest drag on resources is the resolution of the terrain by a long shot. If I were more concerned with performance though (such as in rendering an animation), I would definitely reduce the detail. But, more importantly, I would pull back the resolution of the terrain for the biggest increase in performance. I am wondering though, at what resolution do you render your final scenes? I usually do 4k final renders because I usually use them as backgrounds on my monitor, which is 4k. Usually I can tell the difference in detail up to about 10-12, perhaps because of the resolution, so maybe that's why I tend to crank it up so high? But, thank you for clarifying that in a more comprehensive way than I did in the video.
What would be really great with geometry stuff would be having a way to dynamically decrease vertices detail by distance to camera. As in you video you can clearly see the the low setting of polygons because you are so extremely close while the huge resolution gets 'wasted' in the distance. I know you can separate the two and composite them together but does something like that exists ?
There is the adaptive subdivisions feature, but that’s not in geometry nodes. I haven’t heard of anything like that in geometry nodes, but that would be a great feature to have! I wonder if it might be possible to combine the adaptive subdivision modifier before the geo nodes modifier.
Greetings! Thank you so much for the tutorial! I sincerely appreciate the coherence and the clarity of the material=) I will be grateful if you could find the time for answering my question... After grouping the shrubbery, unlinking the group from the node 'Group Output' and linking it again to the 'Join Geometry' node, my terrain isn't visible anymore. However, the cube remains😅 It is 49:00 minute or so. I am still a beginner, and I am sorry if I name some things wrong, but I hope I've been clear. Nevertheless, thank you very much for this video, and I am looking forward for the next tutorials!
Hey Ann! Glad you're liking it so far! As for your question, make sure you've connected the Join Geometry node to the Group Output after you connected the shrubbery to the Join Geometry. If you just relink the shrubbery to the Join Geometry without connecting the Join Geometry to the Group Output, Blender will treat it as though you're not doing anything at all. Hope that helped!
@@ltfilm Thank you so much for the response! Unfortunately, everything is connected, and still, the terrain with water and rocks remains invisible. I've even redone the process twice from scratch and still facing the same issue...I guess it's some tiny detail that I am missing 😅. All in all, thank you for the quick response!
@@ltfilm Yes, it is still invisible, unfortunately. I start to think that it may be a bug in the system, or that I should prepare myself better for this level to know how to solve the issues which may occur along the way. Thanks so much for your concern!
What happens if you connect the last node in your water setup to the Group Output directly and bypass the Join Geometry? The best I could do from here is just suggest you try connecting different points of your node network to the Group Output and see what, if anything, works. That's usually how I troubleshoot these sorts of problems. Figure out what still works and try to isolate the cause of the problem. If nothing still works, try asking your question on the Blender Help subreddit or a different support forum. You'll probably have to upload your project file, but someone should be able to help you from there.
I'm still learning, so maybe there's a good reason not to do this, but why not eliminate the Position/Separate nodes at the beginning and just send the z-stuff into Combine (leaving the x and y slots at 0) and then to Offset? I think you only really want to offset the z and not bother the x and y, right? Let me know if I'm not understanding, though.
Hey Tad! That is a perfectly valid way to do it as well! The two methods are equivalent, so you can do whatever helps you to visualize the flow of data. For me, since the change on the z direction is so big and the geometry gets pretty complex, it helps me to do it this way to remind me that I'm only affecting the z direction. If you take a look at my disappearing wall video, you'll see that I use the offset method instead. For that one, since the end result is a plane, the offset method served as a way for me to mentally check that it stays a plane. If you're particularly concerned about hardware limitations, I believe the offset method would perhaps be a slight bit easier on RAM and CPU usage, but we're talking about a miniscule fraction of a percent difference, so I wouldn't worry about it too much. Tldr: They're the same, so do whatever makes the most logical sense for you.
But why??? Even after one hour of work it doesnt look photorealistic or natural. Sorry. In software which is designed for this (World Machine, Gaea, World Creator 2022...) you can achieve by far better results in matter of minutes. Without errosions, flow maps etc, you will never ever do something looking natural...Work smarter, not harder.
Hey j w! To answer your question, I did it this way because I wanted to push my personal limits in blender’s geometry nodes. Is it the most efficient way? No. But for what blender can do (which is my software of choice and the only one I really know how to use), I think it’s a pretty good result! Yeah, there are definitely limitations to doing it this way, but I personally like the look it gives me. And honestly, I had never heard of those software packages before. They look pretty cool and no doubt would provide much better results much faster. Like you said, it’s what they’re designed for. (It would be pretty sad if they couldn’t outperform a general purpose program like blender operated by someone like me haha) On top of that, Gaea is the only one that allows you to use it freely for commercial work. I’m not saying I would use blender to make terrains for a feature film, but a lot of people like blender specifically because it is free and open source. Anyways, I do appreciate the software recommendations and will look into them. But I hope you can understand that my goal here was not just to show how to do this one specific thing, but rather to teach a lot of information on how geometry nodes work that could be used in all sorts of projects!
To find the ground level you can connect the z value from a seperate xyz to the group output of the GN. In the modifier stack you can name this attribute to a name like „height“.
This attribute you can import to the shader (shift a -> input -> attribute). Then put the name „height“ in. Then you can youse this mask in your shader.
I hope this helps.
Anyway, thanks for your tutorial 👍
Thanks for the tip, Pete! I worked on it and made work, so I’ll be releasing a footnote to this video with an explanation on how to do it. Crediting you, of course!
@@ltfilm Glad I could help.
Even better way to do it: Use "Object" coordinates directly and use "height" as a driver.
Made a video showing exactly how to do it.
ruclips.net/video/I95xXXY0Y84/видео.html
You're way is great for getting data out of Geo nodes (I use it all the time), but is unnecessary (and gives size bloat) for positions and inputs.
I made a video on the 2nd about how/when to do exactly the way you're describing.
ruclips.net/video/Gf9ATYzavlg/видео.html
Give this man an award please.
Thanks! Not sure it's award-worthy, but I'm glad you liked it!
This is a great tutorial - and the results can be adjusted - "endless worlds await". Thank you.
Thanks Harry! Glad you found it useful!
This tutorial is so appreciated - everything is moving toward "fast and easy" ... and it looks like crap. I'm happy to put in the time and effort required to get a good end product. Fast and easy sucks. "Long way" is the way to go. Do it right or don't do it.
Glad to hear it! Thanks for watching!
excellent tutorial. thanks
Glad it was helpful!
hope your channel grows quickly..
Thanks Abhilash!
I stumbled across this video searching for environment design tutorials. This video was very well explained and I'm looking forward to watching it again and following a long. The environment looks great!
The video definately helped getting a better understanding how geometry nodes work, since I never used them before. Thank you for the lengthy video. I appreciate these kind. I subbed!
Thanks Terry! Glad you found it useful! There's definitely a lot to learn with geometry nodes, but they are super versatile once you do!
I ve been me you've been you 🤣
I understood that reference
Can't wait to try it
Another great resource that I highly recommend! And I hope you find this useful!
I added 2 AO - 1 with inside and 1 outside selected, the Normal connected from the Normal output of the Texture Coordinate then joined them using a Math/Multiply and used as the Fac in the Mix. I then used the Distance in the AO to control the fade. It seems to work well…although it obviously adds the colour to any areas influenced by AO. BlenderPete method is much better.
Enjoyed video and the the presenting style.
That’s an interesting way of doing it, Mark. If I’m understanding you correctly though, it’s not dynamically linked to the water level value in the geo nodes? Anyways, thanks for the contribution! And for watching!
@@ltfilm It is dynamic to the water level as the AO is generated by the intersection of the water and the landscape. I replaced the Gradient/ColorRamp with the 2 AO that are joined by a Math/Multiply and the AO normal input are from the Texture Coordinate/Normal. I've since then used AO on the Water Material to add some white overlay with a Noise Texture at the shore to hint at wave breaks. And plan to use it to add different water/wave displacement at the shore too.
Ok, I see. That is really clever! I've never really used AO, so I never think about it, but I love that you've used it to also make the water respond to the shore as well!
Great video! Love these kind of detailed, long videos.
Glad you liked it! I also like having these for when I feel like actually following along!
29:16 - Bumping up detail that high can slow down the render, but has no noticeable effect most of the time. Rarely does detail over 5 or 6 have any visible difference for most node setups I've ever seen. Two noise textures mixed together at different scales with lower detail actually renders faster and adds more visual effect.
Absolutely, increasing the detail can reduce performance, but I found that in this case, there is so much other stuff going on, that increasing the detail doesn't meaningfully affect render time (in my opinion). For this scene, the biggest drag on resources is the resolution of the terrain by a long shot. If I were more concerned with performance though (such as in rendering an animation), I would definitely reduce the detail. But, more importantly, I would pull back the resolution of the terrain for the biggest increase in performance.
I am wondering though, at what resolution do you render your final scenes? I usually do 4k final renders because I usually use them as backgrounds on my monitor, which is 4k. Usually I can tell the difference in detail up to about 10-12, perhaps because of the resolution, so maybe that's why I tend to crank it up so high?
But, thank you for clarifying that in a more comprehensive way than I did in the video.
I love this tutorial!!!!!
Thanks! I’m glad you enjoyed it! Let me know what other types of videos you’d like to see!
awesome bro.. its beautifull..
You deserve more subs for this mate
Thanks! I’m glad you liked it!
@@ltfilm Well I did my part and subbed :) Hope more find your videos
Awesome, thank you ❤️
Glad you enjoyed it!
What would be really great with geometry stuff would be having a way to dynamically decrease vertices detail by distance to camera. As in you video you can clearly see the the low setting of polygons because you are so extremely close while the huge resolution gets 'wasted' in the distance. I know you can separate the two and composite them together but does something like that exists ?
There is the adaptive subdivisions feature, but that’s not in geometry nodes. I haven’t heard of anything like that in geometry nodes, but that would be a great feature to have! I wonder if it might be possible to combine the adaptive subdivision modifier before the geo nodes modifier.
Which would be more intensive on the computer. This (geometry node) or the ANT landscape addon?
Their should be landscape node just like the landscape addon.
That would certainly make everything easier!
Great!!
Thanks Hugo!
This 54:54 ASMR moment was very...🤤
Not sure how I feel about that reaction…
Greetings! Thank you so much for the tutorial! I sincerely appreciate the coherence and the clarity of the material=) I will be grateful if you could find the time for answering my question... After grouping the shrubbery, unlinking the group from the node 'Group Output' and linking it again to the 'Join Geometry' node, my terrain isn't visible anymore. However, the cube remains😅 It is 49:00 minute or so. I am still a beginner, and I am sorry if I name some things wrong, but I hope I've been clear. Nevertheless, thank you very much for this video, and I am looking forward for the next tutorials!
Hey Ann! Glad you're liking it so far! As for your question, make sure you've connected the Join Geometry node to the Group Output after you connected the shrubbery to the Join Geometry. If you just relink the shrubbery to the Join Geometry without connecting the Join Geometry to the Group Output, Blender will treat it as though you're not doing anything at all. Hope that helped!
@@ltfilm Thank you so much for the response! Unfortunately, everything is connected, and still, the terrain with water and rocks remains invisible. I've even redone the process twice from scratch and still facing the same issue...I guess it's some tiny detail that I am missing 😅. All in all, thank you for the quick response!
Hmm, very weird. If you disconnect the shrubbery from the Join Geometry, is the terrain still invisible or does it come back?
@@ltfilm Yes, it is still invisible, unfortunately. I start to think that it may be a bug in the system, or that I should prepare myself better for this level to know how to solve the issues which may occur along the way. Thanks so much for your concern!
What happens if you connect the last node in your water setup to the Group Output directly and bypass the Join Geometry?
The best I could do from here is just suggest you try connecting different points of your node network to the Group Output and see what, if anything, works. That's usually how I troubleshoot these sorts of problems. Figure out what still works and try to isolate the cause of the problem.
If nothing still works, try asking your question on the Blender Help subreddit or a different support forum. You'll probably have to upload your project file, but someone should be able to help you from there.
I'm still learning, so maybe there's a good reason not to do this, but why not eliminate the Position/Separate nodes at the beginning and just send the z-stuff into Combine (leaving the x and y slots at 0) and then to Offset? I think you only really want to offset the z and not bother the x and y, right? Let me know if I'm not understanding, though.
Hey Tad! That is a perfectly valid way to do it as well! The two methods are equivalent, so you can do whatever helps you to visualize the flow of data. For me, since the change on the z direction is so big and the geometry gets pretty complex, it helps me to do it this way to remind me that I'm only affecting the z direction. If you take a look at my disappearing wall video, you'll see that I use the offset method instead. For that one, since the end result is a plane, the offset method served as a way for me to mentally check that it stays a plane.
If you're particularly concerned about hardware limitations, I believe the offset method would perhaps be a slight bit easier on RAM and CPU usage, but we're talking about a miniscule fraction of a percent difference, so I wouldn't worry about it too much.
Tldr: They're the same, so do whatever makes the most logical sense for you.
@@ltfilm oh, cool -- thanks. Just making sure I wasn't missing anything subtle! I appreciate the response!
@@TadThurston Glad I could help!
This no longer works
But why??? Even after one hour of work it doesnt look photorealistic or natural. Sorry. In software which is designed for this (World Machine, Gaea, World Creator 2022...) you can achieve by far better results in matter of minutes. Without errosions, flow maps etc, you will never ever do something looking natural...Work smarter, not harder.
Hey j w! To answer your question, I did it this way because I wanted to push my personal limits in blender’s geometry nodes. Is it the most efficient way? No. But for what blender can do (which is my software of choice and the only one I really know how to use), I think it’s a pretty good result! Yeah, there are definitely limitations to doing it this way, but I personally like the look it gives me.
And honestly, I had never heard of those software packages before. They look pretty cool and no doubt would provide much better results much faster. Like you said, it’s what they’re designed for. (It would be pretty sad if they couldn’t outperform a general purpose program like blender operated by someone like me haha) On top of that, Gaea is the only one that allows you to use it freely for commercial work. I’m not saying I would use blender to make terrains for a feature film, but a lot of people like blender specifically because it is free and open source.
Anyways, I do appreciate the software recommendations and will look into them. But I hope you can understand that my goal here was not just to show how to do this one specific thing, but rather to teach a lot of information on how geometry nodes work that could be used in all sorts of projects!