H17 Masterclass: Vellum Drape

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
welcome to a vellum presentation we are here today to talk about how to set up some simple cloth on a character and we're going to make this a little bit more complicated though because we're going to start off with a character but with no actual cloth so I'm gonna start off with the file swab to see what we have to work with so in this imaginary situation and hopefully we will provide you with these files to start with yourself we are given a nicety pose of a character in this case this is Tommy you might note might know from our default geometry our test geometry library but here we've just pulled them off to a nicety pose and taken off all his clothes because we're going to give him some nice new clothes to work with but we're also given another sequence which has been produced for us and this is a walk cycle and so this is Tommy again and we can see here that if I play is walking in place until I he's on because there's only 24 frames this walk cycle so first I need to do is obviously get this walk cycle to actually cycle rather than just only do 24 frames of animation stop so in Houdini 17 we have a new retime node and the street time node is also accessible under the name time warp we had a time warp node before but now that node is hidden because if you do time warp rocks go and put down a tree time because it's got a slightly better interface for doing this sort of stuff so in this case I happen to know that my input frame range is 1 to 24 and what I want to have it do after it's hit the end of the input frame range is I could stick with this default here which is to to hold but I don't really want to hold I want to cycle so I just changed this to post cycle and now I'll get a cycle and walk animation if we look at this carefully you're going notice it's a little bit jerky and this is also because we're currently read time in a single walk cycle to a hundred frames and that's what this output frame range is so if we wander if we made the match we'll get a real time frame for frame correspondence so now we're matching exactly what came in to the input but we've decided we want to go more of a leisurely stroll than this he's marching too hard here so let's cut this down and take 48 frames to complete a cycle and so with this is walking slower but you're seeing this jerkiness and this is because we're not doing any subframe interpolation so I can just ask it please interpolate between frames and there we go and we now have smooth subframe data and nice thing about interpolating between frames as I also know that when the solver takes a look at this and asks for subframe data it will get good results so this walk cycles in place I want this to actually move forward so I can do a transform shop and have it move along as walking direction and this walking direction is in plus that here and I take the time and final has speed I could just multiply by the speed don't on the speed offhand so let's just call the speed speed and this is a channel reference point in the speed I don't have a speed channel right now so I'm going to go to the parameter interface and move this on the screen so you can see it just pull over a float parameter for myself to hold the speed value but at the very top they're called speed speed and it except and now we have a speed parameter so I can choose how fast he walks so that is obviously too fast and he's skating and something like four-four he's now walking it's definitely still skating here see if I remember the correct speed for Tommy so that's too slow was it there we go 0.8 I'm getting good foot plants now ideally whoever animated this would have known the speed and provided it to me but I'm just working here with raw geometry and trying to get my shot done so now I've got him walking Bend him in a T pose but now I need a transition between the two and let's first make sure these two things match up if you don't have point-to-point correspondences you end up very sad at this point so it's always good to run a sequence blend and just make sure that things don't go to infinity and beyond and sure enough here we have actually a good sequence blend so everything's nice so what I can do now is actually just blend this over time so keyframe this on frame 1 to be T pose jump forward 10 frames and let's make this D a walk cycle on obtain frame 10 and now when I hit play we have something that goes into the walk cycle and then plays so I've got my setup here and now I want to put some clothes on so let's start off with a nice t-shirt for Tommy and someone put a draw curve on and this draw curve I'm going to use to basically template the Tommy they'll template the static one rather than the animated one then case I changed my frame range and we can see here I've got this area that I'm going draw on and someone zoom in a bit and draw over what I want the t-shirt to be and what I'm going to do here is I'm going to draw a separate line for each seam in the t-shirt so I'm not drawing this as a continuous curve doing a series of curves each in the same direction in the same line but I'm also not worried at all about the quality might lines here because I plan on basically editing it later I'm going to be resample in this down to practically nothing fusing it up and then do an edit Sleater to control the actual shape so it entered to go into the draw curve mode and shrunk the size of this it's not so obvious let's draw the upper part there then one side panel and then the bottom panel across a dot another side pen that's rather disgusting I'll play mat this one using a mouse normally have a tablet and where I can draw a much more stuff faster and bring this up first this side a little bit at the top and the big v-neck and then another little bit at the top there so if I look at the point display for this we can see a whole bunch of ugly little points so I'm going three sampling and get it down to a lot fewer points much more easier to control and now run a big fuse and one grow the size of this fuse just to snap everything together so I've got one set of points here now I can now I want to basically turn this into a piece of cloth we have a set of planer tools now in this case I'm going to use planar patch from curves so this takes a curve Network and tries to flood in with triangles as best as I can so if I throw this in as it is we can see it has carefully maintained on my exterior points and added interior points at this point one interior edge length I want to slightly higher resolution let's go to 0.04 they see it's again carefully maintained these exterior points but these weren't carefully placed points these were just rough guidance points hard to resample those input curves and now however it's when it resampled it resampled on those edges so it kept all the sharp edges I had from this this rough resample geometry here but I'd rather just have it smooth it out now one thing we do have in Houdini is of course subdivision curves so I can say smooth subdivision curves and now I have nice smooth triangles here and I'll put it from planar patch from curves is not just a bunch of triangles they it's also able to output seam groups and the scene groups allows me to tell what refer to these particular points along these curves later which is very important when I own weld these together and make multiple patches work together so I'm going to first call this the front because it'll be the front and now I'm going to also transform that forward a bit sorry and so what this transforms up put a front panel sorry I'm in their own keihan transform let me try this again transform this note my dad's I was looking in the wrong place for the transform node you know this of course at the bottom and let's move this forward a little bit like that and let's now repeat this operation to make the back and so now we have the front in the back of the shirt and I can merge those together and now I've got the two pieces of my garment that I want to sort of weld together now I'll now create a vellum configure a cloth to turn this into cloth and I can do a vellum silver I'm actually going to do there's vellum so I can do I'll do that first and also apply the Tommy geometry so that we have a something for us to collide with so grab that with that sequence blend and put in as my collision geometry and now if I hit play when you will successfully see the two pieces of cloth fall down and be pushed off by Tommy who's walking forward but we don't want these floating in space like this we won't actually try and join these together and to do that rather than using the vellum solver we have another node called vellum drape vellum drape is very much like a vellum silver and that if I hit play right now you're going to see the cloth fall down but you'll note the guide geometry is not animated we're in the big things it does is freeze the guy geometry not first frame because the idea the idea of this node is I'm just trying to drape clothes onto this mannequin so I don't want that sequence animation at this point I just wanted try and outside of the normal time in the animation do something dynamically to get these points here to be welded together but I don't want to snap them together I'll be too quick so first I need to identify those points and I can go to vellum drape and say weld additional seams and here I can specify a group and I could type in the point numbers in a certain order but it's a lot easier if I can have procedurally named groups because then I can change them later and they'll still work the problem right now though is that I don't have different group names for my front and back there's planar patran curves I turned on seam groups so I have a group for each one of the seams but they're called front in both the front piece and the back piece so what I can do instead is I can use a group rename node then put this on the back path here and ask it to please rename anything called front to back and now I will here and see that I have back seams and there and when I merge them together I put the back in the front seams so now let us strip this together I'm going to start off with the group I'll grab back seam 0 and we can see as soon as I grab that it's selected these points and welded them to the first ones I could find which are probably not the ones actually want to weld it to and a back seam 0 I don't touch you weld so I'll change it to back seam 1 which is this left side here and I can weld that then to front seam 1 and in this case we're lucky there's a direct one-to-one correspondence between the points and it's in the correct order sometimes you find cuz you mirrored the geometry that they all criss cross over each other because one point group is in the opposite or of the other that case you can simply hit reverse and it will reverse it as it suggests other times you might end up with their cycle where something starts off off by one than the other so this can help correct those issues as well now I want to why are another welled up the temptation is to keep adding more groups here because I can do back seeing three and front seem good three and then I successfully welded the other side unfortunately this does not actually scale very well the problem is there's a very subtle difference of how Houdini generates this result in group then one would expect what I would expect is it would take all the points at back seen one in their specific order and then add all the points in back seen three in the specific order unfortunate what it does instead is for each group see if it matches this field and if it does add all the points of that group so if it decides to use back seen three first it will actually put the group the points of boxing three in first and then back seem one despite being written in this order here so to avoid that surprise I recommend instead just using a separate group for each weld your do and this also lets you more easily turn off specific welds does if they don't work right and figure out what's going on so I can do here the front to the back for scene three and we can see that's enabled and that's on a couple more I do not mean to change cycle there and so this would thus be back seam five and front seam five and if I won't be fancy I don't have to go in a particular direction here so I can do front seam seven and back scene seven so now I've defined welds between all these points so what is this no done this note has done two things first it's defined a stitch constraint which is a soft constraint of strength 1000 with zero distance to pull these particular pieces together so when I start simulating they're going to be not snapped together instantly but are pulled together with some dynamic forces and then after the ten frames of welding delay that's specified is actually when snapped at him together and fuse them into a single piece of fabric and after it has fused them in a single piece of fabric it will then turn on gravity and let everything come to arrest so let's see how well this worked so we have come through snaps together and actually pretty well here one thing you will notice though at this point is we have an intersection here this part of his t-shirt is actually going right through his body after it's snapped together we can step back individual frames and we'll see on frame 10 when it was just still solving it hadn't been able to pull those together because it's just simply not on the fabric there and so when it snapped them together at had to go through the body and then we end up with a bad drape as a result sometimes you'll be willing to live with that in this case we aren't and so we can go up and adjust her tailoring to give more space for Tommy to be able to support that so I can go back up here to the original curve Network which I have up here and I just adjusted here so I can put an edit stop down after the fuse and display this edit and I hit enter tented edit state if you're you I can now select the points here ours point selection now one thing to note is we currently have the secured selection mode and this is currently off right now if this toggle was set was locked we'd be in serious secure select mode and before you can select you'd have to this you'd have to hit us to enable selection so in this case it is off so I'm able to actually select points directly by going to points and select these points and now I can just pull this point out or pull this point out a bit and now I've given Tommy a bit more room for this particular part of the graph and you can see the surrounding network Reed apologizes and updates itself for that if I go back to the results of the drape we now a more room there let's see if there's enough room for it to snap together nope still probably not enough let's try a more extreme edit here I don't have two floppy either let's do some like that he does have such a triangular build there we go now we have so little bubble in there so any real tailor would be rather disgusted with my job here but this is more just to show what is possible so we've got the top half of tommy sutter now let's get something to cover up the bottom half and so for this I'm going to put another planar patch and so the planar patch tools have some high-level tools that just let you generate rather than have to specify curves all the time rectangles and trapezoids with taper circles and also ring type geometry so these are ways to quickly get these 2d shapes if you need to up stuff up they also I've seen controls you can output the groups for the different parts of the I think so in this case I want to take a look at what Tommy looks like second place this in a reasonable position and let's move this up that's a front panel for for Tommy I think a little bit shorter and I also wanna make it bit trapezoidal I mean it doesn't have to be too trapezoid I'll often squish in the top level works very well for this sort of outfit I'll go to Chiapas await top and taper it a little bit here and I want to change the size to match the the other size and now let's take this and let's attach it to our front seam so we now do a configur cloth to turn this into a cloth object and now we have a little bit of a tricky bit here because we have two things we need to merge together to pass this down mantra first of all I should point out we don't want to have this output with these stitches on well we want to actually start for our next stage of draping is the actual draped simulation so around frame 20 here we have something draped which which we're sort of happy with so we can do in the vellum drape is say freeze at frame and so this basically does the timeshift internally so that no matter what time I have here a Mau is going to see frame 20 I can also save this particular frame to disk in that way I don't have to Reese immolate when I really reload Houdini which a can take a lot of time and be there's always the the danger you've changed something else and so on we simulate exactly the same way so if you have a drape you really like you probably should save the disk as a single result so given this particular Drake now I wish to add in this front panel of cloth so I need to do a merge and I need in this case to do two merges because I want to merge both the geometry the display geometry with C but also the constraint network that's underneath it and so in this case this is the constraints of the first one and constraints of the second and both of these I wired about the wrong way there because I want my new piece of cloth to go after all the others this way any point numbers they're hard-coded inside that original piece of cloth will continue to be valid and I need to make sure my new ones are both merged in this axiom order because it's important we have a one-to-one correspondence between the points of this gray input in the points of the pink input so I just have to do these merges together if only merged on when input chaos would result so now I can do a vellum drape of this result in a network which has two pieces in it and so this is the constraints and the other one and I can bring in my chlidren geometry again if I play we should see the front panel just fall downwards exhaust Li we need to actually stitch it together so let's add the stitch into this wild additional seams if I go to my planar patch I can tell it to add a top seam and it should be called let's call this front I have used front for the other ones I won't work too well that's caught kilt no this isn't quite a kilt is much more of a dress action and so I can say they killed top and I want to weld this to the front seam 6 I think Wow look no that's obviously wrong front seam 4 that's right at some point franciene do there we go now if I play here we can see we now pull the two pieces together and the frame 10 we weld them together and then we add gravity so the whole thing starts to fall down and drape but we have this whole section here hanging off the edge and that's because we had more points in the top of the kilt than we had in the bottom of the t-shirt and it's important for the two point counts too much precisely because that's how they weld and it's done welding must I always be point to point it can't weld to inside of a triangle ideally this would be handled for you and the thing that sets up this curve can seem constraint networks could adjust them automatically but we don't have that right now so currently you have to do this by hand so if I middle click here I can see that my front seam - that I was looking at has um drew drew drew 15 points in it and so I need 15 points on the top of my kilt and so here I can say override the top points and please make it 15 and now I have exactly 15 points on the top and now we'll see that this lines are precisely and I can hit play and get the dress on now that's one half now let's get the other half on so for the other half I will just basically repeat this planar patch process they call it a kilt back so I can tell it apart and move it behind like so and emerge this together before we do the conversion to cloth and now with the drapes I can add another one which is for the kilt back top and I know this will be the back seam too and so now we have these two matched up now likewise I need these two halves of the planar patch to match up and so I can output the left-hand rights so that seam and right seam and the left seam in the right seam you know inbound rape are two more welds between the guilt left and the kilt back right or is it the kilt back left stage left or stage right oops I put them in the same area that obviously won't work guilt left and that was the wrong one I had it right the first time just like we're in the wrong group so there we go and let's do the same here kilt back there we go so now we have all the pieces lined up if I play and I'll snap together in frame ten and then we'll fall under gravity and create a nice dress for Tommy so a good stable frame for this a time frame sixty five or so so let's just freeze the sun frame sixteen and now we have a drapes Tommy now we want to now run this through our actual animation geometry so we've been passed that down that extra input so we just switched to the velum solver at this point we'll then get the animation and so this will now solve on the animated Tommy one thing you'll notice here is this dress is stretchy it was not the stretchy way more drape in it and the reason is is during the Jeep draping process one thing we do is we set a timescale point to and this basically slows down time so you're seen every sub step of something running on one-fifth the speed and that basically lets you get faster iterations and feedback because that's usually the most important thing for feeling like you're getting things moving fast and seeing if it's moving the right way but also that it is often not right into actual speed you need so in this case we probably need five sub steps to actually run the simulation in our default for the velm solvers very aggressive and sets to one just to get the fastest possible result but in this case I can change it to five and now we have Tommy move in with a dress prime properly not being stretched too much we still get additional structure at this point you might want to increase the constraint iterations they should you should be set to the viscera of distance and polygons from one edge with address together so 100 is probably actually reasonable in this case if you have enough sub steps so haven't got a dress for Tommy I'd like to also try and do something a little bit different with it and try and make a multiple layer to dress and so for this I'm going to take our drape that we had here and fuse it together and get rid of all the constraints we actually have right now on it so what you can do is you can just extract the geometry by itself without any of the other pieces and do the value on post-process valent pulls process here will apply welds and what this will do will fuse together these corners here and so we'll end up with them actually as single points rather than pairs of points so now I have like one continuous piece of fabric with all these wrinkles baked into it so when when I turn this into a cloth later it will bake in all of these angles and distances so I'll keep these I'll try and keep these particular wrinkles which off actually is what people want at this point it'll also get rid of any of the energy in the system so stuff like along this waist was compressed previously and now a longer be seen as compressed because these holsters become the natural rust and distances for it one problem you notice here is the way I assembled this and this is where this blue background shadings kind of useful is I have got my normals backwards for half of my dress so I need to make this all normalized to make it all point the same way a poly doctor has a an option to basically topology correct winding numbers to the majority and in this case would probably pick it at random but thankfully here I picked the right direction of so I might have to reverse it and so I've got outward facing normals here so given this dress I can do a valium configure cloth and now I've just created a fresh new piece of cloth so I could change my settings for everything here and and now do a velum solver and I can bring in the the same Clinton geometry I use previously and we will get the similar Assaf to again and probably won't increase my sub steps very quickly here the other thing that I always look at when you're at this point or possibly earlier is your thickness because in this case for example if these green circles were too big then everything would turn to cyan on the second frame because they were actually shrunk and so this case I'm fortunate they're about the right size but if I had any more high-resolution geometry I'd probably have to decrease my thickness now having it too big will give you strange artifacts and slow down the simulation for no real benefit use the thickness all but here make it after after thickness it was before as I want to do multiple layers and that will give me more room to put the different layers in now to do the layers I don't want to re do all that work of making it someone use the poor man's solution of just using the peaks up here and so geek stops lets me just push things up by like 0.01 and if I do that again I can create a series of they're slightly fatter than the other and then merge merge these together starting from the lowest to the highest and now let's do a connectivity did I just want color them randomly so connectivity by point and then color I can choose a random color from that point on tribute and now I've got four randomly colored layers let's put that into our configure cloth and we can make sure again that our thickness is not too bad so it isn't to actually get away with that so now a very fat dress that is being put on Tommy here so when working with multiple layers like this one of the things that can go wrong is you can sort of get collision failures Kier's they'll get them in this case if not I guess I can probably easily introduce them by doing a reducing the number of sub steps down and so this becomes a more aggressive solve so you can see on the front here we've definitely got a lot of clear and fair failures were two no longer resolving these layers properly I go to the Advanta visualized page there's an option for failed self collisions and so what happens is if a point ends up in a position it can't actually solve for the correct collisions it basically puts this flag on and I'll turn itself off from all future collisions self collisions in this case which I'll and but if it ever gets resolved because the layers separate again it'll turn itself back on again so this stops the solver from exploding or freezing up it just means you'll get possibly ugly results but at least you'll get results at the end of the day that's the number one required property here those collisions obviously one would be to increase sub steps which we did earlier but we're trying to show other approaches here the other choice is in the post collision pass usually increase in this can be helpful especially when you have multiple layers and the default is best probably for single layers so with multiple layers I put that up to six and actually already I see it's not nearly as bad as it was on the previous one the other thing you can do is give a hint to velum that there is layers here and they have a priority and so if I add a layer attribute and I can actually do this by just reusing that class attribute 'hi before someone just do an entrepreneur angle oops and just set the layer attribute to be the class attribute hey now the velum solver has an option on it for what's called layer shock and so this controls the relative mass when two pieces of cloth collide so if there's a layer attribute on the cloth and one of the layers is higher than the other it will be made four times lighter than the one below it so that the higher numbered layers are the ones that should be floating on top of the lower level numbered layers and because of that shock setting we're going to end up with the the top layer being pushed out preferentially and then we're able to ensure that the outer dress Howie's remains on the top there's a loss of simulation fidelity here because it doesn't become a truly coupled solve we start making it a weakly coupled solve where the outer layer sort of effects but doesn't affect strongly the layers below but it's not as extreme as if you just baked out the bottom layer of garments and then solved layer on top you are still doing them together as you control and how strong that interaction is so the other thing to point out is you don't have to use not super angle for that if I'd set this up differently I would have been able to use the film configure cloth because there's action our ability set the layer there so often even multiple pieces you can just set the layer inside this option here to control how they work so thank you very much now we have Tommy that's a nice four layer dress on which I think will be shown in all the best places of Paris fashion and again I will save this file so it's available to you and I hope you enjoy and I'm good you said of this thank you
Info
Channel: Houdini
Views: 17,735
Rating: 5 out of 5
Keywords: Houdini, Houdini vellum, Houdini cloth, Houdini 3D, Jeff Lait, SideFX, 3D cloth, cloth simulation, cloth paneling, houdini 17
Id: Fe--nF-BvOQ
Channel Id: undefined
Length: 33min 10sec (1990 seconds)
Published: Mon Nov 12 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.