 Let's now add in the option to do a double door here as well So I'm going to go into the parameter interface for our controls in our in our overrides over here. I'm going to put in a Let's just do an integer slider and we'll just clamp it between 0 and 1 for right now. So 0 and 1 like so and this will be our cab double-door toggle and we'll say Door count I guess for now Seems all right. I'm going to leave it on 0 for the default All right, so we'll hit apply and Accept looks pretty good. So now we need to pass that information down So we need to go and get that value here All right, so we're going to do int Door count is equal to CHI Door count Go and then let's just copy the set prim attribute Like so and then we want to take this we'll call this well now. We can't use d-count. So we'll have to do door count And yeah, then we'll just copy this guy over There we go. Now we need the comma there. There we go All right. So now we've got a door count Attribute that we can set Very cool. So it'll just be 0 1 and they're all going to default to 0 Which is perfect and then let's promote that. So let's just copy this guy plug this in and We'll call this so it needs to convert our door count from primitive to detail, which is perfect Yep door count beautiful All right, so now we can use that inside of our graph So there's a couple things I want to do here. So I want to share The knob in the hinge here and also the I think the transforms we're going to share these guys between these two options So Yeah, let's do this here. So that's pretty much our setup Right there for a single door. So I'm just going to select all those nodes like so and we'll call this a single door And then I'm going to duplicate this over like that. I'll call this double door And then let's set up our switch That's going to be controlled by our override parameter that we set up Previously here. Okay, I'll call this a door switch All right, so now We can get that value so our door count detail attribute from this incoming primitive All right. So all we need to do is go to our door switch node there and we'll do a detail and We're going to get it from our prim in and we want door count And zero there we go. So that'll allow us now to switch Between the two so far on doors here. So now I can switch between the two. It's going to be one of these guys here It's probably the last one I might not have you have it even selected. So I will test it out here It's like the other thing I forgot to do is to make sure that this is Turned off when it's not doors So when the type is not set the doors. All right, so we can just go to the drawer count and Switch this to when this is not equal to one. I believe Yeah, because doors are one basically so now it will be hidden unless you're a door, right? So yeah, that's perfect All right, very cool All right, so let's work on our double door now. Now we got our switch all set up And I'm gonna hit the shift Z or sorry shift s on the keyboard and Let's just organize this a bit here Yeah All right, so what are we gonna do here? So this basically is Well, actually, let's first take care of splitting the the primitive incoming primitive. So let's do a null here I'll call this a prim in There we go. Oh And let's unpin our view here. There we go. All right, so let's do our convert to nerves trick here So you can split it in half So I'm just gonna convert this to a nerve surface interpolate through holes So we have the quad then let's use a carve node and Let's find the There we go. Oh, this is already set up perfect. Awesome. So let's do point five and let's keep both All right, let's convert these back to polygons It's a polygon, but let's interpolate through holes. There we go. So now we have two prims one and zero So the way that we've got the door currently set up, which is what this graph is representing Currently so all these nodes is for this particular door So we can split So let's do this. We're gonna split on primitive one Like so and then I'm going to Bundle all these guys up into a subnet And I'm gonna call this the Oh, did I miss one? Yeah, I missed one. Actually, let's just do it again. Oh I see. I didn't want to select that. There we go. Let's just pull this up up and over here All right, so let's bundle all that stuff up into a subnet. There we go And our prim coming in now is gonna be this guy. So that should work. Yeah, it works fine So now we've got this door here. So we'll call this the L door And then let's duplicate this and rather than This guy we're gonna take the other door. So if we're to merge these together now, right? We have doors that are facing the same direction. So on this this door over here. This is gonna be the R door We just need to fix up a few things. So shift s to clean up your node network there Organize these guys up So it's it's nice to basically use those Subnets for the knob and the hinge because if you're to constantly copy and paste them Then you're you're basically gonna take a perf hit in your HDA inside of your Dini engine because it's gonna have to you know Build that note And so this way we're just reusing it over and over again. So that's what That is awesome. So, yeah All right, so let's take care of the hinges first So this one's easy because rather than blasting away One we'll just do a delete non-selected and this will give us that guy So then our hinges will show up on that one side And for the knob points rather than the box max we need to get the box min this time So let's do this box min and the offset is fine But we want to do box min And we actually need to add value because our minimum is negative or Probably is negative in this case, but we want to add on to it basically so And that does that so now it's on the other side, right? So nothing too crazy. Yeah, so now we have double doors boom And we didn't have to do a bunch of stuff. So always look for ways to reuse your work So there we go. So now we've got the option to have double doors or A single doors. So let's take a look at this now. Everything should be hooked up. So my doors Let's see. Let's change this one. No So we're not getting that particular value. So this is on primitive to One thing that I did do I didn't show this I actually sorted these guys by X that way the Starting primitive will always be on this left side of the cabinet, right? I noticed as I was playing around with that the numbers were switching shifting around Which would screw up your Previous overrides. So I just put a sort up there So this is primitive to So I want to check out primitive to here now and take a look at the value So primitive to we have door count of one door count of one. So let's see where we are not Getting the value. Oh I never actually set it up. That would help All right, so Yeah, we want the cab door count There we go. Oh Interesting. Look at that. So we need to do a sort Y looks like on one of the ad nodes there Alright, so let's take a look at that now. So we're gonna go in our build doors. And so this time this guy's coming in here So when you dive in here to a shift s clean this up a little bit I'm already doing a sort Y there or sort X. Sorry So let's take a look. Oh, it's actually coming from This guy up here So we need to make sure we sort it appropriately this way. So let's do a sort and I'm gonna sort this by Y. Does that help? Nope. Let's do By Y there So basically we're just not using the right one here. So I'm gonna do this in different way Let's actually just use a clip. We don't need to sort this then clip is nice and generic so We just need to make sure that we center the clip node up. So in this case, I need to use the centroid Function here. So zero and D underscore X. Let's copy that guy We'll do D Y and DZ And we just need to put it on the X direction There we go. And make sure you say all primitives There we go. So now we don't need any of that and we can just Yeah Looks like it's working better. So let's just copy this node now And actually that should work. Yeah, we don't actually need to do anything else And let's take a look here. Oh, let's turn off our single pass Aha. So now we need to sort the primitives such that It's sorted by X Right, so let's turn this on. Let me explain this a little bit better So this one's working and that's just because Inside of our doors or double doors specifically here if we look at our clip Here And we look at the prim numbers we have zero one for that so Let's actually make sure that we do sort the primitives here by X Yeah, so it's always that and then So we're gonna split by zero then so that's always going to be the proper direction then Nope, that one didn't like it. So let's zero one two. Let's try and see what's going on Alrighty, let's jump into the doors All right, so we sorted we should have zero one Why didn't you sort by X? Oh, geez There we go. My bad. Sorry about that. I want to do it on the primitives not the points And let's turn off our single pass There we go All back to normal. So now we can switch these guys on and off. Maybe no Let's go take a look at that Let's actually take a look and make sure that we are getting our Attributes So it looks like our door count is being set to three. That should never happen. That means we're Doing something wrong Don't work counts. It's fine. Let's make sure the incoming Primitive number or primitive attribute is also named door count door counts three up there. So let's take a look I might have actually pumped in the wrong value there My apologies. Yep, I did How cool is that? And I didn't call it door count. What did I call it? cab Double door toggle. All right, let's do this one more time here double door toggle. There we go There we go Again, my apologies Yeah, so now we have the option to put in double doors Or single doors lots of options now pretty cool All right, so I'm gonna leave you guys there in that video and in the next I think I'm gonna move on to getting some vertex color set up And then what we've got to do is throw this into unreal to give it a test and then we'll call it good for This entire section for this procedural prop And then after that we'll do some texturing and I want to get into some more props that you put on top So like if I were to look at the references here, there's lots of stuff up here that I want to make procedurally Get all that stuff created Maybe do a little PDG action with some of it to create lots of variations So all right. Thanks much