 Howdy guys! Okay, so in this lecture what we're gonna do is focus on getting the base shape in place for a pumpkin Okay, and this is really just going to require us to create, you know, some starter shape. All right So let's go take a look inside of Houdini Okay, so what we need to do first is drop down a geometry node because this is going to contain our pumpkin And all of its awesomeness. So what I'm gonna do is call this the Well, I'm gonna call it IP pumpkin or let's call it jack-o-lantern jack-o-lantern to get into the whole festive theme here And I'm gonna say this is a create or Keep going back and forth on what I'm gonna call those things. All right So let me actually turn off the the test version there. All right, and so what I want to do is jump inside of here and There's a couple ways you could actually approach it. So you could start from, you know sphere like so All right, and if I turn on my wireframe currently we have a primitive you could turn this to a polygon Or actually I should say a polygon mesh and you could control it from this aspect right here All right, but what we'd have to do is go and squash this and stuff and so for this particular example What I'm gonna do is actually create a curve and this is going to become our Profile over here. All right, so let's just call this our profile Like so and I'm gonna go and switch into the Front view by hitting three on the keyboard. All right, and what I want to do is I want to basically Create half my pumpkin shape if I were to look straight onto it from an orthogonal standpoint here I want to create just that half shape. All right, so what I'm gonna do is hit Enter on the keyboard and I'm gonna come up here and start to create, you know Some really rough shape and I'd say keep this really really rough at this point because we can go and resample all this stuff later All right, we couldn't move it around to at this point. Whenever you're creating your procedural models I like to get all my components in place first before I go and really refine the shape because it is procedural We can come back to any step in our graph and actually Update it without really destroying a lot of the downstream notes. All right, so with my shape all drawn out I'm gonna hit escape on the keyboard there and hit one on the keyboard to go back into my perspective view and there we go So now I have half of my pumpkin right here. Very cool And so what I'm gonna do is actually drop it on a clip note You'll notice that I drew the end points of the curve Let me go back to that front view I drew the end points of the curve just past the center line on the y-direction And so what I can do with this clip node. All right, if I hit enter with the clip node selected over here If I hit enter in the scene view over here You can see that there's this plane and this plane basically defines what we're gonna clip And so what I want to do is point this in the x-direction or that little red line right there All right, so I'm gonna do that and that and look at that It clips it perfectly right on the y-axis there Pretty cool. All right, so I'm gonna hit escape to get out of the clip node And I can hit one on the keyboard to go back in perspective view. All right So let's turn on our component display or point display and our point numbers and take a look at what we got All right, look at that. So now we have a pretty cool curve So let's go and actually resample this. So I'm gonna resample this guy like so and What I like to do is put this onto subdivision curves Very cool All right, so that's working out pretty good for me right there so at this point I need to create the actual You know sweep if you will and now you might be saying to yourself Why don't we just use a revolve and not a resample. We want a revolve All right, so I'm gonna drop down a revolve node not totally does it for us But you're gonna encounter problems trying to UV this all right So if I hit 5 on the keyboard you can see we don't have any UVs first off and in all my tests and stuff like that Creating this pumpkin it became quite difficult to maintain the UVs if I were to create them earlier So what I did is I come over here and let's actually create some UVs So I'm going to drop down a UV texture node like so And I want to set this up so that we actually add UVs to all these points here All right, I want to actually UV these guys You see by default we actually get some UVs in the UV editor here And that's just because the UV texture node has these default settings What I want to do is I want to set this to arc length spline All right, and then I want to rotate it 90 degrees like so All right, then I also want to get the the length of the actual curve All right, so I need to know how long of a distance do we travel along this particular spline here Okay, and to do that we use the arc length Method so we say arc length and this requires a couple of arguments, okay? So inside of the parentheses or it's looking for a string and this string basically is a path to a node That's inside of your network somewhere inside of you know anywhere here inside of a Houdini You can pull in data from different nodes. All right, what I like to do is I like to utilize kind of a short form And basically what I do is I put in a zero and that represents this first input if this had two inputs We could have you know, we could put a one in here for the second input zero is always that first input on these nodes there All right, so after that zero I'm now pulling in all the data. That's being generated from this node All right, so all that out is coming into this node down here And what we're gonna do is we need to put in three floats here. All right, and those three floats if you come down here to the Documentation it's telling us that we need to put in a prim number right here for the usage and They start you position and the stop you position So in this case our prim number is zero because if we take a look at our primitive numbers over here We only have one. All right, so we just say zero and then the length of a curve is Determined by its length between zero and all the way to one which is all the way around the curve All right, so then all we need to do is just type in Zero and one and and the parentheses there All right, cool. So now if I go back to my UV view you can see I have The curve all you beat out. So now it's ready for being you beat Very cool Okay, with that what I want to do now is I want to drop down a copy and transform nodes We're gonna do copy and transform I'm gonna feed the result from this UV texture node into this copy node here And what I can do is I can actually kind of recreate what the revolve node was doing But this will give me more control over how my UVs are laid out, and I'll show you here in just a little bit Okay, so what I'm gonna do is make a bunch of copies up here All right, and what what I can do is I can come down to this rotate area right here in the y direction All right, so this is the y direction and I could start to Expand it outwards like so. So I'm saying every copy we want to rotate this amount right here All right, so to fully Replicate how the revolve node works what we need to do is we need to basically divide 360 degrees or a full circle right by the total number of copies that we're making All right, so let's do that and see if that works. So we're gonna say 360 Okay, divided by this particular expression now what we're gonna do is we're going to right-click on the label here I'm gonna say copy this parameter I'm gonna come down in here or where we are writing our expression, and I'm gonna say paste Relative references all right then hit enter and look at that We now have the perfect angle so far to click on this little label right here You can see 28.9 degrees is perfect Angle for 10 copies. All right, so if I increase this You can see that 28.9 is still the perfect rotation angle for this. Okay Perfect, how cool is that? So at this point we can go in and we can actually skin all these guys so you could say skin Look at that. We actually have our pumpkin mesh. How cool is that now? You'll notice that we actually have one that's missing and that's because we're literally just going to We're copying just enough profiles here to get to the end here, but we need one more right where the start is All right, so what I need to do is to subtract one. So we're gonna say subtract one for my number of copies and Now look at our skin node and look at that completely replicated the revolved node, so let's reverse all that All right, and there we go We now have the start of our pumpkin and if I take a look at my UV's you can see that our UV's didn't do anything All right, but if you look at the amount of primitives It's basically that all the UV's are just stacked all right on top of each other What we need to do is we need to manually move each one of those profiles UV's over an X And we need to keep it normalized in space here All right, so what I'm going to do is close out this lecture and in the next lecture We're going to cover how to generate the UV's from this procedurally Thanks so much