ZB_20 | Skirt forming with Topology brush and Dynamics simulation
Every time I want to learn and do a tutorial on Dynamics skirt forming,
I end up doing another totally different tutorial.
This time it is forming a belt with Topology Brush and editing with Topological brush.
but luckily I made it through to skirt forming using Dynamics at the end!!!
Let's get started! Let me fit the canvas to screen.
Under Document > Zoom > Click and drag downwards to Zoom in.
so that the canvas is covering the whole screen.
Seems like Julie is masked. Unmask everything by
CTRL click and drag down on the background.
Let's increase the opacity of the skirt image and bring it forward,
so that I know where to place the belt.
Under Draw > Fill mode > Slide to 3
Under Front-Back tab, adjust the image slightly to fit the model,
using Scale, Vertical and Horizontal Offset slider.
Zoom in. CTRL right click hover right
Turn on poly frame, Shift F.
This time let's use Topology brush to form a belt, B T O.
I have my symmetry on, so that I only have to draw on one side.
By default Topology brush will snap onto any vertex I hover over.
Snap and start drawing a curve line just before the symmetry line.
Click and drag to the right.
Some vertical lines to form closed faces.
Green dots will appear showing
closed faces where there are 3 or more points.
The orange faces are just previews and editable.
Hover close to the end of the curve line to extend or continue the line.
Extend the lines when the circle at the end turns green or a red tail appears.
Proceed to draw some vertical lines to form closed polygons.
It doesn't matter if the lines are crooked,
as lng as the there are 3 or 4 intersections to form 1 closed face.
Removing lines?
Press Alt, Draw a curve line over the unwanted line to delete or
Press Alt, Click and drag on any polygons to clear all stray lines which are sticking out .
Turn off Z plane picture to draw the back of the belt.
Sometimes the front end and back end of the curve line is very close to each other,
so I can easily extend the wrong end. Snap off to identify which is the correct end.
The curve line facing the camera does not disappear when I snap off.
Try zooming in or extending the snap distance to avoid this mistake.
Under Stroke > Curve Modifiers > Curve Snap Distance > try 50
There! Now the snap line is much longer and easier to snap on.
If I draw a line without snapping, it will form a new curve line, like this.
So make sure to snap onto the end before drawing a line.
Let me close up the belt at the back.
Join the belt where the symmetry line is
so that the curve line forms a complete loop around the waist.
Finish up the belt with a few more faces.
Then,tap anywhere on the orange faces to form the belt with depth & symmetry.
Once you confirmed the faces,
the curve lines will disappear and no longer be editable.
The belt depth is determined by brush Draw Size, which is Size 5 currently.
Swivel around to check the belt is joined at the symmetry line both front and back.
This belt was drawn on knowing the location of World symmetry
which is easier to identify compared to Local symmetry.
Local symmetry is the symmetry line of a Subtool. Depending on the shape,
Local symmetry line changes when I edit the subtool polygons.
I can easily change the Local symmetry line by adding another face on the left.
Resulting in the local symmetry line moving to the left while
World symmetry line remains the same.
So when I tap on an orange face, to form a belt using Local symmetry,
this time with Draw Size 1, I created a mirror image that protrudes towards the left.
because the symmetry line moves slightly to the left
when I added an additional face on the left edge .
The challenge with using Local symmetry is that it is so hard to locate.
It could be slightly to the left or to the right.
I suggest a better way of finding out where the symmetry line is using a bounding box.
Under ZPlugin, Scale Master there is a button called New Bounding Box Subtool.
This box will cover up the entire model or visible subtool from edge to edge.
with Polyframe on, we can see the Local symmetry is slightly to the left.
Isolate any individual subtool if need be before forming the new Bounding Box,
Shift Control Click on the Subtool to isolate.
If I hide the model partially we can see the World symmetry X axis is right in the center.
If I turn on the bounding box, the Local symmetry line is to the left.
This is why when using local symmetry line, the belt is protruding away from the skin.
Alright back to the belt forming, let me delete the additional face I added.
Alt click and draw a curve line over the additional face to delete the curve lines.
For this belt I'll stick to using World symmetry, Tap on any face on the belt.
Turning symmetry on mirrors any polygons on one side of the axis to the other,
but let's say I forgot to turn on symmetry when I was modelling
and I want to mirror whatever I have drawn on the right to left,
There's a feature called Mirror and Weld under Geometry > Modify Topology >
> Mirror and Weld.
This feature doesn't mirror to any opposite direction on an axis like symmetry does.
It only mirrors from left to right.
So, for this belt's case,
I need to go under Deformation to MIRROR/FLIP
this Subtool or Polygon to the other side of X axis.
then go under Geometry > Modify Topology > Mirror and Weld on X axis.
Mirror and weld does the exact same thing as
having symmetry on except sometimes we need to join the polygons if they
don't overlap at the symmetry line.
In order to join these two faces, just activate Zmodeler brush
and hover over one of the points I want to join.
Press spacebar.
Click on Move action > Target By Brush Radius > Modifiers Snap to Surface.
Move this point to snap to the point next to it.
That's the workaround in case symmetry is off. Let's go back to forming the belt.
Since this belt is still part of the body Subtool, let's split it out as a separate Subtool.
Go under Subtool > under Split > Split unmasked points.
Now the belt is an individual subtool just below the body subtool.
Then go under Deformation to inflate it with XYZ axis on
or use Zmodeler brush B Z M.
Hover over a polygon face, and press spacebar.
Under Polygon Actions, click on Inflate, Target, All polygons.
Then click on one polygon face and pull outwards.
If you are still not happy with how the belt wraps around the waist.
We can play with Dynamics to do that for us. Go under Dynamics, dock the menu.
Turn off Gravity. Turn on CollisionVolume and change it's inflate value to 0.1.
Use TransfromCloth Brush, BTC, to trigger CollisionVolume.
Click on this Bracket at the top right edge and lightly move it.
Moving it will bring the belt on top of body subtool.
Only TransformClothBrush will show the result of simulation when moving a subtool.
Other Transform brushes do not.
Inflate value determines how close the colliding volumes are against each other.
The highest value is 1 which moves the belt furthest away from the skin surface.
For this belt 0.1 inflate value is enough.
Let's increase the resolution of the belt. CTRL D.
Turn off and on Polyframe to see the changes.
If the points on the belt is too high or low, moving it up and down
can be done using ClothMove Brush ; BMV or Move Topological brush; BMT.
Use smaller brush Draw size to move individual points and
Use larger Draw size to move larger area of topology.
Currently, I am using Draw size 2 to move 1 point at a time.
If I want to manipulate a bigger area of the topology,
a larger Draw size, eg. 20 will move the section of the belt within the red circles.
The area in the inner circle gets influenced more by any changes
on the vertex compared to the outer circle.
The smaller the red circles, the less you disturb the surrounding topology.
This is Draw Size 9. You can see the topology outside the red circles are not disturbed.
The only difference between these two brushes
is that Move Topological brush can selectively
move one polygroup in areas where there are multiple polygroups overlapping.
For example, if I have two layers of belt with different polygroups on top of each other
and I want to move both layers concurrently , I can use Move Brush or BMV.
If I want to move each polygroup individually,
I will need to use Move Topological Brush, BMT.
Watch for which polygroup the cursor snaps on, and that will be the topology moved.
Even with a big draw size I am moving just one topology.
Alright! Let's move on to modelling the skirt so that we can play with dynamics.
Let me uncrease everything. I'll add in the creases where
necessary later using Dynamic Subdivision as a guide.
Under Subtool > Crease > Uncrease all. Next, before extruding the skirt
I need to delete lower subdivision because the outcome will be different.
The more subdivisions there are.
Ok. Let's use Zmodeler Brush. BZM. Hover over an edge and press spacebar.
Under Edge actions click on Extrude. Under Target, Edgeloop.
Under Modifiers, keep the defaults except the angle, switch to Perpendicular.
Extrude the lower edge. Click and drag outwards.
Check the polygons are parallel and not clashing onto each other.
If they are clashing, move the points away from each other using Zmodeler brush.
I need to redo the extrusion and stop just before the points meet. Ctrl Z to undo.
Then hover over a bottom edge and pull outwards just a little bit.
Check the points at the edge of the skirt are still separate. Yes, they are.
Hover over a point and press Spacebar. Make sure the Point action is Move.
Leave the other modifiers as default. Then click and move the points left or right.
Check all the other points and move them if they are
potentially clashing onto each other.
Ok, let's continue to extrude the skirt.
Hover over an edge, press Spacebar.
Extrude with Planar Angle. Same angle as the previous polygons.
Hover over an edge, click and drag outwards.
Stopping just before the points at the edge of the skirt intersect.
Move the points apart from each other
and continue extending the skirt length.
How much to extend?
Let's use Scale ruler to measure. Turn off Gizmo 3D to use Transpose scale ruler.
Let's measure the distance from the waist to the ankle.
Click on the bottom of the belt and drag downwards to the ankle.
Check out the reading displayed at the top left hand side of the screen. 108.48 units.
108.48 units.
Now I should extend the skirt up to 100 units approximately.
Let me see what is the distance of the skirt I have extruded so far.
Press E to use Scale ruler and turn off Gizmo 3D. Click at the bottom of the belt
and click on a point at the edge of the skirt.
The reading is displayed at the top left hand corner of the screen. 35 units.
Let me extend the length of the skirt to 100 units using Extrude Edge Action.
Hover over any skirt edge and press Spacebar.
Under Edge Actions, click on Extrude. Target, click on Edgeloop and
Under Modifiers, click on Planar Angle.
Leave the rest as default. Keep extruding until it reaches 100 units.
Check the length.
Move points that are intersecting away from each other.
Let's check the length again.
100 units. Just nice.
Time to play with Dynamics!
Open up Dynamics and dock it.
I need to mask the belt before subjecting the skirt to Dynamics simulation.
or else this is what will happen. The whole skirt will drop.
To mask the belt use Zmodeler brush, BZM,
hover over a polygon and
press Spacebar. Under Polygon actions, Click on Mask.
Under Target Polyloop.
I want to mask 2 polyloops that make up the belt.
When masking click only when the orange line is pointing at the left/right direction.
instead of up/down direction.
Just hover over the polygon of the belt. Observe the direction of the orange highlight.
Click only when the orange highlight is point at the direction you want.
Left/right highlight and click.
Left/right highlight and click.
If you click when the highlight is pointing downwards, the Mask will loop downwards.
Then press Shift W to change them into another Polygroup
so that they are easier to isolate.
Now I need to mask the belt area. to stop it from being pulled downwards
by Gravity when using Dynamics simulation.
Let's just run the simulation on default settings and have a look.
The skirt is intersecting with the visible subtool but there's a slider to remedy that.
Ctrl Z to undo and turn on CollisionVolume
so that the skirt will rest on top of the visible subtool.
Let's run simulation again.
This time the skirt will rest on top of body subtool and
there's a slider to adjust how far the skirt should rest on top.
Notice the slight bump just below the belt? That's the result from inflate value of 1.
Compared to previously when CollisionVolume was off.
In order to have a look at how far the distance of the fabric and the body subtool is,
let's have a look at the cross section of the bump area.
Ctrl and Shift. Select Knife Curve.
Click and drag to slice off the bottom half of the skirt.
This way we can see the distance between the body subtool and skirt.
Let me undo and let's check out the inflate value of 0.1. Ctrl Z to Undo.
Type in 0.1 under CollisionVolume inflate value.
Run simulation.
Let it run until not much is happening.
Then tap anywhere on the canvas to stop the simulation process.
Unmask all, Ctrl Click and drag down. Turn the model around.
Using KnifeCurve, Ctrl Shift, Click and drag to slice off the bottom half of the skirt.
Same thing, gradient side facing downwards.
When you view from the bottom, the distance between the skirt and
the body subtool is much lower because of the lower inflate value.
Let me undo and increase the inflate value slightly,
so that there's more allowance between the skirt and the body subtool.
Let's try 0.5.
Run simulation.
There're still a little bit of skin showing but I also notice another problem.
The skirt folds are overlapping on each other.
That's because the self collision detection setting is at 0. Let's slide it to 4.
The higher the number the higher accuracy.
So let me slide the setting to 4 and redo the simulation.
Undo.
Run the simulation. Let it run until not much is happening then tap
anywhere on the background to stop the simulation.
The polygons form folds on top of each other. Instead of just intersecting into one plane.
The folds are clearer if there are more subdivisions. Let's turn on Dynamic subdivision.
Under Geometry > Dynamic subdivision > Dynamic on.
Now the folds are look more like fabric and softer.
Shift F to turn on and off polyframe.
I think I'll increase the inflate value slightly just to avoid the skin showing.
Undo.
After changing the inflate value to 0.8. Some of the skin is still showing.
it's ok, I'll bring them forward manually.
Using standard brush, BST,
Brush on the entire polygon to apply the brush, including the points holding the polygon.
Press alt while brushing to push the polygon backwards,
The low polygon count means the brush needs to be applied
onto the edges of the polygon and the affected vertex to see any result.
The polygon count can affect the result of Dynamic simulation, too.
Let's test it out. Previously with inflate value of 0.2,
a lot of the skin is exposed at the back.
Let me increase the polygon count, and compare the result.
Click Divide twice under Geometry.
Run the simulation with the same inflate value of 0.2.
There are more folds and much less exposed skin.
Undo and try increasing the polygon count again.
Run simulation.
It takes more time to simulate and the polygon counts
definitely affects the shape of the folds and the quanttity of the folds.
Now there are no more exposed skin and much more folds.
let it run until not much is happening or until you're happy with the result,
then tap the background to stop the simulation.
Ok! That's enough.
Oh and another thing. Notice the length of the skirt.
It's been stretched due to the Gravity strength
but I didn't change the strength value which controls its stretchability.
It's because the number of polygons increased 3 times
so the strength of the gravity is multiplied across the additional polygons.
Another new observation is an invisible floor.
The skirt looks like it's gathering on the floor.
Whether you want a floor to exist or not,
can be controlled using Floor collision button.
In order to see the Floor plane. Turn on Floor plane with Y plane on.
Plane Z would be the one with the picture of the skirt on it.
Plane Y the floor.
Let me undo everything and turn off Floor collision.
Run simulation.
Let it run until not much is happening.
Without Floor Collision, the skirt will just ignore the Floor plane and extend past it.
OK! That's enough. Click on the background to stop simulation.
Notice the distance between the skirt edge and the floor plane.
Even though the skirt extends past the floor plane now.
Once I orbit it around, the floor plane will move below the skirt.
Don't be like me thinking, I thought the skirt extended past the floor?
Maybe it's my mistake.
Yes it did! It's just that whenever the polygons
extend past the floor plane, the floor plane will move.
So one way to maintain the length of the skirt is to manually trim off the skirt
using Curve brushes again or mask the bottom strips of polyloops and delete them.
Another way is to try reducing the gravity strength by half to 5
and run simulation again to see if that's the length I want.
The more polygons there are the slower the simulation will be.
The length is just nice. It was just a guess work.
Turn off polyframe Shift F.
Turn on Dynamic Subdivision to see it in higher resolution.
Finally get to see the fabric drape over the skin nicely.
Check the back of the skirt. A bit of the skin is showing.
Use Standard brush, BST, to bring the polygons forward.
That's all for this tutorial, keep learning and keep growing! Thanks for supporting me.
Please click like and subscribe for more tutorials!
Labels: belt, bounding box, collision volume, delete topology, draw topology, dynamics, floor collision, local symmetry, michtintin, scale master, skirt, topology brush, world symmetry, zbrush, zmodeler, zmodeler masking