 Okay, so let's now focus on getting some terrain generated all right so to work with PDG We're going to be working with HDAs and a specific node inside of PDG called the HDA processor In order to work with these nodes. We need to create SOP level HDAs all right So let's jump into Houdini and talk about this more and get a terrain generator created Alrighty, let's go into Well, actually let's go and create a new Geometry node and what I'm going to do is I'm going to create a SOP HDA or yeah, SOP HDA Label for this particular node. Now if you've taken my previous PDG course, that's free on side effects Website, you'll see a very similar pattern. We're basically creating SOP level HDAs all right currently our PDG landscape HDAs an object level HDAs That's because we went and created a HDA at this level at the OBJ level all right what we're going to do is we're going to create HDAs down here at the SOP level all right, so we're inside of this geometry node So we're inside of the in SOP land if you will okay, so to start these out You want to drop down a subnetwork here? Okay, and we are going to call this the IP terrain Generator all right Cool and inside of here This is where we can go and start to place all of our geometry or anything that we're going to create Whatever we want this HDA to do is going to happen inside of here And so what I want to do is I want to create a height field to start with so this this node basically is going to start off The whole process all right and let me hit f on the keyboard to frame it there We got so now we have our height field now when we're working with terrains inside of unity We need to put in very specific values here, so I'm going to keep this you know relatively small just Well, actually let's actually make a really large today because you know Let's talk about creating really large trains in this case. What I want to do is create a terrain that is of size 4097 by 40 97 so if you go and look up the Houdini engine documentation all right, so I'm going to go and launch the browser here and You go and open up Something like Google here and you just type in unity Houdini engine docks Something to that effect right you'll get the search hit and you'll be able to go and find out More information about trains all right, so if I select the train option here You can see we have this table here of all of the accepted sizes All right, so it just needs to be a power of two plus one. All right, so that's why we're using that 4097 All right, so this is a pretty big train All right, so with that created let's go and just drop down some noise like so So let's do some height field noise over here. All right Perfect, and let's turn it on. There we go. Cool. All right, so what I want to do is make the element size a little bit bigger here All right, maybe we'll go a little bit taller right now. We're at about 500. So let's do like 1500 I mean, this is a pretty big terrain So you can see it's even taken a little bit long on the cook it if you want to actually speed that up You could put the grid spacing while you're working at least to four But when you put this into the Houdini engine, it needs to be at a grid spacing of two All right, so that's actually looking pretty cool Let's do a little bit of distortion and then we'll call it good for Our terrain generator. All right, I just want to get the general idea across here In later sections we will go and make this look like an awesome terrain with awesome cool features Textures and lots of layers and foliage and stuff all generated with pdg All right, let's just get the general pipeline down Okay, so now we have a terrain and we are distorting it a little bit. Let's actually make the The curl a little bit bigger Yeah, something like that Just to give you know some interesting looks so it doesn't just look like noise applied to a height map All right, so I'm also thinking maybe the it's a little tall. So let's just do a thousand Yeah, I think that'll be cool. All right, that's good Test material right there. All right, so I'm I always like to go and put a null node down here Just to indicate that this is the end. So we'll say out terrain like so Very cool. All right with that done Let's go and right click on this and say create digital asset And I'm going to do my usual naming convention here And we're going to capitalize these guys And then save it into our project now. This is very important. I want it to Look into this folder So I need to make sure all my hd is that pdg is going to be referencing Exist in this hd a folder in my project. Okay, so I'm gonna hit accept and accept And that will pop open the type properties window for this guy And this allows us then to go and add properties to it. All right, so let's just add something like I don't know that Let's do the amplitude And the element size here and then maybe we will promote all this Noise stuff. So we'll do amplitude We'll call this Noise amp And this one will be the distortion amplitude So let's say distort amp Lexa And let's pull out the element size for this guy. Let's also put a little separator in between those two guys Just to clean up the ui a little bit. There we go All right, so that's the element size. So this is going to be noise element size And maybe the offset we'll call it good there. I don't want to get too fancy with all the parameters just yet Okay, so there we go. We'll let that compile and make sure that we set this back to two Remember that's required by unity for our terrains to work All right, so there we go. Cool Now we've got an hda that generates some terrain really quickly. All right, so let's jump up and out And one more time and then we're going to dive into our top network over here And what I want to do I'm going to get rid of the wedge node and I'm going to create an hda processor Now these hda processors allow us to assign an hda file to basically fire off or execute When it when pdg gets to this particular node, okay, so let's go and get that particular Hda so you could always hit this little button right here and say we want to load up the ip terrain Generator and you'll see that it'll automatically set this to job because sudini knows that we are in our project All right, very cool So with that we basically have an hda processor that is ready to go Okay, and I want to make sure that on my Hda up here instead of dollar hip. I want this to be dollar job All right, that basically represents my working directory So if I middle mouse click on this you'll see and it'll present you with the current path that that Dollar job is set to and then you just middle mouse click it again And it gets back to the global variable All right, then you can always go and double check your hda file here as well And there you go. So you can see it's it's all hooked up properly What's also happened is the pdg network or the top network node here is Exposing all the hda parameters right here. So you notice this extra tab was created when we assigned our hda Super cool, right? And so This allows us to now change these values and we can we can expose these to our actual pdg hda as well Awesome. So with that with all that created I'm going to come in here and we're going to do a test cook So you can always go and right click on this node and just say cook selected note Alrighty and I'm going to wait for this to run and I'll be right back All right. So that didn't take very long like maybe 10 seconds And what we've got is a new terrain So let's talk about this a little bit more before we close out this lecture So if I double click this little dot which are actually referred to as Work items. All right, so this is a work item It created one work item because we have one terrain that's being generated from this hda You can see that this output has been output to our geo folder. All right, so this is a very core concept to Uh pdg. So if I were to go and look at that, so let's go to our project So if I go to intro to pdg and go to the geo folder, you can see it actually created This bgo.sc file. This actually contains our Landscape or our terrain that we created All right, and that name that particular name was produced down here This output file name. So this pdg dur All right, if we double click this you can see it doesn't actually expand but that pdg dur is that working directory that we Exposed to our hda. You could also come up here and instead of dollar job. You could also say pdg Dur. It's a global variable All right Very cool. So let's take a look some more information here. So it's output that vgo file. The cook time was 14 seconds All right, and we have a bunch of parameters that are on this now one thing we should do at this point Now we've got a hd processor that is cooking something All right, let's jump open out and let's turn off our SOP hd as you can see that you know here instead of Houdini, we don't actually see the result if I click on this little guy. I don't see my terrain All right, it's just currently being baked out to that folder right there So the way to display it is to drop down a geo node and I usually call this the pdg vis node Because what we can do is we can utilize an internal variable that pdg is producing for us All right inside of a file node. So if I go and drop down a file node in here now And if I come up here and do two back ticks and type out at pdg output Like so You can see that output is our terrain How cool is that? So now we have a way of displaying all the steps In our particular hd processor So when I select this guy the pdg vis will show whatever I have selected by selecting this little dot here or the work item Okay, so with that we are underway. Let's go and talk about setting up the erosion now So I want to make another step in here So this there's always a good idea to name these two because remember these show up inside of the ascent link We're going to call this the terrain Generator, that's that step in our pipeline The next step that we want to do is we want to erode the terrain. Okay, so let's take a look at that in the next lecture