Simulate cloth with seam


I wanted to simulate a tablecloth but have some problem.
I created a plane as tablecloth and subdivided it several times. Then I aktivated the cloth simulation under the ‘physics’ tab and choose ‘silk’ as preset. A ground plane acts as table with physics set to collision. So far everything works well.
My problem is I want to have a real seam at the edges of my tablecloth. Which means the tablecloth is thicker for arround 1cm at the edges, because the cloth is taken double and sewn together.
But I don’t know how to make the cloth simulation correctly for the seam. If I take the edge faces and extrude them a littlebit so that it looks like the tablecoth is thicker, then the cloth simulation fails since it does not consider thicker parts of my mesh. I get same result as without extruded edges.
I tried already with the settings under ‘Cloth Stiffness Scaling’ but this does not work. Also Pinning is not the correct way, because 1st it makes the cloth not moving where the seam is. And 2nd I need pinning to move my cloth over the table with key frame animation.
So how can I simulate a tablecloth with thicker seam correctly that the seam keeps thick (and stiffer) until the end of the simulation?

Thanks for any idea!


may I make more clear what I want to get.
As you can see in the image the seam marked with the red arrows is thicker than the rest of the tablecloth.
This is what I want to get.

I could come a little step further by myself. Here is what I did.
I extruded the outer faces of my plane an added a mirror modifier (Z-axis) to my plane As you can see in the top of the following image.

Then I started the animation by hitting Alt-A. But now the seam starts to blow up for some reason.
(see middle of the image).

At the end of the animation I got some result (see bottom of the image).
But the seam still looks a little bit blown up. How can I optimize it?

The blend file is here:

Thanks for any further help!

Hi, as far as I have been able to figure out, there is no “density” options for cloth simulation… which is a real shame actually, we have stiffness scaling, based on vert groups as you mentioned, but no method to modify the weight or density of the cloth by using a vertex group or texture map… this feature would be very useful imho.

the odd results you are getting in your second post, would be, I assume, from the self collision of the cloth… the parts of the seam which are in close proximity are repelling each other. you could turn off the self collision, but it would effect the rest of the tablecloth , and since table cloths don’t intersect in real life, it would look bad of course.

edit: after having a good look at the blend you uploaded, two issues jump right out at me…
1 your simulations “repel distance” slider is lower than the “minimum collision distance” slider…
2: the "self collision settings are left as default, and .750 is a little to “large” a range of self collision imho…

also I found that adding the “seam” vertex group to the self collision option really seems to help… (the group selector just underneath the “self collision distance slider”)

here is a blend with a few adjustments to the cloth system

does this help at all? :slight_smile:

I think your seam is blowing up because of the self collision setting. The overlapped cloth is too close and tries to push away from other cloth. So it acts like a tube filling with air.

Hi Exile420, hi Orinoco,

thanks for reply, so I understand there is just some tweaking but no real solution for cloth thickness.
Hopefully it will be implemented in one of future releases?

Thanks anyway!

bit of a cheat but try a displacement map, can look like a hem if used carefully

That will make it look like there is a hemmed border, but won’t affect the way the cloth drapes over the table in the cloth simulator like an actual hemmed border would drape.

Here’s an idea: Select the vertices on your tablecloth’s hem area, create a vertex group called “Hem” and assign these verts to it with weight 1.0. After baking your cloth sim to your satisfaction, add a Solidify modifier to the cloth mesh and specify Hem as the vertex group. Adjust the Solidify thickness parameters as needed.

If this is for a still image, you’ll probably want to Apply the cloth sim deformation before adding the Solidify modifier. If you don’t get the sharp seam you want, add loops at the seam and use Slide Edge to tighten up the crease between thin and thick areas. Same can be done at the outside hem edges. Adjust the Solidify Crease & Offset parameters to set how the seam appears. You can also use Edge Split to sharpen up the seam.

Solidify is great for adding thickness to fabrics and other garment materials, since it works with the existing geometry surfaces. Just make sure the modifier follows the Cloth sim modifier on the stack.

An example file is attached. You’ll have to bake the cloth sim – disable all other modifiers first, then enable them after the bake and go to frame 40. In Edit Mode, note that what appears to be one loop marked as Sharp is actually two, made nearly coincident with Slide Edge. This is because the cloth sim tends to “open up” the closely-spaced loops that acts to define the inner hem edge.

Cloth Hem Example.blend (789 KB)

If you need to change how the hemmed portion of the mesh responds as cloth, you can use a Cloth Pinning group or other Cloth sim parameter acting on the Hem vertex group.

I’m trying another way, basically two UV maps, one is the hem (or lace in my case).
As you can see I got to map it better, but it’s late, so later will do. Almost there I believe.

A little closer.